diff options
78 files changed, 651 insertions, 300 deletions
diff --git a/clusters/moonshot-pxe-armv8l64.morph b/clusters/moonshot-pxe-armv8l64.morph new file mode 100644 index 00000000..3286c72e --- /dev/null +++ b/clusters/moonshot-pxe-armv8l64.morph @@ -0,0 +1,22 @@ +name: moonshot-m400-armv8l64-netboot +kind: cluster +description: | + Deploy an armv8l64 devel system into a HP Moonshot node + + The system will be configured to boot through PXE from existing DHCP, + TFTP and NFS servers. +systems: +- morph: systems/devel-system-armv8l64.morph + deploy: + netboot: + type: pxeboot + location: 14:58:d0:57:7f:42 + PXEBOOT_MODE: existing-server + PXEBOOT_CONFIG_TFTP_ADDRESS: sftp://192.168.0.1/srv/nfsboot/tftp/ + PXEBOOT_ROOTFS_RSYNC_ADDRESS: rsync://192.168.0.1/srv/nfsboot/ + KERNEL_ARGS: console=ttyS0,9600n8r rw + DTB_PATH: boot/m400-1003.dtb + HOSTNAME: baserock-m400-node31 + MOONSHOT_KERNEL: yes + INSTALL_FILES: moonshot/manifest + PXE_INSTALLER: no diff --git a/moonshot-kernel.configure b/moonshot-kernel.configure new file mode 100644 index 00000000..11d01751 --- /dev/null +++ b/moonshot-kernel.configure @@ -0,0 +1,33 @@ +#!/bin/sh +# +# Copyright (C) 2014 Codethink Limited +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# This is a "morph deploy" configuration extension to convert a plain +# kernel Image to uImage, for an HP Moonshot m400 cartridge + +set -eu + +case "$MOONSHOT_KERNEL" in + True|yes) + echo "Converting kernel image for Moonshot" + mkimage -A arm -O linux -C none -T kernel -a 0x00080000 \ + -e 0x00080000 -n Linux -d "$1/boot/vmlinux" "$1/boot/uImage" + ;; + *) + echo Unrecognised option "$MOONSHOT_KERNEL" to MOONSHOT_KERNEL + exit 1 + ;; +esac diff --git a/moonshot/boot/m400-1003.dtb b/moonshot/boot/m400-1003.dtb Binary files differnew file mode 100644 index 00000000..d6fd83ee --- /dev/null +++ b/moonshot/boot/m400-1003.dtb diff --git a/moonshot/manifest b/moonshot/manifest new file mode 100644 index 00000000..dd80fe49 --- /dev/null +++ b/moonshot/manifest @@ -0,0 +1,2 @@ +0040755 0 0 /boot +0100744 0 0 /boot/m400-1003.dtb diff --git a/pxeboot.write b/pxeboot.write index e33da527..399914f5 100755 --- a/pxeboot.write +++ b/pxeboot.write @@ -223,11 +223,13 @@ class PXEBoot(morphlib.writeexts.WriteExtension): @contextlib.contextmanager def _remote_tempdir(self, hostname, template): + persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') td = cliapp.ssh_runcmd(hostname, ['mktemp', '-d', template]).strip() try: yield td finally: - cliapp.ssh_runcmd(hostname, ['find', td, '-delete']) + if not persist: + cliapp.ssh_runcmd(hostname, ['find', td, '-delete']) def _serve_tftpd(self, sock, host, port, interface, tftproot): self.settings.progname = 'tftp server' @@ -321,6 +323,7 @@ class PXEBoot(morphlib.writeexts.WriteExtension): @contextlib.contextmanager def _remote_copy(self, hostname, src, dst): + persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') with open(src, 'r') as f: cliapp.ssh_runcmd(hostname, ['install', '-D', '-m644', '/proc/self/fd/0', @@ -328,7 +331,20 @@ class PXEBoot(morphlib.writeexts.WriteExtension): try: yield finally: - cliapp.ssh_runcmd(hostname, ['rm', dst]) + if not persist: + cliapp.ssh_runcmd(hostname, ['rm', dst]) + + @contextlib.contextmanager + def _remote_symlink(self, hostname, src, dst): + persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') + cliapp.ssh_runcmd(hostname, + ['ln', '-s', '-f', src, dst], + stdin=None, stdout=None, stderr=None) + try: + yield + finally: + if not persist: + cliapp.ssh_runcmd(hostname, ['rm', '-f', dst]) @contextlib.contextmanager def remote_kernel(self, rootfs, tftp_url, macaddr): @@ -346,6 +362,21 @@ class PXEBoot(morphlib.writeexts.WriteExtension): yield basename @contextlib.contextmanager + def remote_fdt(self, rootfs, tftp_url, macaddr): + fdt_rel_path = os.environ.get('DTB_PATH', '') + if fdt_rel_path == '': + yield + fdt_abs_path = os.path.join(rootfs, fdt_rel_path) + if not fdt_abs_path: + raise cliapp.AppException('Failed to locate Flattened Device Tree') + url = urlparse.urlsplit(tftp_url) + basename = '{}-fdt'.format(_normalise_macaddr(macaddr)) + target_path = os.path.join(url.path, basename) + with self._remote_copy(hostname=url.hostname, src=fdt_abs_path, + dst=target_path): + yield basename + + @contextlib.contextmanager def local_nfsroot(self, rootfs, target_ip): nfsroot = target_ip + ':' + rootfs self.status(msg='Exporting %(nfsroot)s as local nfsroot', @@ -362,17 +393,21 @@ class PXEBoot(morphlib.writeexts.WriteExtension): @contextlib.contextmanager def remote_nfsroot(self, rootfs, rsync_url, macaddr): url = urlparse.urlsplit(rsync_url) - template = os.path.join(url.path, 'nfsroot.XXXXXXXXXX') + template = os.path.join(url.path, + _normalise_macaddr(macaddr) + '.XXXXXXXXXX') with self._remote_tempdir(hostname=url.hostname, template=template) \ as tempdir: - nfsroot = urlparse.urlunsplit(url.scheme, url.netloc, tempdir, - url.query, url.fragment) - cliapp.runcmd(['rsync', '-asXSPH', '--delete', rootfs, nfsroot], - stdin=None, stdout=None, stderr=None) - yield basename + nfsroot = urlparse.urlunsplit((url.scheme, url.netloc, tempdir, + url.query, url.fragment)) + cliapp.runcmd(['rsync', '-asSPH', '--delete', rootfs, nfsroot], + stdin=None, stdout=open(os.devnull, 'w'), + stderr=None) + yield os.path.join(os.path.basename(tempdir), + os.path.basename(rootfs)) @staticmethod - def _write_pxe_config(fh, kernel_tftp_url, rootfs_nfs_url, extra_args=''): + def _write_pxe_config(fh, kernel_tftp_url, rootfs_nfs_url, + fdt_subpath=None, extra_args=''): fh.write(textwrap.dedent('''\ DEFAULT default LABEL default @@ -380,6 +415,8 @@ class PXEBoot(morphlib.writeexts.WriteExtension): APPEND root=/dev/nfs ip=dhcp nfsroot={rootfs_nfs_url} {extra_args} ''').format(kernel_url=kernel_tftp_url, rootfs_nfs_url=rootfs_nfs_url, extra_args=extra_args)) + if fdt_subpath is not None: + fh.write("FDT {}\n".format(fdt_subpath)) fh.flush() @contextlib.contextmanager @@ -401,19 +438,29 @@ class PXEBoot(morphlib.writeexts.WriteExtension): @contextlib.contextmanager def remote_pxeboot_config(self, tftproot, kernel_tftproot, kernel_subpath, - rootfs_nfsroot, rootfs_subpath, macaddr): - rootfs_nfs_url = '{}:{}/{}'.format(ip, rootfs_nfsroot, rootfs_subpath) - kernel_tftp_url = '{}/{}'.format(kernel_tftproot, kernel_subpath) + fdt_subpath, rootfs_nfsroot, rootfs_subpath, + macaddr): + rootfs_nfs_url = '{}/{}'.format(rootfs_nfsroot, rootfs_subpath) + url = urlparse.urlsplit(kernel_tftproot) + kernel_tftp_url = '{}:{}'.format(url.netloc, kernel_subpath) pxe_cfg_filename = _normalise_macaddr(macaddr) url = urlparse.urlsplit(tftproot) - inst_cfg_path = os.path.join(url.path, 'pxelinux.cfg', - pxe_cfg_filename) + inst_cfg_path = os.path.join(url.path, 'pxelinux.cfg') with tempfile.NamedTemporaryFile() as f: - self._write_pxe_config(fh=f, kernel_tftp_url=kernel_tftp_url, - rootfs_nfs_url=rootfs_nfs_url, - extra_args=os.environ.get('KERNEL_ARGS','')) - with self._remote_copy(hostname=url.hostname, src=f.name, - dst=inst_cfg_path): + self._write_pxe_config( + fh=f, kernel_tftp_url=kernel_tftp_url, + fdt_subpath=fdt_subpath, + rootfs_nfs_url=rootfs_nfs_url, + extra_args=os.environ.get('KERNEL_ARGS','')) + with self._remote_copy( + hostname=url.hostname, src=f.name, + dst=os.path.join(inst_cfg_path, + pxe_cfg_filename)), \ + self._remote_symlink( + hostname=url.hostname, + src=pxe_cfg_filename, + dst=os.path.join(inst_cfg_path, + '01-' + pxe_cfg_filename)): yield @contextlib.contextmanager @@ -660,19 +707,24 @@ class PXEBoot(morphlib.writeexts.WriteExtension): url = urlparse.urlsplit(rootfs_rsync) nfsroot = os.environ.get('PXEBOOT_ROOTFS_NFSROOT', '%s:%s' % (url.hostname, url.path)) - with self.remote_kernel(rootfs=temp_root, url=kernel_tftpaddr, + with self.remote_kernel(rootfs=temp_root, tftp_url=kernel_tftpaddr, macaddr=macaddr) as kernel_subpath, \ - self.remote_nfsroot(rootfs=temp_root, rsync_url=rootfs_rsync)\ - as rootfs_subpath, \ + self.remote_fdt(rootfs=temp_root, tftp_url=kernel_tftpaddr, + macaddr=macaddr) as fdt_subpath, \ + self.remote_nfsroot(rootfs=temp_root, rsync_url=rootfs_rsync, \ + macaddr=macaddr) as rootfs_subpath, \ self.remote_pxeboot_config(tftproot=config_tftpaddr, kernel_tftproot=kernel_tftproot, kernel_subpath=kernel_subpath, + fdt_subpath=fdt_subpath, rootfs_nfsroot=nfsroot, rootfs_subpath=rootfs_subpath, macaddr=macaddr): - self.ipmi_pxe_reboot_target() - self.wait_for_target_to_install() - self.ipmi_reboot_target() + persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') + if not persist: + self.ipmi_pxe_reboot_target() + self.wait_for_target_to_install() + self.ipmi_reboot_target() else: cliapp.AppException('Invalid PXEBOOT_MODE: %s' % mode) diff --git a/pxeboot.write.help b/pxeboot.write.help index 58a86957..3aefe75e 100644 --- a/pxeboot.write.help +++ b/pxeboot.write.help @@ -121,3 +121,34 @@ help: > If it is possible for the target to notify you that it has finished installing, you can put a command in here to wait for the event. + + + # Misc + + + ## KERNEL_ARGS + + + Additional kernel command line options. Note that the following + options + + root=/dev/nfs ip=dhcp nfsroot=$NFSROOT` + + are implicitly added by the extension. + + + ## DTB_PATH + + + Location in the deployed root filesystem of the Flattened Device + Tree blob (FDT) to use. + + + ## PXE_INSTALLER + + + If set to `no`, `False` or any other YAML value for false, the + remotely installed rootfs, kernel, bootloader config file and + device tree blob if specified, will not be removed after the + deployment finishes. This variable is only meanful on the + `existing-server` mode. diff --git a/strata/ansible.morph b/strata/ansible.morph index e0cb8581..5903017a 100644 --- a/strata/ansible.morph +++ b/strata/ansible.morph @@ -3,28 +3,11 @@ kind: stratum description: A stratum with ansible and its dependencies build-depends: - morph: strata/core.morph +- morph: strata/python-common.morph chunks: -- name: paramiko - repo: upstream:paramiko - ref: 951faed80b017e553a27c4cb98f210df44341f8f - unpetrify-ref: baserock/morph - build-depends: [] -- name: markupsafe - repo: upstream:markupsafe - ref: 58cde05bdcb0a53d87213b4a5bb605937f178171 - unpetrify-ref: baserock/morph - build-depends: [] -- name: jinja2 - repo: upstream:jinja2 - ref: 91fa138077d9ed5cf73a7903479077498e695492 - unpetrify-ref: baserock/morph - build-depends: - - markupsafe - name: ansible morph: strata/ansible/ansible.morph repo: upstream:ansible - ref: aa56db7e28d4fe256471043b05120c2f41a840e5 - unpetrify-ref: baserock/morph - build-depends: - - paramiko - - jinja2 + ref: ebc8d48d34296fe010096f044e2b7591df37a622 + unpetrify-ref: baserock/v1.8.4 + build-depends: [] diff --git a/strata/ansible/ansible.morph b/strata/ansible/ansible.morph index da434f03..dbc6ec4b 100644 --- a/strata/ansible/ansible.morph +++ b/strata/ansible/ansible.morph @@ -2,4 +2,8 @@ name: ansible kind: chunk build-system: python-distutils post-install-commands: -- install -D -m644 ansible.cfg "$DESTDIR/etc/ansible/ansible.cfg" +- | + install -D -m644 /proc/self/fd/0 "$DESTDIR/etc/ansible/ansible.cfg" <<EOF + [defaults] + log_path=/var/log/ansible + EOF diff --git a/strata/apache-httpd-server.morph b/strata/apache-httpd-server.morph index 1692c61c..065ec155 100644 --- a/strata/apache-httpd-server.morph +++ b/strata/apache-httpd-server.morph @@ -4,6 +4,7 @@ description: apache http web server and some utilities related to it build-depends: - morph: strata/tools.morph - morph: strata/pcre-utils.morph +- morph: strata/python-core.morph chunks: - name: apr morph: strata/apache-httpd-server/apr.morph diff --git a/strata/bsp-armv8l64-generic.morph b/strata/bsp-armv8l64-generic.morph index 702858de..63c4ff5b 100644 --- a/strata/bsp-armv8l64-generic.morph +++ b/strata/bsp-armv8l64-generic.morph @@ -9,7 +9,7 @@ build-depends: - morph: strata/core.morph chunks: - name: linux-armv8l64-generic - morph: strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph + morph: strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph repo: upstream:linux ref: 5f06398ae6a04f414932243de38b5cf3d264ff84 unpetrify-ref: baserock/apm-xgene-m400-moonshot-cartridge diff --git a/strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph b/strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph index 120239b9..4eb92de4 100644 --- a/strata/bsp-armv8l64-generic/bsp-armv8l64-generic.morph +++ b/strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph @@ -102,3 +102,4 @@ build-commands: install-commands: - mkdir -p "$DESTDIR"/boot - make install dtbs_install INSTALL_PATH="$DESTDIR/boot" +- cp arch/arm64/boot/Image "$DESTDIR/boot/vmlinux" diff --git a/strata/build-essential/glibc.morph b/strata/build-essential/glibc.morph index 789283eb..a4007bd4 100644 --- a/strata/build-essential/glibc.morph +++ b/strata/build-essential/glibc.morph @@ -84,3 +84,9 @@ install-commands: netgroup: nis EOF - install -m 644 -o root -g root nsswitch.conf "$DESTDIR/etc/nsswitch.conf" +# Compatibility symlink to work around the ABI break GLIBC introduced for +# ARMv7 hard-float platforms in commit d3b36017d43. +- case "$MORPH_ARCH" in + armv7*hf*) + ln -s ld-2.20.so "$DESTDIR/lib/ld-linux.so.3" ;; + esac diff --git a/strata/chef.morph b/strata/chef.morph index cd969cda..9105a2e0 100644 --- a/strata/chef.morph +++ b/strata/chef.morph @@ -202,13 +202,13 @@ chunks: unpetrify-ref: 1.0.0 build-depends: [] - name: libpopt - morph: strata/core/libpopt.morph + morph: strata/chef/libpopt.morph repo: upstream:libpopt ref: c224abf28f4ff9bbf292908324359cb5905addf8 unpetrify-ref: master build-depends: [] - name: sgdisk - morph: strata/core/sgdisk.morph + morph: strata/chef/sgdisk.morph repo: upstream:sgdisk ref: a920398fa393f9d6301b32b191bc01e086ab8bc8 unpetrify-ref: master diff --git a/strata/core/libpopt.morph b/strata/chef/libpopt.morph index ae27432c..6adde30c 100644 --- a/strata/core/libpopt.morph +++ b/strata/chef/libpopt.morph @@ -1,10 +1,6 @@ name: libpopt kind: chunk +build-system: autotools configure-commands: - autoreconf -if - ./configure -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install - diff --git a/strata/core/sgdisk.morph b/strata/chef/sgdisk.morph index e792f9d9..e792f9d9 100644 --- a/strata/core/sgdisk.morph +++ b/strata/chef/sgdisk.morph diff --git a/strata/cloudinit-support.morph b/strata/cloudinit-support.morph index 14786dde..5281b745 100644 --- a/strata/cloudinit-support.morph +++ b/strata/cloudinit-support.morph @@ -3,7 +3,8 @@ kind: stratum description: A stratum with cloudinit to fit a system in the OpenStack cloud. build-depends: - morph: strata/build-essential.morph -- morph: strata/core.morph +- morph: strata/python-core.morph +- morph: strata/python-common.morph - morph: strata/foundation.morph chunks: - name: configobj @@ -11,23 +12,6 @@ chunks: ref: 935a78736e4eb43b9fafae87f5e9902328673f63 unpetrify-ref: baserock/morph build-depends: [] -- name: python-prettytable - morph: strata/cloudinit-support/python-prettytable.morph - repo: upstream:python-prettytable - ref: 941133673e5a0003cd5ce1b6db2a51cf3307d9c1 - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-json-patch - repo: upstream:python-json-patch - ref: 27c7032de25923593fa17cc14f535fb7abd52448 - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-json-pointer - repo: upstream:python-json-pointer - ref: 48dce313141ba5bf0d2f3dd2e590042c05755e53 - unpetrify-ref: baserock/morph - build-depends: - - python-json-patch - name: python-cheetah repo: upstream:python-cheetah ref: 831aa6b99d9b4fb012ee644d8e80e0bc0eb6d6ed @@ -46,6 +30,4 @@ chunks: build-depends: - boto - configobj - - python-prettytable - - python-json-pointer - python-cheetah diff --git a/strata/cloudinit-support/python-prettytable.morph b/strata/cloudinit-support/python-prettytable.morph deleted file mode 100644 index cf1ac6e1..00000000 --- a/strata/cloudinit-support/python-prettytable.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: python-prettytable -kind: chunk -build-commands: -- cd src && python setup.py build -install-commands: -- cd src && python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/strata/core.morph b/strata/core.morph index a5ec5204..5de96bd4 100644 --- a/strata/core.morph +++ b/strata/core.morph @@ -121,16 +121,13 @@ chunks: repo: upstream:libtool-tarball ref: c026ca36e37d2643623a75d0d3e9e451023139f3 unpetrify-ref: libtool-2.4.6 - build-depends: - - bash + build-depends: [] - name: gtk-doc-stub repo: upstream:gtk-doc-stub ref: 58ec0d8593541ef7ae522ce42ebec6f98536c4e0 unpetrify-ref: baserock/morph build-depends: - - autoconf-tarball - - automake - - libtool-tarball + - bash - name: xz repo: upstream:xz ref: a0cd05ee71d330b79ead6eb9222e1b24e1559d3a @@ -197,10 +194,9 @@ chunks: - libexpat - openssl-new - name: help2man - morph: strata/core/help2man.morph repo: upstream:help2man - ref: 0191a5f61525f8deea2ae8bdfea88190d85b6a71 - unpetrify-ref: baserock/morph + ref: 83bab7e2e8e24a380266a9a247c029c49b0de666 + unpetrify-ref: baserock/v1.46.5 build-depends: - autoconf-tarball - automake @@ -212,7 +208,6 @@ chunks: build-depends: - autoconf-tarball - automake - - bash - flex - gettext-tarball - git @@ -287,5 +282,4 @@ chunks: ref: 3bbb26c928a147cfcf0756f1cc0a1307e5cc663f unpetrify-ref: baserock/v2.7.1 build-depends: - - bash - shadow diff --git a/strata/core/bison.morph b/strata/core/bison.morph index a9497d4e..5f50fe89 100644 --- a/strata/core/bison.morph +++ b/strata/core/bison.morph @@ -1,10 +1,5 @@ name: bison kind: chunk -configure-commands: -- echo $(grep '* Noteworthy changes in release' NEWS | grep -v '?\\.?' | head -n1 | cut -d' ' -f6) > .tarball-version -- bash bootstrap --skip-po -- ./configure --prefix=/usr --disable-nls -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install +build-system: autotools +pre-configure-commands: +- ./bootstrap --skip-po diff --git a/strata/core/help2man.morph b/strata/core/help2man.morph deleted file mode 100644 index e25a8d8e..00000000 --- a/strata/core/help2man.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: help2man -kind: chunk -configure-commands: -- autoreconf -i -- ./configure --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/strata/core/patch.morph b/strata/core/patch.morph index 01d977c4..b7f146ef 100644 --- a/strata/core/patch.morph +++ b/strata/core/patch.morph @@ -1,9 +1,5 @@ name: patch kind: chunk -configure-commands: -- bash bootstrap --skip-po -- ./configure --prefix="$PREFIX" --disable-nls -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install +build-system: autotools +pre-configure-commands: +- ./bootstrap --skip-po diff --git a/strata/coreutils-common/coreutils.morph b/strata/coreutils-common/coreutils.morph index cc1ae683..19542d79 100644 --- a/strata/coreutils-common/coreutils.morph +++ b/strata/coreutils-common/coreutils.morph @@ -3,7 +3,7 @@ kind: chunk build-system: autotools configure-commands: - sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- bash bootstrap --skip-po +- bash bootstrap --skip-po --no-git --gnulib-srcdir=gnulib - FORCE_UNSAFE_CONFIGURE=1 ./configure --prefix="$PREFIX" --disable-nls build-commands: - make WERROR_CFLAGS= diff --git a/strata/cross-bootstrap.morph b/strata/cross-bootstrap.morph index be4f4db8..3aa61caf 100644 --- a/strata/cross-bootstrap.morph +++ b/strata/cross-bootstrap.morph @@ -18,64 +18,11 @@ chunks: unpetrify-ref: baserock/morph build-depends: - groff -- name: python-ttystatus - morph: strata/cross-bootstrap/python-ttystatus.morph - repo: upstream:python-ttystatus - ref: 47d871216cea6ce3b9d6efd70e9a0f38ab8604f0 - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-coveragepy - morph: strata/cross-bootstrap/python-coveragepy.morph - repo: upstream:python-coveragepy - ref: 77d2e3bfd8fb325092aaed37ba1378054d182d19 - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-coverage-test-runner - repo: upstream:python-coverage-test-runner - ref: 8ea9421ac3384b2e88e0c36f2cfa52586c4798b7 - unpetrify-ref: baserock/morph - build-depends: - - python-coveragepy -- name: cliapp - repo: upstream:cliapp - ref: cec20cedd062a3aef1b04f997e77b45090c07806 - unpetrify-ref: baserock/morph - build-depends: - - python-coverage-test-runner -- name: python-markdown - repo: upstream:python-markdown - ref: a9ca97325e9039de90eae29fb3d8879bc9f367f6 - unpetrify-ref: baserock/morph - build-depends: [] -- name: cmdtest - morph: strata/cross-bootstrap/cmdtest.morph - repo: upstream:cmdtest - ref: ac91791842c6e7e6eda3213916af413255999c7b - unpetrify-ref: baserock/morph - build-depends: - - cliapp - - python-ttystatus - - python-markdown - name: linux-user-chroot repo: upstream:linux-user-chroot ref: d25cc110f69e6e71a95b4ac532dcfc5423d4a16b unpetrify-ref: baserock/morph build-depends: [] -- name: pyfilesystem - morph: strata/cross-bootstrap/pyfilesystem.morph - repo: upstream:pyfilesystem - ref: 821f7db1ce3a3e1ac53fa514ddacbc2871eac0f6 - unpetrify-ref: baserock/morph - build-depends: [] -- name: morph - repo: baserock:baserock/morph - ref: 954baf68b9bb7f8bc4fae2447ef16f37928ff01c - unpetrify-ref: master - build-depends: - - cliapp - - cmdtest - - python-coverage-test-runner - - pyfilesystem - name: rsync morph: strata/cross-bootstrap/rsync.morph repo: upstream:rsync diff --git a/strata/cross-bootstrap/cmdtest.morph b/strata/cross-bootstrap/cmdtest.morph deleted file mode 100644 index 3e1c71c6..00000000 --- a/strata/cross-bootstrap/cmdtest.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: cmdtest -kind: chunk -build-commands: -- python setup.py build -install-commands: -- python setup.py install --prefix=/usr --root "$DESTDIR" diff --git a/strata/cross-bootstrap/pyfilesystem.morph b/strata/cross-bootstrap/pyfilesystem.morph deleted file mode 100644 index a4931dfa..00000000 --- a/strata/cross-bootstrap/pyfilesystem.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: pyfilesystem -kind: chunk -build-commands: -- python setup.py build -install-commands: -- python setup.py install --prefix="$PREFIX" --root "$DESTDIR" diff --git a/strata/cross-bootstrap/python-coveragepy.morph b/strata/cross-bootstrap/python-coveragepy.morph deleted file mode 100644 index ed5e3d87..00000000 --- a/strata/cross-bootstrap/python-coveragepy.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: python-coveragepy -kind: chunk -build-commands: -- python setup.py build -install-commands: -- python setup.py install --prefix=/usr --root "$DESTDIR" diff --git a/strata/cross-bootstrap/python-ttystatus.morph b/strata/cross-bootstrap/python-ttystatus.morph deleted file mode 100644 index e45ef7a8..00000000 --- a/strata/cross-bootstrap/python-ttystatus.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: python-ttystatus -kind: chunk -build-commands: -- python setup.py build -install-commands: -- python setup.py install --prefix=/usr --root "$DESTDIR" diff --git a/strata/databases.morph b/strata/databases.morph index 4b06edf3..9171925c 100644 --- a/strata/databases.morph +++ b/strata/databases.morph @@ -4,6 +4,7 @@ description: some popular databases and some utils related to databases build-depends: - morph: strata/tools.morph - morph: strata/nfs.morph +- morph: strata/python-core.morph chunks: - name: postgresql repo: upstream:postgresql diff --git a/strata/databases/memcached.morph b/strata/databases/memcached.morph index 28e01362..5d55b727 100644 --- a/strata/databases/memcached.morph +++ b/strata/databases/memcached.morph @@ -6,3 +6,16 @@ configure-commands: - touch README - autoreconf -fvi - ./configure --prefix="$PREFIX" +install-commands: +- make install +- install -D -m 755 scripts/memcached.service "$DESTDIR"/etc/systemd/system/memcached.service +post-install-commands: +- mkdir -p "$DESTDIR"/etc/sysconfig +- | + cat <<EOF > "$DESTDIR"/etc/sysconfig/memcached + PORT="11211" + USER="nobody" + MAXCONN="1024" + CACHESIZE="64" + OPTIONS="" + EOF diff --git a/strata/foundation/e2fsprogs.morph b/strata/foundation/e2fsprogs.morph index a57eb15a..55ac486c 100644 --- a/strata/foundation/e2fsprogs.morph +++ b/strata/foundation/e2fsprogs.morph @@ -8,14 +8,15 @@ configure-commands: # install it. - | ./configure --prefix="$PREFIX" --sysconfdir=/etc \ - --disable-libuuid --disable-uuidd --disable-fsck --disable-libblkid + --disable-libuuid --disable-uuidd --disable-libblkid install-commands: # e2fsprogs also includes tools that are provided by util-linux, so we # need to selectively exclude them. Removing them directly from DESTDIR # causes problems, so we need to remove them beforehand. - | td="$(mktemp -d)" + make DESTDIR="$td" install make DESTDIR="$td" install-libs - find "$td" \( -name blkid -o -name findfs -o -name fsck \) -delete + find "$td" \( -name blkid -o -name findfs -o \) -delete find "$td" \( -name blkid.8 -o -name findfs.8 \) -delete mv "$td"/* "$DESTDIR" diff --git a/strata/lorry-controller.morph b/strata/lorry-controller.morph new file mode 100644 index 00000000..38d90471 --- /dev/null +++ b/strata/lorry-controller.morph @@ -0,0 +1,16 @@ +name: lorry-controller +kind: stratum +description: | + Lorry Controller mirroring service. + + This is a component of Trove, but can + also be used with other Git servers. +build-depends: +- morph: strata/python-core.morph +chunks: +- name: lorry-controller + morph: strata/lorry-controller/lorry-controller.morph + repo: baserock:baserock/lorry-controller + ref: ce97e140f61cfc3781c3082febeacd0e5fb145cd + unpetrify-ref: master + build-depends: [] diff --git a/strata/trove/lorry-controller.morph b/strata/lorry-controller/lorry-controller.morph index 2f90a9a1..2f90a9a1 100644 --- a/strata/trove/lorry-controller.morph +++ b/strata/lorry-controller/lorry-controller.morph diff --git a/strata/morph-utils.morph b/strata/morph-utils.morph index aecf2a1d..86f41271 100644 --- a/strata/morph-utils.morph +++ b/strata/morph-utils.morph @@ -71,7 +71,7 @@ chunks: build-depends: [] - name: morph repo: baserock:baserock/morph - ref: 74f60a7ed286dd88e24539d46b9a86147a8e78b5 + ref: a2645411b875a5faae17489c5b4bb11670b36259 unpetrify-ref: master build-depends: - cliapp diff --git a/strata/multimedia-gstreamer.morph b/strata/multimedia-gstreamer.morph index cee7df71..2df8a0ce 100644 --- a/strata/multimedia-gstreamer.morph +++ b/strata/multimedia-gstreamer.morph @@ -13,8 +13,8 @@ chunks: build-depends: [] - name: gstreamer repo: upstream:gstreamer - ref: b9b3440e323c7b32a8c3a9d52c7bf1a229850558 - unpetrify-ref: baserock/1.4 + ref: c61dea148ca3f14586d8eddf0b7e6ca47c164c86 + unpetrify-ref: baserock/1.4.4+bison_fix build-depends: - orc - name: gstreamer-plugins-base diff --git a/strata/openstack-clients.morph b/strata/openstack-clients.morph index 1b348630..65f38855 100644 --- a/strata/openstack-clients.morph +++ b/strata/openstack-clients.morph @@ -1,103 +1,103 @@ name: openstack-clients kind: stratum -description: A stratum with OpenStack clients, for OpenStack deployments. +description: Stratum with all the OpenStack clients and their dependencies. build-depends: -- morph: strata/python-core.morph -- morph: strata/tools.morph +- morph: strata/openstack-common.morph chunks: -- name: jsonschema - repo: upstream:jsonschema - ref: 292a256b918af1e567982bb801c427cf4ca5b9fe - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-json-pointer - repo: upstream:python-json-pointer - ref: 48dce313141ba5bf0d2f3dd2e590042c05755e53 - unpetrify-ref: baserock/morph - build-depends: [] -- name: python-json-patch - repo: upstream:python-json-patch - ref: 27c7032de25923593fa17cc14f535fb7abd52448 - unpetrify-ref: baserock/morph - build-depends: [] - name: warlock repo: upstream:warlock - ref: 1a0de8a67df8282c42f71014cc871684e8d7c0cf - unpetrify-ref: baserock/morph - build-depends: - - jsonschema - - python-json-pointer - - python-json-patch -- name: python-prettytable - morph: strata/openstack-clients/python-prettytable.morph - repo: upstream:python-prettytable - ref: 941133673e5a0003cd5ce1b6db2a51cf3307d9c1 - unpetrify-ref: baserock/morph + ref: 408ccb82347aabf3dc7cf6eccbd2ed2475cb0d60 + unpetrify-ref: 1.1.0 build-depends: [] -- name: argparse - repo: upstream:argparse - ref: c9b3f9b32949cb7dd798e7d1aedbeeef064aa4b1 - unpetrify-ref: baserock/morph - build-depends: [] -- name: pyopenssl - repo: upstream:pyopenssl - ref: 6bbf44a00b35fb28df1f66aa194b2fe95eab1ab2 - unpetrify-ref: baserock/morph - build-depends: [] -- name: pyiso8601 - repo: upstream:pyiso8601 - ref: ac5470ec9e68332ebc499c4f9f21e7e3cb31ecb6 - unpetrify-ref: baserock/morph +- name: python-keystoneclient + repo: upstream:openstack/python-keystoneclient + ref: 79d1eec35aad874a7c08ff22c39260884a5524ba + unpetrify-ref: 0.11.1 build-depends: [] -- name: simplejson - repo: upstream:simplejson - ref: 35816bfe2d0ddeb5ddcc68239683cbb35b7e3ff2 - unpetrify-ref: baserock/morph +- name: python-glanceclient + repo: upstream:openstack/python-glanceclient + ref: 8a877b2752162d6a2db43d7d61d6311c4f42285b + unpetrify-ref: 0.14.1 + build-depends: + - python-keystoneclient + - warlock +- name: python-novaclient + repo: upstream:openstack/python-novaclient + ref: 5ecfdac6b34769e200ff5c4c7429c20518c5b24f + unpetrify-ref: 2.20.0 + build-depends: + - python-keystoneclient +- name: python-swiftclient + repo: upstream:openstack/python-swiftclient + ref: bb4d2ab59c4de9389667eeed255642f51e276f1e + unpetrify-ref: 2.3.1 build-depends: [] -- name: netaddr - repo: upstream:netaddr - ref: f64ae19e533ffa5522dcba1fc833975cb2ee88a5 - unpetrify-ref: baserock/morph +- name: python-troveclient + repo: upstream:openstack/python-troveclient + ref: e010a919750f07493afd42a4db867853b925bcbf + unpetrify-ref: 1.0.7 build-depends: [] -- name: pytz - morph: strata/openstack-clients/pytz.morph - repo: upstream:pytz - ref: 384207f01fd5b8bf1eb20cb64c17679084731944 - unpetrify-ref: baserock/morph +- name: python-cinderclient + repo: upstream:openstack/python-cinderclient + ref: ac9b0913904c43f4bf12c8164324d6e6a55dc1ab + unpetrify-ref: 1.1.1 + build-depends: + - python-keystoneclient +- name: pyparsing + morph: strata/openstack-clients/pyparsing.morph + repo: upstream:python-packages/pyparsing.git + ref: 8062c76ab3958a570052124f17e71f3dd3ec2257 + unpetrify-ref: pyparsing_2.0.3 build-depends: [] -- name: babel - repo: upstream:babel - ref: d764b35bc3910b8f67ff811752df615afa7667f6 - unpetrify-ref: baserock/morph +- name: cmd2 + repo: upstream:python-packages/cmd2.git + ref: 07b4dc3d6991cbdc420c246e807371c97a467d1a + unpetrify-ref: master build-depends: - - pytz -- name: python-keystoneclient - repo: upstream:python-keystoneclient - ref: 21cc66a850c5ea1d2ffffb655da0c452b919ed3b - unpetrify-ref: baserock/morph + - pyparsing +- name: cliff + repo: upstream:openstack/cliff + ref: 42675b2d7ad93f4bba9c4216874c68b8e5834147 + unpetrify-ref: 1.7.0 build-depends: - - pyiso8601 - - python-prettytable - - simplejson - - netaddr - - babel -- name: python-glanceclient - repo: upstream:python-glanceclient - ref: 721660612df4454726b723daf902abd23ba0109c - unpetrify-ref: baserock/morph + - cmd2 + - pyparsing +- name: python-neutronclient + repo: upstream:openstack/python-neutronclient + ref: fa5642f1550bc8f818c1686c40edbaf3672d356a + unpetrify-ref: 2.3.9 build-depends: - - python-prettytable - - argparse - - pyopenssl + - cliff - python-keystoneclient - - warlock -- name: python-novaclient - repo: upstream:python-novaclient - ref: 9e4530c79e46d392ed8f3e413bca1acffe022fe6 - unpetrify-ref: baserock/morph +- name: python-ceilometerclient + repo: upstream:openstack/python-ceilometerclient + ref: 7316dd16b8850270db27c1298dcf5a2223f2f1e1 + unpetrify-ref: 1.0.12 + build-depends: + - python-keystoneclient +- name: python-heatclient + repo: upstream:openstack/python-heatclient + ref: 6089d31e302d80910cc15132f99a1bf358bbb64f + unpetrify-ref: 0.2.12 build-depends: - - python-prettytable - - argparse - - pyiso8601 - - simplejson - - babel + - python-keystoneclient +- name: python-designateclient + repo: upstream:openstack/python-designateclient + ref: a900b41e4d8a9eb40e1812295ba16d773e2b9618 + unpetrify-ref: 1.1.0 + build-depends: + - cliff + - python-keystoneclient +- name: python-barbicanclient + repo: upstream:openstack/python-barbicanclient.git + ref: ac30643631b6bc1c40116061f8eb280a7881e422 + unpetrify-ref: 2.2.1 + build-depends: + - python-keystoneclient + - cliff +- name: python-saharaclient + repo: upstream:openstack/python-saharaclient + ref: eadb40ccb62566f02cb93ec03aa232e48835dec3 + unpetrify-ref: 0.7.6 + build-depends: + - python-keystoneclient diff --git a/strata/openstack-clients/pytz.morph b/strata/openstack-clients/pyparsing.morph index f5557946..60088544 100644 --- a/strata/openstack-clients/pytz.morph +++ b/strata/openstack-clients/pyparsing.morph @@ -1,4 +1,4 @@ -name: pytz +name: pyparsing kind: chunk build-commands: - cd src && python setup.py build diff --git a/strata/openstack-clients/python-prettytable.morph b/strata/openstack-clients/python-prettytable.morph deleted file mode 100644 index cf1ac6e1..00000000 --- a/strata/openstack-clients/python-prettytable.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: python-prettytable -kind: chunk -build-commands: -- cd src && python setup.py build -install-commands: -- cd src && python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/strata/openstack-common.morph b/strata/openstack-common.morph new file mode 100644 index 00000000..396d77c6 --- /dev/null +++ b/strata/openstack-common.morph @@ -0,0 +1,110 @@ +name: openstack-common +kind: stratum +description: | + Stratum with the python packages needed to compile openstack + clients and services. +build-depends: +- morph: strata/python-common.morph +- morph: strata/foundation.morph +chunks: +- name: pycparser + repo: upstream:python-packages/pycparser + ref: c926670643ebb5f88a2bf56579fc9934c82be6d2 + unpetrify-ref: master + build-depends: [] +- name: cffi + repo: upstream:python-packages/cffi + ref: fc53b53095d61a1ec5814c09c3bf2c7e18627fb5 + unpretrify-ref: master + build-depends: + - pycparser +- name: pytz + repo: upstream:pytz-tarball + ref: c414cb801776e11c769fb36c0d37b8d7a7c8712c + unpetrify-ref: pytz-2014.10 + build-depends: [] +- name: babel + repo: upstream:babel + ref: 246996b0ee51e49ebcd504e234d3bcdcb178996c + unpetrify-ref: master + build-depends: + - pytz +- name: enum34 + repo: upstream:python-packages/enum34.git + ref: f1fa1787ceaac72b9934f318ea2135d28c05dd55 + unpetrify-ref: enum34-1.0 + build-depends: [] +- name: pyasn1 + repo: upstream:python-packages/pyasn1 + ref: fa8e66c5f4367a1e39b53dcddc133d084b10400f + unpetrify-ref: release_0_1_7_tag + build-depends: [] +- name: cryptography + repo: upstream:python-packages/cryptography + ref: 9ac7d55150c8410a08ee3b00b89bfeac3dbd8e8f + unpetrify-ref: 0.7.2 + build-depends: + - pyasn1 + - enum34 + - cffi +- name: pyiso8601 + repo: upstream:pyiso8601 + ref: 9eb87a9bab114e9cc9a8d3dceb04362644d89cab + unpetrify-ref: 0.1.10 + build-depends: [] +- name: netaddr + repo: upstream:netaddr + ref: bbb31ed50a5338a7d1c0011fc4429d09954f9f0b + unpetrify-ref: release-0.7.12 + build-depends: [] +- name: stevedore + ref: 860bd8f8ecba38fdfda5b41a3a1dbe854d6528e2 + unpetrify-ref: 1.0.0.0a2 + repo: upstream:openstack/stevedore + build-depends: [] +- name: oslo-config + repo: upstream:openstack/oslo-config + ref: 059579ac2189b94bc9e9555b2e9acfb31a83ef53 + unpetrify-ref: 1.4.0.0a5 + build-depends: + - netaddr + - stevedore +- name: pyopenssl + repo: upstream:python-packages/pyopenssl + ref: 0146d447e63a737b4f05a1164d5950eff68543e7 + unpetrify-ref: 0.14 + build-depends: [] +- name: oslo-i18n + repo: upstream:openstack/oslo-i18n + ref: 040f1d6afa733527385d2309e485bf37e9843b0e + unpetrify-ref: 0.4.0 + build-depends: + - babel +- name: oslo-utils + repo: upstream:openstack/oslo-utils + ref: 6a123fce93895e92004ce9d5bd8dee3c3642cf41 + unpetrify-ref: 0.3.0 + build-depends: + - babel + - pyiso8601 + - oslo-i18n +- name: futures + repo: upstream:python-packages/futures + ref: 4f7ceedb8a7742e52b0436a4160c7c44665a2597 + unpetrify-ref: 2.2.0 + build-depends: [] +- name: oslo-serialization + repo: upstream:openstack/oslo-serialization.git + ref: 80fec894a54253d9b4c80dd8a563957966ca0b88 + unpetrify-ref: 0.3.0 + build-depends: [] +- name: jsonschema + repo: upstream:jsonschema + ref: 35b60f390098d3306c03eee27ceec8cf8a493579 + unpetrify-ref: v2.3.0 + build-depends: [] +- name: simplejson + repo: upstream:simplejson + ref: 54d5ff15d508c51366986cc4f77f2f287f036582 + unpetrify-ref: v3.6.4 + build-depends: [] diff --git a/strata/python-common.morph b/strata/python-common.morph new file mode 100644 index 00000000..850ad720 --- /dev/null +++ b/strata/python-common.morph @@ -0,0 +1,51 @@ +name: python-common +kind: stratum +description: Common dependencies of some python chunks +build-depends: +- morph: strata/python-core.morph +chunks: +- name: pycrypto + morph: strata/python-common/pycrypto.morph + repo: upstream:python-packages/pycrypto + ref: af058ee6f5da391a05275470ab4a4a96aa22b350 + unpetrify-ref: v2.7a1 + build-depends: [] +- name: ecdsa + repo: upstream:python-packages/ecdsa + ref: 36e9cfa80fcf8b53119adc787e54a5892ec1eb2c + unpetrify-ref: python-ecdsa-0.11 + build-depends: [] +- name: paramiko + repo: upstream:paramiko + ref: 424ba615c2a94d3b059e7f24db1a1093a92d8d22 + unpetrify-ref: v1.15.2 + build-depends: + - pycrypto + - ecdsa +- name: markupsafe + repo: upstream:markupsafe + ref: feb1d70c16df62f60dcb521d127fdad8819fc036 + unpetrify-ref: 0.23 + build-depends: [] +- name: jinja2 + repo: upstream:jinja2 + ref: 762c612e7276889aac265645da00e62e33d1573c + unpetrify-ref: 2.7.3 + build-depends: + - markupsafe +- name: python-json-pointer + repo: upstream:python-json-pointer + ref: 34073e561261cb413b9bdff5beac31b070d98ea2 + unpetrify-ref: v1.4 + build-depends: [] +- name: python-json-patch + repo: upstream:python-json-patch + ref: e4da658a5dc9f68d3386017ffdcc8e07d22b51a3 + unpetrify-ref: v1.8 + build-depends: + - python-json-pointer +- name: python-prettytable + repo: upstream:python-prettytable + ref: 7a48f1e84049577370cf28632a75d2fd01e4142d + unpetrify-ref: master + build-depends: [] diff --git a/strata/python-common/pycrypto.morph b/strata/python-common/pycrypto.morph new file mode 100644 index 00000000..51cc00f0 --- /dev/null +++ b/strata/python-common/pycrypto.morph @@ -0,0 +1,3 @@ +name: pycrypto +kind: chunk +build-system: python-distutils diff --git a/strata/tools/rsync.morph b/strata/tools/rsync.morph index 9a92878d..7b99bdd9 100644 --- a/strata/tools/rsync.morph +++ b/strata/tools/rsync.morph @@ -4,3 +4,6 @@ build-system: autotools build-commands: - make proto - make +install-commands: +- make install +- install -D -m 755 packaging/systemd/rsync.service "$DESTDIR"/etc/systemd/system/rsync.service diff --git a/strata/trove.morph b/strata/trove.morph index fcd34636..665f7d9a 100644 --- a/strata/trove.morph +++ b/strata/trove.morph @@ -76,12 +76,6 @@ chunks: ref: 1b89b00ccfed5adf796c2a5180a8cf6b2e2badf2 unpetrify-ref: master build-depends: [] -- name: lorry-controller - morph: strata/trove/lorry-controller.morph - repo: baserock:baserock/lorry-controller - ref: ce97e140f61cfc3781c3082febeacd0e5fb145cd - unpetrify-ref: master - build-depends: [] - name: lua-scrypt morph: strata/trove/lua-scrypt.morph repo: upstream:lua-scrypt diff --git a/strata/virtualization.morph b/strata/virtualization.morph index 881b53de..1cd447af 100644 --- a/strata/virtualization.morph +++ b/strata/virtualization.morph @@ -129,7 +129,7 @@ chunks: - name: ebtables morph: strata/virtualization/ebtables.morph repo: upstream:ebtables - ref: 09792f0107a9318da809908db31f0b826017de7b + ref: f4bdc80ae8c1a79b4ab5dcb8431ad85aea618d66 unpetrify-ref: master build-depends: [] - name: openvswitch diff --git a/strata/virtualization/ebtables.morph b/strata/virtualization/ebtables.morph index 8be1b4f2..a4d9fc76 100644 --- a/strata/virtualization/ebtables.morph +++ b/strata/virtualization/ebtables.morph @@ -4,4 +4,4 @@ build-system: manual build-commands: - make install-commands: -- make install DESTDIR="$DESTDIR" BINDIR="$DESDIR"/sbin +- make install DESTDIR="$DESTDIR" BINDIR="$PREFIX/sbin" diff --git a/strata/xstatic.morph b/strata/xstatic.morph index d3a4228f..7b40ee60 100644 --- a/strata/xstatic.morph +++ b/strata/xstatic.morph @@ -10,6 +10,7 @@ description: | but it is required right now for the Openstack system to work. build-depends: - morph: strata/foundation.morph +- morph: strata/python-core.morph chunks: - name: xstatic repo: upstream:xstatic diff --git a/systems/build-system-armv7lhf-highbank.morph b/systems/build-system-armv7lhf-highbank.morph index cf37f5e6..ae67387f 100644 --- a/systems/build-system-armv7lhf-highbank.morph +++ b/systems/build-system-armv7lhf-highbank.morph @@ -19,10 +19,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-armv7lhf-jetson.morph b/systems/build-system-armv7lhf-jetson.morph index 846681a2..ccdbea1a 100644 --- a/systems/build-system-armv7lhf-jetson.morph +++ b/systems/build-system-armv7lhf-jetson.morph @@ -19,10 +19,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-armv8l64.morph b/systems/build-system-armv8l64.morph index 15b0a52c..08802a00 100644 --- a/systems/build-system-armv8l64.morph +++ b/systems/build-system-armv8l64.morph @@ -12,6 +12,8 @@ strata: morph: strata/core.morph - name: foundation morph: strata/foundation.morph +- name: python-core + morph: strata/python-core.morph - name: bsp-armv8l64-generic morph: strata/bsp-armv8l64-generic.morph - name: tools @@ -20,10 +22,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools @@ -37,3 +43,4 @@ configuration-extensions: - fstab - mason - cloud-init +- moonshot-kernel diff --git a/systems/build-system-ppc64.morph b/systems/build-system-ppc64.morph index 8be51f90..7d3f475d 100644 --- a/systems/build-system-ppc64.morph +++ b/systems/build-system-ppc64.morph @@ -19,10 +19,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-x86_32-chroot.morph b/systems/build-system-x86_32-chroot.morph index f74ce07d..33a1a4c9 100644 --- a/systems/build-system-x86_32-chroot.morph +++ b/systems/build-system-x86_32-chroot.morph @@ -17,10 +17,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-x86_32.morph b/systems/build-system-x86_32.morph index 5bbe38f8..86d2b690 100644 --- a/systems/build-system-x86_32.morph +++ b/systems/build-system-x86_32.morph @@ -19,10 +19,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-x86_64-chroot.morph b/systems/build-system-x86_64-chroot.morph index 1ca20c00..24263808 100644 --- a/systems/build-system-x86_64-chroot.morph +++ b/systems/build-system-x86_64-chroot.morph @@ -17,10 +17,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/build-system-x86_64.morph b/systems/build-system-x86_64.morph index 2bf25493..77f1860e 100644 --- a/systems/build-system-x86_64.morph +++ b/systems/build-system-x86_64.morph @@ -19,10 +19,14 @@ strata: morph: strata/morph-utils.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support morph: strata/cloudinit-support.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: devtools diff --git a/systems/ceph-service-x86_64-generic.morph b/systems/ceph-service-x86_64-generic.morph index b03d1653..730c00d4 100644 --- a/systems/ceph-service-x86_64-generic.morph +++ b/systems/ceph-service-x86_64-generic.morph @@ -24,6 +24,8 @@ strata: morph: strata/ntpd.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: cloudinit-support @@ -38,6 +40,8 @@ strata: morph: strata/nfs.morph - name: python-core morph: strata/python-core.morph +- name: python-common + morph: strata/python-common.morph - name: chef morph: strata/chef.morph configuration-extensions: diff --git a/systems/cross-bootstrap-system-armv7lhf-generic.morph b/systems/cross-bootstrap-system-armv7lhf-generic.morph index 4eecf7fe..23817c0c 100644 --- a/systems/cross-bootstrap-system-armv7lhf-generic.morph +++ b/systems/cross-bootstrap-system-armv7lhf-generic.morph @@ -7,5 +7,7 @@ strata: morph: strata/build-essential.morph - name: core morph: strata/core.morph +- name: morph-utils + morph: strata/morph-utils.morph - name: cross-bootstrap morph: strata/cross-bootstrap.morph diff --git a/systems/cross-bootstrap-system-armv8l64-generic.morph b/systems/cross-bootstrap-system-armv8l64-generic.morph index 30094e74..c35cff5f 100644 --- a/systems/cross-bootstrap-system-armv8l64-generic.morph +++ b/systems/cross-bootstrap-system-armv8l64-generic.morph @@ -7,5 +7,7 @@ strata: morph: strata/build-essential.morph - name: core morph: strata/core.morph +- name: morph-utils + morph: strata/morph-utils.morph - name: cross-bootstrap morph: strata/cross-bootstrap.morph diff --git a/systems/cross-bootstrap-system-ppc64-generic.morph b/systems/cross-bootstrap-system-ppc64-generic.morph index 8b274e80..40c80c00 100644 --- a/systems/cross-bootstrap-system-ppc64-generic.morph +++ b/systems/cross-bootstrap-system-ppc64-generic.morph @@ -7,5 +7,7 @@ strata: morph: strata/build-essential.morph - name: core morph: strata/core.morph +- name: morph-utils + morph: strata/morph-utils.morph - name: cross-bootstrap morph: strata/cross-bootstrap.morph diff --git a/systems/cross-bootstrap-system-x86_64-generic.morph b/systems/cross-bootstrap-system-x86_64-generic.morph index bdd42cf3..646a04d3 100644 --- a/systems/cross-bootstrap-system-x86_64-generic.morph +++ b/systems/cross-bootstrap-system-x86_64-generic.morph @@ -7,5 +7,7 @@ strata: morph: strata/build-essential.morph - name: core morph: strata/core.morph +- name: morph-utils + morph: strata/morph-utils.morph - name: cross-bootstrap morph: strata/cross-bootstrap.morph diff --git a/systems/devel-system-armv7-chroot.morph b/systems/devel-system-armv7-chroot.morph index de474c87..74742a85 100644 --- a/systems/devel-system-armv7-chroot.morph +++ b/systems/devel-system-armv7-chroot.morph @@ -17,6 +17,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: nodejs @@ -31,8 +33,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7-highbank.morph b/systems/devel-system-armv7-highbank.morph index 2cce69d3..69681f7b 100644 --- a/systems/devel-system-armv7-highbank.morph +++ b/systems/devel-system-armv7-highbank.morph @@ -34,8 +34,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7-versatile.morph b/systems/devel-system-armv7-versatile.morph index 38806421..9ed68978 100644 --- a/systems/devel-system-armv7-versatile.morph +++ b/systems/devel-system-armv7-versatile.morph @@ -34,8 +34,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7-wandboard.morph b/systems/devel-system-armv7-wandboard.morph index c47be836..940b7725 100644 --- a/systems/devel-system-armv7-wandboard.morph +++ b/systems/devel-system-armv7-wandboard.morph @@ -34,8 +34,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7b-chroot.morph b/systems/devel-system-armv7b-chroot.morph index 64d75350..8b754254 100644 --- a/systems/devel-system-armv7b-chroot.morph +++ b/systems/devel-system-armv7b-chroot.morph @@ -25,8 +25,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7b-highbank.morph b/systems/devel-system-armv7b-highbank.morph index 3a84d178..54eeeee7 100644 --- a/systems/devel-system-armv7b-highbank.morph +++ b/systems/devel-system-armv7b-highbank.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: baserock-import @@ -28,8 +30,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7lhf-chroot.morph b/systems/devel-system-armv7lhf-chroot.morph index 2e4b83bd..95212d57 100644 --- a/systems/devel-system-armv7lhf-chroot.morph +++ b/systems/devel-system-armv7lhf-chroot.morph @@ -17,6 +17,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: nodejs @@ -31,8 +33,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7lhf-highbank.morph b/systems/devel-system-armv7lhf-highbank.morph index 17f8bcbb..5c987497 100644 --- a/systems/devel-system-armv7lhf-highbank.morph +++ b/systems/devel-system-armv7lhf-highbank.morph @@ -19,6 +19,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: nodejs @@ -35,8 +37,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7lhf-jetson.morph b/systems/devel-system-armv7lhf-jetson.morph index c09caf96..9cdc1270 100644 --- a/systems/devel-system-armv7lhf-jetson.morph +++ b/systems/devel-system-armv7lhf-jetson.morph @@ -17,6 +17,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: nfs @@ -35,8 +37,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv7lhf-wandboard.morph b/systems/devel-system-armv7lhf-wandboard.morph index ffa9edd4..b69b3b13 100644 --- a/systems/devel-system-armv7lhf-wandboard.morph +++ b/systems/devel-system-armv7lhf-wandboard.morph @@ -19,6 +19,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: nodejs @@ -35,8 +37,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-armv8l64.morph b/systems/devel-system-armv8l64.morph index 27080535..c4af1d17 100644 --- a/systems/devel-system-armv8l64.morph +++ b/systems/devel-system-armv8l64.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: cloudinit-support @@ -30,10 +32,16 @@ strata: morph: strata/baserock-import.morph - name: nfs morph: strata/nfs.morph +- name: python-core + morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files @@ -41,3 +49,4 @@ configuration-extensions: - nfsboot - install-files - cloud-init +- moonshot-kernel diff --git a/systems/devel-system-ppc64-chroot.morph b/systems/devel-system-ppc64-chroot.morph index 9e575d5d..74d7e38e 100644 --- a/systems/devel-system-ppc64-chroot.morph +++ b/systems/devel-system-ppc64-chroot.morph @@ -17,6 +17,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: ruby @@ -29,8 +31,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-ppc64-generic.morph b/systems/devel-system-ppc64-generic.morph index d92da0fd..50cffd69 100644 --- a/systems/devel-system-ppc64-generic.morph +++ b/systems/devel-system-ppc64-generic.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: ruby @@ -32,8 +34,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-x86_32-chroot.morph b/systems/devel-system-x86_32-chroot.morph index 3578c221..1ade237e 100644 --- a/systems/devel-system-x86_32-chroot.morph +++ b/systems/devel-system-x86_32-chroot.morph @@ -33,8 +33,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-x86_32-generic.morph b/systems/devel-system-x86_32-generic.morph index b53d6d93..de75a70a 100644 --- a/systems/devel-system-x86_32-generic.morph +++ b/systems/devel-system-x86_32-generic.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: cloudinit-support @@ -36,8 +38,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-x86_64-chroot.morph b/systems/devel-system-x86_64-chroot.morph index aa8d6a1c..23db60c1 100644 --- a/systems/devel-system-x86_64-chroot.morph +++ b/systems/devel-system-x86_64-chroot.morph @@ -17,6 +17,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: bsp-x86_both-tools @@ -33,8 +35,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-x86_64-generic.morph b/systems/devel-system-x86_64-generic.morph index c071b3ea..46c7c4e5 100644 --- a/systems/devel-system-x86_64-generic.morph +++ b/systems/devel-system-x86_64-generic.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: cloudinit-support @@ -36,8 +38,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/devel-system-x86_64-vagrant.morph b/systems/devel-system-x86_64-vagrant.morph index c104b29b..ca0c717b 100644 --- a/systems/devel-system-x86_64-vagrant.morph +++ b/systems/devel-system-x86_64-vagrant.morph @@ -18,6 +18,8 @@ strata: morph: strata/tools.morph - name: morph-utils morph: strata/morph-utils.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph - name: virtualbox-guest-x86_64 @@ -34,8 +36,12 @@ strata: morph: strata/python-core.morph - name: python-tools morph: strata/python-tools.morph +- name: python-common + morph: strata/python-common.morph - name: devtools morph: strata/devtools.morph +- name: ansible + morph: strata/ansible.morph configuration-extensions: - set-hostname - add-config-files diff --git a/systems/gitlab-ci-runner.morph b/systems/gitlab-ci-runner.morph index 979b73b0..8f89ec74 100644 --- a/systems/gitlab-ci-runner.morph +++ b/systems/gitlab-ci-runner.morph @@ -31,10 +31,16 @@ strata: morph: strata/tools.morph - name: lvm morph: strata/lvm.morph +- name: python-core + morph: strata/python-core.morph - name: virtualization morph: strata/virtualization.morph +- name: openstack-common + morph: strata/openstack-common.morph - name: openstack-clients morph: strata/openstack-clients.morph +- name: python-common + morph: strata/python-common.morph - name: databases morph: strata/databases.morph - name: pcre-utils diff --git a/systems/trove-system-x86_64.morph b/systems/trove-system-x86_64.morph index 580f53f7..1a120ef9 100644 --- a/systems/trove-system-x86_64.morph +++ b/systems/trove-system-x86_64.morph @@ -21,12 +21,16 @@ strata: morph: strata/pcre-utils.morph - name: lorry morph: strata/lorry.morph +- name: lorry-controller + morph: strata/lorry-controller.morph - name: trove morph: strata/trove.morph - name: lighttpd-server morph: strata/lighttpd-server.morph - name: nfs morph: strata/nfs.morph +- name: python-common + morph: strata/python-common.morph - name: ansible morph: strata/ansible.morph - name: cloudinit-support |