summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2015-01-20 17:52:11 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2015-01-20 17:52:11 +0000
commit4d87488a6a49207a64b9ec948958b9666a120009 (patch)
treeab54c12d24f4cb227ef051c05b4991942cc7c170
parentf125f46535729b6d439478d1317b6192d570bc3f (diff)
parent704c443ea86001242ca0ca64eef0ca944279ebd9 (diff)
downloaddefinitions-4d87488a6a49207a64b9ec948958b9666a120009.tar.gz
Merge branch 'baserock/jmac/add-chef-and-ceph'
Reviewed-By: Francisco Redondo Marchena <francisco.marchena@codethink.co.uk> Reviewed-By: Paul Sherwood <paul.sherwood@codethink.co.uk> Reviewed-By: Sam Thursfield <sam.thursfield@codethink.co.uk>
-rw-r--r--ceph.configure90
-rw-r--r--chef-system-x86_64-container.morph32
-rw-r--r--chef/manifest3
-rw-r--r--clusters/cephclient.morph20
-rw-r--r--strata/chef.morph216
-rw-r--r--strata/chef/chef-master.morph20
-rw-r--r--strata/chef/chef-zero-2.2.morph13
-rw-r--r--strata/chef/coderay-1.1.0.morph13
-rw-r--r--strata/chef/diff-lcs-1.2.5.morph13
-rw-r--r--strata/chef/erubis-master.morph19
-rw-r--r--strata/chef/ffi-1.9.3.morph13
-rw-r--r--strata/chef/ffi-yajl-master.morph13
-rw-r--r--strata/chef/hashie-2.1.2.morph13
-rw-r--r--strata/chef/highline-master.morph13
-rw-r--r--strata/chef/hoe-master.morph14
-rw-r--r--strata/chef/ipaddress-master.morph13
-rw-r--r--strata/chef/json-1.8.1.morph13
-rw-r--r--strata/chef/libyajl2-1.0.1.morph13
-rw-r--r--strata/chef/method_source-0.8.2.morph13
-rw-r--r--strata/chef/mime-types-1.25.1.morph13
-rw-r--r--strata/chef/mixlib-authentication-1.3.0.morph13
-rw-r--r--strata/chef/mixlib-cli-1.5.0.morph13
-rw-r--r--strata/chef/mixlib-config-2.1.0.morph13
-rw-r--r--strata/chef/mixlib-log-master.morph13
-rw-r--r--strata/chef/mixlib-shellout-1.4.0.morph13
-rw-r--r--strata/chef/net-dhcp-1.2.1.morph13
-rw-r--r--strata/chef/net-ssh-2.9.1.morph15
-rw-r--r--strata/chef/net-ssh-gateway-1.2.0.morph15
-rw-r--r--strata/chef/net-ssh-multi-1.2.0.morph15
-rw-r--r--strata/chef/ohai-master.morph13
-rw-r--r--strata/chef/plist-master.morph14
-rw-r--r--strata/chef/pry-master.morph13
-rw-r--r--strata/chef/rack-1.5.2.morph13
-rw-r--r--strata/chef/slop-3.6.0.morph13
-rw-r--r--strata/chef/systemu-master.morph13
-rw-r--r--strata/chef/wmi-lite-1.0.0.morph13
-rw-r--r--strata/chef/yajl.morph6
-rw-r--r--strata/core/libpopt.morph10
-rw-r--r--strata/core/sgdisk.morph7
-rw-r--r--strata/ntpd.morph10
-rw-r--r--systems/ceph-service-x86_64-generic.morph22
41 files changed, 820 insertions, 20 deletions
diff --git a/ceph.configure b/ceph.configure
index 14fa6f6b..c3cd92d1 100644
--- a/ceph.configure
+++ b/ceph.configure
@@ -20,32 +20,60 @@ import os
import subprocess
import shutil
import re
+import stat
systemd_monitor_template = """
[Unit]
Description=Ceph Monitor firstboot setup
+After=network-online.target
[Service]
-ExecStart=/usr/bin/ceph-mon --cluster {cluster} --mkfs -c {conf} -i {hostname} {keyring}
-ExecStartPost=/bin/rm /etc/systemd/system/multi-user.target.wants/ceph-{cluster}-mon-fboot.service
+ExecStart=/bin/bash -c "/root/setup-ceph-head | tee /root/monitor-setuplog"
+ExecStartPost=/bin/rm /etc/systemd/system/multi-user.target.wants/ceph-monitor-fboot.service
[Install]
Wanted-By=multi-user.target
"""
-systemd_monitor_fname_template = "ceph-{cluster}-mon-fboot.service"
+
+systemd_monitor_fname_template = "ceph-monitor-fboot.service"
systemd_osd_template = """
[Unit]
Description=Ceph osd firstboot setup
+After=network-online.target
[Service]
-ExecStart=/usr/sbin/ceph-disk prepare --cluster {cluster} --fs-type btrfs {data}
-ExecStartPost=/bin/rm /etc/systemd/system/multi-user.target.wants/ceph-{cluster}-osd-{osd_id}-fboot.service
+ExecStart=/bin/bash -c "/root/setup-ceph-node | tee /root/storage-setuplog"
+ExecStartPost=/bin/rm /etc/systemd/system/multi-user.target.wants/ceph-storage-fboot.service
[Install]
Wanted-By=multi-user.target
"""
-systemd_osd_fname_template = "ceph-{cluster}-osd-{osd_id}-fboot.service"
+systemd_osd_fname_template = "ceph-storage-fboot.service"
+
+ceph_monitor_config_template = """#!/bin/bash
+ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
+ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --set-uid=0 --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow'
+ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
+monmaptool --create --add 0 10.0.100.2 --fsid 9ceb9257-7541-4de4-b34b-586079986700 /tmp/monmap
+mkdir /var/lib/ceph/mon/ceph-0
+ceph-mon --mkfs -i 0 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
+/etc/init.d/ceph start mon.0
+touch ~/monitor-configured
+"""
+
+ceph_storage_config_template = """#!/bin/bash
+scp 10.0.100.2:/var/lib/ceph/bootstrap-osd/ceph.keyring /var/lib/ceph/bootstrap-osd/
+echo -e "n\np\n1\n\n\nw\n" | fdisk /dev/sdb
+ceph-disk prepare --cluster ceph --cluster-uuid 9ceb9257-7541-4de4-b34b-586079986700 --fs-type ext4 /dev/sdb1
+sudo ceph-disk activate /dev/sdb1
+/etc/init.d/ceph start osd.0
+touch ~/storage-configured
+"""
+
+executable_file_permissions = stat.S_IRUSR | stat.S_IXUSR | stat.S_IWUSR | \
+ stat.S_IXGRP | stat.S_IRGRP | \
+ stat.S_IXOTH | stat.S_IROTH
class CephConfigurationExtension(cliapp.Application):
"""
@@ -75,7 +103,6 @@ class CephConfigurationExtension(cliapp.Application):
CEPH_MON_KEYRING - Location of monitor keyring. Required by the
monitor if using cephx authentication.
-
CEPH_OSD_X_DATA_DIR - Location of data directory for OSD.
Create an OSD daemon on image. 'X' is an integer
id, many osd daemons may be run on same server.
@@ -121,6 +148,8 @@ class CephConfigurationExtension(cliapp.Application):
# Configure any monitor daemons
if "CEPH_MON" in os.environ:
self.create_mon_data_dir(os.environ.get("CEPH_MON_KEYRING"))
+ else:
+ self.create_osd_startup_script("None", "None")
# Configure any object storage daemons
osd_re = r"CEPH_OSD_(\d+)_DATA_DIR$"
@@ -137,6 +166,14 @@ class CephConfigurationExtension(cliapp.Application):
if "CEPH_MDS" in os.environ:
self.create_mds_data_dir()
+ # Create a fake 'partprobe'
+ fake_partprobe_filename = self.dest_dir + "/sbin/partprobe"
+ fake_partprobe = open(fake_partprobe_filename, 'w')
+ fake_partprobe.write("#!/bin/bash\nexit 0;\n")
+ fake_partprobe.close()
+ os.chmod(fake_partprobe_filename, executable_file_permissions)
+ self.create_startup_scripts()
+
def copy_to_img(self, src_file, dest_file):
shutil.copy(src_file, self.dest_dir + dest_file)
@@ -171,17 +208,13 @@ class CephConfigurationExtension(cliapp.Application):
dest_keyring = os.path.join(self.tmp_dir,
"{}-{}.mon.keyring".format(self.cluster_name, self.hostname))
self.copy_to_img(src_keyring, dest_keyring)
-
keyring = "--keyring " + dest_keyring
- mon_systemd_fname = systemd_monitor_fname_template.format(cluster=self.cluster_name)
- mon_systemd = open(self.dest_dir + os.path.join(self.systemd_dir, mon_systemd_fname), "w")
- mon_systemd.write(systemd_monitor_template.format(cluster=self.cluster_name,
- conf=self.conf_file,
- hostname=self.hostname,
- keyring=keyring))
+ mon_systemd_fname = systemd_monitor_fname_template
+ systemd_script_name = self.dest_dir + os.path.join(self.systemd_dir, mon_systemd_fname)
+ mon_systemd = open(systemd_script_name, 'w')
+ mon_systemd.write(systemd_monitor_template)
mon_systemd.close()
-
#Create a symlink to the multi user target
self.symlink_to_multiuser(mon_systemd_fname)
@@ -192,11 +225,13 @@ class CephConfigurationExtension(cliapp.Application):
#Create the osd data dir
os.makedirs(self.dest_dir + data_dir)
- osd_systemd_fname = systemd_osd_fname_template.format(cluster=self.cluster_name, osd_id=osd_id)
- osd_systemd = open(self.dest_dir + os.path.join(self.systemd_dir, osd_systemd_fname), "w")
- osd_systemd.write(systemd_osd_template.format(cluster=self.cluster_name,
- data=data_dir,
- osd_id=osd_id))
+ def create_osd_startup_script(self, osd_id, data_dir):
+ osd_systemd_fname = systemd_osd_fname_template
+ osd_full_name = self.dest_dir + os.path.join(self.systemd_dir, osd_systemd_fname)
+
+ osd_systemd = open(osd_full_name, 'w')
+
+ osd_systemd.write(systemd_osd_template)
osd_systemd.close()
#Create a symlink to the multi user target
@@ -213,4 +248,19 @@ class CephConfigurationExtension(cliapp.Application):
open(self.dest_dir + sysvinit_file, 'a').close()
+ def create_startup_scripts(self):
+ head_setup_file = os.path.join(self.dest_dir, "root", "setup-ceph-head")
+
+ ceph_head_setup = open(head_setup_file, "w")
+ ceph_head_setup.write(ceph_monitor_config_template)
+ ceph_head_setup.close()
+ os.chmod(head_setup_file, executable_file_permissions)
+
+ osd_setup_file = os.path.join(self.dest_dir, "root", "setup-ceph-node")
+ ceph_node_setup = open(osd_setup_file, "w")
+ ceph_node_setup.write(ceph_storage_config_template)
+ ceph_node_setup.close()
+ os.chmod(osd_setup_file, executable_file_permissions)
+
+
CephConfigurationExtension().run()
diff --git a/chef-system-x86_64-container.morph b/chef-system-x86_64-container.morph
new file mode 100644
index 00000000..3e81c73e
--- /dev/null
+++ b/chef-system-x86_64-container.morph
@@ -0,0 +1,32 @@
+name: chef-system-x86_64-container
+kind: system
+arch: x86_64
+description: Minimal chef system suitable for running in a container
+configuration-extensions:
+- set-hostname
+- simple-network
+- nfsboot
+- install-files
+- busybox-init
+- remove-gcc
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+ artifacts:
+ - build-essential-minimal
+- name: core
+ morph: strata/core.morph
+ artifacts:
+ - core-openssl
+- name: foundation
+ morph: strata/foundation.morph
+ artifacts:
+ - foundation-runtime
+- name: ruby
+ morph: strata/ruby.morph
+ artifacts:
+ - ruby-runtime
+- name: chef
+ morph: strata/chef.morph
+ artifacts:
+ - chef-runtime
diff --git a/chef/manifest b/chef/manifest
new file mode 100644
index 00000000..de6cc542
--- /dev/null
+++ b/chef/manifest
@@ -0,0 +1,3 @@
+0040755 0 0 /root
+0040700 1000 1000 /root/.ssh
+0100600 1000 1000 /root/.ssh/authorized_keys
diff --git a/clusters/cephclient.morph b/clusters/cephclient.morph
new file mode 100644
index 00000000..b4db22e0
--- /dev/null
+++ b/clusters/cephclient.morph
@@ -0,0 +1,20 @@
+name: ceph-cluster
+kind: cluster
+systems:
+- morph: systems/ceph-service-x86_64-generic.morph
+ deploy:
+ ceph-node-virtualbox-image:
+ type: virtualbox-ssh
+ SYSTEM: systems/ceph-service-x86_64-generic.morph
+ location: vbox+ssh://user@machine/ChefNode4/home/user/chefnode4.vdi
+ # HOST_IPADDR and NETMASK should be set to the IP address and netmask of the virtualbox host on the host-only interface.
+ #HOST_IPADDR: 10.0.100.100
+ #NETMASK: 255.255.255.0
+
+ # This is an example of how to configure the three interfaces necessary to support ceph in the BCPC configuration.
+ #NETWORK_CONFIG: lo:loopback;enp0s3:static,address=10.0.100.14,netmask=255.255.255.0;enp0s8:static,address=172.16.100.14,netmask=255.255.255.0;enp0s9:static,address=192.168.100.14,netmask=255.255.255.0
+ DISK_SIZE: 8G
+ HOSTNAME: CephNode4
+
+ # You must install authorized_keys in chef/root/.ssh/ before this will work.
+ INSTALL_FILES: chef/manifest
diff --git a/strata/chef.morph b/strata/chef.morph
new file mode 100644
index 00000000..cd969cda
--- /dev/null
+++ b/strata/chef.morph
@@ -0,0 +1,216 @@
+name: chef
+kind: stratum
+description: Autogenerated by Baserock import tool
+build-depends:
+- morph: strata/ruby.morph
+- morph: strata/core.morph
+chunks:
+- name: yajl
+ morph: strata/chef/yajl.morph
+ repo: upstream:yajl
+ ref: a0ecdde0c042b9256170f2f8890dd9451a4240aa
+ unpetrify-ref: 2.1.0
+ build-depends: []
+- name: libyajl2-1.0.1
+ morph: strata/chef/libyajl2-1.0.1.morph
+ repo: upstream:ruby-gems/libyajl2-gem
+ ref: 98aef032f536d13775bc7b3b69a25ebac9bdee0a
+ unpetrify-ref: 1.0.1
+ build-depends:
+ - yajl
+- name: chef-12.0.0.alpha.0
+ morph: strata/chef/chef-master.morph
+ repo: upstream:ruby-gems/chef
+ ref: 9841bc9c6271c6d9add3aff0c2e11239cfb129ca
+ unpetrify-ref: 12.0.3
+ build-depends: []
+- name: chef-zero-2.2
+ morph: strata/chef/chef-zero-2.2.morph
+ repo: upstream:ruby-gems/chef-zero
+ ref: 231c3abd052e606820297a97e4bc32bdab656a02
+ unpetrify-ref: v2.2
+ build-depends: []
+- name: coderay-1.1.0.rc1
+ morph: strata/chef/coderay-1.1.0.morph
+ repo: upstream:ruby-gems/coderay
+ ref: a48037b85a12228431b32103786456f36beb355f
+ unpetrify-ref: v1.1.0
+ build-depends: []
+- name: erubis-master
+ morph: strata/chef/erubis-master.morph
+ repo: upstream:ruby-gems/erubis
+ ref: 14d3eab57fbc361312c8f3af350cbf9a5bafce17
+ unpetrify-ref: master
+ build-depends: []
+- name: ffi-1.9.3
+ morph: strata/chef/ffi-1.9.3.morph
+ repo: upstream:ruby-gems/ffi
+ ref: d982b7049336106c04f7721045dc5613b16d3545
+ unpetrify-ref: 1.9.3
+ build-depends: []
+- name: ffi-yajl-1.0.2
+ morph: strata/chef/ffi-yajl-master.morph
+ repo: upstream:ruby-gems/ffi-yajl
+ ref: 3a4bc4259fd67af0ff4a8c1d3d71cfbaed9c112f
+ unpetrify-ref: master
+ build-depends:
+ - libyajl2-1.0.1
+- name: hashie-2.1.2
+ morph: strata/chef/hashie-2.1.2.morph
+ repo: upstream:ruby-gems/hashie
+ ref: 95b97fbff2cac643d56ec718cb708665500682e5
+ unpetrify-ref: v2.1.2
+ build-depends: []
+- name: highline-1.6.21
+ morph: strata/chef/highline-master.morph
+ repo: upstream:ruby-gems/highline
+ ref: 51de22e436e6d45696759d673d7b9ceba16cae39
+ unpetrify-ref: master
+ build-depends: []
+- name: hoe-master
+ morph: strata/chef/hoe-master.morph
+ repo: upstream:ruby-gems/hoe
+ ref: d94b26b4687be0a24d04b7cb582753fbec33d7e4
+ unpetrify-ref: master
+ build-depends: []
+- name: diff-lcs-1.2.5
+ morph: strata/chef/diff-lcs-1.2.5.morph
+ repo: upstream:diff-lcs
+ ref: d53e92242b9dd6745e56a0ff4ba15d2f62052b91
+ unpetrify-ref: v1.2.5
+ build-depends:
+ - hoe-master
+- name: ipaddress-master
+ morph: strata/chef/ipaddress-master.morph
+ repo: upstream:ruby-gems/ipaddress
+ ref: dae93ad0e4fb9a5d547a15dae0c3f2417078c845
+ unpetrify-ref: master
+ build-depends: []
+- name: json-1.8.1
+ morph: strata/chef/json-1.8.1.morph
+ repo: upstream:ruby-gems/json
+ ref: 92a96dea2b24b9c68856004d69491f46aedd0925
+ unpetrify-ref: v1.8.1
+ build-depends: []
+- name: method_source-0.8.1
+ morph: strata/chef/method_source-0.8.2.morph
+ repo: upstream:ruby-gems/method_source
+ ref: 1b1f8323a7c25f29331fe32511f50697e5405dbd
+ unpetrify-ref: v0.8.2
+ build-depends: []
+- name: mime-types-1.25.1
+ morph: strata/chef/mime-types-1.25.1.morph
+ repo: upstream:ruby-gems/mime-types
+ ref: 6be836f59a041893cfc1c25668b3aa3552a7e334
+ unpetrify-ref: v1.25.1
+ build-depends:
+ - hoe-master
+- name: mixlib-authentication-1.3.0
+ morph: strata/chef/mixlib-authentication-1.3.0.morph
+ repo: upstream:ruby-gems/mixlib-authentication
+ ref: db24a56c6f5b99114998a50942220a7023060229
+ unpetrify-ref: 1.3.0
+ build-depends: []
+- name: mixlib-cli-1.5.0
+ morph: strata/chef/mixlib-cli-1.5.0.morph
+ repo: upstream:ruby-gems/mixlib-cli
+ ref: b3b3c12141b5380ec61945770690fc1ae31d92b0
+ unpetrify-ref: 1.5.0
+ build-depends: []
+- name: mixlib-config-2.1.0
+ morph: strata/chef/mixlib-config-2.1.0.morph
+ repo: upstream:ruby-gems/mixlib-config
+ ref: c5e2dee2beb5fdd17442ff92e520f2ef01d17ee5
+ unpetrify-ref: v2.1.0
+ build-depends: []
+- name: mixlib-log-1.6.0
+ morph: strata/chef/mixlib-log-master.morph
+ repo: upstream:ruby-gems/mixlib-log
+ ref: 50ec55964ce19d3a8a14050be9a23c4b8990e2f0
+ unpetrify-ref: master
+ build-depends: []
+- name: mixlib-shellout-1.4.0
+ morph: strata/chef/mixlib-shellout-1.4.0.morph
+ repo: upstream:ruby-gems/mixlib-shellout
+ ref: a04ce6db22edf0575c50e18ae2db09adced7dedc
+ unpetrify-ref: 1.4.0
+ build-depends: []
+- name: net-dhcp-1.2.1
+ morph: strata/chef/net-dhcp-1.2.1.morph
+ repo: upstream:net-dhcp-ruby
+ ref: b644922a08aa09e2ce75f8f9f9fa1f0b8cecb2e9
+ unpetrify-ref: v1.2.1
+ build-depends: []
+- name: net-ssh-2.9.1
+ morph: strata/chef/net-ssh-2.9.1.morph
+ repo: upstream:ruby-gems/net-ssh
+ ref: 9f8607984d8e904f211cc5edb39ab2a2ca94008e
+ unpetrify-ref: v2.9.1
+ build-depends: []
+- name: net-ssh-gateway-1.2.0
+ morph: strata/chef/net-ssh-gateway-1.2.0.morph
+ repo: upstream:ruby-gems/net-ssh-gateway
+ ref: 1de7611a7f7cedbe7a4c6cf3798c88d00637582d
+ unpetrify-ref: v1.2.0
+ build-depends: []
+- name: net-ssh-multi-1.2.0
+ morph: strata/chef/net-ssh-multi-1.2.0.morph
+ repo: upstream:ruby-gems/net-ssh-multi
+ ref: b659f2884b2c9abdbe3bbf3c844937a0799ed5ac
+ unpetrify-ref: v1.2.0
+ build-depends: []
+- name: ohai-7.4.0.dev
+ morph: strata/chef/ohai-master.morph
+ repo: upstream:ruby-gems/ohai
+ ref: 0bf2ed32744445a253082910ee4e07b2b38023a7
+ unpetrify-ref: master
+ build-depends: []
+- name: plist-master
+ morph: strata/chef/plist-master.morph
+ repo: upstream:ruby-gems/plist
+ ref: 12eb82d283cab148183c37c07e3f75a309969dec
+ unpetrify-ref: master
+ build-depends: []
+- name: pry-0.10.1
+ morph: strata/chef/pry-master.morph
+ repo: upstream:ruby-gems/pry
+ ref: 6d5eb0831b50ec729d2dc3356255b49535535e37
+ unpetrify-ref: master
+ build-depends: []
+- name: rack-1.5.2
+ morph: strata/chef/rack-1.5.2.morph
+ repo: upstream:ruby-gems/rack
+ ref: ac590d055c936bb9a618e955a690dc836c625211
+ unpetrify-ref: 1.5.2
+ build-depends: []
+- name: slop-3.6.0
+ morph: strata/chef/slop-3.6.0.morph
+ repo: upstream:ruby-gems/slop
+ ref: c3f84e7e794004f9ae6958c13ef3dd3038c2c0eb
+ unpetrify-ref: v3.6.0
+ build-depends: []
+- name: systemu-2.6.4
+ morph: strata/chef/systemu-master.morph
+ repo: upstream:ruby-gems/systemu
+ ref: 35340f1e91941af47988b1b9d77705493b96d3db
+ unpetrify-ref: master
+ build-depends: []
+- name: wmi-lite-1.0.0
+ morph: strata/chef/wmi-lite-1.0.0.morph
+ repo: upstream:ruby-gems/wmi-lite
+ ref: 9377836dc0a5487474038ec727f02f9b33facfa6
+ unpetrify-ref: 1.0.0
+ build-depends: []
+- name: libpopt
+ morph: strata/core/libpopt.morph
+ repo: upstream:libpopt
+ ref: c224abf28f4ff9bbf292908324359cb5905addf8
+ unpetrify-ref: master
+ build-depends: []
+- name: sgdisk
+ morph: strata/core/sgdisk.morph
+ repo: upstream:sgdisk
+ ref: a920398fa393f9d6301b32b191bc01e086ab8bc8
+ unpetrify-ref: master
+ build-depends:
+ - libpopt
diff --git a/strata/chef/chef-master.morph b/strata/chef/chef-master.morph
new file mode 100644
index 00000000..61c12ca0
--- /dev/null
+++ b/strata/chef/chef-master.morph
@@ -0,0 +1,20 @@
+name: chef-12.0.0.alpha.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: chef-12.0.0.alpha.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build chef.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./chef-12.0.0.alpha.0.gem
+- mkdir -p "$DESTDIR"/etc
+- |
+ cat << EOF > "$DESTDIR/etc/lsb-release"
+ DISTRIB_ID=Baserock
+ DISTRIB_CODENAME=baserock
+ DISTRIB_DESCRIPTION="Baserock"
+ EOF
diff --git a/strata/chef/chef-zero-2.2.morph b/strata/chef/chef-zero-2.2.morph
new file mode 100644
index 00000000..11407ae3
--- /dev/null
+++ b/strata/chef/chef-zero-2.2.morph
@@ -0,0 +1,13 @@
+name: chef-zero-2.2
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: chef-zero-2.2-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build chef-zero.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./chef-zero-2.2.gem
diff --git a/strata/chef/coderay-1.1.0.morph b/strata/chef/coderay-1.1.0.morph
new file mode 100644
index 00000000..a380b911
--- /dev/null
+++ b/strata/chef/coderay-1.1.0.morph
@@ -0,0 +1,13 @@
+name: coderay-1.1.0.rc1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: coderay-1.1.0.rc1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build coderay.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./coderay-1.1.0.rc1.gem
diff --git a/strata/chef/diff-lcs-1.2.5.morph b/strata/chef/diff-lcs-1.2.5.morph
new file mode 100644
index 00000000..3585467f
--- /dev/null
+++ b/strata/chef/diff-lcs-1.2.5.morph
@@ -0,0 +1,13 @@
+name: diff-lcs-1.2.5
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: diff-lcs-1.2.5-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build diff-lcs.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./diff-lcs-1.2.5.gem
diff --git a/strata/chef/erubis-master.morph b/strata/chef/erubis-master.morph
new file mode 100644
index 00000000..f15e0968
--- /dev/null
+++ b/strata/chef/erubis-master.morph
@@ -0,0 +1,19 @@
+---
+name: erubis-master
+kind: chunk
+build-system: manual
+products:
+- artifact: erubis-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+configure-commands:
+# Manually do what it seems like the 'rook' build system would do, if it worked
+# Values taken from 'Rookbook.props'.
+- find -type f -exec sed -e 's/\$Release\$/2.7.0/g' -i \{} \;
+- find -type f -exec sed -e 's/\$Copyright\$/copyright(c) 2006-2011 kuwata-lab.com all rights reserved./g' -i \{} \;
+build-commands:
+- gem build erubis.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./erubis-2.7.0.gem
diff --git a/strata/chef/ffi-1.9.3.morph b/strata/chef/ffi-1.9.3.morph
new file mode 100644
index 00000000..672f0bd7
--- /dev/null
+++ b/strata/chef/ffi-1.9.3.morph
@@ -0,0 +1,13 @@
+name: ffi-1.9.3
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: ffi-1.9.3-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build ffi.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./ffi-1.9.3.gem
diff --git a/strata/chef/ffi-yajl-master.morph b/strata/chef/ffi-yajl-master.morph
new file mode 100644
index 00000000..5d3c0792
--- /dev/null
+++ b/strata/chef/ffi-yajl-master.morph
@@ -0,0 +1,13 @@
+name: ffi-yajl-1.0.2
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: ffi-yajl-1.0.2-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build ffi-yajl.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./ffi-yajl-1.0.2.gem
diff --git a/strata/chef/hashie-2.1.2.morph b/strata/chef/hashie-2.1.2.morph
new file mode 100644
index 00000000..a4fb46f6
--- /dev/null
+++ b/strata/chef/hashie-2.1.2.morph
@@ -0,0 +1,13 @@
+name: hashie-2.1.2
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: hashie-2.1.2-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build hashie.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./hashie-2.1.2.gem
diff --git a/strata/chef/highline-master.morph b/strata/chef/highline-master.morph
new file mode 100644
index 00000000..5615f6b2
--- /dev/null
+++ b/strata/chef/highline-master.morph
@@ -0,0 +1,13 @@
+name: highline-1.6.21
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: highline-1.6.21-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build highline.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./highline-1.6.21.gem
diff --git a/strata/chef/hoe-master.morph b/strata/chef/hoe-master.morph
new file mode 100644
index 00000000..9fe7ff8e
--- /dev/null
+++ b/strata/chef/hoe-master.morph
@@ -0,0 +1,14 @@
+---
+name: hoe-master
+kind: chunk
+build-system: manual
+products:
+- artifact: hoe-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- rake gem
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./pkg/hoe-3.12.0.gem
diff --git a/strata/chef/ipaddress-master.morph b/strata/chef/ipaddress-master.morph
new file mode 100644
index 00000000..fdaa5de6
--- /dev/null
+++ b/strata/chef/ipaddress-master.morph
@@ -0,0 +1,13 @@
+name: ipaddress-0.8.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: ipaddress-0.8.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build ipaddress.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./ipaddress-0.8.0.gem
diff --git a/strata/chef/json-1.8.1.morph b/strata/chef/json-1.8.1.morph
new file mode 100644
index 00000000..cf25abca
--- /dev/null
+++ b/strata/chef/json-1.8.1.morph
@@ -0,0 +1,13 @@
+name: json-1.8.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: json-1.8.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build json.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./json-1.8.1.gem
diff --git a/strata/chef/libyajl2-1.0.1.morph b/strata/chef/libyajl2-1.0.1.morph
new file mode 100644
index 00000000..d85d1567
--- /dev/null
+++ b/strata/chef/libyajl2-1.0.1.morph
@@ -0,0 +1,13 @@
+name: libyajl2-1.0.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: libyajl2-1.0.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- USE_SYSTEM_LIBYAJL2=yes gem build libyajl2.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- USE_SYSTEM_LIBYAJL2=yes gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./libyajl2-1.0.1.gem
diff --git a/strata/chef/method_source-0.8.2.morph b/strata/chef/method_source-0.8.2.morph
new file mode 100644
index 00000000..5ba20da6
--- /dev/null
+++ b/strata/chef/method_source-0.8.2.morph
@@ -0,0 +1,13 @@
+name: method_source-0.8.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: method_source-0.8.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build method_source.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./method_source-0.8.1.gem
diff --git a/strata/chef/mime-types-1.25.1.morph b/strata/chef/mime-types-1.25.1.morph
new file mode 100644
index 00000000..453c42d5
--- /dev/null
+++ b/strata/chef/mime-types-1.25.1.morph
@@ -0,0 +1,13 @@
+name: mime-types-1.25.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mime-types-1.25.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mime-types.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mime-types-1.25.1.gem
diff --git a/strata/chef/mixlib-authentication-1.3.0.morph b/strata/chef/mixlib-authentication-1.3.0.morph
new file mode 100644
index 00000000..8792ff2c
--- /dev/null
+++ b/strata/chef/mixlib-authentication-1.3.0.morph
@@ -0,0 +1,13 @@
+name: mixlib-authentication-1.3.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mixlib-authentication-1.3.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mixlib-authentication.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mixlib-authentication-1.3.0.gem
diff --git a/strata/chef/mixlib-cli-1.5.0.morph b/strata/chef/mixlib-cli-1.5.0.morph
new file mode 100644
index 00000000..84f3a4b7
--- /dev/null
+++ b/strata/chef/mixlib-cli-1.5.0.morph
@@ -0,0 +1,13 @@
+name: mixlib-cli-1.5.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mixlib-cli-1.5.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mixlib-cli.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mixlib-cli-1.5.0.gem
diff --git a/strata/chef/mixlib-config-2.1.0.morph b/strata/chef/mixlib-config-2.1.0.morph
new file mode 100644
index 00000000..cc6077a5
--- /dev/null
+++ b/strata/chef/mixlib-config-2.1.0.morph
@@ -0,0 +1,13 @@
+name: mixlib-config-2.1.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mixlib-config-2.1.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mixlib-config.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mixlib-config-2.1.0.gem
diff --git a/strata/chef/mixlib-log-master.morph b/strata/chef/mixlib-log-master.morph
new file mode 100644
index 00000000..ddd956c1
--- /dev/null
+++ b/strata/chef/mixlib-log-master.morph
@@ -0,0 +1,13 @@
+name: mixlib-log-1.6.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mixlib-log-1.6.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mixlib-log.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mixlib-log-1.6.0.gem
diff --git a/strata/chef/mixlib-shellout-1.4.0.morph b/strata/chef/mixlib-shellout-1.4.0.morph
new file mode 100644
index 00000000..7087c1c6
--- /dev/null
+++ b/strata/chef/mixlib-shellout-1.4.0.morph
@@ -0,0 +1,13 @@
+name: mixlib-shellout-1.4.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: mixlib-shellout-1.4.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build mixlib-shellout.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./mixlib-shellout-1.4.0.gem
diff --git a/strata/chef/net-dhcp-1.2.1.morph b/strata/chef/net-dhcp-1.2.1.morph
new file mode 100644
index 00000000..88eb4963
--- /dev/null
+++ b/strata/chef/net-dhcp-1.2.1.morph
@@ -0,0 +1,13 @@
+name: net-dhcp-1.2.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: net-dhcp-1.2.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build net-dhcp.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./net-dhcp-1.2.1.gem
diff --git a/strata/chef/net-ssh-2.9.1.morph b/strata/chef/net-ssh-2.9.1.morph
new file mode 100644
index 00000000..c06495d5
--- /dev/null
+++ b/strata/chef/net-ssh-2.9.1.morph
@@ -0,0 +1,15 @@
+name: net-ssh-2.9.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: net-ssh-2.9.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+configure-commands:
+- sed -e '/cert_chain\s*=/d' -e '/signing_key\s*=/d' -i net-ssh.gemspec
+build-commands:
+- gem build net-ssh.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./net-ssh-2.9.1.gem
diff --git a/strata/chef/net-ssh-gateway-1.2.0.morph b/strata/chef/net-ssh-gateway-1.2.0.morph
new file mode 100644
index 00000000..c0425002
--- /dev/null
+++ b/strata/chef/net-ssh-gateway-1.2.0.morph
@@ -0,0 +1,15 @@
+name: net-ssh-gateway-1.2.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: net-ssh-gateway-1.2.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+configure-commands:
+- sed -e '/cert_chain\s*=/d' -e '/signing_key\s*=/d' -i net-ssh-gateway.gemspec
+build-commands:
+- gem build net-ssh-gateway.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./net-ssh-gateway-1.2.0.gem
diff --git a/strata/chef/net-ssh-multi-1.2.0.morph b/strata/chef/net-ssh-multi-1.2.0.morph
new file mode 100644
index 00000000..fc433a37
--- /dev/null
+++ b/strata/chef/net-ssh-multi-1.2.0.morph
@@ -0,0 +1,15 @@
+name: net-ssh-multi-1.2.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: net-ssh-multi-1.2.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+configure-commands:
+- sed -e '/cert_chain\s*=/d' -e '/signing_key\s*=/d' -i net-ssh-multi.gemspec
+build-commands:
+- gem build net-ssh-multi.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./net-ssh-multi-1.2.0.gem
diff --git a/strata/chef/ohai-master.morph b/strata/chef/ohai-master.morph
new file mode 100644
index 00000000..f47dda35
--- /dev/null
+++ b/strata/chef/ohai-master.morph
@@ -0,0 +1,13 @@
+name: ohai-7.4.0.dev
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: ohai-7.4.0.dev-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build ohai.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./ohai-7.4.0.dev.gem
diff --git a/strata/chef/plist-master.morph b/strata/chef/plist-master.morph
new file mode 100644
index 00000000..bef39f7d
--- /dev/null
+++ b/strata/chef/plist-master.morph
@@ -0,0 +1,14 @@
+---
+name: plist-master
+kind: chunk
+build-system: manual
+products:
+- artifact: plist-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- rake gem
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./pkg/plist-3.1.0.gem
diff --git a/strata/chef/pry-master.morph b/strata/chef/pry-master.morph
new file mode 100644
index 00000000..07ebca7a
--- /dev/null
+++ b/strata/chef/pry-master.morph
@@ -0,0 +1,13 @@
+name: pry-0.10.1
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: pry-0.10.1-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build pry.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./pry-0.10.1.gem
diff --git a/strata/chef/rack-1.5.2.morph b/strata/chef/rack-1.5.2.morph
new file mode 100644
index 00000000..50fd960c
--- /dev/null
+++ b/strata/chef/rack-1.5.2.morph
@@ -0,0 +1,13 @@
+name: rack-1.5.2
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: rack-1.5.2-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build rack.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./rack-1.5.2.gem
diff --git a/strata/chef/slop-3.6.0.morph b/strata/chef/slop-3.6.0.morph
new file mode 100644
index 00000000..32101078
--- /dev/null
+++ b/strata/chef/slop-3.6.0.morph
@@ -0,0 +1,13 @@
+name: slop-3.6.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: slop-3.6.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build slop.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./slop-3.6.0.gem
diff --git a/strata/chef/systemu-master.morph b/strata/chef/systemu-master.morph
new file mode 100644
index 00000000..3cc0a5e2
--- /dev/null
+++ b/strata/chef/systemu-master.morph
@@ -0,0 +1,13 @@
+name: systemu-2.6.4
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: systemu-2.6.4-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build systemu.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./systemu-2.6.4.gem
diff --git a/strata/chef/wmi-lite-1.0.0.morph b/strata/chef/wmi-lite-1.0.0.morph
new file mode 100644
index 00000000..bb4b4127
--- /dev/null
+++ b/strata/chef/wmi-lite-1.0.0.morph
@@ -0,0 +1,13 @@
+name: wmi-lite-1.0.0
+kind: chunk
+description: Automatically generated by rubygems.to_chunk
+products:
+- artifact: wmi-lite-1.0.0-doc
+ include:
+ - usr/lib/ruby/gems/\d[\w.]*/doc/.*
+build-commands:
+- gem build wmi-lite.gemspec
+install-commands:
+- mkdir -p "$DESTDIR/$(gem environment home)"
+- gem install --install-dir "$DESTDIR/$(gem environment home)" --bindir "$DESTDIR/$PREFIX/bin"
+ --ignore-dependencies --local ./wmi-lite-1.0.0.gem
diff --git a/strata/chef/yajl.morph b/strata/chef/yajl.morph
new file mode 100644
index 00000000..9dbc8dbf
--- /dev/null
+++ b/strata/chef/yajl.morph
@@ -0,0 +1,6 @@
+name: yajl
+kind: chunk
+description: YAJL JSON parsing library
+build-system: cmake
+max-jobs: 1
+
diff --git a/strata/core/libpopt.morph b/strata/core/libpopt.morph
new file mode 100644
index 00000000..ae27432c
--- /dev/null
+++ b/strata/core/libpopt.morph
@@ -0,0 +1,10 @@
+name: libpopt
+kind: chunk
+configure-commands:
+- autoreconf -if
+- ./configure
+build-commands:
+- make
+install-commands:
+- make DESTDIR="$DESTDIR" install
+
diff --git a/strata/core/sgdisk.morph b/strata/core/sgdisk.morph
new file mode 100644
index 00000000..e792f9d9
--- /dev/null
+++ b/strata/core/sgdisk.morph
@@ -0,0 +1,7 @@
+name: sgdisk
+kind: chunk
+build-commands:
+- make
+install-commands:
+- install -D -m 0755 -o root -g root sgdisk "$DESTDIR$PREFIX/bin/sgdisk"
+
diff --git a/strata/ntpd.morph b/strata/ntpd.morph
new file mode 100644
index 00000000..e45e6424
--- /dev/null
+++ b/strata/ntpd.morph
@@ -0,0 +1,10 @@
+name: ntpd
+kind: stratum
+build-depends:
+- morph: strata/core.morph
+chunks:
+- name: ntpd
+ repo: upstream:ntp
+ ref: d4b7cd9723cce9561fa15f74b90b85a3a61b5ef8
+ unpetrify-ref: ntp-dev-4.2.7p482
+ build-depends: []
diff --git a/systems/ceph-service-x86_64-generic.morph b/systems/ceph-service-x86_64-generic.morph
index f54af0f7..1ddaf818 100644
--- a/systems/ceph-service-x86_64-generic.morph
+++ b/systems/ceph-service-x86_64-generic.morph
@@ -18,6 +18,28 @@ strata:
morph: strata/ceph-service.morph
- name: tools
morph: strata/tools.morph
+- name: ruby
+ morph: strata/ruby.morph
+- name: ntpd
+ morph: strata/ntpd.morph
+- name: morph-utils
+ morph: strata/morph-utils.morph
+- name: openstack-clients
+ morph: strata/openstack-clients.morph
+- name: cloudinit-support
+ morph: strata/cloudinit-support.morph
+- name: nodejs
+ morph: strata/nodejs.morph
+- name: lorry
+ morph: strata/lorry.morph
+- name: baserock-import
+ morph: strata/baserock-import.morph
+- name: nfs
+ morph: strata/nfs.morph
+- name: python-tools
+ morph: strata/python-tools.morph
+- name: chef
+ morph: strata/chef.morph
configuration-extensions:
- set-hostname
- add-config-files