From 7df7f3b427739ff7d69da2ba218da0124822892c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Jard=C3=B3n?= Date: Sun, 26 Nov 2017 23:39:48 +0000 Subject: Remove all .morph files and files from the old format --- DEFAULTS | 252 -- VERSION | 1 - clusters/altera-socfpga-devkit-sd-image.morph | 14 - clusters/build-system-x86_64-chroot-deploy.morph | 9 - clusters/ci.morph | 81 - clusters/example-distbuild-cluster.morph | 37 - clusters/hardware-deployment.morph | 35 - clusters/image-package-example.morph | 12 - clusters/initramfs-test.morph | 22 - clusters/installer-build-system-x86_64.morph | 52 - ...nimal-system-armv5l-openbmc-aspeed-deploy.morph | 13 - clusters/minimal-system-deploy.morph | 14 - clusters/minimal-system-x86_64-chroot-deploy.morph | 9 - clusters/minimal-system-x86_64-deploy.morph | 12 - clusters/release.morph | 62 - extensions/add-config-files.configure | 26 - extensions/busybox-init.configure | 145 - extensions/ceph.configure | 344 -- extensions/cloud-init.configure | 69 - extensions/distbuild-trove-nfsboot.check | 153 - extensions/distbuild-trove-nfsboot.write | 283 -- extensions/distbuild-trove-nfsboot.write.help | 49 - extensions/distbuild.configure | 132 - extensions/fstab.configure | 28 - extensions/genivi.configure | 124 - extensions/genivi.configure.help | 25 - extensions/hosts | 1 - extensions/hosts.configure | 50 - extensions/image-package-example/README | 9 - extensions/image-package-example/common.sh.in | 72 - .../image-package-example/disk-install.sh.in | 51 - .../image-package-example/make-disk-image.sh.in | 36 - extensions/image-package.write | 168 - extensions/initramfs.write | 26 - extensions/initramfs.write.help | 55 - extensions/install-essential-files.configure | 40 - extensions/install-essential-files.configure.help | 20 - extensions/install-files.configure | 138 - extensions/install-files.configure.help | 86 - extensions/installer.configure | 48 - extensions/jffs2.write | 64 - extensions/jffs2.write.help | 28 - extensions/kvm.check | 171 - extensions/kvm.write | 126 - extensions/kvm.write.help | 90 - extensions/mason.configure | 153 - extensions/mason/ansible/hosts | 1 - extensions/mason/ansible/mason-setup.yml | 83 - extensions/mason/httpd.service | 10 - extensions/mason/mason-generator.sh | 101 - extensions/mason/mason-report.sh | 297 -- extensions/mason/mason-setup.service | 16 - extensions/mason/mason.service | 12 - extensions/mason/mason.sh | 90 - extensions/mason/mason.timer | 10 - extensions/mason/os-init-script | 6 - extensions/mason/share/mason.conf | 14 - extensions/mason/share/os.conf | 30 - extensions/moonshot-kernel.configure | 33 - extensions/nfsboot-server.configure | 58 - extensions/nfsboot.check | 96 - extensions/nfsboot.configure | 30 - extensions/nfsboot.write | 206 - extensions/nfsboot.write.help | 33 - extensions/openstack-ceilometer.configure | 122 - extensions/openstack-cinder.configure | 125 - extensions/openstack-glance.configure | 101 - extensions/openstack-ironic.configure | 157 - extensions/openstack-keystone.configure | 123 - extensions/openstack-network.configure | 80 - extensions/openstack-neutron.configure | 138 - extensions/openstack-nova.configure | 163 - extensions/openstack-swift-controller.configure | 49 - extensions/openstack-time.configure | 61 - extensions/openstack.check | 92 - extensions/openstack.write | 94 - extensions/openstack.write.help | 51 - extensions/partitioning.py | 163 - extensions/pxeboot.check | 86 - extensions/pxeboot.write | 756 ---- extensions/pxeboot.write.help | 166 - extensions/pyfdisk.README | 144 - extensions/pyfdisk.py | 769 ---- extensions/rawdisk.check | 52 - extensions/rawdisk.write | 122 - extensions/rawdisk.write.help | 127 - extensions/recv-hole | 158 - extensions/sdk.write | 284 -- extensions/set-hostname.configure | 27 - extensions/simple-network.configure | 296 -- extensions/ssh-rsync.check | 66 - extensions/ssh-rsync.write | 175 - extensions/ssh-rsync.write.help | 50 - extensions/sshkeys.configure | 25 - extensions/strip-gplv3.configure | 97 - extensions/swift-build-rings.yml | 34 - extensions/swift-storage-devices-validate.py | 60 - extensions/swift-storage.configure | 107 - extensions/sysroot.check | 23 - extensions/sysroot.write | 22 - extensions/tar.check | 23 - extensions/tar.write | 20 - extensions/tar.write.help | 19 - extensions/trove.configure | 172 - extensions/trove.configure.help | 134 - extensions/vagrant.configure | 55 - extensions/vdaboot.configure | 33 - extensions/virtualbox-ssh.check | 36 - extensions/virtualbox-ssh.write | 219 -- extensions/virtualbox-ssh.write.help | 135 - extensions/writeexts.py | 1072 ------ extensions/xfer-hole | 137 - genivi/clusters/gdp-jetson-upgrade.morph | 19 - .../genivi-demo-platform-x86_32-deploy.morph | 22 - .../genivi-demo-platform-x86_64-deploy.morph | 22 - genivi/clusters/release-genivi-baseline.morph | 41 - genivi/strata/genivi-demo-platform-libs.morph | 18 - .../genivi-demo-platform-libs/dbus-c++.morph | 9 - genivi/strata/genivi-demo-platform.morph | 42 - .../genivi-demo-platform/audiomanager-poc.morph | 10 - .../genivi-demo-platform/audiomanager@gdp.morph | 18 - .../strata/genivi-demo-platform/browser-poc.morph | 29 - .../genivi-demo-platform-hmi.morph | 137 - genivi/strata/genivi-demo-platform/mm-common.morph | 7 - genivi/strata/genivi.morph | 119 - genivi/strata/genivi/DLT-daemon.morph | 7 - .../genivi/genivi-common-api-dbus-runtime.morph | 3 - .../strata/genivi/genivi-common-api-runtime.morph | 3 - genivi/strata/genivi/googlemock.morph | 8 - genivi/strata/genivi/googletest.morph | 7 - genivi/strata/genivi/itzam-tarball.morph | 10 - genivi/strata/genivi/json-c.morph | 7 - genivi/strata/genivi/linuxquota.morph | 10 - genivi/strata/genivi/node-startup-controller.morph | 9 - .../strata/genivi/persistence-administrator.morph | 5 - .../strata/genivi/persistence-common-object.morph | 5 - genivi/strata/weston-genivi.morph | 21 - .../weston-genivi/wayland-ivi-extension.morph | 8 - genivi/strata/weston-genivi/weston.morph | 86 - .../genivi-baseline-system-armv7lhf-jetson.morph | 56 - ...genivi-baseline-system-armv7lhf-versatile.morph | 54 - .../genivi-baseline-system-x86_64-generic.morph | 57 - .../genivi-demo-platform-armv7lhf-jetson.morph | 83 - .../genivi-demo-platform-x86_32-generic.morph | 85 - .../genivi-demo-platform-x86_64-generic.morph | 85 - .../gnome-system-armv7lhf-jetson-deploy.morph | 17 - gnome/clusters/gnome-system-x86_64-deploy.morph | 24 - gnome/strata/flatpak-common.morph | 24 - gnome/strata/flatpak-common/elfutils.morph | 7 - gnome/strata/flatpak-common/flatpak.morph | 5 - gnome/strata/gnome.morph | 969 ----- gnome/strata/gnome/WebKitGtk.morph | 5 - gnome/strata/gnome/accountsservice.morph | 9 - gnome/strata/gnome/adwaita-icon-theme.morph | 11 - gnome/strata/gnome/autoconf-archive.morph | 8 - gnome/strata/gnome/berkeleydb.morph | 18 - gnome/strata/gnome/caribou.morph | 5 - gnome/strata/gnome/cheese.morph | 11 - gnome/strata/gnome/clutter.morph | 6 - gnome/strata/gnome/cogl.morph | 6 - gnome/strata/gnome/colord.morph | 9 - gnome/strata/gnome/cracklib.morph | 18 - gnome/strata/gnome/d-feet.morph | 7 - gnome/strata/gnome/dconf.morph | 5 - gnome/strata/gnome/desktop-file-utils.morph | 7 - gnome/strata/gnome/empathy.morph | 5 - gnome/strata/gnome/epiphany.morph | 5 - gnome/strata/gnome/evolution-data-server.morph | 11 - gnome/strata/gnome/evolution.morph | 8 - gnome/strata/gnome/folks.morph | 5 - gnome/strata/gnome/gconf.morph | 5 - gnome/strata/gnome/gdm.morph | 24 - gnome/strata/gnome/glade.morph | 5 - gnome/strata/gnome/glib-networking.morph | 9 - gnome/strata/gnome/gnome-color-manager.morph | 7 - gnome/strata/gnome/gnome-control-center.morph | 5 - gnome/strata/gnome/gnome-initial-setup.morph | 9 - gnome/strata/gnome/gnome-online-accounts.morph | 5 - gnome/strata/gnome/gnome-session.morph | 5 - gnome/strata/gnome/gnome-settings-daemon.morph | 5 - gnome/strata/gnome/gnome-shell.morph | 5 - gnome/strata/gnome/gnome-terminal.morph | 5 - gnome/strata/gnome/gnome-themes-standard.morph | 5 - gnome/strata/gnome/gtksourceview.morph | 5 - gnome/strata/gnome/hicolor-icon-theme.morph | 7 - gnome/strata/gnome/ibus-anthy.morph | 5 - gnome/strata/gnome/ibus-hangul.morph | 5 - gnome/strata/gnome/ibus-libpinyin.morph | 5 - gnome/strata/gnome/ibus.morph | 9 - gnome/strata/gnome/krb5.morph | 10 - gnome/strata/gnome/libchamplain.morph | 5 - gnome/strata/gnome/libgdata.morph | 6 - gnome/strata/gnome/libhangul.morph | 6 - gnome/strata/gnome/libpeas.morph | 5 - gnome/strata/gnome/libpurple.morph | 9 - gnome/strata/gnome/libpwquality.morph | 6 - gnome/strata/gnome/librest.morph | 9 - gnome/strata/gnome/libwnck.morph | 11 - gnome/strata/gnome/mozjs24.morph | 18 - gnome/strata/gnome/mutter.morph | 5 - gnome/strata/gnome/nautilus.morph | 5 - gnome/strata/gnome/network-manager-applet.morph | 5 - gnome/strata/gnome/raptor.morph | 5 - gnome/strata/gnome/telepathy-gabble.morph | 8 - gnome/strata/gnome/telepathy-glib.morph | 6 - gnome/strata/gnome/telepathy-logger.morph | 5 - gnome/strata/gnome/telepathy-salut.morph | 5 - gnome/strata/gnome/upower.morph | 5 - gnome/strata/gnome/vte.morph | 5 - gnome/strata/gnome/yelp.morph | 5 - gnome/strata/gnome/zeitgeist.morph | 5 - gnome/systems/gnome-system-armv7lhf-jetson.morph | 94 - gnome/systems/gnome-system-x86_64.morph | 102 - install-files/chef/manifest | 3 - .../system-generators/ccache-nfs-mount-generator | 16 - install-files/distbuild/manifest | 28 - .../distbuild-setup/ansible/distbuild-setup.yml | 115 - .../usr/lib/distbuild-setup/ansible/hosts | 1 - .../usr/lib/systemd/system/distbuild-setup.service | 16 - .../lib/systemd/system/morph-cache-server.service | 12 - .../systemd/system/morph-controller-helper.service | 13 - .../lib/systemd/system/morph-controller.service | 12 - .../lib/systemd/system/morph-worker-helper.service | 13 - .../usr/lib/systemd/system/morph-worker.service | 13 - .../distbuild-setup.service | 1 - .../share/distbuild-setup/morph-cache-server.conf | 5 - .../distbuild-setup/morph-controller-helper.conf | 5 - .../share/distbuild-setup/morph-controller.conf | 6 - .../share/distbuild-setup/morph-worker-helper.conf | 4 - .../usr/share/distbuild-setup/morph-worker.conf | 4 - .../distbuild/usr/share/distbuild-setup/morph.conf | 13 - install-files/essential-files/etc/inputrc | 38 - install-files/essential-files/etc/os-release | 1 - install-files/essential-files/etc/profile | 13 - install-files/essential-files/manifest | 11 - install-files/essential-files/usr/bin/brpaste | 29 - install-files/essential-files/usr/lib/os-release | 5 - .../usr/lib/tmpfiles.d/shutdownramfs.conf | 4 - .../genivi-devel-system-armv7/etc/morph.conf | 1 - install-files/genivi-devel-system-armv7/manifest | 5 - .../genivi-devel-system-armv7/src/morph.conf | 5 - install-files/gnome/etc/pam.d/gdm | 15 - install-files/gnome/etc/pam.d/gdm-autologin | 17 - .../gnome/etc/pam.d/gdm-launch-environment | 11 - install-files/gnome/etc/pam.d/gdm-password | 24 - install-files/gnome/etc/pam.d/passwd | 10 - install-files/gnome/etc/pam.d/system-auth | 19 - install-files/gnome/etc/securetty | 8 - install-files/gnome/etc/ssh/sshd_config | 135 - install-files/gnome/manifest | 9 - .../usr/share/polkit-1/rules.d/geoclue-2.0.rules | 7 - install-files/moonshot/boot/m400-1003.dtb | Bin 18063 -> 0 bytes install-files/moonshot/manifest | 2 - .../openstack/etc/horizon/apache-horizon.conf | 36 - .../openstack/etc/neutron/dnsmasq-neutron.conf | 2 - .../etc/tempest/set_openstack_to_run_tempest.sh | 122 - install-files/openstack/etc/tempest/tempest.conf | 1188 ------ install-files/openstack/manifest | 117 - .../openstack/usr/lib/sysctl.d/neutron.conf | 3 - .../usr/lib/systemd/system/apache-httpd.service | 16 - .../usr/lib/systemd/system/iscsi-setup.service | 12 - .../openstack-ceilometer-alarm-evaluator.service | 15 - .../openstack-ceilometer-alarm-notifier.service | 15 - .../system/openstack-ceilometer-api.service | 15 - .../system/openstack-ceilometer-central.service | 15 - .../system/openstack-ceilometer-collector.service | 15 - .../system/openstack-ceilometer-compute.service | 15 - .../openstack-ceilometer-config-setup.service | 11 - .../system/openstack-ceilometer-db-setup.service | 13 - .../openstack-ceilometer-notification.service | 15 - .../systemd/system/openstack-cinder-api.service | 15 - .../systemd/system/openstack-cinder-backup.service | 15 - .../system/openstack-cinder-config-setup.service | 11 - .../system/openstack-cinder-db-setup.service | 13 - .../system/openstack-cinder-lv-setup.service | 12 - .../system/openstack-cinder-scheduler.service | 15 - .../systemd/system/openstack-cinder-volume.service | 16 - .../systemd/system/openstack-glance-api.service | 16 - .../system/openstack-glance-registry.service | 16 - .../systemd/system/openstack-glance-setup.service | 11 - .../systemd/system/openstack-horizon-setup.service | 10 - .../systemd/system/openstack-ironic-api.service | 16 - .../system/openstack-ironic-conductor.service | 16 - .../systemd/system/openstack-ironic-setup.service | 12 - .../system/openstack-keystone-setup.service | 14 - .../lib/systemd/system/openstack-keystone.service | 16 - .../systemd/system/openstack-network-setup.service | 12 - .../system/openstack-neutron-config-setup.service | 13 - .../system/openstack-neutron-db-setup.service | 13 - .../system/openstack-neutron-dhcp-agent.service | 17 - .../system/openstack-neutron-l3-agent.service | 17 - .../openstack-neutron-metadata-agent.service | 17 - .../system/openstack-neutron-ovs-cleanup.service | 18 - ...nstack-neutron-plugin-openvswitch-agent.service | 17 - .../system/openstack-neutron-server.service | 17 - .../lib/systemd/system/openstack-nova-api.service | 15 - .../lib/systemd/system/openstack-nova-cert.service | 15 - .../systemd/system/openstack-nova-compute.service | 16 - .../system/openstack-nova-conductor.service | 16 - .../system/openstack-nova-config-setup.service | 11 - .../system/openstack-nova-consoleauth.service | 15 - .../systemd/system/openstack-nova-db-setup.service | 13 - .../system/openstack-nova-novncproxy.service | 15 - .../system/openstack-nova-scheduler.service | 15 - .../system/openstack-nova-serialproxy.service | 15 - .../systemd/system/openvswitch-db-server.service | 12 - .../lib/systemd/system/openvswitch-setup.service | 11 - .../usr/lib/systemd/system/openvswitch.service | 12 - .../systemd/system/postgres-server-setup.service | 12 - .../usr/lib/systemd/system/postgres-server.service | 26 - .../usr/lib/systemd/system/rabbitmq-server.service | 16 - .../systemd/system/swift-controller-setup.service | 13 - .../usr/lib/systemd/system/swift-proxy.service | 14 - .../usr/share/openstack/ceilometer-config.yml | 36 - .../usr/share/openstack/ceilometer-db.yml | 50 - .../usr/share/openstack/ceilometer/ceilometer.conf | 1330 ------- .../usr/share/openstack/cinder-config.yml | 37 - .../openstack/usr/share/openstack/cinder-db.yml | 59 - .../openstack/usr/share/openstack/cinder-lvs.yml | 21 - .../usr/share/openstack/cinder/cinder.conf | 2991 --------------- .../openstack/extras/00-disable-device.network | 2 - .../share/openstack/extras/60-device-dhcp.network | 5 - .../openstack/usr/share/openstack/glance.yml | 92 - .../usr/share/openstack/glance/glance-api.conf | 813 ---- .../share/openstack/glance/glance-registry.conf | 268 -- .../openstack/usr/share/openstack/horizon.yml | 46 - install-files/openstack/usr/share/openstack/hosts | 1 - .../openstack/usr/share/openstack/ironic.yml | 104 - .../usr/share/openstack/ironic/ironic.conf | 1568 -------- .../openstack/usr/share/openstack/iscsi.yml | 15 - .../openstack/usr/share/openstack/keystone.yml | 142 - .../usr/share/openstack/keystone/keystone.conf | 1733 --------- .../openstack/usr/share/openstack/network.yml | 67 - .../usr/share/openstack/neutron-config.yml | 37 - .../openstack/usr/share/openstack/neutron-db.yml | 51 - .../usr/share/openstack/neutron/dhcp_agent.ini | 89 - .../usr/share/openstack/neutron/l3_agent.ini | 121 - .../usr/share/openstack/neutron/metadata_agent.ini | 68 - .../usr/share/openstack/neutron/neutron.conf | 1027 ----- .../openstack/neutron/plugins/ml2/ml2_conf.ini | 113 - .../share/openstack/neutron/plugins/ryu/ryu.ini | 44 - .../openstack/usr/share/openstack/nova-config.yml | 34 - .../openstack/usr/share/openstack/nova-db.yml | 50 - .../usr/share/openstack/nova/nova-compute.conf | 4 - .../openstack/usr/share/openstack/nova/nova.conf | 4008 -------------------- .../openstack/usr/share/openstack/openvswitch.yml | 38 - .../openstack/usr/share/openstack/postgres.yml | 48 - .../usr/share/openstack/postgres/pg_hba.conf | 5 - .../usr/share/openstack/postgres/postgresql.conf | 11 - .../usr/share/openstack/rabbitmq/rabbitmq-env.conf | 3 - .../usr/share/openstack/rabbitmq/rabbitmq.config | 9 - .../usr/share/openstack/swift-controller.yml | 52 - .../openstack/usr/share/swift/etc/rsyncd.j2 | 23 - .../usr/share/swift/etc/swift/proxy-server.j2 | 630 --- install-files/swift/etc/ntp.conf | 25 - install-files/swift/manifest | 15 - .../swift/usr/lib/systemd/system/rsync.service | 11 - .../lib/systemd/system/swift-storage-setup.service | 12 - .../usr/lib/systemd/system/swift-storage.service | 12 - install-files/swift/usr/share/swift/etc/rsyncd.j2 | 23 - .../usr/share/swift/etc/swift/account-server.j2 | 192 - .../usr/share/swift/etc/swift/container-server.j2 | 211 -- .../usr/share/swift/etc/swift/object-server.j2 | 306 -- .../swift/usr/share/swift/etc/swift/swift.j2 | 169 - install-files/swift/usr/share/swift/hosts | 1 - .../swift/usr/share/swift/swift-storage.yml | 24 - .../home/vagrant/.ssh/authorized_keys | 1 - install-files/vagrant-files/manifest | 4 - .../ivi-system-armv7lhf-jetson-deploy.morph | 18 - ivi/clusters/ivi-system-x86_32-deploy.morph | 24 - ivi/clusters/ivi-system-x86_64-deploy.morph | 24 - ivi/strata/bsp-x86_32-ivi.morph | 12 - ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph | 84 - ivi/strata/bsp-x86_64-ivi.morph | 12 - ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph | 84 - ivi/strata/qt5-ivi.morph | 21 - ivi/strata/qt5-ivi/qtapplicationmanager.morph | 8 - ivi/strata/rvi.morph | 11 - ivi/strata/rvi/rvi_core.morph | 16 - ivi/systems/ivi-system-armv7lhf-jetson.morph | 94 - ivi/systems/ivi-system-x86_32.morph | 104 - ivi/systems/ivi-system-x86_64.morph | 104 - migrations | 3 - partitioning/default | 9 - partitioning/socfpga-devkit | 26 - scripts/baserock-release-metadata | 66 - scripts/check-unpetrify-refs.py | 76 - scripts/cycle.sh | 61 - scripts/licensecheck.pl | 604 --- scripts/licensecheck.py | 201 - scripts/organize-morphologies.py | 255 -- scripts/release-build | 192 - scripts/release-build.test.conf | 6 - scripts/release-test | 400 -- scripts/release-test-os | 526 --- scripts/release-upload | 473 --- scripts/release-upload.test.conf | 10 - scripts/scriptslib.py | 156 - scripts/yaml-jsonschema | 50 - strata/CPAN-Mini-Inject.morph | 306 -- strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph | 3 - strata/NetworkManager-common.morph | 48 - strata/NetworkManager-common/ModemManager.morph | 9 - strata/NetworkManager-common/NetworkManager.morph | 10 - strata/NetworkManager-common/readline6.morph | 8 - strata/ansible.morph | 26 - strata/ansible/ansible.morph | 9 - strata/ansible/openstack-ansible-modules.morph | 5 - strata/armv7lhf-cross-toolchain.morph | 54 - .../armv7lhf-cross-binutils.morph | 24 - .../armv7lhf-cross-gcc-nolibc.morph | 73 - .../armv7lhf-cross-gcc.morph | 47 - .../armv7lhf-cross-glibc.morph | 51 - .../armv7lhf-cross-libstdc++.morph | 32 - .../armv7lhf-cross-linux-api-headers.morph | 10 - strata/baserock-import.morph | 24 - strata/bluetooth.morph | 39 - strata/bluetooth/bluez-tools.morph | 10 - strata/bluetooth/bluez.morph | 19 - strata/bluetooth/libical.morph | 5 - strata/bsp-armv5l-openbmc-aspeed.morph | 18 - .../linux-armv5l-openbmc-aspeed.morph | 9 - .../bsp-armv5l-openbmc-aspeed/u-boot@aspeed.morph | 14 - strata/bsp-armv7-highbank.morph | 17 - .../bsp-armv7-highbank/linux-armv7-highbank.morph | 52 - strata/bsp-armv7-versatile.morph | 12 - .../linux-armv7-versatile.morph | 31 - strata/bsp-armv7b-highbank.morph | 17 - .../linux-armv7b-highbank.morph | 53 - strata/bsp-armv7b-vexpress-tc2.morph | 11 - .../linux-armv7b-vexpress-tc2.morph | 57 - strata/bsp-armv7l-altera-socfpga-devkit.morph | 39 - .../bsp-support@socfpga-devkit.morph | 17 - .../device-tree-compiler.morph | 6 - .../linux-armv7l-altera-socfpga-devkit.morph | 34 - .../preloader@socfpga-devkit.morph | 17 - .../u-boot-tools@socfpga-devkit.morph | 14 - .../u-boot@socfpga-devkit.morph | 9 - strata/bsp-armv8b64-generic.morph | 15 - .../linux-armv8b64-generic.morph | 278 -- strata/bsp-armv8l64-generic.morph | 14 - .../linux-armv8l64-generic.morph | 276 -- strata/bsp-jetson.morph | 36 - .../bsp-jetson/device-tree-compiler@jetson.morph | 6 - strata/bsp-jetson/linux-firmware@jetson.morph | 15 - strata/bsp-jetson/linux-jetson-tk1.morph | 252 -- strata/bsp-jetson/u-boot@jetson.morph | 20 - strata/bsp-ppc64-generic.morph | 11 - strata/bsp-ppc64-generic/linux-ppc64.morph | 226 -- strata/bsp-wandboard.morph | 18 - strata/bsp-wandboard/linux-armv7-wandboard.morph | 70 - strata/bsp-wandboard/u-boot@wandboard.morph | 11 - strata/bsp-x86_32-generic.morph | 26 - .../bsp-x86_32-generic/linux-x86-32-generic.morph | 299 -- strata/bsp-x86_32-generic/nasm.morph | 5 - strata/bsp-x86_32-generic/syslinux.morph | 12 - strata/bsp-x86_64-generic.morph | 26 - .../bsp-x86_64-generic/linux-x86-64-generic.morph | 300 -- strata/bsp-x86_64-generic/nasm.morph | 5 - strata/bsp-x86_64-generic/syslinux.morph | 12 - strata/bsp-x86_both-tools.morph | 21 - strata/bsp-x86_both-tools/nasm.morph | 5 - strata/bsp-x86_both-tools/syslinux.morph | 12 - strata/build-essential.morph | 412 -- strata/build-essential/binutils.morph | 8 - strata/build-essential/busybox.morph | 89 - strata/build-essential/ccache.morph | 14 - strata/build-essential/fhs-dirs.morph | 49 - strata/build-essential/gawk.morph | 5 - strata/build-essential/gcc.morph | 62 - strata/build-essential/glibc.morph | 100 - strata/build-essential/linux-api-headers.morph | 24 - strata/build-essential/m4-tarball.morph | 5 - strata/build-essential/make.morph | 5 - strata/build-essential/stage1-binutils.morph | 23 - strata/build-essential/stage1-gcc.morph | 83 - strata/build-essential/stage2-binutils.morph | 21 - strata/build-essential/stage2-busybox.morph | 80 - strata/build-essential/stage2-fake-bash.morph | 4 - strata/build-essential/stage2-fhs-dirs.morph | 51 - strata/build-essential/stage2-gawk.morph | 9 - .../build-essential/stage2-gcc-fixed-headers.morph | 19 - strata/build-essential/stage2-gcc.morph | 81 - strata/build-essential/stage2-glibc.morph | 108 - strata/build-essential/stage2-libstdc++.morph | 36 - .../build-essential/stage2-linux-api-headers.morph | 24 - strata/build-essential/stage2-make.morph | 9 - strata/build-essential/stage2-reset-specs.morph | 21 - strata/build-essential/zlib.morph | 9 - strata/cloudinit-support.morph | 21 - strata/cloudinit-support/cloud-init.morph | 6 - strata/connectivity.morph | 27 - strata/connectivity/wpa_supplicant.morph | 36 - strata/connman-common.morph | 16 - strata/connman-common/connman.morph | 6 - strata/connman-common/ofono.morph | 11 - strata/corba.morph | 17 - strata/corba/ACE_TAO.morph | 32 - strata/corba/MPC.morph | 6 - strata/core.morph | 482 --- strata/core/attr.morph | 19 - strata/core/autoconf-tarball.morph | 5 - strata/core/autoconf.morph | 5 - strata/core/automake.morph | 8 - strata/core/bash.morph | 36 - strata/core/bison.morph | 6 - strata/core/bzip2.morph | 10 - strata/core/ca-certificates.morph | 26 - strata/core/cmake.morph | 8 - strata/core/curl.morph | 15 - strata/core/e2fsprogs.morph | 27 - strata/core/flex.morph | 14 - strata/core/gdbm.morph | 8 - strata/core/gettext-tarball.morph | 5 - strata/core/git-minimal.morph | 7 - strata/core/gperf.morph | 5 - strata/core/gzip.morph | 6 - strata/core/libcap2.morph | 6 - strata/core/libexpat.morph | 6 - strata/core/libffi.morph | 8 - strata/core/libtool-tarball.morph | 5 - strata/core/libtool.morph | 10 - strata/core/linux-pam.morph | 9 - strata/core/mini-utils.morph | 7 - strata/core/ncurses.morph | 45 - strata/core/openssl-new.morph | 15 - strata/core/patch.morph | 5 - strata/core/perl.morph | 16 - strata/core/pkg-config.morph | 5 - strata/core/python3.morph | 15 - strata/core/readline.morph | 9 - strata/core/shadow.morph | 53 - strata/core/texinfo-tarball.morph | 9 - strata/core/util-linux.morph | 10 - strata/coreutils-common.morph | 67 - strata/coreutils-common/coreutils.morph | 12 - strata/coreutils-common/diff.morph | 8 - strata/coreutils-common/sed.morph | 8 - strata/coreutils-common/tar.morph | 13 - strata/cpp-common-libs.morph | 11 - strata/cpp-common-libs/boost.morph | 9 - strata/cross-bootstrap.morph | 29 - strata/cross-bootstrap/groff.morph | 13 - strata/cross-bootstrap/openssh.morph | 28 - strata/cross-bootstrap/rsync.morph | 6 - strata/cross-tools.morph | 11 - strata/cups.morph | 11 - strata/cups/cups.morph | 12 - strata/data-indexing-management.morph | 40 - strata/data-indexing-management/gmime.morph | 6 - strata/data-indexing-management/libmediaart.morph | 5 - strata/device-management.morph | 12 - strata/devtools.morph | 56 - strata/devtools/git.morph | 11 - strata/devtools/nano.morph | 16 - strata/devtools/pv.morph | 5 - strata/devtools/screen.morph | 11 - strata/devtools/vim.morph | 10 - strata/devtools/wget.morph | 10 - strata/dlna-services.morph | 51 - strata/dlna-services/gssdp.morph | 5 - strata/docutils.morph | 52 - strata/docutils/docbook-xml.morph | 104 - strata/docutils/docbook-xsl.morph | 50 - strata/docutils/xml-catalog.morph | 6 - strata/elixir.morph | 11 - strata/elixir/elixir.morph | 6 - strata/erlang.morph | 18 - strata/erlang/erlang.morph | 9 - strata/erlang/rebar.morph | 6 - strata/foundation.morph | 131 - strata/foundation/btrfs-progs.morph | 8 - strata/foundation/dbus-pre.morph | 10 - strata/foundation/dbus.morph | 10 - strata/foundation/fuse.morph | 5 - strata/foundation/groff.morph | 13 - strata/foundation/kmod.morph | 15 - strata/foundation/libarchive.morph | 6 - strata/foundation/libgcrypt.morph | 10 - strata/foundation/libgpg-error.morph | 7 - strata/foundation/lzo.morph | 5 - strata/foundation/openssh.morph | 32 - strata/foundation/pciutils.morph | 11 - strata/foundation/rsync.morph | 11 - strata/foundation/systemd.morph | 31 - strata/foundation/tbdiff.morph | 3 - strata/foundation/time-zone-database.morph | 11 - strata/geolocation.morph | 18 - strata/geolocation/geoclue.morph | 13 - strata/glib-common.morph | 38 - strata/glib-common/glib.morph | 8 - strata/glib-common/gtk-doc-stub.morph | 8 - strata/graphics-common.morph | 110 - strata/graphics-common/cairo.morph | 5 - .../chinese-fonts-truetype-bkai00mp.morph | 5 - .../chinese-fonts-truetype-bsmi00lp.morph | 5 - .../chinese-fonts-truetype-gbsn00lp.morph | 5 - .../chinese-fonts-truetype-gkai00mp.morph | 5 - strata/graphics-common/fontconfig.morph | 7 - strata/graphics-common/freefont-otf.morph | 5 - strata/graphics-common/pixman.morph | 5 - strata/graphics-common/ttf-alee.morph | 5 - strata/gtk-deps.morph | 55 - strata/gtk-deps/at-spi2-atk.morph | 5 - strata/gtk-deps/at-spi2-core.morph | 5 - strata/gtk-deps/gdk-pixbuf.morph | 8 - strata/gtk-deps/shared-mime-info.morph | 8 - strata/gtk2.morph | 12 - strata/gtk2/gtk+.morph | 15 - strata/gtk3.morph | 20 - strata/gtk3/gtk3.morph | 15 - strata/icu-common.morph | 10 - strata/icu-common/icu.morph | 19 - strata/initramfs-utils.morph | 11 - strata/input-common.morph | 46 - strata/input-common/libinput.morph | 8 - strata/input-common/libxkbcommon-no-x11.morph | 12 - strata/input-common/xkeyboard-config.morph | 7 - strata/installer-utils.morph | 11 - strata/installer-utils/installer-scripts.morph | 4 - strata/ivi-common.morph | 12 - strata/ivi-common/automotive-message-broker.morph | 20 - strata/libdrm-common.morph | 17 - strata/libdrm-common/drm.morph | 7 - strata/libsoup-common.morph | 11 - strata/libsoup-common/libsoup.morph | 6 - strata/lighttpd-server.morph | 12 - strata/lighttpd-server/lighttpd.morph | 6 - strata/llvm-common.morph | 10 - strata/llvm-common/llvm.morph | 24 - strata/lorry.morph | 125 - strata/lorry/cvs-tarball.morph | 10 - strata/lorry/cvsps.morph | 6 - strata/lorry/hg-fast-export.morph | 10 - strata/lorry/libapr-util.morph | 7 - strata/lorry/libapr.morph | 21 - strata/lorry/libserf.morph | 6 - strata/lorry/lorry.morph | 3 - strata/lorry/mercurial-tarball.morph | 6 - strata/lorry/neon.morph | 8 - strata/lorry/perl-dbi-tarball.morph | 5 - strata/lorry/subversion-tarball.morph | 12 - strata/lorry/swig.morph | 7 - strata/lua53.morph | 11 - strata/lua53/lua53.morph | 9 - strata/mesa-common.morph | 22 - strata/mesa-common/mesa.morph | 24 - strata/mesa-demos-common.morph | 37 - strata/mesa-demos-common/glew.morph | 6 - strata/morph-utils.morph | 54 - strata/morph-utils/cmdtest.morph | 6 - strata/morph-utils/pyfilesystem.morph | 6 - strata/morph-utils/python-ttystatus.morph | 6 - strata/mtd-utilities.morph | 11 - strata/mtd-utilities/mtd-utils.morph | 6 - strata/multimedia-common.morph | 64 - strata/multimedia-common/libmad.morph | 10 - strata/multimedia-common/libmpeg2.morph | 6 - strata/multimedia-common/libvpx.morph | 14 - strata/multimedia-common/orc.morph | 5 - strata/multimedia-common/yasm.morph | 4 - strata/multimedia-gstreamer-openmax-generic.morph | 14 - .../gst-omx.morph | 7 - strata/multimedia-gstreamer.morph | 63 - strata/multimedia-gstreamer/gst-libav.morph | 5 - strata/multimedia-hardware-codecs-x86.morph | 31 - strata/navigation.morph | 11 - strata/navigation/navit.morph | 5 - strata/network-security.morph | 47 - strata/network-security/gnutls.morph | 6 - strata/network-security/libtasn1.morph | 6 - strata/network-security/nettle.morph | 6 - strata/network-security/nspr.morph | 12 - strata/network-security/nss.morph | 32 - strata/network-security/p11-kit.morph | 5 - strata/nfs.morph | 31 - strata/nfs/nfs-utils.morph | 13 - strata/nfs/rpcbind.morph | 11 - strata/nfs/tcp-wrappers.morph | 9 - strata/nfs/ti-rpc.morph | 6 - strata/nodejs.morph | 12 - strata/nodejs/node.morph | 9 - strata/openbmc.morph | 22 - strata/openbmc/i2c-tools.morph | 16 - strata/openbmc/isc-dhcp.morph | 3 - strata/openbmc/lm_sensors.morph | 7 - strata/openstack-clients.morph | 154 - strata/openstack-common.morph | 140 - strata/openstack-common/babel.morph | 8 - strata/ostree-core.morph | 38 - strata/ostree-core/gpgme.morph | 7 - strata/ostree-core/libassuan.morph | 7 - strata/ostree-core/ostree.morph | 7 - strata/pcre-utils.morph | 10 - strata/pcre-utils/pcre.morph | 6 - strata/perl-common.morph | 388 -- strata/perl-common/List-MoreUtils.morph | 9 - strata/privileges-management.morph | 21 - strata/privileges-management/mozjs17.morph | 18 - strata/privileges-management/polkit.morph | 11 - strata/python-cliapp.morph | 26 - strata/python-cliapp/python-coveragepy.morph | 6 - strata/python-common.morph | 93 - strata/python-common/pycrypto.morph | 3 - strata/python-pygobject.morph | 13 - strata/python-pygobject/pygobject.morph | 5 - strata/python-tools.morph | 29 - strata/python-wsgi.morph | 17 - strata/python2-core.morph | 107 - strata/python2-core/python2.morph | 13 - strata/python2-core/pyyaml-python2.morph | 6 - strata/python3-gobject.morph | 13 - strata/python3-gobject/python3-gobject.morph | 5 - strata/qt5-sdk.morph | 15 - strata/qt5-sdk/qt-creator.morph | 8 - strata/qt5-sdk/snowshoe.morph | 8 - strata/qt5-tools-qtmultimedia.morph | 12 - strata/qt5-tools-qtwayland.morph | 12 - strata/qt5-tools-qtwayland/qtwayland.morph | 5 - strata/qt5-tools-qtwebengine.morph | 23 - strata/qt5-tools-qtwebkit.morph | 41 - strata/qt5-tools.morph | 132 - strata/qt5-tools/qtbase.morph | 5 - strata/ruby.morph | 54 - strata/ruby/bundler.morph | 6 - strata/ruby/hoe.morph | 16 - strata/ruby/rake-compiler.morph | 15 - strata/ruby/ruby-1.8.morph | 9 - strata/ruby/ruby.morph | 9 - strata/samba.morph | 13 - strata/samba/samba.morph | 127 - strata/sandboxing.morph | 18 - strata/secret-service.morph | 27 - strata/secret-service/gnome-keyring.morph | 5 - strata/secret-service/libsecret.morph | 5 - strata/sound-server-pulseaudio.morph | 74 - strata/sound-server-pulseaudio/alsa-utils.morph | 7 - strata/sound-server-pulseaudio/avahi.morph | 16 - strata/sound-server-pulseaudio/libsndfile.morph | 5 - strata/sound-server-pulseaudio/pulseaudio.morph | 18 - .../webrtc-audio-processing.morph | 14 - strata/spell-checking.morph | 16 - strata/storage-management.morph | 40 - strata/storage-management/gvfs.morph | 5 - strata/storage-management/libatasmart.morph | 6 - strata/storage-management/libmtp.morph | 8 - strata/storage-management/udisks.morph | 5 - strata/swift.morph | 53 - strata/swift/gf-complete.morph | 19 - strata/swift/liberasurecode.morph | 5 - strata/swift/xattr.morph | 8 - strata/tools.morph | 69 - strata/tools/device-tree-compiler.morph | 6 - strata/tools/distcc.morph | 10 - strata/tools/gdb.morph | 6 - strata/tools/git-fat.morph | 4 - strata/tools/ipmitool.morph | 5 - strata/tools/kexec-tools.morph | 6 - strata/tools/lsof.morph | 12 - strata/tools/parted.morph | 12 - strata/tools/procps-ng.morph | 16 - strata/tools/u-boot.morph | 11 - strata/tools/zip.morph | 9 - strata/unionfs-fuse-group.morph | 20 - strata/unionfs-fuse-group/unionfs-fuse.morph | 12 - strata/vala-common.morph | 35 - strata/vala-common/vala-bootstrap.morph | 7 - strata/virtualbox-guest-x86_64.morph | 22 - strata/virtualbox-guest-x86_64/vboxguest.morph | 34 - strata/virtualbox-guest-x86_64/yasm.morph | 4 - strata/wayland-generic.morph | 17 - strata/wayland-generic/wayland.morph | 7 - strata/weston-common.morph | 14 - strata/weston-common/weston.morph | 7 - strata/x-common.morph | 405 -- strata/x-drivers.morph | 26 - strata/x-generic.morph | 46 - strata/x-generic/xserver.morph | 12 - strata/xorg-util-macros-common.morph | 17 - .../armv7lhf-cross-toolchain-system-x86_32.morph | 19 - .../armv7lhf-cross-toolchain-system-x86_64.morph | 19 - systems/base-system-armv7-highbank.morph | 20 - systems/base-system-armv7-versatile.morph | 20 - systems/base-system-armv7b-highbank.morph | 20 - systems/base-system-armv7b-vexpress-tc2.morph | 19 - .../base-system-armv7l-altera-socfpga-devkit.morph | 21 - systems/base-system-armv7lhf-highbank.morph | 20 - systems/base-system-armv8b64.morph | 22 - systems/base-system-armv8l64.morph | 22 - systems/base-system-ppc64-generic.morph | 20 - systems/base-system-x86_32-generic.morph | 19 - systems/base-system-x86_64-generic.morph | 20 - systems/build-system-armv5l-openbmc-aspeed.morph | 49 - ...build-system-armv7l-altera-socfpga-devkit.morph | 51 - systems/build-system-armv7lhf-highbank.morph | 63 - systems/build-system-armv7lhf-jetson.morph | 61 - systems/build-system-armv7lhf-rootfs.morph | 59 - systems/build-system-armv8b64.morph | 63 - systems/build-system-armv8l64.morph | 63 - systems/build-system-ppc64.morph | 61 - systems/build-system-x86_32-chroot.morph | 61 - systems/build-system-x86_32.morph | 61 - systems/build-system-x86_64-chroot.morph | 61 - systems/build-system-x86_64.morph | 61 - .../cross-bootstrap-system-armv5l-generic.morph | 25 - .../cross-bootstrap-system-armv7lhf-generic.morph | 25 - .../cross-bootstrap-system-armv8b64-generic.morph | 25 - .../cross-bootstrap-system-armv8l64-generic.morph | 25 - systems/cross-bootstrap-system-ppc64-generic.morph | 25 - .../cross-bootstrap-system-x86_64-generic.morph | 25 - systems/initramfs-x86_32.morph | 11 - systems/initramfs-x86_64.morph | 11 - systems/installer-system-armv8b64.morph | 41 - systems/installer-system-x86_64.morph | 40 - systems/minimal-system-armv5l-openbmc-aspeed.morph | 20 - systems/minimal-system-x86_32-generic.morph | 21 - systems/minimal-system-x86_64-chroot.morph | 12 - systems/minimal-system-x86_64-generic.morph | 21 - trove/clusters/mason-openstack.morph | 39 - trove/clusters/mason.morph | 56 - trove/clusters/trove-example.morph | 58 - trove/clusters/trove.baserock.org-upgrade.morph | 19 - trove/strata/fail2ban-common.morph | 14 - trove/strata/fail2ban-common/fail2ban.morph | 6 - trove/strata/lorry-controller.morph | 16 - .../strata/lorry-controller/lorry-controller.morph | 10 - trove/strata/python3-core.morph | 58 - trove/strata/python3-core/pyyaml.morph | 6 - trove/strata/trove.morph | 101 - trove/strata/trove/cgit.morph | 6 - trove/strata/trove/clod.morph | 7 - trove/strata/trove/gall.morph | 7 - trove/strata/trove/gitano.morph | 5 - trove/strata/trove/lace.morph | 7 - trove/strata/trove/lrexlib-pcre.morph | 9 - trove/strata/trove/lua-scrypt.morph | 4 - trove/strata/trove/lua.morph | 11 - trove/strata/trove/luxio.morph | 7 - trove/strata/trove/supple.morph | 7 - trove/strata/trove/trove-setup.morph | 4 - trove/systems/trove-system-x86_64.morph | 65 - unmaintained/clusters/cephclient.morph | 20 - .../example-ceph-cluster-on-openstack.morph | 55 - .../clusters/example-swift-storage-cluster.morph | 62 - unmaintained/clusters/jetson-upgrade.morph | 17 - unmaintained/clusters/moonshot-m2-armv8b64.morph | 56 - unmaintained/clusters/moonshot-pxe-armv8b64.morph | 30 - unmaintained/clusters/moonshot-pxe-armv8l64.morph | 22 - .../clusters/openstack-one-node-swift.morph | 142 - unmaintained/clusters/openstack-one-node.morph | 104 - .../clusters/openstack-three-node-installer.morph | 238 -- .../clusters/openstack-two-node-installer.morph | 199 - unmaintained/clusters/sdk-example-cluster.morph | 46 - unmaintained/clusters/upgrade-devel.morph | 39 - .../clusters/xfce-system-x86_64-deploy.morph | 23 - unmaintained/clusters/zookeeper.morph | 21 - unmaintained/strata/apache-httpd-server.morph | 41 - unmaintained/strata/apache-httpd-server/apr.morph | 22 - .../strata/apache-httpd-server/httpd-server.morph | 67 - .../strata/apache-httpd-server/mod_wsgi.morph | 18 - unmaintained/strata/ceph-service.morph | 73 - unmaintained/strata/ceph-service/ceph.morph | 26 - unmaintained/strata/ceph-service/keyutils.morph | 7 - unmaintained/strata/ceph-service/leveldb.morph | 9 - unmaintained/strata/ceph-service/libaio.morph | 7 - unmaintained/strata/chef.morph | 193 - unmaintained/strata/chef/chef-12.0.0.alpha.0.morph | 20 - unmaintained/strata/chef/chef-zero-2.2.morph | 13 - unmaintained/strata/chef/coderay-1.1.0.morph | 13 - unmaintained/strata/chef/diff-lcs-1.2.5.morph | 13 - unmaintained/strata/chef/erubis-master.morph | 19 - unmaintained/strata/chef/ffi-1.9.3.morph | 13 - unmaintained/strata/chef/ffi-yajl-1.0.2.morph | 13 - unmaintained/strata/chef/hashie-2.1.2.morph | 13 - unmaintained/strata/chef/highline-1.6.21.morph | 13 - unmaintained/strata/chef/hoe-master.morph | 13 - unmaintained/strata/chef/ipaddress-0.8.0.morph | 13 - unmaintained/strata/chef/json-1.8.1.morph | 13 - unmaintained/strata/chef/libpopt.morph | 6 - unmaintained/strata/chef/libyajl2-1.0.1.morph | 13 - unmaintained/strata/chef/method_source-0.8.2.morph | 13 - unmaintained/strata/chef/mime-types-1.25.1.morph | 13 - .../strata/chef/mixlib-authentication-1.3.0.morph | 13 - unmaintained/strata/chef/mixlib-cli-1.5.0.morph | 13 - unmaintained/strata/chef/mixlib-config-2.1.0.morph | 13 - unmaintained/strata/chef/mixlib-log-1.6.0.morph | 13 - .../strata/chef/mixlib-shellout-1.4.0.morph | 13 - unmaintained/strata/chef/net-dhcp-1.2.1.morph | 13 - unmaintained/strata/chef/net-ssh-2.9.1.morph | 15 - .../strata/chef/net-ssh-gateway-1.2.0.morph | 15 - unmaintained/strata/chef/net-ssh-multi-1.2.0.morph | 15 - unmaintained/strata/chef/ohai-7.4.0.dev.morph | 13 - unmaintained/strata/chef/plist-master.morph | 13 - unmaintained/strata/chef/pry-0.10.1.morph | 13 - unmaintained/strata/chef/rack-1.5.2.morph | 13 - unmaintained/strata/chef/sgdisk.morph | 7 - unmaintained/strata/chef/slop-3.6.0.morph | 13 - unmaintained/strata/chef/systemu-2.6.4.morph | 13 - unmaintained/strata/chef/wmi-lite-1.0.0.morph | 13 - unmaintained/strata/chef/yajl.morph | 6 - unmaintained/strata/cxmanage.morph | 36 - unmaintained/strata/cxmanage/pexpect.morph | 10 - unmaintained/strata/databases.morph | 35 - unmaintained/strata/databases/memcached.morph | 21 - unmaintained/strata/databases/redis.morph | 6 - unmaintained/strata/django.morph | 37 - unmaintained/strata/enlightenment.morph | 80 - unmaintained/strata/enlightenment/bullet3.morph | 8 - unmaintained/strata/enlightenment/efl.morph | 9 - unmaintained/strata/enlightenment/elementary.morph | 8 - .../strata/enlightenment/enlightenment.morph | 8 - unmaintained/strata/enlightenment/eterm.morph | 8 - .../enlightenment/evas_generic_loaders.morph | 8 - unmaintained/strata/enlightenment/imlib2.morph | 8 - unmaintained/strata/enlightenment/libast.morph | 8 - unmaintained/strata/java.morph | 22 - unmaintained/strata/java/java-ant.morph | 8 - unmaintained/strata/java/java-binary.morph | 16 - unmaintained/strata/lua51.morph | 16 - unmaintained/strata/lua51/lua51.morph | 11 - unmaintained/strata/lua51/luajit2.morph | 7 - unmaintained/strata/lvm.morph | 15 - unmaintained/strata/lvm/lvm2.morph | 32 - .../strata/multimedia-gstreamer-0.10.morph | 38 - .../gstreamer-plugins-base@0.10.morph | 14 - unmaintained/strata/networking-utils.morph | 105 - .../strata/networking-utils/conntrack-tools.morph | 4 - .../strata/networking-utils/ebtables.morph | 7 - .../strata/networking-utils/iproute2.morph | 10 - unmaintained/strata/networking-utils/ipset.morph | 6 - unmaintained/strata/networking-utils/iputils.morph | 24 - unmaintained/strata/networking-utils/libnet.morph | 16 - .../networking-utils/libnetfilter_conntrack.morph | 3 - .../networking-utils/libnetfilter_cthelper.morph | 3 - .../networking-utils/libnetfilter_cttimeout.morph | 3 - .../networking-utils/libnetfilter_queue.morph | 3 - .../strata/networking-utils/libnfnetlink.morph | 3 - unmaintained/strata/networking-utils/libpcap.morph | 3 - unmaintained/strata/networking-utils/tcpdump.morph | 3 - unmaintained/strata/ntpd.morph | 10 - unmaintained/strata/ntpd/ntpd.morph | 51 - unmaintained/strata/ocaml-language.morph | 11 - unmaintained/strata/ocaml-language/ocaml.morph | 8 - .../strata/openstack-clients/appdirs.morph | 3 - .../strata/openstack-clients/argparse.morph | 3 - .../strata/openstack-clients/cliff-tablib.morph | 3 - .../openstack-clients/os-client-config.morph | 3 - .../strata/openstack-clients/pyparsing.morph | 6 - .../openstack-clients/python-ironicclient.morph | 3 - .../openstack-clients/python-openstackclient.morph | 3 - unmaintained/strata/openstack-clients/tablib.morph | 3 - unmaintained/strata/openstack-services.morph | 806 ---- .../strata/openstack-services/ceilometer.morph | 23 - .../strata/openstack-services/cinder.morph | 21 - .../openstack-services/erlang-sd_notify.morph | 8 - .../strata/openstack-services/glance.morph | 29 - .../strata/openstack-services/horizon.morph | 63 - .../strata/openstack-services/ipaddr-py.morph | 6 - .../strata/openstack-services/ironic.morph | 18 - .../strata/openstack-services/keystone.morph | 9 - .../strata/openstack-services/librabbitmq.morph | 10 - .../strata/openstack-services/neutron.morph | 27 - unmaintained/strata/openstack-services/nova.morph | 24 - unmaintained/strata/openstack-services/novnc.morph | 11 - .../strata/openstack-services/open-iscsi.morph | 46 - .../strata/openstack-services/pysendfile.morph | 3 - .../strata/openstack-services/qpid-python.morph | 6 - .../openstack-services/rabbitmq-codegen.morph | 7 - .../openstack-services/rabbitmq-server.morph | 16 - .../strata/openstack-services/rtslib-fb.morph | 27 - .../strata/openstack-services/singledispatch.morph | 3 - .../strata/openstack-services/tempest.morph | 12 - .../strata/openstack-services/tftp-hpa.morph | 10 - .../strata/openstack-services/thrift.morph | 6 - unmaintained/strata/qt4-sdk.morph | 14 - unmaintained/strata/qt4-sdk/qt-creator.morph | 9 - unmaintained/strata/qt4-tools.morph | 28 - unmaintained/strata/qt4-tools/qt4-tools.morph | 18 - unmaintained/strata/qt4-tools/ruby-1.8.morph | 9 - unmaintained/strata/qt4-tools/ruby-1.9.morph | 9 - unmaintained/strata/test-tools.morph | 134 - unmaintained/strata/test-tools/subunit.morph | 3 - unmaintained/strata/virtualization.morph | 117 - unmaintained/strata/virtualization/dmidecode.morph | 7 - unmaintained/strata/virtualization/dnsmasq.morph | 10 - unmaintained/strata/virtualization/libosinfo.morph | 11 - unmaintained/strata/virtualization/libvirt.morph | 34 - .../strata/virtualization/openvswitch.morph | 11 - unmaintained/strata/virtualization/qemu.morph | 5 - unmaintained/strata/virtualization/yajl.morph | 8 - unmaintained/strata/webtools.morph | 18 - unmaintained/strata/webtools/nginx.morph | 14 - unmaintained/strata/xfce.morph | 159 - unmaintained/strata/xfce/elementary-xfce.morph | 10 - unmaintained/strata/xfce/exo.morph | 8 - unmaintained/strata/xfce/garcon.morph | 8 - unmaintained/strata/xfce/gtk-xfce-engine-2.morph | 8 - unmaintained/strata/xfce/libwnck.morph | 11 - unmaintained/strata/xfce/libxfce4ui.morph | 8 - unmaintained/strata/xfce/libxfce4util.morph | 8 - unmaintained/strata/xfce/thunar.morph | 9 - unmaintained/strata/xfce/tumbler.morph | 8 - unmaintained/strata/xfce/xfce4-appfinder.morph | 8 - unmaintained/strata/xfce/xfce4-panel.morph | 8 - unmaintained/strata/xfce/xfce4-session.morph | 9 - unmaintained/strata/xfce/xfce4-settings.morph | 8 - unmaintained/strata/xfce/xfconf.morph | 8 - unmaintained/strata/xfce/xfdesktop.morph | 8 - unmaintained/strata/xfce/xfwm4.morph | 11 - unmaintained/strata/xstatic.morph | 154 - unmaintained/strata/zookeeper-client.morph | 16 - unmaintained/strata/zookeeper-server.morph | 11 - unmaintained/strata/zookeeper.morph | 14 - .../strata/zookeeper/zookeeper-client.morph | 17 - .../strata/zookeeper/zookeeper-server.morph | 30 - unmaintained/strata/zookeeper/zookeeper.morph | 14 - .../systems/ceph-service-x86_64-generic.morph | 70 - .../systems/chef-system-x86_64-container.morph | 32 - .../systems/cxmanage-system-x86_64-generic.morph | 28 - .../systems/devel-system-armv7-chroot.morph | 72 - .../systems/devel-system-armv7-highbank.morph | 75 - .../systems/devel-system-armv7-versatile.morph | 73 - .../systems/devel-system-armv7-wandboard.morph | 73 - .../systems/devel-system-armv7b-chroot.morph | 64 - .../systems/devel-system-armv7b-highbank.morph | 71 - ...devel-system-armv7l-altera-socfpga-devkit.morph | 66 - .../systems/devel-system-armv7lhf-chroot.morph | 72 - .../systems/devel-system-armv7lhf-highbank.morph | 78 - .../systems/devel-system-armv7lhf-jetson.morph | 76 - .../systems/devel-system-armv7lhf-wandboard.morph | 76 - unmaintained/systems/devel-system-armv8b64.morph | 77 - unmaintained/systems/devel-system-armv8l64.morph | 78 - .../systems/devel-system-ppc64-chroot.morph | 70 - .../systems/devel-system-ppc64-generic.morph | 73 - .../systems/devel-system-x86_32-chroot.morph | 72 - .../systems/devel-system-x86_32-generic.morph | 78 - .../systems/devel-system-x86_64-chroot.morph | 74 - .../systems/devel-system-x86_64-generic.morph | 83 - .../systems/devel-system-x86_64-vagrant.morph | 76 - .../systems/java-build-system-x86_64-generic.morph | 90 - unmaintained/systems/nodejs-system-x86_64.morph | 24 - unmaintained/systems/ocaml-system-x86_64.morph | 20 - unmaintained/systems/openstack-system-x86_64.morph | 88 - .../systems/qt4-devel-system-x86_64-generic.morph | 52 - .../systems/qt5-devel-system-x86_64-generic.morph | 54 - unmaintained/systems/swift-system-x86_64.morph | 34 - .../systems/web-system-x86_64-generic.morph | 43 - unmaintained/systems/xfce-system-x86_64.morph | 79 - unmaintained/systems/zookeeper-client-x86_64.morph | 30 - unmaintained/systems/zookeeper-server-x86_64.morph | 30 - .../clusters/weston-qt5-system-x86_64-deploy.morph | 23 - .../weston-system-x86_64-generic-deploy.morph | 23 - weston/systems/weston-qt5-system-x86_64.morph | 70 - weston/systems/weston-system-armv7lhf-jetson.morph | 58 - weston/systems/weston-system-x86_64-generic.morph | 57 - 1055 files changed, 58351 deletions(-) delete mode 100644 DEFAULTS delete mode 100644 VERSION delete mode 100644 clusters/altera-socfpga-devkit-sd-image.morph delete mode 100644 clusters/build-system-x86_64-chroot-deploy.morph delete mode 100644 clusters/ci.morph delete mode 100644 clusters/example-distbuild-cluster.morph delete mode 100644 clusters/hardware-deployment.morph delete mode 100644 clusters/image-package-example.morph delete mode 100644 clusters/initramfs-test.morph delete mode 100644 clusters/installer-build-system-x86_64.morph delete mode 100644 clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph delete mode 100644 clusters/minimal-system-deploy.morph delete mode 100644 clusters/minimal-system-x86_64-chroot-deploy.morph delete mode 100644 clusters/minimal-system-x86_64-deploy.morph delete mode 100644 clusters/release.morph delete mode 100755 extensions/add-config-files.configure delete mode 100644 extensions/busybox-init.configure delete mode 100644 extensions/ceph.configure delete mode 100755 extensions/cloud-init.configure delete mode 100755 extensions/distbuild-trove-nfsboot.check delete mode 100755 extensions/distbuild-trove-nfsboot.write delete mode 100644 extensions/distbuild-trove-nfsboot.write.help delete mode 100644 extensions/distbuild.configure delete mode 100755 extensions/fstab.configure delete mode 100644 extensions/genivi.configure delete mode 100644 extensions/genivi.configure.help delete mode 100644 extensions/hosts delete mode 100755 extensions/hosts.configure delete mode 100644 extensions/image-package-example/README delete mode 100644 extensions/image-package-example/common.sh.in delete mode 100644 extensions/image-package-example/disk-install.sh.in delete mode 100644 extensions/image-package-example/make-disk-image.sh.in delete mode 100755 extensions/image-package.write delete mode 100755 extensions/initramfs.write delete mode 100644 extensions/initramfs.write.help delete mode 100755 extensions/install-essential-files.configure delete mode 100644 extensions/install-essential-files.configure.help delete mode 100755 extensions/install-files.configure delete mode 100644 extensions/install-files.configure.help delete mode 100755 extensions/installer.configure delete mode 100644 extensions/jffs2.write delete mode 100644 extensions/jffs2.write.help delete mode 100755 extensions/kvm.check delete mode 100755 extensions/kvm.write delete mode 100644 extensions/kvm.write.help delete mode 100644 extensions/mason.configure delete mode 100644 extensions/mason/ansible/hosts delete mode 100644 extensions/mason/ansible/mason-setup.yml delete mode 100644 extensions/mason/httpd.service delete mode 100755 extensions/mason/mason-generator.sh delete mode 100755 extensions/mason/mason-report.sh delete mode 100644 extensions/mason/mason-setup.service delete mode 100644 extensions/mason/mason.service delete mode 100755 extensions/mason/mason.sh delete mode 100644 extensions/mason/mason.timer delete mode 100644 extensions/mason/os-init-script delete mode 100644 extensions/mason/share/mason.conf delete mode 100644 extensions/mason/share/os.conf delete mode 100644 extensions/moonshot-kernel.configure delete mode 100755 extensions/nfsboot-server.configure delete mode 100755 extensions/nfsboot.check delete mode 100755 extensions/nfsboot.configure delete mode 100755 extensions/nfsboot.write delete mode 100644 extensions/nfsboot.write.help delete mode 100644 extensions/openstack-ceilometer.configure delete mode 100644 extensions/openstack-cinder.configure delete mode 100644 extensions/openstack-glance.configure delete mode 100644 extensions/openstack-ironic.configure delete mode 100644 extensions/openstack-keystone.configure delete mode 100644 extensions/openstack-network.configure delete mode 100644 extensions/openstack-neutron.configure delete mode 100644 extensions/openstack-nova.configure delete mode 100644 extensions/openstack-swift-controller.configure delete mode 100644 extensions/openstack-time.configure delete mode 100755 extensions/openstack.check delete mode 100755 extensions/openstack.write delete mode 100644 extensions/openstack.write.help delete mode 100644 extensions/partitioning.py delete mode 100755 extensions/pxeboot.check delete mode 100644 extensions/pxeboot.write delete mode 100644 extensions/pxeboot.write.help delete mode 100644 extensions/pyfdisk.README delete mode 100644 extensions/pyfdisk.py delete mode 100755 extensions/rawdisk.check delete mode 100755 extensions/rawdisk.write delete mode 100644 extensions/rawdisk.write.help delete mode 100755 extensions/recv-hole delete mode 100755 extensions/sdk.write delete mode 100755 extensions/set-hostname.configure delete mode 100755 extensions/simple-network.configure delete mode 100755 extensions/ssh-rsync.check delete mode 100755 extensions/ssh-rsync.write delete mode 100644 extensions/ssh-rsync.write.help delete mode 100755 extensions/sshkeys.configure delete mode 100755 extensions/strip-gplv3.configure delete mode 100644 extensions/swift-build-rings.yml delete mode 100755 extensions/swift-storage-devices-validate.py delete mode 100644 extensions/swift-storage.configure delete mode 100755 extensions/sysroot.check delete mode 100755 extensions/sysroot.write delete mode 100755 extensions/tar.check delete mode 100755 extensions/tar.write delete mode 100644 extensions/tar.write.help delete mode 100755 extensions/trove.configure delete mode 100644 extensions/trove.configure.help delete mode 100644 extensions/vagrant.configure delete mode 100755 extensions/vdaboot.configure delete mode 100755 extensions/virtualbox-ssh.check delete mode 100755 extensions/virtualbox-ssh.write delete mode 100644 extensions/virtualbox-ssh.write.help delete mode 100644 extensions/writeexts.py delete mode 100755 extensions/xfer-hole delete mode 100644 genivi/clusters/gdp-jetson-upgrade.morph delete mode 100644 genivi/clusters/genivi-demo-platform-x86_32-deploy.morph delete mode 100644 genivi/clusters/genivi-demo-platform-x86_64-deploy.morph delete mode 100644 genivi/clusters/release-genivi-baseline.morph delete mode 100644 genivi/strata/genivi-demo-platform-libs.morph delete mode 100644 genivi/strata/genivi-demo-platform-libs/dbus-c++.morph delete mode 100644 genivi/strata/genivi-demo-platform.morph delete mode 100644 genivi/strata/genivi-demo-platform/audiomanager-poc.morph delete mode 100644 genivi/strata/genivi-demo-platform/audiomanager@gdp.morph delete mode 100644 genivi/strata/genivi-demo-platform/browser-poc.morph delete mode 100644 genivi/strata/genivi-demo-platform/genivi-demo-platform-hmi.morph delete mode 100644 genivi/strata/genivi-demo-platform/mm-common.morph delete mode 100644 genivi/strata/genivi.morph delete mode 100644 genivi/strata/genivi/DLT-daemon.morph delete mode 100644 genivi/strata/genivi/genivi-common-api-dbus-runtime.morph delete mode 100644 genivi/strata/genivi/genivi-common-api-runtime.morph delete mode 100644 genivi/strata/genivi/googlemock.morph delete mode 100644 genivi/strata/genivi/googletest.morph delete mode 100644 genivi/strata/genivi/itzam-tarball.morph delete mode 100644 genivi/strata/genivi/json-c.morph delete mode 100644 genivi/strata/genivi/linuxquota.morph delete mode 100644 genivi/strata/genivi/node-startup-controller.morph delete mode 100644 genivi/strata/genivi/persistence-administrator.morph delete mode 100644 genivi/strata/genivi/persistence-common-object.morph delete mode 100644 genivi/strata/weston-genivi.morph delete mode 100644 genivi/strata/weston-genivi/wayland-ivi-extension.morph delete mode 100644 genivi/strata/weston-genivi/weston.morph delete mode 100644 genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph delete mode 100644 genivi/systems/genivi-baseline-system-armv7lhf-versatile.morph delete mode 100644 genivi/systems/genivi-baseline-system-x86_64-generic.morph delete mode 100644 genivi/systems/genivi-demo-platform-armv7lhf-jetson.morph delete mode 100644 genivi/systems/genivi-demo-platform-x86_32-generic.morph delete mode 100644 genivi/systems/genivi-demo-platform-x86_64-generic.morph delete mode 100644 gnome/clusters/gnome-system-armv7lhf-jetson-deploy.morph delete mode 100644 gnome/clusters/gnome-system-x86_64-deploy.morph delete mode 100644 gnome/strata/flatpak-common.morph delete mode 100644 gnome/strata/flatpak-common/elfutils.morph delete mode 100644 gnome/strata/flatpak-common/flatpak.morph delete mode 100644 gnome/strata/gnome.morph delete mode 100644 gnome/strata/gnome/WebKitGtk.morph delete mode 100644 gnome/strata/gnome/accountsservice.morph delete mode 100644 gnome/strata/gnome/adwaita-icon-theme.morph delete mode 100644 gnome/strata/gnome/autoconf-archive.morph delete mode 100644 gnome/strata/gnome/berkeleydb.morph delete mode 100644 gnome/strata/gnome/caribou.morph delete mode 100644 gnome/strata/gnome/cheese.morph delete mode 100644 gnome/strata/gnome/clutter.morph delete mode 100644 gnome/strata/gnome/cogl.morph delete mode 100644 gnome/strata/gnome/colord.morph delete mode 100644 gnome/strata/gnome/cracklib.morph delete mode 100644 gnome/strata/gnome/d-feet.morph delete mode 100644 gnome/strata/gnome/dconf.morph delete mode 100644 gnome/strata/gnome/desktop-file-utils.morph delete mode 100644 gnome/strata/gnome/empathy.morph delete mode 100644 gnome/strata/gnome/epiphany.morph delete mode 100644 gnome/strata/gnome/evolution-data-server.morph delete mode 100644 gnome/strata/gnome/evolution.morph delete mode 100644 gnome/strata/gnome/folks.morph delete mode 100644 gnome/strata/gnome/gconf.morph delete mode 100644 gnome/strata/gnome/gdm.morph delete mode 100644 gnome/strata/gnome/glade.morph delete mode 100644 gnome/strata/gnome/glib-networking.morph delete mode 100644 gnome/strata/gnome/gnome-color-manager.morph delete mode 100644 gnome/strata/gnome/gnome-control-center.morph delete mode 100644 gnome/strata/gnome/gnome-initial-setup.morph delete mode 100644 gnome/strata/gnome/gnome-online-accounts.morph delete mode 100644 gnome/strata/gnome/gnome-session.morph delete mode 100644 gnome/strata/gnome/gnome-settings-daemon.morph delete mode 100644 gnome/strata/gnome/gnome-shell.morph delete mode 100644 gnome/strata/gnome/gnome-terminal.morph delete mode 100644 gnome/strata/gnome/gnome-themes-standard.morph delete mode 100644 gnome/strata/gnome/gtksourceview.morph delete mode 100644 gnome/strata/gnome/hicolor-icon-theme.morph delete mode 100644 gnome/strata/gnome/ibus-anthy.morph delete mode 100644 gnome/strata/gnome/ibus-hangul.morph delete mode 100644 gnome/strata/gnome/ibus-libpinyin.morph delete mode 100644 gnome/strata/gnome/ibus.morph delete mode 100644 gnome/strata/gnome/krb5.morph delete mode 100644 gnome/strata/gnome/libchamplain.morph delete mode 100644 gnome/strata/gnome/libgdata.morph delete mode 100644 gnome/strata/gnome/libhangul.morph delete mode 100644 gnome/strata/gnome/libpeas.morph delete mode 100644 gnome/strata/gnome/libpurple.morph delete mode 100644 gnome/strata/gnome/libpwquality.morph delete mode 100644 gnome/strata/gnome/librest.morph delete mode 100644 gnome/strata/gnome/libwnck.morph delete mode 100644 gnome/strata/gnome/mozjs24.morph delete mode 100644 gnome/strata/gnome/mutter.morph delete mode 100644 gnome/strata/gnome/nautilus.morph delete mode 100644 gnome/strata/gnome/network-manager-applet.morph delete mode 100644 gnome/strata/gnome/raptor.morph delete mode 100644 gnome/strata/gnome/telepathy-gabble.morph delete mode 100644 gnome/strata/gnome/telepathy-glib.morph delete mode 100644 gnome/strata/gnome/telepathy-logger.morph delete mode 100644 gnome/strata/gnome/telepathy-salut.morph delete mode 100644 gnome/strata/gnome/upower.morph delete mode 100644 gnome/strata/gnome/vte.morph delete mode 100644 gnome/strata/gnome/yelp.morph delete mode 100644 gnome/strata/gnome/zeitgeist.morph delete mode 100644 gnome/systems/gnome-system-armv7lhf-jetson.morph delete mode 100644 gnome/systems/gnome-system-x86_64.morph delete mode 100644 install-files/chef/manifest delete mode 100755 install-files/distbuild/lib/systemd/system-generators/ccache-nfs-mount-generator delete mode 100644 install-files/distbuild/manifest delete mode 100644 install-files/distbuild/usr/lib/distbuild-setup/ansible/distbuild-setup.yml delete mode 100644 install-files/distbuild/usr/lib/distbuild-setup/ansible/hosts delete mode 100644 install-files/distbuild/usr/lib/systemd/system/distbuild-setup.service delete mode 100644 install-files/distbuild/usr/lib/systemd/system/morph-cache-server.service delete mode 100644 install-files/distbuild/usr/lib/systemd/system/morph-controller-helper.service delete mode 100644 install-files/distbuild/usr/lib/systemd/system/morph-controller.service delete mode 100644 install-files/distbuild/usr/lib/systemd/system/morph-worker-helper.service delete mode 100644 install-files/distbuild/usr/lib/systemd/system/morph-worker.service delete mode 120000 install-files/distbuild/usr/lib/systemd/system/multi-user.target.wants/distbuild-setup.service delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph-cache-server.conf delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph-controller-helper.conf delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph-controller.conf delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph-worker-helper.conf delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph-worker.conf delete mode 100644 install-files/distbuild/usr/share/distbuild-setup/morph.conf delete mode 100644 install-files/essential-files/etc/inputrc delete mode 120000 install-files/essential-files/etc/os-release delete mode 100644 install-files/essential-files/etc/profile delete mode 100644 install-files/essential-files/manifest delete mode 100644 install-files/essential-files/usr/bin/brpaste delete mode 100644 install-files/essential-files/usr/lib/os-release delete mode 100644 install-files/essential-files/usr/lib/tmpfiles.d/shutdownramfs.conf delete mode 120000 install-files/genivi-devel-system-armv7/etc/morph.conf delete mode 100644 install-files/genivi-devel-system-armv7/manifest delete mode 100644 install-files/genivi-devel-system-armv7/src/morph.conf delete mode 100644 install-files/gnome/etc/pam.d/gdm delete mode 100644 install-files/gnome/etc/pam.d/gdm-autologin delete mode 100644 install-files/gnome/etc/pam.d/gdm-launch-environment delete mode 100644 install-files/gnome/etc/pam.d/gdm-password delete mode 100644 install-files/gnome/etc/pam.d/passwd delete mode 100644 install-files/gnome/etc/pam.d/system-auth delete mode 100644 install-files/gnome/etc/securetty delete mode 100644 install-files/gnome/etc/ssh/sshd_config delete mode 100644 install-files/gnome/manifest delete mode 100644 install-files/gnome/usr/share/polkit-1/rules.d/geoclue-2.0.rules delete mode 100644 install-files/moonshot/boot/m400-1003.dtb delete mode 100644 install-files/moonshot/manifest delete mode 100644 install-files/openstack/etc/horizon/apache-horizon.conf delete mode 100644 install-files/openstack/etc/neutron/dnsmasq-neutron.conf delete mode 100755 install-files/openstack/etc/tempest/set_openstack_to_run_tempest.sh delete mode 100644 install-files/openstack/etc/tempest/tempest.conf delete mode 100644 install-files/openstack/manifest delete mode 100644 install-files/openstack/usr/lib/sysctl.d/neutron.conf delete mode 100644 install-files/openstack/usr/lib/systemd/system/apache-httpd.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/iscsi-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-evaluator.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-notifier.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-api.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-central.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-collector.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-compute.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-config-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-db-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-notification.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-api.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-backup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-config-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-db-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-lv-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-scheduler.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-cinder-volume.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-glance-api.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-glance-registry.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-glance-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-horizon-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ironic-api.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ironic-conductor.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-ironic-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-keystone-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-keystone.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-network-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-config-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-db-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-dhcp-agent.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-l3-agent.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-metadata-agent.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-ovs-cleanup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-plugin-openvswitch-agent.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-neutron-server.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-api.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-cert.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-compute.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-conductor.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openvswitch-db-server.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openvswitch-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/openvswitch.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/postgres-server-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/postgres-server.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/rabbitmq-server.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/swift-controller-setup.service delete mode 100644 install-files/openstack/usr/lib/systemd/system/swift-proxy.service delete mode 100644 install-files/openstack/usr/share/openstack/ceilometer-config.yml delete mode 100644 install-files/openstack/usr/share/openstack/ceilometer-db.yml delete mode 100644 install-files/openstack/usr/share/openstack/ceilometer/ceilometer.conf delete mode 100644 install-files/openstack/usr/share/openstack/cinder-config.yml delete mode 100644 install-files/openstack/usr/share/openstack/cinder-db.yml delete mode 100644 install-files/openstack/usr/share/openstack/cinder-lvs.yml delete mode 100644 install-files/openstack/usr/share/openstack/cinder/cinder.conf delete mode 100644 install-files/openstack/usr/share/openstack/extras/00-disable-device.network delete mode 100644 install-files/openstack/usr/share/openstack/extras/60-device-dhcp.network delete mode 100644 install-files/openstack/usr/share/openstack/glance.yml delete mode 100644 install-files/openstack/usr/share/openstack/glance/glance-api.conf delete mode 100644 install-files/openstack/usr/share/openstack/glance/glance-registry.conf delete mode 100644 install-files/openstack/usr/share/openstack/horizon.yml delete mode 100644 install-files/openstack/usr/share/openstack/hosts delete mode 100644 install-files/openstack/usr/share/openstack/ironic.yml delete mode 100644 install-files/openstack/usr/share/openstack/ironic/ironic.conf delete mode 100644 install-files/openstack/usr/share/openstack/iscsi.yml delete mode 100644 install-files/openstack/usr/share/openstack/keystone.yml delete mode 100644 install-files/openstack/usr/share/openstack/keystone/keystone.conf delete mode 100644 install-files/openstack/usr/share/openstack/network.yml delete mode 100644 install-files/openstack/usr/share/openstack/neutron-config.yml delete mode 100644 install-files/openstack/usr/share/openstack/neutron-db.yml delete mode 100644 install-files/openstack/usr/share/openstack/neutron/dhcp_agent.ini delete mode 100644 install-files/openstack/usr/share/openstack/neutron/l3_agent.ini delete mode 100644 install-files/openstack/usr/share/openstack/neutron/metadata_agent.ini delete mode 100644 install-files/openstack/usr/share/openstack/neutron/neutron.conf delete mode 100644 install-files/openstack/usr/share/openstack/neutron/plugins/ml2/ml2_conf.ini delete mode 100644 install-files/openstack/usr/share/openstack/neutron/plugins/ryu/ryu.ini delete mode 100644 install-files/openstack/usr/share/openstack/nova-config.yml delete mode 100644 install-files/openstack/usr/share/openstack/nova-db.yml delete mode 100644 install-files/openstack/usr/share/openstack/nova/nova-compute.conf delete mode 100644 install-files/openstack/usr/share/openstack/nova/nova.conf delete mode 100644 install-files/openstack/usr/share/openstack/openvswitch.yml delete mode 100644 install-files/openstack/usr/share/openstack/postgres.yml delete mode 100644 install-files/openstack/usr/share/openstack/postgres/pg_hba.conf delete mode 100644 install-files/openstack/usr/share/openstack/postgres/postgresql.conf delete mode 100644 install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq-env.conf delete mode 100644 install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq.config delete mode 100644 install-files/openstack/usr/share/openstack/swift-controller.yml delete mode 100644 install-files/openstack/usr/share/swift/etc/rsyncd.j2 delete mode 100644 install-files/openstack/usr/share/swift/etc/swift/proxy-server.j2 delete mode 100644 install-files/swift/etc/ntp.conf delete mode 100644 install-files/swift/manifest delete mode 100644 install-files/swift/usr/lib/systemd/system/rsync.service delete mode 100644 install-files/swift/usr/lib/systemd/system/swift-storage-setup.service delete mode 100644 install-files/swift/usr/lib/systemd/system/swift-storage.service delete mode 100644 install-files/swift/usr/share/swift/etc/rsyncd.j2 delete mode 100644 install-files/swift/usr/share/swift/etc/swift/account-server.j2 delete mode 100644 install-files/swift/usr/share/swift/etc/swift/container-server.j2 delete mode 100644 install-files/swift/usr/share/swift/etc/swift/object-server.j2 delete mode 100644 install-files/swift/usr/share/swift/etc/swift/swift.j2 delete mode 100644 install-files/swift/usr/share/swift/hosts delete mode 100644 install-files/swift/usr/share/swift/swift-storage.yml delete mode 100644 install-files/vagrant-files/home/vagrant/.ssh/authorized_keys delete mode 100644 install-files/vagrant-files/manifest delete mode 100644 ivi/clusters/ivi-system-armv7lhf-jetson-deploy.morph delete mode 100644 ivi/clusters/ivi-system-x86_32-deploy.morph delete mode 100644 ivi/clusters/ivi-system-x86_64-deploy.morph delete mode 100644 ivi/strata/bsp-x86_32-ivi.morph delete mode 100644 ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph delete mode 100644 ivi/strata/bsp-x86_64-ivi.morph delete mode 100644 ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph delete mode 100644 ivi/strata/qt5-ivi.morph delete mode 100644 ivi/strata/qt5-ivi/qtapplicationmanager.morph delete mode 100644 ivi/strata/rvi.morph delete mode 100644 ivi/strata/rvi/rvi_core.morph delete mode 100644 ivi/systems/ivi-system-armv7lhf-jetson.morph delete mode 100644 ivi/systems/ivi-system-x86_32.morph delete mode 100644 ivi/systems/ivi-system-x86_64.morph delete mode 100644 migrations delete mode 100644 partitioning/default delete mode 100644 partitioning/socfpga-devkit delete mode 100755 scripts/baserock-release-metadata delete mode 100755 scripts/check-unpetrify-refs.py delete mode 100755 scripts/cycle.sh delete mode 100644 scripts/licensecheck.pl delete mode 100755 scripts/licensecheck.py delete mode 100755 scripts/organize-morphologies.py delete mode 100755 scripts/release-build delete mode 100644 scripts/release-build.test.conf delete mode 100755 scripts/release-test delete mode 100755 scripts/release-test-os delete mode 100755 scripts/release-upload delete mode 100644 scripts/release-upload.test.conf delete mode 100644 scripts/scriptslib.py delete mode 100755 scripts/yaml-jsonschema delete mode 100644 strata/CPAN-Mini-Inject.morph delete mode 100644 strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph delete mode 100644 strata/NetworkManager-common.morph delete mode 100644 strata/NetworkManager-common/ModemManager.morph delete mode 100644 strata/NetworkManager-common/NetworkManager.morph delete mode 100644 strata/NetworkManager-common/readline6.morph delete mode 100644 strata/ansible.morph delete mode 100644 strata/ansible/ansible.morph delete mode 100644 strata/ansible/openstack-ansible-modules.morph delete mode 100644 strata/armv7lhf-cross-toolchain.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-binutils.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-glibc.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-libstdc++.morph delete mode 100644 strata/armv7lhf-cross-toolchain/armv7lhf-cross-linux-api-headers.morph delete mode 100644 strata/baserock-import.morph delete mode 100644 strata/bluetooth.morph delete mode 100644 strata/bluetooth/bluez-tools.morph delete mode 100644 strata/bluetooth/bluez.morph delete mode 100644 strata/bluetooth/libical.morph delete mode 100644 strata/bsp-armv5l-openbmc-aspeed.morph delete mode 100644 strata/bsp-armv5l-openbmc-aspeed/linux-armv5l-openbmc-aspeed.morph delete mode 100644 strata/bsp-armv5l-openbmc-aspeed/u-boot@aspeed.morph delete mode 100644 strata/bsp-armv7-highbank.morph delete mode 100644 strata/bsp-armv7-highbank/linux-armv7-highbank.morph delete mode 100644 strata/bsp-armv7-versatile.morph delete mode 100644 strata/bsp-armv7-versatile/linux-armv7-versatile.morph delete mode 100644 strata/bsp-armv7b-highbank.morph delete mode 100644 strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph delete mode 100644 strata/bsp-armv7b-vexpress-tc2.morph delete mode 100644 strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/bsp-support@socfpga-devkit.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/device-tree-compiler.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/linux-armv7l-altera-socfpga-devkit.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/preloader@socfpga-devkit.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/u-boot-tools@socfpga-devkit.morph delete mode 100644 strata/bsp-armv7l-altera-socfpga-devkit/u-boot@socfpga-devkit.morph delete mode 100644 strata/bsp-armv8b64-generic.morph delete mode 100644 strata/bsp-armv8b64-generic/linux-armv8b64-generic.morph delete mode 100644 strata/bsp-armv8l64-generic.morph delete mode 100644 strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph delete mode 100644 strata/bsp-jetson.morph delete mode 100644 strata/bsp-jetson/device-tree-compiler@jetson.morph delete mode 100644 strata/bsp-jetson/linux-firmware@jetson.morph delete mode 100644 strata/bsp-jetson/linux-jetson-tk1.morph delete mode 100644 strata/bsp-jetson/u-boot@jetson.morph delete mode 100644 strata/bsp-ppc64-generic.morph delete mode 100644 strata/bsp-ppc64-generic/linux-ppc64.morph delete mode 100644 strata/bsp-wandboard.morph delete mode 100644 strata/bsp-wandboard/linux-armv7-wandboard.morph delete mode 100644 strata/bsp-wandboard/u-boot@wandboard.morph delete mode 100644 strata/bsp-x86_32-generic.morph delete mode 100644 strata/bsp-x86_32-generic/linux-x86-32-generic.morph delete mode 100644 strata/bsp-x86_32-generic/nasm.morph delete mode 100644 strata/bsp-x86_32-generic/syslinux.morph delete mode 100644 strata/bsp-x86_64-generic.morph delete mode 100644 strata/bsp-x86_64-generic/linux-x86-64-generic.morph delete mode 100644 strata/bsp-x86_64-generic/nasm.morph delete mode 100644 strata/bsp-x86_64-generic/syslinux.morph delete mode 100644 strata/bsp-x86_both-tools.morph delete mode 100644 strata/bsp-x86_both-tools/nasm.morph delete mode 100644 strata/bsp-x86_both-tools/syslinux.morph delete mode 100644 strata/build-essential.morph delete mode 100644 strata/build-essential/binutils.morph delete mode 100644 strata/build-essential/busybox.morph delete mode 100644 strata/build-essential/ccache.morph delete mode 100644 strata/build-essential/fhs-dirs.morph delete mode 100644 strata/build-essential/gawk.morph delete mode 100644 strata/build-essential/gcc.morph delete mode 100644 strata/build-essential/glibc.morph delete mode 100644 strata/build-essential/linux-api-headers.morph delete mode 100644 strata/build-essential/m4-tarball.morph delete mode 100644 strata/build-essential/make.morph delete mode 100644 strata/build-essential/stage1-binutils.morph delete mode 100644 strata/build-essential/stage1-gcc.morph delete mode 100644 strata/build-essential/stage2-binutils.morph delete mode 100644 strata/build-essential/stage2-busybox.morph delete mode 100644 strata/build-essential/stage2-fake-bash.morph delete mode 100644 strata/build-essential/stage2-fhs-dirs.morph delete mode 100644 strata/build-essential/stage2-gawk.morph delete mode 100644 strata/build-essential/stage2-gcc-fixed-headers.morph delete mode 100644 strata/build-essential/stage2-gcc.morph delete mode 100644 strata/build-essential/stage2-glibc.morph delete mode 100644 strata/build-essential/stage2-libstdc++.morph delete mode 100644 strata/build-essential/stage2-linux-api-headers.morph delete mode 100644 strata/build-essential/stage2-make.morph delete mode 100644 strata/build-essential/stage2-reset-specs.morph delete mode 100644 strata/build-essential/zlib.morph delete mode 100644 strata/cloudinit-support.morph delete mode 100644 strata/cloudinit-support/cloud-init.morph delete mode 100644 strata/connectivity.morph delete mode 100644 strata/connectivity/wpa_supplicant.morph delete mode 100644 strata/connman-common.morph delete mode 100644 strata/connman-common/connman.morph delete mode 100644 strata/connman-common/ofono.morph delete mode 100644 strata/corba.morph delete mode 100644 strata/corba/ACE_TAO.morph delete mode 100644 strata/corba/MPC.morph delete mode 100644 strata/core.morph delete mode 100644 strata/core/attr.morph delete mode 100644 strata/core/autoconf-tarball.morph delete mode 100644 strata/core/autoconf.morph delete mode 100644 strata/core/automake.morph delete mode 100644 strata/core/bash.morph delete mode 100644 strata/core/bison.morph delete mode 100644 strata/core/bzip2.morph delete mode 100644 strata/core/ca-certificates.morph delete mode 100644 strata/core/cmake.morph delete mode 100644 strata/core/curl.morph delete mode 100644 strata/core/e2fsprogs.morph delete mode 100644 strata/core/flex.morph delete mode 100644 strata/core/gdbm.morph delete mode 100644 strata/core/gettext-tarball.morph delete mode 100644 strata/core/git-minimal.morph delete mode 100644 strata/core/gperf.morph delete mode 100644 strata/core/gzip.morph delete mode 100644 strata/core/libcap2.morph delete mode 100644 strata/core/libexpat.morph delete mode 100644 strata/core/libffi.morph delete mode 100644 strata/core/libtool-tarball.morph delete mode 100644 strata/core/libtool.morph delete mode 100644 strata/core/linux-pam.morph delete mode 100644 strata/core/mini-utils.morph delete mode 100644 strata/core/ncurses.morph delete mode 100644 strata/core/openssl-new.morph delete mode 100644 strata/core/patch.morph delete mode 100644 strata/core/perl.morph delete mode 100644 strata/core/pkg-config.morph delete mode 100644 strata/core/python3.morph delete mode 100644 strata/core/readline.morph delete mode 100644 strata/core/shadow.morph delete mode 100644 strata/core/texinfo-tarball.morph delete mode 100644 strata/core/util-linux.morph delete mode 100644 strata/coreutils-common.morph delete mode 100644 strata/coreutils-common/coreutils.morph delete mode 100644 strata/coreutils-common/diff.morph delete mode 100644 strata/coreutils-common/sed.morph delete mode 100644 strata/coreutils-common/tar.morph delete mode 100644 strata/cpp-common-libs.morph delete mode 100644 strata/cpp-common-libs/boost.morph delete mode 100644 strata/cross-bootstrap.morph delete mode 100644 strata/cross-bootstrap/groff.morph delete mode 100644 strata/cross-bootstrap/openssh.morph delete mode 100644 strata/cross-bootstrap/rsync.morph delete mode 100644 strata/cross-tools.morph delete mode 100644 strata/cups.morph delete mode 100644 strata/cups/cups.morph delete mode 100644 strata/data-indexing-management.morph delete mode 100644 strata/data-indexing-management/gmime.morph delete mode 100644 strata/data-indexing-management/libmediaart.morph delete mode 100644 strata/device-management.morph delete mode 100644 strata/devtools.morph delete mode 100644 strata/devtools/git.morph delete mode 100644 strata/devtools/nano.morph delete mode 100644 strata/devtools/pv.morph delete mode 100644 strata/devtools/screen.morph delete mode 100644 strata/devtools/vim.morph delete mode 100644 strata/devtools/wget.morph delete mode 100644 strata/dlna-services.morph delete mode 100644 strata/dlna-services/gssdp.morph delete mode 100644 strata/docutils.morph delete mode 100644 strata/docutils/docbook-xml.morph delete mode 100644 strata/docutils/docbook-xsl.morph delete mode 100644 strata/docutils/xml-catalog.morph delete mode 100644 strata/elixir.morph delete mode 100644 strata/elixir/elixir.morph delete mode 100644 strata/erlang.morph delete mode 100644 strata/erlang/erlang.morph delete mode 100644 strata/erlang/rebar.morph delete mode 100644 strata/foundation.morph delete mode 100644 strata/foundation/btrfs-progs.morph delete mode 100644 strata/foundation/dbus-pre.morph delete mode 100644 strata/foundation/dbus.morph delete mode 100644 strata/foundation/fuse.morph delete mode 100644 strata/foundation/groff.morph delete mode 100644 strata/foundation/kmod.morph delete mode 100644 strata/foundation/libarchive.morph delete mode 100644 strata/foundation/libgcrypt.morph delete mode 100644 strata/foundation/libgpg-error.morph delete mode 100644 strata/foundation/lzo.morph delete mode 100644 strata/foundation/openssh.morph delete mode 100644 strata/foundation/pciutils.morph delete mode 100644 strata/foundation/rsync.morph delete mode 100644 strata/foundation/systemd.morph delete mode 100644 strata/foundation/tbdiff.morph delete mode 100644 strata/foundation/time-zone-database.morph delete mode 100644 strata/geolocation.morph delete mode 100644 strata/geolocation/geoclue.morph delete mode 100644 strata/glib-common.morph delete mode 100644 strata/glib-common/glib.morph delete mode 100644 strata/glib-common/gtk-doc-stub.morph delete mode 100644 strata/graphics-common.morph delete mode 100644 strata/graphics-common/cairo.morph delete mode 100644 strata/graphics-common/chinese-fonts-truetype-bkai00mp.morph delete mode 100644 strata/graphics-common/chinese-fonts-truetype-bsmi00lp.morph delete mode 100644 strata/graphics-common/chinese-fonts-truetype-gbsn00lp.morph delete mode 100644 strata/graphics-common/chinese-fonts-truetype-gkai00mp.morph delete mode 100644 strata/graphics-common/fontconfig.morph delete mode 100644 strata/graphics-common/freefont-otf.morph delete mode 100644 strata/graphics-common/pixman.morph delete mode 100644 strata/graphics-common/ttf-alee.morph delete mode 100644 strata/gtk-deps.morph delete mode 100644 strata/gtk-deps/at-spi2-atk.morph delete mode 100644 strata/gtk-deps/at-spi2-core.morph delete mode 100644 strata/gtk-deps/gdk-pixbuf.morph delete mode 100644 strata/gtk-deps/shared-mime-info.morph delete mode 100644 strata/gtk2.morph delete mode 100644 strata/gtk2/gtk+.morph delete mode 100644 strata/gtk3.morph delete mode 100644 strata/gtk3/gtk3.morph delete mode 100644 strata/icu-common.morph delete mode 100644 strata/icu-common/icu.morph delete mode 100644 strata/initramfs-utils.morph delete mode 100644 strata/input-common.morph delete mode 100644 strata/input-common/libinput.morph delete mode 100644 strata/input-common/libxkbcommon-no-x11.morph delete mode 100644 strata/input-common/xkeyboard-config.morph delete mode 100644 strata/installer-utils.morph delete mode 100644 strata/installer-utils/installer-scripts.morph delete mode 100644 strata/ivi-common.morph delete mode 100644 strata/ivi-common/automotive-message-broker.morph delete mode 100644 strata/libdrm-common.morph delete mode 100644 strata/libdrm-common/drm.morph delete mode 100644 strata/libsoup-common.morph delete mode 100644 strata/libsoup-common/libsoup.morph delete mode 100644 strata/lighttpd-server.morph delete mode 100644 strata/lighttpd-server/lighttpd.morph delete mode 100644 strata/llvm-common.morph delete mode 100644 strata/llvm-common/llvm.morph delete mode 100644 strata/lorry.morph delete mode 100644 strata/lorry/cvs-tarball.morph delete mode 100644 strata/lorry/cvsps.morph delete mode 100644 strata/lorry/hg-fast-export.morph delete mode 100644 strata/lorry/libapr-util.morph delete mode 100644 strata/lorry/libapr.morph delete mode 100644 strata/lorry/libserf.morph delete mode 100644 strata/lorry/lorry.morph delete mode 100644 strata/lorry/mercurial-tarball.morph delete mode 100644 strata/lorry/neon.morph delete mode 100644 strata/lorry/perl-dbi-tarball.morph delete mode 100644 strata/lorry/subversion-tarball.morph delete mode 100644 strata/lorry/swig.morph delete mode 100644 strata/lua53.morph delete mode 100644 strata/lua53/lua53.morph delete mode 100644 strata/mesa-common.morph delete mode 100644 strata/mesa-common/mesa.morph delete mode 100644 strata/mesa-demos-common.morph delete mode 100644 strata/mesa-demos-common/glew.morph delete mode 100644 strata/morph-utils.morph delete mode 100644 strata/morph-utils/cmdtest.morph delete mode 100644 strata/morph-utils/pyfilesystem.morph delete mode 100644 strata/morph-utils/python-ttystatus.morph delete mode 100644 strata/mtd-utilities.morph delete mode 100644 strata/mtd-utilities/mtd-utils.morph delete mode 100644 strata/multimedia-common.morph delete mode 100644 strata/multimedia-common/libmad.morph delete mode 100644 strata/multimedia-common/libmpeg2.morph delete mode 100644 strata/multimedia-common/libvpx.morph delete mode 100644 strata/multimedia-common/orc.morph delete mode 100644 strata/multimedia-common/yasm.morph delete mode 100644 strata/multimedia-gstreamer-openmax-generic.morph delete mode 100644 strata/multimedia-gstreamer-openmax-generic/gst-omx.morph delete mode 100644 strata/multimedia-gstreamer.morph delete mode 100644 strata/multimedia-gstreamer/gst-libav.morph delete mode 100644 strata/multimedia-hardware-codecs-x86.morph delete mode 100644 strata/navigation.morph delete mode 100644 strata/navigation/navit.morph delete mode 100644 strata/network-security.morph delete mode 100644 strata/network-security/gnutls.morph delete mode 100644 strata/network-security/libtasn1.morph delete mode 100644 strata/network-security/nettle.morph delete mode 100644 strata/network-security/nspr.morph delete mode 100644 strata/network-security/nss.morph delete mode 100644 strata/network-security/p11-kit.morph delete mode 100644 strata/nfs.morph delete mode 100644 strata/nfs/nfs-utils.morph delete mode 100644 strata/nfs/rpcbind.morph delete mode 100644 strata/nfs/tcp-wrappers.morph delete mode 100644 strata/nfs/ti-rpc.morph delete mode 100644 strata/nodejs.morph delete mode 100644 strata/nodejs/node.morph delete mode 100644 strata/openbmc.morph delete mode 100644 strata/openbmc/i2c-tools.morph delete mode 100644 strata/openbmc/isc-dhcp.morph delete mode 100644 strata/openbmc/lm_sensors.morph delete mode 100644 strata/openstack-clients.morph delete mode 100644 strata/openstack-common.morph delete mode 100644 strata/openstack-common/babel.morph delete mode 100644 strata/ostree-core.morph delete mode 100644 strata/ostree-core/gpgme.morph delete mode 100644 strata/ostree-core/libassuan.morph delete mode 100644 strata/ostree-core/ostree.morph delete mode 100644 strata/pcre-utils.morph delete mode 100644 strata/pcre-utils/pcre.morph delete mode 100644 strata/perl-common.morph delete mode 100644 strata/perl-common/List-MoreUtils.morph delete mode 100644 strata/privileges-management.morph delete mode 100644 strata/privileges-management/mozjs17.morph delete mode 100644 strata/privileges-management/polkit.morph delete mode 100644 strata/python-cliapp.morph delete mode 100644 strata/python-cliapp/python-coveragepy.morph delete mode 100644 strata/python-common.morph delete mode 100644 strata/python-common/pycrypto.morph delete mode 100644 strata/python-pygobject.morph delete mode 100644 strata/python-pygobject/pygobject.morph delete mode 100644 strata/python-tools.morph delete mode 100644 strata/python-wsgi.morph delete mode 100644 strata/python2-core.morph delete mode 100644 strata/python2-core/python2.morph delete mode 100644 strata/python2-core/pyyaml-python2.morph delete mode 100644 strata/python3-gobject.morph delete mode 100644 strata/python3-gobject/python3-gobject.morph delete mode 100644 strata/qt5-sdk.morph delete mode 100644 strata/qt5-sdk/qt-creator.morph delete mode 100644 strata/qt5-sdk/snowshoe.morph delete mode 100644 strata/qt5-tools-qtmultimedia.morph delete mode 100644 strata/qt5-tools-qtwayland.morph delete mode 100644 strata/qt5-tools-qtwayland/qtwayland.morph delete mode 100644 strata/qt5-tools-qtwebengine.morph delete mode 100644 strata/qt5-tools-qtwebkit.morph delete mode 100644 strata/qt5-tools.morph delete mode 100644 strata/qt5-tools/qtbase.morph delete mode 100644 strata/ruby.morph delete mode 100644 strata/ruby/bundler.morph delete mode 100644 strata/ruby/hoe.morph delete mode 100644 strata/ruby/rake-compiler.morph delete mode 100644 strata/ruby/ruby-1.8.morph delete mode 100644 strata/ruby/ruby.morph delete mode 100644 strata/samba.morph delete mode 100644 strata/samba/samba.morph delete mode 100644 strata/sandboxing.morph delete mode 100644 strata/secret-service.morph delete mode 100644 strata/secret-service/gnome-keyring.morph delete mode 100644 strata/secret-service/libsecret.morph delete mode 100644 strata/sound-server-pulseaudio.morph delete mode 100644 strata/sound-server-pulseaudio/alsa-utils.morph delete mode 100644 strata/sound-server-pulseaudio/avahi.morph delete mode 100644 strata/sound-server-pulseaudio/libsndfile.morph delete mode 100644 strata/sound-server-pulseaudio/pulseaudio.morph delete mode 100644 strata/sound-server-pulseaudio/webrtc-audio-processing.morph delete mode 100644 strata/spell-checking.morph delete mode 100644 strata/storage-management.morph delete mode 100644 strata/storage-management/gvfs.morph delete mode 100644 strata/storage-management/libatasmart.morph delete mode 100644 strata/storage-management/libmtp.morph delete mode 100644 strata/storage-management/udisks.morph delete mode 100644 strata/swift.morph delete mode 100644 strata/swift/gf-complete.morph delete mode 100644 strata/swift/liberasurecode.morph delete mode 100644 strata/swift/xattr.morph delete mode 100644 strata/tools.morph delete mode 100644 strata/tools/device-tree-compiler.morph delete mode 100644 strata/tools/distcc.morph delete mode 100644 strata/tools/gdb.morph delete mode 100644 strata/tools/git-fat.morph delete mode 100644 strata/tools/ipmitool.morph delete mode 100644 strata/tools/kexec-tools.morph delete mode 100644 strata/tools/lsof.morph delete mode 100644 strata/tools/parted.morph delete mode 100644 strata/tools/procps-ng.morph delete mode 100644 strata/tools/u-boot.morph delete mode 100644 strata/tools/zip.morph delete mode 100644 strata/unionfs-fuse-group.morph delete mode 100644 strata/unionfs-fuse-group/unionfs-fuse.morph delete mode 100644 strata/vala-common.morph delete mode 100644 strata/vala-common/vala-bootstrap.morph delete mode 100644 strata/virtualbox-guest-x86_64.morph delete mode 100644 strata/virtualbox-guest-x86_64/vboxguest.morph delete mode 100644 strata/virtualbox-guest-x86_64/yasm.morph delete mode 100644 strata/wayland-generic.morph delete mode 100644 strata/wayland-generic/wayland.morph delete mode 100644 strata/weston-common.morph delete mode 100644 strata/weston-common/weston.morph delete mode 100644 strata/x-common.morph delete mode 100644 strata/x-drivers.morph delete mode 100644 strata/x-generic.morph delete mode 100644 strata/x-generic/xserver.morph delete mode 100644 strata/xorg-util-macros-common.morph delete mode 100644 systems/armv7lhf-cross-toolchain-system-x86_32.morph delete mode 100644 systems/armv7lhf-cross-toolchain-system-x86_64.morph delete mode 100644 systems/base-system-armv7-highbank.morph delete mode 100644 systems/base-system-armv7-versatile.morph delete mode 100644 systems/base-system-armv7b-highbank.morph delete mode 100644 systems/base-system-armv7b-vexpress-tc2.morph delete mode 100644 systems/base-system-armv7l-altera-socfpga-devkit.morph delete mode 100644 systems/base-system-armv7lhf-highbank.morph delete mode 100644 systems/base-system-armv8b64.morph delete mode 100644 systems/base-system-armv8l64.morph delete mode 100644 systems/base-system-ppc64-generic.morph delete mode 100644 systems/base-system-x86_32-generic.morph delete mode 100644 systems/base-system-x86_64-generic.morph delete mode 100644 systems/build-system-armv5l-openbmc-aspeed.morph delete mode 100644 systems/build-system-armv7l-altera-socfpga-devkit.morph delete mode 100644 systems/build-system-armv7lhf-highbank.morph delete mode 100644 systems/build-system-armv7lhf-jetson.morph delete mode 100644 systems/build-system-armv7lhf-rootfs.morph delete mode 100644 systems/build-system-armv8b64.morph delete mode 100644 systems/build-system-armv8l64.morph delete mode 100644 systems/build-system-ppc64.morph delete mode 100644 systems/build-system-x86_32-chroot.morph delete mode 100644 systems/build-system-x86_32.morph delete mode 100644 systems/build-system-x86_64-chroot.morph delete mode 100644 systems/build-system-x86_64.morph delete mode 100644 systems/cross-bootstrap-system-armv5l-generic.morph delete mode 100644 systems/cross-bootstrap-system-armv7lhf-generic.morph delete mode 100644 systems/cross-bootstrap-system-armv8b64-generic.morph delete mode 100644 systems/cross-bootstrap-system-armv8l64-generic.morph delete mode 100644 systems/cross-bootstrap-system-ppc64-generic.morph delete mode 100644 systems/cross-bootstrap-system-x86_64-generic.morph delete mode 100644 systems/initramfs-x86_32.morph delete mode 100644 systems/initramfs-x86_64.morph delete mode 100644 systems/installer-system-armv8b64.morph delete mode 100644 systems/installer-system-x86_64.morph delete mode 100644 systems/minimal-system-armv5l-openbmc-aspeed.morph delete mode 100644 systems/minimal-system-x86_32-generic.morph delete mode 100644 systems/minimal-system-x86_64-chroot.morph delete mode 100644 systems/minimal-system-x86_64-generic.morph delete mode 100644 trove/clusters/mason-openstack.morph delete mode 100644 trove/clusters/mason.morph delete mode 100644 trove/clusters/trove-example.morph delete mode 100644 trove/clusters/trove.baserock.org-upgrade.morph delete mode 100644 trove/strata/fail2ban-common.morph delete mode 100644 trove/strata/fail2ban-common/fail2ban.morph delete mode 100644 trove/strata/lorry-controller.morph delete mode 100644 trove/strata/lorry-controller/lorry-controller.morph delete mode 100644 trove/strata/python3-core.morph delete mode 100644 trove/strata/python3-core/pyyaml.morph delete mode 100644 trove/strata/trove.morph delete mode 100644 trove/strata/trove/cgit.morph delete mode 100644 trove/strata/trove/clod.morph delete mode 100644 trove/strata/trove/gall.morph delete mode 100644 trove/strata/trove/gitano.morph delete mode 100644 trove/strata/trove/lace.morph delete mode 100644 trove/strata/trove/lrexlib-pcre.morph delete mode 100644 trove/strata/trove/lua-scrypt.morph delete mode 100644 trove/strata/trove/lua.morph delete mode 100644 trove/strata/trove/luxio.morph delete mode 100644 trove/strata/trove/supple.morph delete mode 100644 trove/strata/trove/trove-setup.morph delete mode 100644 trove/systems/trove-system-x86_64.morph delete mode 100644 unmaintained/clusters/cephclient.morph delete mode 100644 unmaintained/clusters/example-ceph-cluster-on-openstack.morph delete mode 100644 unmaintained/clusters/example-swift-storage-cluster.morph delete mode 100644 unmaintained/clusters/jetson-upgrade.morph delete mode 100644 unmaintained/clusters/moonshot-m2-armv8b64.morph delete mode 100644 unmaintained/clusters/moonshot-pxe-armv8b64.morph delete mode 100644 unmaintained/clusters/moonshot-pxe-armv8l64.morph delete mode 100644 unmaintained/clusters/openstack-one-node-swift.morph delete mode 100644 unmaintained/clusters/openstack-one-node.morph delete mode 100644 unmaintained/clusters/openstack-three-node-installer.morph delete mode 100644 unmaintained/clusters/openstack-two-node-installer.morph delete mode 100644 unmaintained/clusters/sdk-example-cluster.morph delete mode 100644 unmaintained/clusters/upgrade-devel.morph delete mode 100644 unmaintained/clusters/xfce-system-x86_64-deploy.morph delete mode 100644 unmaintained/clusters/zookeeper.morph delete mode 100644 unmaintained/strata/apache-httpd-server.morph delete mode 100644 unmaintained/strata/apache-httpd-server/apr.morph delete mode 100644 unmaintained/strata/apache-httpd-server/httpd-server.morph delete mode 100644 unmaintained/strata/apache-httpd-server/mod_wsgi.morph delete mode 100644 unmaintained/strata/ceph-service.morph delete mode 100644 unmaintained/strata/ceph-service/ceph.morph delete mode 100644 unmaintained/strata/ceph-service/keyutils.morph delete mode 100644 unmaintained/strata/ceph-service/leveldb.morph delete mode 100644 unmaintained/strata/ceph-service/libaio.morph delete mode 100644 unmaintained/strata/chef.morph delete mode 100644 unmaintained/strata/chef/chef-12.0.0.alpha.0.morph delete mode 100644 unmaintained/strata/chef/chef-zero-2.2.morph delete mode 100644 unmaintained/strata/chef/coderay-1.1.0.morph delete mode 100644 unmaintained/strata/chef/diff-lcs-1.2.5.morph delete mode 100644 unmaintained/strata/chef/erubis-master.morph delete mode 100644 unmaintained/strata/chef/ffi-1.9.3.morph delete mode 100644 unmaintained/strata/chef/ffi-yajl-1.0.2.morph delete mode 100644 unmaintained/strata/chef/hashie-2.1.2.morph delete mode 100644 unmaintained/strata/chef/highline-1.6.21.morph delete mode 100644 unmaintained/strata/chef/hoe-master.morph delete mode 100644 unmaintained/strata/chef/ipaddress-0.8.0.morph delete mode 100644 unmaintained/strata/chef/json-1.8.1.morph delete mode 100644 unmaintained/strata/chef/libpopt.morph delete mode 100644 unmaintained/strata/chef/libyajl2-1.0.1.morph delete mode 100644 unmaintained/strata/chef/method_source-0.8.2.morph delete mode 100644 unmaintained/strata/chef/mime-types-1.25.1.morph delete mode 100644 unmaintained/strata/chef/mixlib-authentication-1.3.0.morph delete mode 100644 unmaintained/strata/chef/mixlib-cli-1.5.0.morph delete mode 100644 unmaintained/strata/chef/mixlib-config-2.1.0.morph delete mode 100644 unmaintained/strata/chef/mixlib-log-1.6.0.morph delete mode 100644 unmaintained/strata/chef/mixlib-shellout-1.4.0.morph delete mode 100644 unmaintained/strata/chef/net-dhcp-1.2.1.morph delete mode 100644 unmaintained/strata/chef/net-ssh-2.9.1.morph delete mode 100644 unmaintained/strata/chef/net-ssh-gateway-1.2.0.morph delete mode 100644 unmaintained/strata/chef/net-ssh-multi-1.2.0.morph delete mode 100644 unmaintained/strata/chef/ohai-7.4.0.dev.morph delete mode 100644 unmaintained/strata/chef/plist-master.morph delete mode 100644 unmaintained/strata/chef/pry-0.10.1.morph delete mode 100644 unmaintained/strata/chef/rack-1.5.2.morph delete mode 100644 unmaintained/strata/chef/sgdisk.morph delete mode 100644 unmaintained/strata/chef/slop-3.6.0.morph delete mode 100644 unmaintained/strata/chef/systemu-2.6.4.morph delete mode 100644 unmaintained/strata/chef/wmi-lite-1.0.0.morph delete mode 100644 unmaintained/strata/chef/yajl.morph delete mode 100644 unmaintained/strata/cxmanage.morph delete mode 100644 unmaintained/strata/cxmanage/pexpect.morph delete mode 100644 unmaintained/strata/databases.morph delete mode 100644 unmaintained/strata/databases/memcached.morph delete mode 100644 unmaintained/strata/databases/redis.morph delete mode 100644 unmaintained/strata/django.morph delete mode 100644 unmaintained/strata/enlightenment.morph delete mode 100644 unmaintained/strata/enlightenment/bullet3.morph delete mode 100644 unmaintained/strata/enlightenment/efl.morph delete mode 100644 unmaintained/strata/enlightenment/elementary.morph delete mode 100644 unmaintained/strata/enlightenment/enlightenment.morph delete mode 100644 unmaintained/strata/enlightenment/eterm.morph delete mode 100644 unmaintained/strata/enlightenment/evas_generic_loaders.morph delete mode 100644 unmaintained/strata/enlightenment/imlib2.morph delete mode 100644 unmaintained/strata/enlightenment/libast.morph delete mode 100644 unmaintained/strata/java.morph delete mode 100644 unmaintained/strata/java/java-ant.morph delete mode 100644 unmaintained/strata/java/java-binary.morph delete mode 100644 unmaintained/strata/lua51.morph delete mode 100644 unmaintained/strata/lua51/lua51.morph delete mode 100644 unmaintained/strata/lua51/luajit2.morph delete mode 100644 unmaintained/strata/lvm.morph delete mode 100644 unmaintained/strata/lvm/lvm2.morph delete mode 100644 unmaintained/strata/multimedia-gstreamer-0.10.morph delete mode 100644 unmaintained/strata/multimedia-gstreamer-0.10/gstreamer-plugins-base@0.10.morph delete mode 100644 unmaintained/strata/networking-utils.morph delete mode 100644 unmaintained/strata/networking-utils/conntrack-tools.morph delete mode 100644 unmaintained/strata/networking-utils/ebtables.morph delete mode 100644 unmaintained/strata/networking-utils/iproute2.morph delete mode 100644 unmaintained/strata/networking-utils/ipset.morph delete mode 100644 unmaintained/strata/networking-utils/iputils.morph delete mode 100644 unmaintained/strata/networking-utils/libnet.morph delete mode 100644 unmaintained/strata/networking-utils/libnetfilter_conntrack.morph delete mode 100644 unmaintained/strata/networking-utils/libnetfilter_cthelper.morph delete mode 100644 unmaintained/strata/networking-utils/libnetfilter_cttimeout.morph delete mode 100644 unmaintained/strata/networking-utils/libnetfilter_queue.morph delete mode 100644 unmaintained/strata/networking-utils/libnfnetlink.morph delete mode 100644 unmaintained/strata/networking-utils/libpcap.morph delete mode 100644 unmaintained/strata/networking-utils/tcpdump.morph delete mode 100644 unmaintained/strata/ntpd.morph delete mode 100644 unmaintained/strata/ntpd/ntpd.morph delete mode 100644 unmaintained/strata/ocaml-language.morph delete mode 100644 unmaintained/strata/ocaml-language/ocaml.morph delete mode 100644 unmaintained/strata/openstack-clients/appdirs.morph delete mode 100644 unmaintained/strata/openstack-clients/argparse.morph delete mode 100644 unmaintained/strata/openstack-clients/cliff-tablib.morph delete mode 100644 unmaintained/strata/openstack-clients/os-client-config.morph delete mode 100644 unmaintained/strata/openstack-clients/pyparsing.morph delete mode 100644 unmaintained/strata/openstack-clients/python-ironicclient.morph delete mode 100644 unmaintained/strata/openstack-clients/python-openstackclient.morph delete mode 100644 unmaintained/strata/openstack-clients/tablib.morph delete mode 100644 unmaintained/strata/openstack-services.morph delete mode 100644 unmaintained/strata/openstack-services/ceilometer.morph delete mode 100644 unmaintained/strata/openstack-services/cinder.morph delete mode 100644 unmaintained/strata/openstack-services/erlang-sd_notify.morph delete mode 100644 unmaintained/strata/openstack-services/glance.morph delete mode 100644 unmaintained/strata/openstack-services/horizon.morph delete mode 100644 unmaintained/strata/openstack-services/ipaddr-py.morph delete mode 100644 unmaintained/strata/openstack-services/ironic.morph delete mode 100644 unmaintained/strata/openstack-services/keystone.morph delete mode 100644 unmaintained/strata/openstack-services/librabbitmq.morph delete mode 100644 unmaintained/strata/openstack-services/neutron.morph delete mode 100644 unmaintained/strata/openstack-services/nova.morph delete mode 100644 unmaintained/strata/openstack-services/novnc.morph delete mode 100644 unmaintained/strata/openstack-services/open-iscsi.morph delete mode 100644 unmaintained/strata/openstack-services/pysendfile.morph delete mode 100644 unmaintained/strata/openstack-services/qpid-python.morph delete mode 100644 unmaintained/strata/openstack-services/rabbitmq-codegen.morph delete mode 100644 unmaintained/strata/openstack-services/rabbitmq-server.morph delete mode 100644 unmaintained/strata/openstack-services/rtslib-fb.morph delete mode 100644 unmaintained/strata/openstack-services/singledispatch.morph delete mode 100644 unmaintained/strata/openstack-services/tempest.morph delete mode 100644 unmaintained/strata/openstack-services/tftp-hpa.morph delete mode 100644 unmaintained/strata/openstack-services/thrift.morph delete mode 100644 unmaintained/strata/qt4-sdk.morph delete mode 100644 unmaintained/strata/qt4-sdk/qt-creator.morph delete mode 100644 unmaintained/strata/qt4-tools.morph delete mode 100644 unmaintained/strata/qt4-tools/qt4-tools.morph delete mode 100644 unmaintained/strata/qt4-tools/ruby-1.8.morph delete mode 100644 unmaintained/strata/qt4-tools/ruby-1.9.morph delete mode 100644 unmaintained/strata/test-tools.morph delete mode 100644 unmaintained/strata/test-tools/subunit.morph delete mode 100644 unmaintained/strata/virtualization.morph delete mode 100644 unmaintained/strata/virtualization/dmidecode.morph delete mode 100644 unmaintained/strata/virtualization/dnsmasq.morph delete mode 100644 unmaintained/strata/virtualization/libosinfo.morph delete mode 100644 unmaintained/strata/virtualization/libvirt.morph delete mode 100644 unmaintained/strata/virtualization/openvswitch.morph delete mode 100644 unmaintained/strata/virtualization/qemu.morph delete mode 100644 unmaintained/strata/virtualization/yajl.morph delete mode 100644 unmaintained/strata/webtools.morph delete mode 100644 unmaintained/strata/webtools/nginx.morph delete mode 100644 unmaintained/strata/xfce.morph delete mode 100644 unmaintained/strata/xfce/elementary-xfce.morph delete mode 100644 unmaintained/strata/xfce/exo.morph delete mode 100644 unmaintained/strata/xfce/garcon.morph delete mode 100644 unmaintained/strata/xfce/gtk-xfce-engine-2.morph delete mode 100644 unmaintained/strata/xfce/libwnck.morph delete mode 100644 unmaintained/strata/xfce/libxfce4ui.morph delete mode 100644 unmaintained/strata/xfce/libxfce4util.morph delete mode 100644 unmaintained/strata/xfce/thunar.morph delete mode 100644 unmaintained/strata/xfce/tumbler.morph delete mode 100644 unmaintained/strata/xfce/xfce4-appfinder.morph delete mode 100644 unmaintained/strata/xfce/xfce4-panel.morph delete mode 100644 unmaintained/strata/xfce/xfce4-session.morph delete mode 100644 unmaintained/strata/xfce/xfce4-settings.morph delete mode 100644 unmaintained/strata/xfce/xfconf.morph delete mode 100644 unmaintained/strata/xfce/xfdesktop.morph delete mode 100644 unmaintained/strata/xfce/xfwm4.morph delete mode 100644 unmaintained/strata/xstatic.morph delete mode 100644 unmaintained/strata/zookeeper-client.morph delete mode 100644 unmaintained/strata/zookeeper-server.morph delete mode 100644 unmaintained/strata/zookeeper.morph delete mode 100644 unmaintained/strata/zookeeper/zookeeper-client.morph delete mode 100644 unmaintained/strata/zookeeper/zookeeper-server.morph delete mode 100644 unmaintained/strata/zookeeper/zookeeper.morph delete mode 100644 unmaintained/systems/ceph-service-x86_64-generic.morph delete mode 100644 unmaintained/systems/chef-system-x86_64-container.morph delete mode 100644 unmaintained/systems/cxmanage-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/devel-system-armv7-chroot.morph delete mode 100644 unmaintained/systems/devel-system-armv7-highbank.morph delete mode 100644 unmaintained/systems/devel-system-armv7-versatile.morph delete mode 100644 unmaintained/systems/devel-system-armv7-wandboard.morph delete mode 100644 unmaintained/systems/devel-system-armv7b-chroot.morph delete mode 100644 unmaintained/systems/devel-system-armv7b-highbank.morph delete mode 100644 unmaintained/systems/devel-system-armv7l-altera-socfpga-devkit.morph delete mode 100644 unmaintained/systems/devel-system-armv7lhf-chroot.morph delete mode 100644 unmaintained/systems/devel-system-armv7lhf-highbank.morph delete mode 100644 unmaintained/systems/devel-system-armv7lhf-jetson.morph delete mode 100644 unmaintained/systems/devel-system-armv7lhf-wandboard.morph delete mode 100644 unmaintained/systems/devel-system-armv8b64.morph delete mode 100644 unmaintained/systems/devel-system-armv8l64.morph delete mode 100644 unmaintained/systems/devel-system-ppc64-chroot.morph delete mode 100644 unmaintained/systems/devel-system-ppc64-generic.morph delete mode 100644 unmaintained/systems/devel-system-x86_32-chroot.morph delete mode 100644 unmaintained/systems/devel-system-x86_32-generic.morph delete mode 100644 unmaintained/systems/devel-system-x86_64-chroot.morph delete mode 100644 unmaintained/systems/devel-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/devel-system-x86_64-vagrant.morph delete mode 100644 unmaintained/systems/java-build-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/nodejs-system-x86_64.morph delete mode 100644 unmaintained/systems/ocaml-system-x86_64.morph delete mode 100644 unmaintained/systems/openstack-system-x86_64.morph delete mode 100644 unmaintained/systems/qt4-devel-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/qt5-devel-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/swift-system-x86_64.morph delete mode 100644 unmaintained/systems/web-system-x86_64-generic.morph delete mode 100644 unmaintained/systems/xfce-system-x86_64.morph delete mode 100644 unmaintained/systems/zookeeper-client-x86_64.morph delete mode 100644 unmaintained/systems/zookeeper-server-x86_64.morph delete mode 100644 weston/clusters/weston-qt5-system-x86_64-deploy.morph delete mode 100644 weston/clusters/weston-system-x86_64-generic-deploy.morph delete mode 100644 weston/systems/weston-qt5-system-x86_64.morph delete mode 100644 weston/systems/weston-system-armv7lhf-jetson.morph delete mode 100644 weston/systems/weston-system-x86_64-generic.morph diff --git a/DEFAULTS b/DEFAULTS deleted file mode 100644 index 402e5889..00000000 --- a/DEFAULTS +++ /dev/null @@ -1,252 +0,0 @@ -# Baserock definitions defaults -# ============================= -# -# The DEFAULTS file is treated specially by Baserock build tools. -# -# For more information, see: . - - -# Baserock Definitions Build Step Defaults -# ---------------------------------------- -# -# The default names and ordering for build steps in a given chunk. -# -build-steps: ['pre-bootstrap-commands', - 'bootstrap-commands', - 'post-bootstrap-commands', - 'pre-configure-commands', - 'configure-commands', - 'post-configure-commands', - 'pre-build-commands', - 'build-commands', - 'post-build-commands', - 'pre-test-commands', - 'test-commands', - 'post-test-commands', - 'pre-install-commands', - 'install-commands', - 'post-install-commands', - 'pre-strip-commands', - 'strip-commands', - 'post-strip-commands'] - - -# Predefined architecture constants -# --------------------------------- -# -# Mapping from definitions architecture keywords to compiler keywords -# -cpus: - x86_32: 'i686' - armv8l64: 'aarch64' - armv8b64: 'aarch64_be' - mips64b: 'mips64' - mips64l: 'mips64el' - mips32b: 'mips' - mips32l: 'mipsel' - - -# Predefined build commands -# ------------------------- -# -# Common patterns in build instructions can be defined here, which can save -# users from having to write lots of similar-looking chunk .morph files. -# -# There are pre- and post- variants for each set of commands. These exist so -# you can add more commands without having to copy the defaults. For example, -# to create an extra symlink after running `make install`, you can use -# post-install-commands. Since these exist as a way of extending the defaults, -# you cannot set default values for the pre- and post- commands. -# -# The set of environment variables available when these commands are executed -# is not formally specified right now, but you can assume PREFIX, DESTDIR and -# MORPH_ARCH are all set. -# -build-systems: - manual: - # The special, default 'no-op' build system. - configure-commands: [] - build-commands: [] - install-commands: [] - strip-commands: [] - - autotools: - # GNU Autoconf and GNU Automake, or anything which follow the same pattern. - # - # See also: https://github.com/cgwalters/build-api/blob/master/build-api.md - configure-commands: - - >- - export NOCONFIGURE=1; - if [ -e autogen ]; then ./autogen; - elif [ -e autogen.sh ]; then ./autogen.sh; - elif [ -e bootstrap ]; then ./bootstrap; - elif [ -e bootstrap.sh ]; then ./bootstrap.sh; - elif [ ! -e ./configure ]; then autoreconf -ivf; - fi - - ./configure --prefix="$PREFIX" - --sysconfdir=/etc - --localstatedir=/var - - build-commands: - - make - install-commands: - - make DESTDIR="$DESTDIR" install - strip-commands: - # TODO: Make idempotent when files are hardlinks - # Strip all ELF binary files that are executable or named like a library. - # .so files for C, .cmxs for OCaml and .node for Node. - # - # The file name and permissions checks are done with the `find` command before - # the ELF header is checked with the shell command, because it is a lot cheaper - # to check the mode and file name first, because it is a metadata check, rather - # than a subprocess and a file read. - # - # `file` is not used, to keep the dependency requirements down. - - &generic-strip-command | - find "$DESTDIR" -type f \ - '(' -perm -111 -o -name '*.so*' -o -name '*.cmxs' -o -name '*.node' ')' \ - -exec sh -ec \ - 'read -n4 hdr <"$1" # check for elf header - if [ "$hdr" != "$(printf \\x7fELF)" ]; then - exit 0 - fi - debugfile="$DESTDIR$PREFIX/lib/debug/$(basename "$1")" - mkdir -p "$(dirname "$debugfile")" - objcopy --only-keep-debug "$1" "$debugfile" - chmod 644 "$debugfile" - strip --remove-section=.comment --remove-section=.note --strip-unneeded "$1" - objcopy --add-gnu-debuglink "$debugfile" "$1"' - {} ';' - - python-distutils: - # The Python distutils build systems. - configure-commands: [] - build-commands: - - python setup.py build - install-commands: - - python setup.py install --prefix "$PREFIX" --root "$DESTDIR" - strip-commands: - - *generic-strip-command - - python3-distutils: - # The Python distutils build systems. - configure-commands: [] - build-commands: - - python3 setup.py build - install-commands: - - python3 setup.py install --prefix "$PREFIX" --root "$DESTDIR" - strip-commands: - - *generic-strip-command - - cpan: - # The Perl ExtUtil::MakeMaker build system. This is called the 'cpan' build - # system for historical reasons. - # - # To install perl distributions into the correct location in our chroot - # we need to set PREFIX to / in the configure-commands. - # - # The mapping between PREFIX and the final installation - # directories is complex and depends upon the configuration of perl - # see, - # https://metacpan.org/pod/distribution/perl/INSTALL#Installation-Directories - # and ExtUtil::MakeMaker's documentation for more details. - configure-commands: - - perl Makefile.PL PREFIX=$DESTDIR$PREFIX - build-commands: - - make - install-commands: - - make install - strip-commands: - - *generic-strip-command - - module-build: - # The Module::Build build system - # - # See the comment in ExtUtilsMakeMakerBuildSystem to see why --prefix is - # set to $DESTDIR$PREFIX here (--prefix in Module::Build has the same - # meaning as PREFIX in ExtUtils::MakeMaker). - configure-commands: - - perl Build.PL --prefix "$DESTDIR$PREFIX" - build-commands: - - ./Build - install-commands: - - ./Build install - strip-commands: - - *generic-strip-command - - cmake: - # The CMake build system. - configure-commands: - - cmake -DCMAKE_INSTALL_PREFIX="$PREFIX" - build-commands: - - make - install-commands: - - make DESTDIR="$DESTDIR" install - strip-commands: - - *generic-strip-command - - qmake: - # The Qt build system. - configure-commands: - - qmake -makefile - build-commands: - - make - install-commands: - - make INSTALL_ROOT="$DESTDIR" install - strip-commands: - - *generic-strip-command - - -# Predefined artifact splitting rules -# ----------------------------------- -# -# Once a build has completed, you have some files that have been installed into -# $DESTDIR. The splitting rules control how many 'artifact' tarballs are -# generated as a result of the build, and which files from $DESTDIR end up in -# which 'artifact'. -# -# The default split rules are defined here. These can be overriden in -# individual chunk .morph files and stratum .morph files using the 'products' -# field. -# -split-rules: - chunk: - - artifact: -bins - include: - - (usr/)?s?bin/.* - - artifact: -libs - include: - - (usr/)?lib(32|64)?/lib[^/]*\.so(\.\d+)* - - (usr/)libexec/.* - - artifact: -devel - include: - - (usr/)?include/.* - - (usr/)?lib(32|64)?/lib.*\.a - - (usr/)?lib(32|64)?/lib.*\.la - - (usr/)?(lib(32|64)?|share)/pkgconfig/.*\.pc - - artifact: -doc - include: - - (usr/)?share/doc/.* - - (usr/)?share/man/.* - - (usr/)?share/info/.* - - artifact: -locale - include: - - (usr/)?share/locale/.* - - (usr/)?share/i18n/.* - - (usr/)?share/zoneinfo/.* - - artifact: -misc - include: - - .* - - stratum: - - artifact: -devel - include: - - .*-devel - - .*-debug - - .*-doc - - artifact: -runtime - include: - - .*-bins - - .*-libs - - .*-locale - - .*-misc - - .* diff --git a/VERSION b/VERSION deleted file mode 100644 index 9a47f2b9..00000000 --- a/VERSION +++ /dev/null @@ -1 +0,0 @@ -version: 8 diff --git a/clusters/altera-socfpga-devkit-sd-image.morph b/clusters/altera-socfpga-devkit-sd-image.morph deleted file mode 100644 index 71d3da2d..00000000 --- a/clusters/altera-socfpga-devkit-sd-image.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: altera-socfpga-devkit-sd-image -kind: cluster -description: | - This cluster morph deploys a little endian Baserock system to - an SD image for the Altera Cyclone V development kit -systems: -- morph: systems/build-system-armv7l-altera-socfpga-devkit.morph - deploy: - self: - type: extensions/rawdisk - location: build-system-armv7l-altera-socfpga-devkit.img - DISK_SIZE: 7G - USE_PARTITIONING: yes - PARTITION_FILE: partitioning/socfpga-devkit diff --git a/clusters/build-system-x86_64-chroot-deploy.morph b/clusters/build-system-x86_64-chroot-deploy.morph deleted file mode 100644 index ce0b26bc..00000000 --- a/clusters/build-system-x86_64-chroot-deploy.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: build-system-x86_64-chroot-deploy -kind: cluster -systems: -- morph: systems/build-system-x86_64-chroot.morph - deploy: - build-system-x86_64-chroot: - type: extensions/tar - location: build-system-x86_64-chroot.tar - HOSTNAME: build-system-x86-64-chroot diff --git a/clusters/ci.morph b/clusters/ci.morph deleted file mode 100644 index e9dac92e..00000000 --- a/clusters/ci.morph +++ /dev/null @@ -1,81 +0,0 @@ -name: ci -kind: cluster -description: | - Deploy all the systems for CD. - - This cluster morph is for use by the Mason Continuous Delivery pipeline - during development. -systems: -- morph: systems/minimal-system-x86_64-generic.morph - deploy: - minimal-system-x86_64-generic: - type: extensions/rawdisk - location: minimal-system-x86_64-generic.img - DISK_SIZE: 512M - INIT_SYSTEM: busybox -- morph: systems/build-system-armv7lhf-jetson.morph - deploy: - build-system-armv7lhf-jetson: - type: extensions/rawdisk - location: build-system-armv7lhf-jetson.img - DISK_SIZE: 3G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 -- morph: gnome/systems/gnome-system-x86_64.morph - deploy: - gnome-system-x86_64: - type: extensions/rawdisk - location: gnome-system-x86_64.img - DISK_SIZE: 7G - KERNEL_ARGS: vga=788 -- morph: weston/systems/weston-system-armv7lhf-jetson.morph - deploy: - weston-system-armv7lhf-jetson: - type: extensions/rawdisk - location: weston-system-armv7lhf-jetson.img - DISK_SIZE: 4G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 -- morph: genivi/systems/genivi-baseline-system-x86_64-generic.morph - deploy: - genivi-baseline-system-x86_64-generic: - type: extensions/rawdisk - location: genivi-baseline-system-x86_64-generic.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - GENIVI_WESTON_BACKEND: fbdev - GENIVI_WESTON_CONFIG: baseline - GENIVI_WESTON_AUTOSTART: False -- morph: genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph - deploy: - genivi-baseline-system-armv7lhf-jetson: - type: extensions/rawdisk - location: genivi-baseline-system-armv7lhf-jetson.img - DISK_SIZE: 4G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 - GENIVI_WESTON_BACKEND: drm - GENIVI_WESTON_CONFIG: baseline - GENIVI_WESTON_AUTOSTART: True -- morph: weston/systems/weston-qt5-system-x86_64.morph - deploy: - weston-qt5-system-x86_64.morph: - type: extensions/rawdisk - location: weston-qt5-system-x86_64.morph.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 diff --git a/clusters/example-distbuild-cluster.morph b/clusters/example-distbuild-cluster.morph deleted file mode 100644 index 5208a5ca..00000000 --- a/clusters/example-distbuild-cluster.morph +++ /dev/null @@ -1,37 +0,0 @@ -name: example-distbuild-cluster -kind: cluster -description: | - This is an example cluster morph that can be adapted to set up a - Baserock distributed build network. - - You will need to deploy a Trove for the distributed build network - to use before deploying this cluster. The worker SSH key file should - be generated as part of the Trove deployment. It is the key used by - workers to authenticate with the Trove to give them read access to - all source repositories. -systems: -- morph: systems/build-system-x86_64.morph - deploy-defaults: - CONTROLLERHOST: build-controller - DISTBUILD_CONTROLLER: false - DISTBUILD_WORKER: true - FSTAB_SRC: LABEL=src /srv/distbuild auto defaults,rw,noatime 0 2 - INSTALL_FILES: install-files/distbuild/manifest - NFSBOOT_CONFIGURE: true - TROVE_ID: $MY_TROVE - WORKER_SSH_KEY: ssh-keys/worker.key - deploy: - build-controller: - type: extensions/nfsboot - location: $MY_TROVE - DISTBUILD_CONTROLLER: true - HOSTNAME: build-controller - WORKERS: build-node-1, build-node-2 - build-node-1: - type: extensions/nfsboot - location: $MY_TROVE - HOSTNAME: build-node-1 - build-node-2: - type: extensions/nfsboot - location: $MY_TROVE - HOSTNAME: build-node-2 diff --git a/clusters/hardware-deployment.morph b/clusters/hardware-deployment.morph deleted file mode 100644 index 674d6587..00000000 --- a/clusters/hardware-deployment.morph +++ /dev/null @@ -1,35 +0,0 @@ -name: hardware-deployment -kind: cluster -description: | - Deploy a build-system into hardware using the combination - of the pxeboot.write extension and the installer system. - This examples uses the spawn-novlan mode of pxeboot.write. -systems: -- morph: systems/installer-system-x86_64.morph - deploy: - installer: - type: extensions/pxeboot - location: AB:CD:EF:12:34:56:78 #MAC address. - PXEBOOT_MODE: spawn-novlan - PXEBOOT_DEPLOYER_INTERFACE: ens6 - KERNEL_ARGS: console=ttyS1,9600 console=tty0 init=/usr/lib/baserock-installer/installer - HOSTNAME: installer-system - IPMI_USER: myipmiuser - IPMI_PASSWORD: myipmipassword - IPMI_HOST: 123.34.45.120 #IPMI ip address - INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda - INSTALLER_ROOTFS_TO_INSTALL: /rootfs - subsystems: - - morph: systems/build-system-x86_64.morph - deploy: - to-install: - type: extensions/sysroot - location: /rootfs - INITRAMFS_PATH: boot/initramfs.gz - KERNEL_ARGS: console=ttyS1,9600 console=tty0 - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/clusters/image-package-example.morph b/clusters/image-package-example.morph deleted file mode 100644 index ca79ec97..00000000 --- a/clusters/image-package-example.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: image-package-example -kind: cluster -description: | - Packaged system and script for installing it, for deferred instantiation. -systems: -- morph: systems/base-system-x86_32-generic.morph - deploy: - imgpkg: - type: extensions/image-package - location: image-package-example.tar - BOOTLOADER_BLOBS: /usr/share/syslinux/mbr.bin - INCLUDE_SCRIPTS: extensions/image-package-example/make-disk-image.sh.in:extensions/image-package-example/disk-install.sh.in:extensions/image-package-example/common.sh.in diff --git a/clusters/initramfs-test.morph b/clusters/initramfs-test.morph deleted file mode 100644 index a4ce7f32..00000000 --- a/clusters/initramfs-test.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: initramfs-test -kind: cluster -systems: -- morph: systems/base-system-x86_64-generic.morph - deploy: - system: - type: extensions/rawdisk - location: initramfs-system-x86_64.img - DISK_SIZE: 1G - HOSTNAME: initramfs-system - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: extensions/initramfs - location: boot/initramfs.gz - - morph: systems/initramfs-x86_64.morph - deploy: - shutdownramfs: - type: sysroot - location: usr/lib/shutdownramfs diff --git a/clusters/installer-build-system-x86_64.morph b/clusters/installer-build-system-x86_64.morph deleted file mode 100644 index d9a2a28b..00000000 --- a/clusters/installer-build-system-x86_64.morph +++ /dev/null @@ -1,52 +0,0 @@ -name: installer-build-system-x86_64 -kind: cluster -description: | - This is a cluster morphology that can be used to deploy - installer systems. This is done by adding the files needed - using a manifest file (installer/manifest) with the INSTALL_FILES - extension, and using the installer.configure extension to generate - the configuration needed in the system. - - This manifest, which is installing the installer script in - /usr/lib/installer/installer.py, in combination of adding - "init=/usr/lib/installer/installer.py" as KERNEL_ARGS in the system - makes the system run the installer.py script as init script. - - The installer.py script will read the information needed to - install the system (where is the root filesystem to install and - where to install it) from /etc/install.conf. - - This cluster also deploys a subsystem (a build-system in this case) - which is going to be the system that the installer system/script is - going to install. - -systems: -- morph: systems/installer-system-x86_64.morph - deploy: - installer: - type: extensions/rawdisk - location: installer-build-system-x86_64.img - KERNEL_ARGS: init=/usr/lib/baserock-installer/installer - DISK_SIZE: 6G - HOSTNAME: installer-x86_64 - INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda - INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - installer-initramfs: - type: extensions/initramfs - location: boot/initramfs.gz - - morph: systems/build-system-x86_64.morph - deploy: - to-install: - type: extensions/sysroot - location: /rootfs - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - to-install-initramfs: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph b/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph deleted file mode 100644 index 3154fa26..00000000 --- a/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph +++ /dev/null @@ -1,13 +0,0 @@ -name: minimal-system-armv5l-openbmc-aspeed-deploy -kind: cluster -systems: -- morph: systems/minimal-system-armv5l-openbmc-aspeed.morph - deploy: - minimal-system-armv5l-openbmc-aspeed: - type: extensions/jffs2 - location: minimal-system-armv5l-openbmc-aspeed.img - ROOT_DEVICE: /dev/mtdblock - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - ERASE_BLOCK: 64 - INIT_SYSTEM: busybox diff --git a/clusters/minimal-system-deploy.morph b/clusters/minimal-system-deploy.morph deleted file mode 100644 index cf8de54f..00000000 --- a/clusters/minimal-system-deploy.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: minimal-system-deploy -kind: cluster -description: | - Deploy a minimal system to a system running KVM -systems: -- morph: systems/minimal-system-x86_32-generic.morph - deploy: - vm: - type: extensions/kvm - location: kvm+ssh://192.168.122.1/tiny-x86_32/srv/VMs/tiny-x86_32.img - DISK_SIZE: 512M - HOSTNAME: tiny-x86_32 - INIT_SYSTEM: busybox - RAM_SIZE: 512M diff --git a/clusters/minimal-system-x86_64-chroot-deploy.morph b/clusters/minimal-system-x86_64-chroot-deploy.morph deleted file mode 100644 index d25fdcc8..00000000 --- a/clusters/minimal-system-x86_64-chroot-deploy.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: minimal-system-x86_64-chroot-deploy -kind: cluster -systems: -- morph: systems/minimal-system-x86_64-chroot.morph - deploy: - minimal-system-x86_64-chroot: - type: extensions/tar - location: minimal-system-x86_64-chroot.tar - HOSTNAME: minimal-system-x86-64-chroot diff --git a/clusters/minimal-system-x86_64-deploy.morph b/clusters/minimal-system-x86_64-deploy.morph deleted file mode 100644 index be193b8b..00000000 --- a/clusters/minimal-system-x86_64-deploy.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: minimal-system-x86_64-deploy -kind: cluster -description: | - Deploy a minimal system -systems: -- morph: systems/minimal-system-x86_64-generic.morph - deploy: - minimal-system-x86_64-generic: - type: extensions/rawdisk - location: minimal-system-x86_64.img - DISK_SIZE: 1G - HOSTNAME: minimal-system-x86-64 diff --git a/clusters/release.morph b/clusters/release.morph deleted file mode 100644 index fe07665f..00000000 --- a/clusters/release.morph +++ /dev/null @@ -1,62 +0,0 @@ -name: release -kind: cluster -description: | - Deploy all the systems for we support in a release. - - This cluster morph is used by the tool 'scripts/do-release'. While - you can deploy the systems yourself, if you are making a Baserock release - then the script should be used. -systems: -- morph: systems/build-system-x86_32-chroot.morph - deploy: - build-system-x86_32-chroot: - type: extensions/tar - location: build-system-x86_32-chroot.tar - HOSTNAME: build-system-x86-32-chroot -- morph: systems/build-system-x86_32.morph - deploy: - build-system-x86_32: - type: extensions/rawdisk - location: build-system-x86_32.img - DISK_SIZE: 6G - HOSTNAME: build-system-x86-32 -- morph: systems/build-system-x86_64-chroot.morph - deploy: - build-system-x86_64-chroot: - type: extensions/tar - location: build-system-x86_64-chroot.tar - HOSTNAME: build-system-x86-64-chroot -- morph: systems/build-system-x86_64.morph - deploy: - build-system-x86_64: - type: extensions/rawdisk - location: build-system-x86_64.img - DISK_SIZE: 6G - INITRAMFS_PATH: boot/initramfs.gz - HOSTNAME: build-system-x86-64 - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs-build-system-x86_64: - type: extensions/initramfs - location: boot/initramfs.gz -- morph: systems/build-system-armv7lhf-rootfs.morph - deploy: - build-system-armv7lhf-rootfs: - type: extensions/tar - location: build-system-armv7lhf-rootfs.tar - HOSTNAME: build-system-armv7lhf-rootfs -- morph: systems/build-system-armv7lhf-jetson.morph - deploy: - build-system-armv7lhf-jetson: - type: extensions/rawdisk - location: build-system-armv7lhf-jetson.img - DISK_SIZE: 3G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 - HOSTNAME: build-system-armv7lhf-jetson diff --git a/extensions/add-config-files.configure b/extensions/add-config-files.configure deleted file mode 100755 index 2cf96fd1..00000000 --- a/extensions/add-config-files.configure +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013,2015 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, see . - - -# Copy all files located in $SRC_CONFIG_DIR to the image /etc. - - -set -e - -if [ "x${SRC_CONFIG_DIR}" != x ] -then - cp -r "$SRC_CONFIG_DIR"/* "$1/etc/" -fi - diff --git a/extensions/busybox-init.configure b/extensions/busybox-init.configure deleted file mode 100644 index c7dba3b9..00000000 --- a/extensions/busybox-init.configure +++ /dev/null @@ -1,145 +0,0 @@ -#!/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 configure a system -# to use busybox for its init, if INIT_SYSTEM=busybox is specified. -# -# As well as checking INIT_SYSTEM, the following variables are used. -# -# Getty configuration: -# * CONSOLE_DEVICE: Which device to spawn a getty on (default: ttyS0) -# * CONSOLE_BAUDRATE: Baud rate of the console (default: 115200) -# * CONSOLE_MODE: What kind of terminal this console emulates -# (default: vt100) - -if [ "$INIT_SYSTEM" != busybox ]; then - echo Not configuring system to use busybox init. - exit 0 -fi - -set -e -echo Configuring system to use busybox init - -RUN_SCRIPT=/etc/rcS -INIT_SCRIPT=/sbin/init - -install_mdev_config(){ - install -D -m644 /dev/stdin "$1" <<'EOF' -# support module loading on hotplug -$MODALIAS=.* root:root 660 @modprobe "$MODALIAS" - -# null may already exist; therefore ownership has to be changed with command -null root:root 666 @chmod 666 $MDEV -zero root:root 666 -full root:root 666 -random root:root 444 -urandom root:root 444 -hwrandom root:root 444 -grsec root:root 660 - -kmem root:root 640 -mem root:root 640 -port root:root 640 -# console may already exist; therefore ownership has to be changed with command -console root:root 600 @chmod 600 $MDEV -ptmx root:root 666 -pty.* root:root 660 - -# Typical devices - -tty root:root 666 -tty[0-9]* root:root 660 -vcsa*[0-9]* root:root 660 -ttyS[0-9]* root:root 660 - -# block devices -ram[0-9]* root:root 660 -loop[0-9]+ root:root 660 -sd[a-z].* root:root 660 -hd[a-z][0-9]* root:root 660 -md[0-9]* root:root 660 -sr[0-9]* root:root 660 @ln -sf $MDEV cdrom -fd[0-9]* root:root 660 - -# net devices -SUBSYSTEM=net;.* root:root 600 @nameif -tun[0-9]* root:root 600 =net/ -tap[0-9]* root:root 600 =net/ -EOF -} - -install_start_script(){ - install -D -m755 /dev/stdin "$1" <<'EOF' -#!/bin/sh -mount -t devtmpfs devtmpfs /dev -mount -t proc proc /proc -mount -t sysfs sysfs /sys -mkdir -p /dev/pts -mount -t devpts devpts /dev/pts - -echo /sbin/mdev >/proc/sys/kernel/hotplug -mdev -s - -hostname -F /etc/hostname - -run-parts -a start /etc/init.d -EOF -} - -install_inittab(){ - local inittab="$1" - local dev="$2" - local baud="$3" - local mode="$4" - install -D -m644 /dev/stdin "$1" <&2 - exit 1 -} - -install_mdev_config "$1/etc/mdev.conf" - -install_start_script "$1$RUN_SCRIPT" - -install_inittab "$1/etc/inittab" "${CONSOLE_DEV-ttyS0}" \ - "${CONSOLE_BAUD-115200}" "${CONSOLE_MODE-vt100}" - -install_init_symlink "$1$INIT_SCRIPT" diff --git a/extensions/ceph.configure b/extensions/ceph.configure deleted file mode 100644 index 32f512ef..00000000 --- a/extensions/ceph.configure +++ /dev/null @@ -1,344 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2013-2015 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.5 -# -# 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. - -import os -import shutil -import stat -import sys -import re - -import writeexts - -systemd_monitor_template = """ -[Unit] -Description=Ceph Monitor firstboot setup -After=network-online.target - -[Service] -ExecStart=/bin/sh /root/setup-ceph-head -ExecStartPost=/bin/systemctl disable ceph-monitor-fboot.service - -[Install] -WantedBy=multi-user.target -""" - -systemd_monitor_fname_template = "ceph-monitor-fboot.service" - -systemd_osd_template = """ -[Unit] -Description=Ceph osd firstboot setup -After=network-online.target - -[Service] -ExecStart=/bin/sh /root/setup-ceph-node -ExecStartPost=/bin/systemctl disable ceph-storage-fboot.service - -[Install] -WantedBy=multi-user.target -""" -systemd_osd_fname_template = "ceph-storage-fboot.service" - -ceph_monitor_config_template = """#!/bin/sh -hn={self.hostname} -monIp={self.mon_ip} -clustFsid={self.cluster_fsid} -ceph-authtool --create-keyring /tmp/ceph.mon.keyring \ - --gen-key -n mon. --cap mon 'allow *' -ceph-authtool /tmp/ceph.mon.keyring \ - --import-keyring /etc/ceph/ceph.client.admin.keyring -monmaptool --create --add "$hn" "$monIp" --fsid "$clustFsid" /tmp/monmap -mkdir -p /var/lib/ceph/mon/ceph-"$hn" -ceph-mon --mkfs -i "$hn" --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring -systemctl enable ceph-mon@"$hn".service -systemctl start ceph-mon@"$hn".service -""" - -ceph_storage_config_template = """#!/bin/sh -storageDisk={self.osd_storage_dev} -if `file -sL "$storageDisk" | grep -q ext4`; then - echo "ext4 disk detected. Proceding..." -else - echo "ERROR: ext4 disk required." \ - "Ensure $storageDisk is formated as ext4." >&2 - exit 1 -fi -hn={self.hostname} -uuid="`uuidgen`" -osdnum="`ceph osd create $uuid`" -mkdir /var/lib/ceph/osd/ceph-"$osdnum" -mount -o user_xattr "$storageDisk" /var/lib/ceph/osd/ceph-"$osdnum" -ceph-osd -i "$osdnum" --mkfs --mkkey --osd-uuid "$uuid" -ceph auth add osd."$osdnum" osd 'allow *' mon 'allow profile osd' \ - -i /var/lib/ceph/osd/ceph-"$osdnum"/keyring -ceph osd crush add-bucket "$hn" host -ceph osd crush move "$hn" root=default -ceph osd crush add osd."$osdnum" 1.0 host="$hn" -systmectl enable ceph-osd@"$osdnum".service -systemctl start ceph-osd@"$osdnum".service -echo "$storageDisk /var/lib/ceph/osd/ceph-$osdnum/ ext4 defaults 0 2" \ - >> /etc/fstab -""" - -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(writeexts.Extension): - """ - Set up ceph server daemons. - - Support for metadata server has not been tested. - - Must include the following environment variables: - - HOSTNAME - Must be defined it is used as the ID for - the monitor and metadata daemons. - - CEPH_CONF - Provide a ceph configuration file. - - Optional environment variables: - - CEPH_CLUSTER - Cluster name, if not provided defaults to 'ceph'. - - CEPH_BOOTSTRAP_OSD - Registered key capable of generating OSD - keys. - - CEPH_BOOTSTRAP_MDS - Registered key capable of generating MDS - keys. - - Bootstrap keys are required for creating OSD daemons on servers - that do not have a running monitor daemon. They are gathered - by 'ceph-deploy gatherkeys' but can be generated and registered - separately. - - CEPH_CLIENT_ADMIN - Key required by any ceph action that requires - client admin authentication to run - - CEPH_MON - (Blank) Create a ceph monitor daemon on the image. - CEPH_MON_KEYRING - Location of monitor keyring. Required by the - monitor if using cephx authentication. - CEPH_MON_IP - ip address that the monitor node will have. This is required - if CEPH_MON is set. It should also be set in the CEPH_CONF - file too. - CEPH_CLUSTER_FSID - A uuid for the ceph cluster. This is required if - CEPH_MON is set. It should also be set in the - CEPH_CONF file too. - - CEPH_OSD - (Blank) Create a ceph object storage daemon on the image. - 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. - CEPH_OSD_STORAGE_DEV - Location of the storage device to be used to host - the osd file system. This is a required field. - - CEPH_MDS - (Blank) Create a metadata server daemon on server. - """ - - def process_args(self, args): - - if "HOSTNAME" not in os.environ: - sys.exit( "ERROR: Need a hostname defined by 'HOSTNAME'" ) - if "CEPH_CONF" not in os.environ: - sys.exit( "ERROR: Need a ceph conf file defined by 'CEPH_CONF'" ) - - self.dest_dir = args[0] - - self.cluster_name = "ceph" - self.hostname = os.environ["HOSTNAME"] - - self.conf_file = "/etc/ceph/{}.conf".format(self.cluster_name) - self.admin_file = os.path.join( "/etc/ceph/", - "{}.client.admin.keyring".format(self.cluster_name) ) - self.mon_dir = "/var/lib/ceph/mon/" - self.osd_dir = "/var/lib/ceph/osd/" - self.mds_dir = "/var/lib/ceph/mds/" - self.tmp_dir = "/var/lib/ceph/tmp/" - self.bootstrap_mds_dir = "/var/lib/ceph/bootstrap-mds/" - self.bootstrap_osd_dir = "/var/lib/ceph/bootstrap-osd/" - self.systemd_dir = "/etc/systemd/system/" - self.systemd_multiuser_dir = \ - "/etc/systemd/system/multi-user.target.wants/" - - - print "Copying from " + os.getcwd() - self.copy_to_img(os.environ["CEPH_CONF"], self.conf_file) - - - # If the clustername is provided set it accprdingly. Default is "ceph" - if "CEPH_CLUSTER" in os.environ: - self.cluster_name = os.environ["CEPH_CLUSTER"] - - # Copy over bootstrap keyrings - if "CEPH_BOOTSTRAP_OSD" in os.environ: - self.copy_bootstrap_osd(os.environ["CEPH_BOOTSTRAP_OSD"]); - if "CEPH_BOOTSTRAP_MDS" in os.environ: - self.copy_bootstrap_mds(os.environ["CEPH_BOOTSTRAP_MDS"]); - - # Copy over admin keyring - if "CEPH_CLIENT_ADMIN" in os.environ: - self.copy_to_img(os.environ["CEPH_CLIENT_ADMIN"], self.admin_file); - - # Configure any monitor daemons - if "CEPH_MON" in os.environ: - - # check for and set self.mon_ip : needs static value. - if "CEPH_MON_IP" not in os.environ: - sys.exit("ERROR: Static ip required for the monitor node") - else: - self.mon_ip = os.environ["CEPH_MON_IP"] - - # Check and set for cluster fsid : can have default - if "CEPH_CLUSTER_FSID" not in os.environ: - sys.exit("ERROR: UUID fsid value required for cluster.") - else: - self.cluster_fsid = os.environ["CEPH_CLUSTER_FSID"] - - self.create_mon_data_dir(os.environ.get("CEPH_MON_KEYRING")) - - # Configure any object storage daemons - if "CEPH_OSD" in os.environ: - - # Check a osd storage device has been provided - if "CEPH_OSD_STORAGE_DEV" not in os.environ: - sys.exit("ERROR: Storage device required. \ - Set 'CEPH_OSD_STORAGE_DEV'.") - else: - self.osd_storage_dev = os.environ["CEPH_OSD_STORAGE_DEV"] - - self.create_osd_startup_script() - - osd_re = r"CEPH_OSD_(\d+)_DATA_DIR$" - - for env in os.environ.keys(): - match = re.match(osd_re, env) - if match: - osd_data_dir_env = match.group(0) - osd_id = match.group(1) - - self.create_osd_data_dir(osd_id, - os.environ.get(osd_data_dir_env)) - - - # Configure any mds daemons - 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) - - def copy_bootstrap_osd(self, src_file): - self.copy_to_img(src_file, - os.path.join(self.bootstrap_osd_dir, - "{}.keyring".format(self.cluster_name))) - - def copy_bootstrap_mds(self, src_file): - self.copy_to_img(src_file, - os.path.join(self.bootstrap_mds_dir, - "{}.keyring".format(self.cluster_name))) - - def symlink_to_multiuser(self, fname): - sys.stderr.write( os.path.join("../", fname) ) - sys.stderr.write( self.dest_dir + - os.path.join(self.systemd_multiuser_dir, fname) ) - print "Linking: %s into %s"%(fname, self.systemd_multiuser_dir) - os.symlink(os.path.join("../", fname), - self.dest_dir + - os.path.join(self.systemd_multiuser_dir, fname)) - - def create_mon_data_dir(self, src_keyring): - - # Create systemd file to initialize the monitor data directory - keyring = "" - mon_systemd_fname = systemd_monitor_fname_template - - systemd_script_name = self.dest_dir \ - + os.path.join(self.systemd_dir, mon_systemd_fname) - print "Write monitor systemd script to " + systemd_script_name - 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) - - def create_osd_data_dir(self, osd_id, data_dir): - if not data_dir: - data_dir = '/srv/osd' + osd_id - - # Create the osd data dir - os.makedirs(self.dest_dir + data_dir) - - def create_osd_startup_script(self): - osd_systemd_fname = systemd_osd_fname_template - - osd_full_name = self.dest_dir + \ - os.path.join(self.systemd_dir, osd_systemd_fname) - print "Write Storage systemd script to " + osd_full_name - - osd_systemd = open(osd_full_name, 'w') - - osd_systemd.write(systemd_osd_template) - osd_systemd.close() - - # Create a symlink to the multi user target - self.symlink_to_multiuser(osd_systemd_fname) - - def create_mds_data_dir(self): - - # Create the monitor data directory - mds_data_dir = os.path.join(self.mds_dir, - "{}-{}".format(self.cluster_name, self.hostname)) - os.makedirs(self.dest_dir + mds_data_dir) - - # Create sysvinit file to start via sysvinit - sysvinit_file = os.path.join(mds_data_dir, "sysvinit") - open(self.dest_dir + sysvinit_file, 'a').close() - - - def create_startup_scripts(self): - print "Copying startup scripts to node:" - - # Write monitor script if monitor requested - if "CEPH_MON" in os.environ: - head_setup_file = \ - os.path.join(self.dest_dir,"root","setup-ceph-head") - with open(head_setup_file, "w") as hs_file: - hs_file.write( ceph_monitor_config_template.format(self=self) ) - - os.chmod(head_setup_file, executable_file_permissions) - - # Write osd script if osd is requested - elif "CEPH_OSD" in os.environ: - osd_setup_file = \ - os.path.join(self.dest_dir, "root", "setup-ceph-node") - with open(osd_setup_file, "w") as os_file: - os_file.write( ceph_storage_config_template.format(self=self) ) - - os.chmod(osd_setup_file, executable_file_permissions) - - else: - print ("No valid node type defined. " - "A generic ceph node will be created.") - -CephConfigurationExtension().run() diff --git a/extensions/cloud-init.configure b/extensions/cloud-init.configure deleted file mode 100755 index 3bcc0909..00000000 --- a/extensions/cloud-init.configure +++ /dev/null @@ -1,69 +0,0 @@ -#!/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 enable the -# cloud-init services. -set -e - -ROOT="$1" - -# Write detailed logs to a special log file if set, otherwise everything -# goes to stdout. -if [ -z "$MORPH_LOG_FD" ]; then - MORPH_LOG_FD=1 -fi - -########################################################################## - -set -e - -case "$CLOUD_INIT" in -''|False|no) - exit 0 - ;; -True|yes) - echo "Configuring cloud-init" - ;; -*) - echo Unrecognised option "$CLOUD_INIT" to CLOUD_INIT - exit 1 - ;; -esac - - -cloud_init_services="cloud-config.service - cloud-init-local.service - cloud-init.service - cloud-final.service" - -# Iterate over the cloud-init services and enable them creating a link -# into /etc/systemd/system/multi-user.target.wants. -# If the services to link are not present, fail. - -services_folder="lib/systemd/system" -for service_name in $cloud_init_services; do - if [ ! -f "$ROOT/$services_folder/$service_name" ]; then - echo "ERROR: Service $service_name is missing." >&2 - echo "Failed to configure cloud-init." - exit 1 - else - echo Enabling systemd service "$service_name" >&"$MORPH_LOG_FD" - ln -sf "/$services_folder/$service_name" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$service_name" - fi -done diff --git a/extensions/distbuild-trove-nfsboot.check b/extensions/distbuild-trove-nfsboot.check deleted file mode 100755 index e825ac66..00000000 --- a/extensions/distbuild-trove-nfsboot.check +++ /dev/null @@ -1,153 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'distbuild-trove-nfsboot' write extension''' - -import logging -import os -import sys - -import writeexts - - -class DistbuildTroveNFSBootCheckExtension(writeexts.WriteExtension): - - nfsboot_root = '/srv/nfsboot' - remote_user = 'root' - - required_vars = [ - 'DISTBUILD_CONTROLLER', - 'DISTBUILD_GIT_SERVER', - 'DISTBUILD_SHARED_ARTIFACT_CACHE', - 'DISTBUILD_TROVE_ID', - 'DISTBUILD_WORKERS', - 'DISTBUILD_WORKER_SSH_KEY', - ] - - def system_path(self, system_name, version_label=None): - if version_label: - return os.path.join(self.nfsboot_root, system_name, 'systems', - version_label, 'run') - else: - return os.path.join(self.nfsboot_root, system_name) - - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - nfs_host = args[0] - nfs_netloc = '%s@%s' % (self.remote_user, nfs_host) - - version_label = os.getenv('VERSION_LABEL', 'factory') - - missing_vars = [var for var in self.required_vars - if not var in os.environ] - if missing_vars: - raise writeexts.ExtensionError( - 'Please set: %s' % ', '.join(missing_vars)) - - controllers = os.getenv('DISTBUILD_CONTROLLER').split() - workers = os.getenv('DISTBUILD_WORKERS').split() - - if len(controllers) != 1: - raise writeexts.ExtensionError( - 'Please specify exactly one controller.') - - if len(workers) == 0: - raise writeexts.ExtensionError( - 'Please specify at least one worker.') - - upgrade = self.get_environment_boolean('UPGRADE') - - self.check_good_server(nfs_netloc) - - system_names = set(controllers + workers) - for system_name in system_names: - if upgrade: - self.check_upgradeable(nfs_netloc, system_name, version_label) - else: - system_path = self.system_path(system_name) - - if self.remote_directory_exists(nfs_netloc, system_path): - if self.get_environment_boolean('OVERWRITE') == False: - raise writeexts.ExtensionError( - 'System %s already exists at %s:%s. Try `morph ' - 'upgrade` instead of `morph deploy`.' % ( - system_name, nfs_netloc, system_path)) - - def check_good_server(self, netloc): - # FIXME: assumes root - self.check_ssh_connectivity(netloc.split('@')[-1]) - - # Is an NFS server - try: - writeexts.ssh_runcmd( - netloc, ['test', '-e', '/etc/exports']) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s is not an nfs server' - % netloc) - try: - writeexts.ssh_runcmd( - netloc, ['systemctl', 'is-enabled', 'nfs-server.service']) - - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s does not control its ' - 'nfs server by systemd' % netloc) - - # TFTP server exports /srv/nfsboot/tftp - tftp_root = os.path.join(self.nfsboot_root, 'tftp') - try: - writeexts.ssh_runcmd( - netloc, ['test' , '-d', tftp_root]) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s does not export %s' % - (netloc, tftp_root)) - - def check_upgradeable(self, nfs_netloc, system_name, version_label): - '''Check that there is already a version of the system present. - - Distbuild nodes are stateless, so an upgrade is actually pretty much - the same as an initial deployment. This test is just a sanity check. - - ''' - system_path = self.system_path(system_name) - system_version_path = self.system_path(system_name, version_label) - - if not self.remote_directory_exists(nfs_netloc, system_path): - raise writeexts.ExtensionError( - 'System %s not found at %s:%s, cannot deploy an upgrade.' % ( - system_name, nfs_netloc, system_path)) - - if self.remote_directory_exists(nfs_netloc, system_version_path): - if self.get_environment_boolean('OVERWRITE'): - pass - else: - raise writeexts.ExtensionError( - 'System %s version %s already exists at %s:%s.' % ( - system_name, version_label, nfs_netloc, - system_version_path)) - - def remote_directory_exists(self, nfs_netloc, path): - try: - writeexts.ssh_runcmd(nfs_netloc, ['test', '-d', path]) - except writeexts.ExtensionError as e: - logging.debug('SSH exception: %s', e) - return False - - return True - - -DistbuildTroveNFSBootCheckExtension().run() diff --git a/extensions/distbuild-trove-nfsboot.write b/extensions/distbuild-trove-nfsboot.write deleted file mode 100755 index 171a84a8..00000000 --- a/extensions/distbuild-trove-nfsboot.write +++ /dev/null @@ -1,283 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013-2015 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, see . - - -'''Morph .write extension for a distbuild network booting off a Trove with NFS. - -''' - - -import os -import subprocess -import sys -import tempfile - -import writeexts - - -class DistbuildTroveNFSBootWriteExtension(writeexts.WriteExtension): - - '''Create an NFS root and kernel on TFTP during Morph's deployment. - - See distbuild-trove-nfsboot.help for documentation. - - ''' - - nfsboot_root = '/srv/nfsboot' - remote_user = 'root' - - def system_path(self, system_name, version_label=None): - if version_label: - # The 'run' directory is kind of a historical artifact. Baserock - # systems that have Btrfs root disks maintain an orig/ and a run/ - # subvolume, so that one can find changes that have been made at - # runtime. For distbuild systems, this isn't necessary because the - # root filesystems of the nodes are effectively stateless. However, - # existing systems have bootloaders configured to look for the - # 'run' directory, so we need to keep creating it. - return os.path.join(self.nfsboot_root, system_name, 'systems', - version_label, 'run') - else: - return os.path.join(self.nfsboot_root, system_name) - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError('Wrong number of command line args') - - local_system_path, nfs_host = args - - nfs_netloc = '%s@%s' % (self.remote_user, nfs_host) - - version_label = os.getenv('VERSION_LABEL', 'factory') - - controller_name = os.getenv('DISTBUILD_CONTROLLER') - worker_names = os.getenv('DISTBUILD_WORKERS').split() - system_names = set([controller_name] + worker_names) - - git_server = os.getenv('DISTBUILD_GIT_SERVER') - shared_artifact_cache = os.getenv('DISTBUILD_SHARED_ARTIFACT_CACHE') - trove_id = os.getenv('DISTBUILD_TROVE_ID') - worker_ssh_key_path = os.getenv('DISTBUILD_WORKER_SSH_KEY') - - host_map = self.parse_host_map_string(os.getenv('HOST_MAP', '')) - - kernel_relpath = self.find_kernel(local_system_path) - - copied_rootfs = None - for system_name in system_names: - remote_system_path = self.system_path(system_name, version_label) - if copied_rootfs is None: - self.transfer_system( - nfs_netloc, local_system_path, remote_system_path) - copied_rootfs = remote_system_path - else: - self.duplicate_remote_system( - nfs_netloc, copied_rootfs, remote_system_path) - - for system_name in system_names: - remote_system_path = self.system_path(system_name, version_label) - self.link_kernel_to_tftpboot_path( - nfs_netloc, system_name, version_label, kernel_relpath) - self.set_hostname( - nfs_netloc, system_name, remote_system_path) - self.write_distbuild_config( - nfs_netloc, system_name, remote_system_path, git_server, - shared_artifact_cache, trove_id, worker_ssh_key_path, - controller_name, worker_names, host_map=host_map) - - self.configure_nfs_exports(nfs_netloc, system_names) - - for system_name in system_names: - self.update_default_version(nfs_netloc, system_name, version_label) - - def parse_host_map_string(self, host_map_string): - '''Parse the HOST_MAP variable - - Returns a dict mapping hostname to value (where value is an IP - address, a fully-qualified domain name, an alternate hostname, or - whatever). - - ''' - pairs = host_map_string.split(' ') - return writeexts.parse_environment_pairs({}, pairs) - - def transfer_system(self, nfs_netloc, local_system_path, - remote_system_path): - self.status(msg='Copying rootfs to %(nfs_netloc)s', - nfs_netloc=nfs_netloc) - writeexts.ssh_runcmd( - nfs_netloc, ['mkdir', '-p', remote_system_path]) - # The deployed rootfs may have been created by OSTree, so definitely - # don't pass --hard-links to `rsync`. - subprocess.check_call( - ['rsync', '--archive', '--delete', '--info=progress2', - '--protect-args', '--partial', '--sparse', '--xattrs', - local_system_path + '/', - '%s:%s' % (nfs_netloc, remote_system_path)], stdout=sys.stdout) - - def duplicate_remote_system(self, nfs_netloc, source_system_path, - target_system_path): - self.status(msg='Duplicating rootfs to %(target_system_path)s', - target_system_path=target_system_path) - writeexts.ssh_runcmd(nfs_netloc, - ['mkdir', '-p', target_system_path]) - # We can't pass --info=progress2 here, because it may not be available - # in the remote 'rsync'. The --info setting was added in RSync 3.1.0, - # old versions of Baserock have RSync 3.0.9. So the user doesn't get - # any progress info on stdout for the 'duplicate' stage. - writeexts.ssh_runcmd(nfs_netloc, - ['rsync', '--archive', '--delete', '--protect-args', '--partial', - '--sparse', '--xattrs', source_system_path + '/', - target_system_path], stdout=sys.stdout) - - def find_kernel(self, local_system_path): - bootdir = os.path.join(local_system_path, 'boot') - image_names = ['vmlinuz', 'zImage', 'uImage'] - - for name in image_names: - try_path = os.path.join(bootdir, name) - if os.path.exists(try_path): - kernel_path = os.path.relpath(try_path, local_system_path) - break - else: - raise writeexts.ExtensionError( - 'Could not find a kernel in the system: none of ' - '%s found' % ', '.join(image_names)) - return kernel_path - - def link_kernel_to_tftpboot_path(self, nfs_netloc, system_name, - version_label, kernel_relpath): - '''Create links for TFTP server for a system's kernel.''' - - remote_system_path = self.system_path(system_name, version_label) - kernel_dest = os.path.join(remote_system_path, kernel_relpath) - - self.status(msg='Creating links to %(name)s kernel in tftp directory', - name=system_name) - tftp_dir = os.path.join(self.nfsboot_root , 'tftp') - - versioned_kernel_name = "%s-%s" % (system_name, version_label) - kernel_name = system_name - - writeexts.ssh_runcmd(nfs_netloc, - ['ln', '-f', kernel_dest, - os.path.join(tftp_dir, versioned_kernel_name)]) - - writeexts.ssh_runcmd(nfs_netloc, - ['ln', '-sf', versioned_kernel_name, - os.path.join(tftp_dir, kernel_name)]) - - def set_remote_file_contents(self, nfs_netloc, path, text): - with tempfile.NamedTemporaryFile() as f: - f.write(text) - f.flush() - subprocess.check_call( - ['scp', f.name, '%s:%s' % (nfs_netloc, path)]) - - def set_hostname(self, nfs_netloc, system_name, system_path): - hostname_path = os.path.join(system_path, 'etc', 'hostname') - self.set_remote_file_contents( - nfs_netloc, hostname_path, system_name + '\n') - - def write_distbuild_config(self, nfs_netloc, system_name, system_path, - git_server, shared_artifact_cache, trove_id, - worker_ssh_key_path, controller_name, - worker_names, host_map = {}): - '''Write /etc/distbuild/distbuild.conf on the node. - - This .write extension takes advantage of the 'generic' mode of - distbuild.configure. Each node is not configured until first-boot, - when distbuild-setup.service runs and configures the node based on the - contents of /etc/distbuild/distbuild.conf. - - ''' - def host(hostname): - return host_map.get(hostname, hostname) - - config = { - 'ARTIFACT_CACHE_SERVER': host(shared_artifact_cache), - 'CONTROLLERHOST': host(controller_name), - 'TROVE_HOST': host(git_server), - 'TROVE_ID': trove_id, - 'DISTBUILD_CONTROLLER': system_name == controller_name, - 'DISTBUILD_WORKER': system_name in worker_names, - 'WORKERS': ', '.join(map(host, worker_names)), - 'WORKER_SSH_KEY': '/etc/distbuild/worker.key', - } - - config_text = '\n'.join( - '%s: %s' % (key, value) for key, value in config.iteritems()) - config_text = \ - '# Generated by distbuild-trove-nfsboot.write\n' + \ - config_text + '\n' - path = os.path.join(system_path, 'etc', 'distbuild') - writeexts.ssh_runcmd( - nfs_netloc, ['mkdir', '-p', path]) - subprocess.check_call( - ['scp', worker_ssh_key_path, '%s:%s' % (nfs_netloc, path)]) - self.set_remote_file_contents( - nfs_netloc, os.path.join(path, 'distbuild.conf'), config_text) - - def configure_nfs_exports(self, nfs_netloc, system_names): - '''Ensure the Trove is set up to export the NFS roots we need. - - This doesn't handle setting up the TFTP daemon. We assume that is - already running. - - ''' - for system_name in system_names: - exported_path = self.system_path(system_name) - exports_path = '/etc/exports' - - # Rather ugly SSH hackery follows to ensure each system path is - # listed in /etc/exports. - try: - writeexts.ssh_runcmd( - nfs_netloc, ['grep', '-q', exported_path, exports_path]) - except writeexts.ExtensionError: - ip_mask = '*' - options = 'rw,no_subtree_check,no_root_squash,async' - exports_string = '%s %s(%s)\n' % (exported_path, ip_mask, - options) - exports_append_sh = '''\ - set -eu - target="$1" - temp=$(mktemp) - cat "$target" > "$temp" - cat >> "$temp" - mv "$temp" "$target" - ''' - writeexts.ssh_runcmd( - nfs_netloc, - ['sh', '-c', exports_append_sh, '--', exports_path], - feed_stdin=exports_string) - - writeexts.ssh_runcmd(nfs_netloc, - ['systemctl', 'restart', 'nfs-server.service']) - - def update_default_version(self, remote_netloc, system_name, - version_label): - self.status(msg='Linking \'default\' to %(version)s for %(system)s', - version=version_label, system=system_name) - system_path = self.system_path(system_name) - system_version_path = os.path.join(system_path, 'systems', - version_label) - default_path = os.path.join(system_path, 'systems', 'default') - - writeexts.ssh_runcmd(remote_netloc, - ['ln', '-sfn', system_version_path, default_path]) - - -DistbuildTroveNFSBootWriteExtension().run() diff --git a/extensions/distbuild-trove-nfsboot.write.help b/extensions/distbuild-trove-nfsboot.write.help deleted file mode 100644 index 62f1455c..00000000 --- a/extensions/distbuild-trove-nfsboot.write.help +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - Deploy a distbuild network, using a Trove to serve the kernel and rootfs. - - The `location` argument is the hostname of the Trove system. - - The following configuration values must be specified: - - - DISTBUILD_CONTROLLER: hostname of controller system - - DISTBUILD_WORKERS: hostnames of each worker system - - DISTBUILD_GIT_SERVER: Trove hostname - - DISTBUILD_SHARED_ARTIFACT_CACHE: Trove hostname - - DISTBUILD_TROVE_ID: Trove ID - - DISTBUILD_WORKER_SSH_KEY: SSH key to be used for ssh:// repos - - A note on TROVE_ID: the current distbuild-setup service requires that - a single 'Trove ID' is specified. This is used in Morph for expanding - keyed URLs. If you set TROVE_ID=foo for example, foo:bar will be expanded - to git://$GIT_SERVER/foo, in addition to the standard baserock: and - upstream: prefixes that you can use. - - The WORKER_SSH_KEY must be provided, even if you don't need it. The - distbuild-setup service could be changed to make it optional. - - The following configuration values are optional: - - - HOST_MAP: a list of key=value pairs mapping hostnames to IP addresses, - or fully-qualified domain names. Useful if you - cannot rely on hostname resolution working for your deploment. - - The extension will connect to root@location via ssh to copy the kernel and - rootfs, and configure the nfs server. It will duplicate the kernel and - rootfs once for each node in the distbuild network. - - The deployment mechanism makes assumptions about the bootloader - configuration of the target machines. diff --git a/extensions/distbuild.configure b/extensions/distbuild.configure deleted file mode 100644 index 062aaecc..00000000 --- a/extensions/distbuild.configure +++ /dev/null @@ -1,132 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013-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" configure extension to configure a Baserock -# build node, as part of a distributed building cluster. It uses the -# following variables from the environment: -# -# * DISTBUILD_CONTROLLER: if 'yes', machine is set up as the controller. -# * DISTBUILD_WORKER: if 'yes', machine is set up as a worker. -# * TROVE_ID: hostname and Trove prefix of the server to pull source -# from and push built artifacts to. -# * TROVE_HOST: FQDN of the same server as in TROVE_ID -# -# The following variable is optional: -# -# * ARTIFACT_CACHE_SERVER: by default artifacts are pushed to the same -# Trove that served the source, but you can use a different one. -# -# The following variable is required for worker nodes only: -# -# * CONTROLLERHOST: hostname or IP address of distbuild controller machine. -# * WORKER_SSH_KEY: identity used to authenticate with Trove -# -# The following variable is required for the controller node only: -# -# * WORKERS: hostnames or IP address of worker nodes, comma-separated. - -set -e - -if [ -n "$DISTBUILD_GENERIC" ]; then - echo "Not configuring the distbuild node, it will be generic" - exit 0 -fi - -# Set default values for these two options if they are unset, so that if the -# user specifies no distbuild config at all the configure extension exits -# without doing anything but does not raise an error. -DISTBUILD_CONTROLLER=${DISTBUILD_CONTROLLER-False} -DISTBUILD_WORKER=${DISTBUILD_WORKER-False} - -if [ "$DISTBUILD_CONTROLLER" = False -a "$DISTBUILD_WORKER" = False ]; then - exit 0 -fi - -set -u - -# Check that all the variables needed are present: - -error_vars=false - -if [ "x$TROVE_HOST" = "x" ]; then - echo "ERROR: TROVE_HOST needs to be defined." - error_vars=true -fi - -if [ "x$TROVE_ID" = "x" ]; then - echo "ERROR: TROVE_ID needs to be defined." - error_vars=true -fi - -if [ "$DISTBUILD_WORKER" = True ]; then - if ! ssh-keygen -lf "$WORKER_SSH_KEY" > /dev/null 2>&1; then - echo "ERROR: WORKER_SSH_KEY is not a vaild ssh key." - error_vars=true - fi - - if [ "x$CONTROLLERHOST" = "x" ]; then - echo "ERROR: CONTROLLERHOST needs to be defined." - error_vars=true - fi -fi - -if [ "$DISTBUILD_CONTROLLER" = True ]; then - if [ "x$WORKERS" = "x" ]; then - echo "ERROR: WORKERS needs to be defined." - error_vars=true - fi -fi - -if "$error_vars"; then - exit 1 -fi - - -ROOT="$1" - -DISTBUILD_DATA="$ROOT/etc/distbuild" -mkdir -p "$DISTBUILD_DATA" - -# If it's a worker, install the worker ssh key. -if [ "$DISTBUILD_WORKER" = True ] -then - install -m 0644 "$WORKER_SSH_KEY" "$DISTBUILD_DATA/worker.key" -fi - - - -# Create the configuration file -python <<'EOF' >"$DISTBUILD_DATA/distbuild.conf" -import os, sys, yaml - -distbuild_configuration={ - 'TROVE_ID': os.environ['TROVE_ID'], - 'TROVE_HOST': os.environ['TROVE_HOST'], - 'DISTBUILD_WORKER': os.environ['DISTBUILD_WORKER'], - 'DISTBUILD_CONTROLLER': os.environ['DISTBUILD_CONTROLLER'], - 'WORKER_SSH_KEY': '/etc/distbuild/worker.key', -} - - -optional_keys = ('ARTIFACT_CACHE_SERVER', 'CONTROLLERHOST', 'WORKERS', - 'TROVE_BACKUP_KEYS') - -for key in optional_keys: - if key in os.environ: - distbuild_configuration[key] = os.environ[key] - -yaml.dump(distbuild_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/fstab.configure b/extensions/fstab.configure deleted file mode 100755 index 3e67b585..00000000 --- a/extensions/fstab.configure +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright © 2013-2015 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, see . -# -# =*= License: GPL-2 =*= - - -import os -import sys - -import writeexts - -envvars = {k: v for (k, v) in os.environ.iteritems() if k.startswith('FSTAB_')} - -conf_file = os.path.join(sys.argv[1], 'etc/fstab') -writeexts.write_from_dict(conf_file, envvars) diff --git a/extensions/genivi.configure b/extensions/genivi.configure deleted file mode 100644 index c5f6dc4f..00000000 --- a/extensions/genivi.configure +++ /dev/null @@ -1,124 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True) - eval "$1=true" - ;; - False|'') - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -check_weston_config(){ - weston_ini_folder="$ROOT/usr/share/doc/weston" - case "$GENIVI_WESTON_CONFIG" in - 'baseline'|'') - weston_ini_file=ivi-shell-weston.ini - ;; - 'gdp') - weston_ini_file=gdp-weston.ini - ;; - *) - unnaceptable "GENIVI_WESTON_CONFIG" - ;; - esac - weston_ini_file="$weston_ini_folder/$weston_ini_file" - if [ ! -f "$weston_ini_file" ]; then - echo ERROR: Failed to locate weston config file: $weston_ini_file - exit 1 - fi -} - -check_weston_backend (){ - # If nothing defined, use drm-backend.so - if [ "x$GENIVI_WESTON_BACKEND" == "x" ]; then - echo GENIVI_WESTON_BACLEND not set, defaulting to drm-backend.so - GENIVI_WESTON_BACKEND=drm-backend.so - fi - - backends_folder="$ROOT/usr/lib/weston" - backend_file="$backends_folder/$GENIVI_WESTON_BACKEND" - # Check that the backend exists - echo Checking for "$backend_file" ... - if [ ! -f "$backend_file" ]; then - echo "File $backend_file doesn't exist" - GENIVI_WESTON_BACKEND="$GENIVI_WESTON_BACKEND-backend.so" - backend_file="$backends_folder/$GENIVI_WESTON_BACKEND" - echo Checking for "$backend_file" ... - if [ ! -f "$backend_file" ]; then - echo "File $backend_file doesn't exist" - echo ERROR: Failed to find Weston backend in the system - exit 1 - fi - fi - echo Backend $backend_file found -} - -########################################################################## -# Check variables -########################################################################## - -check_bool GENIVI_WESTON_AUTOSTART -check_weston_config -check_weston_backend - -###################################### -# Create and enable weston.service # -###################################### - -cat > "$ROOT/usr/lib/systemd/system/weston.service" <&2 -} - -warn(){ - echo "$@" >&2 -} - -extract_rootfs(){ - tar -C "$1" -xf @@ROOTFS_TAR_PATH@@ . -} - -make_disk_image(){ - truncate --size "$1" "$2" -} - -format_disk(){ - local disk="$1" - mkfs.ext4 -F -L rootfs "$disk" -} - -install_fs_config(){ - local mountpoint="$1" - local rootdisk="${2-/dev/vda}" - cat >>"$mountpoint/etc/fstab" <&2 - exit 1 -} - -warn(){ - echo "$@" >&2 -} - -info(){ - echo "$@" >&2 -} - -shellescape(){ - echo "'$(echo "$1" | sed -e "s/'/'\\''/g")'" -} - -sedescape(){ - # Escape the passed in string so it can be safely interpolated into - # a sed expression as a literal value. - echo "$1" | sed -e 's/[\/&]/\\&/g' -} - -ROOTDIR="$1" -OUTPUT_TAR="$2" -td="$(mktemp -d)" -IMAGE_SUBDIR="${IMAGE_SUBDIR-image_files}" -SCRIPT_SUBDIR="${SCRIPT_SUBDIR-tools}" -ROOTFS_TAR="${ROOTFS_TAR-rootfs.tar}" - -# Generate shell snippets that will expand to paths to various resources -# needed by the scripts. -# They expand to a single shell word, so constructs like the following work -# SCRIPT_DIR=@@SCRIPT_DIR@@ -# dd if="$SCRIPT_DIR/mbr" of="$disk" count=1 -# tar -C "$mountpoint" -xf @@ROOTFS_TAR_PATH@@ . -find_script_dir='"$(readlink -f "$(dirname "$0")")"' -image_dir="$find_script_dir/../$(shellescape "$IMAGE_SUBDIR")" -rootfs_tar_path="$image_dir/$(shellescape "$ROOTFS_TAR")" - -install_script(){ - local source_file="$1" - local output_dir="$2" - local target_file="$output_dir/$SCRIPT_SUBDIR/$(basename "$source_file" .in)" - sed -e "s/@@SCRIPT_DIR@@/$(sedescape "$find_script_dir")/g" \ - -e "s/@@IMAGE_DIR@@/$(sedescape "$image_dir")/g" \ - -e "s/@@ROOTFS_TAR_PATH@@/$(sedescape "$rootfs_tar_path")/g" \ - "$source_file" \ - | install -D -m 755 /proc/self/fd/0 "$target_file" -} - -install_scripts(){ - local output_dir="$1" - ( - IFS="${INCLUDE_SCRIPTS_SEPARATOR-:}" - for script in $INCLUDE_SCRIPTS; do - local script_path="$(pwd)/$script" - if [ ! -e "$script_path" ]; then - warn Script "$script" not found, ignoring - continue - fi - install_script "$script" "$output_dir" - done - ) -} - -install_bootloader_blobs(){ - local output_dir="$1" - local image_dir="$output_dir/$IMAGE_SUBDIR" - ( - IFS="${BOOTLOADER_BLOBS_SEPARATOR-:}" - for blob in $BOOTLOADER_BLOBS; do - local blob_path="$ROOTDIR/$blob" - if [ ! -e "$blob_path" ]; then - warn Bootloader blob "$blob" not found, ignoring - continue - fi - install -D -m644 "$blob_path" "$image_dir/$(basename "$blob_path")" - done - ) -} - -# Determine a basename for our directory as the same as our tarball with -# extensions removed. This is needed, since tarball packages usually -# have a base directory of its contents, rather then extracting into the -# current directory. -output_dir="$(basename "$OUTPUT_TAR")" -for ext in .xz .bz2 .gzip .gz .tgz .tar; do - output_dir="${output_dir%$ext}" -done - -info Installing scripts -install_scripts "$td/$output_dir" - -info Installing bootloader blobs -install_bootloader_blobs "$td/$output_dir" - -info Writing rootfs tar to "$IMAGE_SUBDIR/$ROOTFS_TAR" -tar -C "$ROOTDIR" -c . \ -| sh -c "${ROOTFS_COMPRESS-cat}" >"$td/$output_dir/$IMAGE_SUBDIR/$ROOTFS_TAR" - -info Writing image package tar to "$OUTPUT_TAR" -tar -C "$td" -c "$output_dir" | sh -c "${OUTPUT_COMPRESS-cat}" >"$OUTPUT_TAR" diff --git a/extensions/initramfs.write b/extensions/initramfs.write deleted file mode 100755 index 1059defa..00000000 --- a/extensions/initramfs.write +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -# Copyright (C) 2014-2015 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, see . -# -# =*= License: GPL-2 =*= - -set -e - -ROOTDIR="$1" -INITRAMFS_PATH="$2" - -(cd "$ROOTDIR" && - find . -print0 | - cpio -0 -H newc -o) | - gzip -c | install -D -m644 /dev/stdin "$INITRAMFS_PATH" diff --git a/extensions/initramfs.write.help b/extensions/initramfs.write.help deleted file mode 100644 index 54d3ae8c..00000000 --- a/extensions/initramfs.write.help +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Create an initramfs for a system by taking an existing system and - converting it to the appropriate format. - - The system must have a `/init` executable as the userland entry-point. - This can have a different path, if `rdinit=$path` is added to - the kernel command line. This can be added to the `rawdisk`, - `virtualbox-ssh` and `kvm` write extensions with the `KERNEL_CMDLINE` - option. - - It is possible to use a ramfs as the final rootfs without a `/init` - executable, by setting `root=/dev/mem`, or `rdinit=/sbin/init`, - but this is beyond the scope for the `initramfs.write` extension. - - The intended use of initramfs.write is to be part of a nested - deployment, so the parent system has an initramfs stored as - `/boot/initramfs.gz`. See the following example: - - name: initramfs-test - kind: cluster - systems: - - morph: minimal-system-x86_64-generic - deploy: - system: - type: rawdisk - location: initramfs-system-x86_64.img - DISK_SIZE: 1G - HOSTNAME: initramfs-system - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: initramfs-x86_64 - deploy: - initramfs: - type: initramfs - location: boot/initramfs.gz - - Parameters: - - * location: the path where the initramfs will be installed (e.g. - `boot/initramfs.gz`) in the above example diff --git a/extensions/install-essential-files.configure b/extensions/install-essential-files.configure deleted file mode 100755 index 8314b56d..00000000 --- a/extensions/install-essential-files.configure +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env python2 -# Copyright (C) 2015 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, see . - - -''' A Morph configuration extension for adding essential files to a system - -It will read the manifest files located in essential-files/manifest, -then use the contens of those files to determine which files -to install into the target system. - -''' - -import os -import subprocess -import sys - -target_root = sys.argv[1] - -# Clear all INSTALL_FILES environment variable options, -# so we don't end up installing INSTALL_FILES_foo multiple times. -for var in list(os.environ): - if var.startswith("INSTALL_FILES"): - del os.environ[var] - -# Force installation of the essential-files manifest -os.environ["INSTALL_FILES"] = "install-files/essential-files/manifest" -command = "extensions/install-files.configure" -subprocess.check_call([command, target_root]) diff --git a/extensions/install-essential-files.configure.help b/extensions/install-essential-files.configure.help deleted file mode 100644 index 9148aeff..00000000 --- a/extensions/install-essential-files.configure.help +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (C) 2015 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, see . - -help: | - This installs files from the essential-files/ folder in your - definitions.git repo, according to essential-files/manifest. - - It wraps the install-files.configure extension. Take a look to that - extension help to know more about the format of the manifest file. diff --git a/extensions/install-files.configure b/extensions/install-files.configure deleted file mode 100755 index 54481b97..00000000 --- a/extensions/install-files.configure +++ /dev/null @@ -1,138 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013-2015 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, see . - - -''' A Morph configuration extension for adding arbitrary files to a system - -It will read the manifest files specified in environment variables starting -INSTALL_FILES, then use the contens of those files to determine which files -to install into the target system. - -''' - -import errno -import os -import re -import sys -import shlex -import shutil -import stat - -try: - import jinja2 - jinja_available = True -except ImportError: - jinja_available = False - -import writeexts - -class InstallFilesConfigureExtension(writeexts.Extension): - - def process_args(self, args): - if not any(var.startswith('INSTALL_FILES') for var in os.environ): - return - target_root = args[0] - for manifest_var in sorted((var for var in os.environ - if var.startswith('INSTALL_FILES'))): - manifests = shlex.split(os.environ[manifest_var]) - for manifest in manifests: - self.install_manifest(manifest, target_root) - - def install_manifest(self, manifest, target_root): - manifest_dir = os.path.dirname(manifest) - with open(manifest) as f: - entries = f.readlines() - for entry in entries: - self.install_entry(entry, manifest_dir, target_root) - - def force_symlink(self, source, link_name): - try: - os.symlink(source, link_name) - except OSError as e: - if e.errno == errno.EEXIST: - os.remove(link_name) - os.symlink(source, link_name) - - def install_entry(self, entry, manifest_root, target_root): - m = re.match('(template )?(overwrite )?' - '([0-7]+) ([0-9]+) ([0-9]+) (\S+)', entry) - - if m: - template = m.group(1) - overwrite = m.group(2) - mode = int(m.group(3), 8) # mode is octal - uid = int(m.group(4)) - gid = int(m.group(5)) - path = m.group(6) - else: - raise writeexts.ExtensionError( - 'Invalid manifest entry, ' - 'format: [template] [overwrite] ' - ' ') - - dest_path = os.path.join(target_root, './' + path) - if stat.S_ISDIR(mode): - if os.path.exists(dest_path) and not overwrite: - dest_stat = os.stat(dest_path) - if (mode != dest_stat.st_mode - or uid != dest_stat.st_uid - or gid != dest_stat.st_gid): - raise writeexts.ExtensionError( - '"%s" exists and is not identical to directory ' - '"%s"' % (dest_path, entry)) - else: - os.mkdir(dest_path, mode) - os.chown(dest_path, uid, gid) - os.chmod(dest_path, mode) - - elif stat.S_ISLNK(mode): - if os.path.lexists(dest_path) and not overwrite: - raise writeexts.ExtensionError('Symlink already exists at %s' - % dest_path) - else: - linkdest = os.readlink(os.path.join(manifest_root, - './' + path)) - self.force_symlink(linkdest, dest_path) - os.lchown(dest_path, uid, gid) - - elif stat.S_ISREG(mode): - if os.path.lexists(dest_path) and not overwrite: - raise writeexts.ExtensionError('File already exists at %s' - % dest_path) - else: - if template: - if not jinja_available: - raise writeexts.ExtensionError( - "Failed to install template file `%s': " - 'install-files templates require jinja2' - % path) - - loader = jinja2.FileSystemLoader(manifest_root) - env = jinja2.Environment(loader=loader, - keep_trailing_newline=True) - - env.get_template(path).stream(os.environ).dump(dest_path) - else: - shutil.copyfile(os.path.join(manifest_root, './' + path), - dest_path) - - os.chown(dest_path, uid, gid) - os.chmod(dest_path, mode) - - else: - raise writeexts.ExtensionError('Mode given in "%s" is not a file,' - ' symlink or directory' % entry) - -InstallFilesConfigureExtension().run() diff --git a/extensions/install-files.configure.help b/extensions/install-files.configure.help deleted file mode 100644 index 191e1378..00000000 --- a/extensions/install-files.configure.help +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - Install a set of files onto a system - - To use this extension you create a directory of files you want to install - onto the target system. - - In this example we want to copy some ssh keys onto a system - - % mkdir sshkeyfiles - % mkdir -p sshkeyfiles/root/.ssh - % cp id_rsa sshkeyfiles/root/.ssh - % cp id_rsa.pub sshkeyfiles/root/.ssh - - Now we need to create a manifest file to set the file modes - and persmissions. The manifest file should be created inside the - directory that contains the files we're trying to install. - - cat << EOF > sshkeyfiles/manifest - 0040755 0 0 /root/.ssh - 0100600 0 0 /root/.ssh/id_rsa - 0100644 0 0 /root/.ssh/id_rsa.pub - EOF - - Then we add the path to our manifest to our cluster morph, - this path should be relative to the system definitions repository. - - INSTALL_FILES: sshkeysfiles/manifest - - All variables starting INSTALL_FILES are considered, and are processed in - alphabetical order, so if INSTALL_FILES, INSTALL_FILES_distbuild and - INSTALL_FILES_openstack are given, manifests in INSTALL_FILES are processed - before those in INSTALL_FILES_distbuild, followed by INSTALL_FILES_openstack. - - Multiple manifest files may be given in the same INSTALL_FILES variable, - by providing a whitespace separated list. - - Shell word splitting is supported, so if a manifest's path has spaces in, - the path may be shell escaped. - - - More generally entries in the manifest are formatted as: - [overwrite] - - NOTE: Directories on the target must be created if they do not exist. - - The extension supports files, symlinks and directories. - - For example, - - 0100644 0 0 /etc/issue - - creates a regular file at /etc/issue with 644 permissions, - uid 0 and gid 0, if the file doesn't already exist. - - overwrite 0100644 0 0 /etc/issue - - creates a regular file at /etc/issue with 644 permissions, - uid 0 and gid 0, if the file already exists it is overwritten. - - 0100755 0 0 /usr/bin/foo - - creates an executable file at /usr/bin/foo - - 0040755 0 0 /etc/foodir - - creates a directory with 755 permissions - - 0120000 0 0 /usr/bin/bar - - creates a symlink at /usr/bin/bar - - NOTE: You will still need to make a symlink in the manifest directory. diff --git a/extensions/installer.configure b/extensions/installer.configure deleted file mode 100755 index 995038ac..00000000 --- a/extensions/installer.configure +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/python2 -# -# 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 configure an installer -# system. It will create the configuration needed in the installer system -# to perform an installation. It uses the following variables from the -# environment: -# -# * INSTALLER_TARGET_STORAGE_DEVICE -# * INSTALLER_ROOTFS_TO_INSTALL -# * INSTALLER_POST_INSTALL_COMMAND (optional, defaults to `reboot -f`) - -import os -import sys -import yaml - -install_config_file = os.path.join(sys.argv[1], 'etc', 'install.conf') - -try: - installer_configuration = { - 'INSTALLER_TARGET_STORAGE_DEVICE': os.environ['INSTALLER_TARGET_STORAGE_DEVICE'], - 'INSTALLER_ROOTFS_TO_INSTALL': os.environ['INSTALLER_ROOTFS_TO_INSTALL'], - } -except KeyError as e: - print "Not configuring as an installer system" - sys.exit(0) - -postinstkey = 'INSTALLER_POST_INSTALL_COMMAND' -installer_configuration[postinstkey] = os.environ.get(postinstkey, 'reboot -f') - -with open(install_config_file, 'w') as f: - f.write( yaml.dump(installer_configuration, default_flow_style=False) ) - -print "Configuration of the installer system in %s" % install_config_file diff --git a/extensions/jffs2.write b/extensions/jffs2.write deleted file mode 100644 index 8ff918df..00000000 --- a/extensions/jffs2.write +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/python2 -#-*- coding: utf-8 -*- -# Copyright © 2015 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, see . - - -'''A Morph deployment write extension for creating images with jffs2 - as the root filesystem.''' - - -import os -import subprocess - -import writeexts - - -class Jffs2WriteExtension(writeexts.WriteExtension): - - '''See jffs2.write.help for documentation.''' - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError('Wrong number of command line args') - - temp_root, location = args - - try: - self.create_jffs2_system(temp_root, location) - self.status(msg='Disk image has been created at %(location)s', - location=location) - except Exception: - self.status(msg='Failure to deploy system to %(location)s', - location=location) - raise - - def create_jffs2_system(self, temp_root, location): - erase_block = self.get_erase_block_size() - subprocess.check_call( - ['mkfs.jffs2', '--pad', '--no-cleanmarkers', - '--eraseblock='+erase_block, '-d', temp_root, '-o', location]) - - def get_erase_block_size(self): - erase_block = os.environ.get('ERASE_BLOCK', '') - - if erase_block == '': - raise writeexts.ExtensionError('ERASE_BLOCK was not given') - - if not erase_block.isdigit(): - raise writeexts.ExtensionError('ERASE_BLOCK must be a whole number') - - return erase_block - -Jffs2WriteExtension().run() diff --git a/extensions/jffs2.write.help b/extensions/jffs2.write.help deleted file mode 100644 index 059a354b..00000000 --- a/extensions/jffs2.write.help +++ /dev/null @@ -1,28 +0,0 @@ -#-*- coding: utf-8 -*- -# Copyright © 2015 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, see . - -help: | - - Creates a system produced by Morph build with a jffs2 filesystem and then - writes to an image. To use this extension, the host system must have access - to mkfs.jffs2 which is provided in the mtd-utilities.morph stratum. - - Parameters: - - * location: the pathname of the disk image to be created/upgraded, or the - path to the physical device. - - * ERASE_BLOCK: the erase block size of the target system, which can be - found in '/sys/class/mtd/mtdx/erasesize' diff --git a/extensions/kvm.check b/extensions/kvm.check deleted file mode 100755 index 9ed439dc..00000000 --- a/extensions/kvm.check +++ /dev/null @@ -1,171 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'kvm' write extension''' - -import os -import re -import urlparse - -import writeexts - - -class KvmPlusSshCheckExtension(writeexts.WriteExtension): - - location_pattern = '^/(?P[^/]+)(?P/.+)$' - - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - self.require_btrfs_in_deployment_host_kernel() - - upgrade = self.get_environment_boolean('UPGRADE') - if upgrade: - raise writeexts.ExtensionError( - 'Use the `ssh-rsync` write extension to deploy upgrades to an ' - 'existing remote system.') - - location = args[0] - ssh_host, vm_name, vm_path = self.check_and_parse_location(location) - - self.check_ssh_connectivity(ssh_host) - self.check_can_create_file_at_given_path(ssh_host, vm_path) - self.check_no_existing_libvirt_vm(ssh_host, vm_name) - self.check_extra_disks_exist(ssh_host, self.parse_attach_disks()) - self.check_virtual_networks_are_started(ssh_host) - self.check_host_has_virtinstall(ssh_host) - - def check_and_parse_location(self, location): - '''Check and parse the location argument to get relevant data.''' - - x = urlparse.urlparse(location) - - if x.scheme != 'kvm+ssh': - raise writeexts.ExtensionError( - 'URL schema must be kvm+ssh in %s' % location) - - m = re.match(self.location_pattern, x.path) - if not m: - raise writeexts.ExtensionError( - 'Cannot parse location %s' % location) - - return x.netloc, m.group('guest'), m.group('path') - - def check_no_existing_libvirt_vm(self, ssh_host, vm_name): - try: - writeexts.ssh_runcmd(ssh_host, - ['virsh', '--connect', 'qemu:///system', 'domstate', vm_name]) - except writeexts.ExtensionError as e: - pass - else: - raise writeexts.ExtensionError( - 'Host %s already has a VM named %s. You can use the ssh-rsync ' - 'write extension to deploy upgrades to existing machines.' % - (ssh_host, vm_name)) - - def check_can_create_file_at_given_path(self, ssh_host, vm_path): - - def check_can_write_to_given_path(): - try: - writeexts.ssh_runcmd(ssh_host, ['touch', vm_path]) - except writeexts.ExtensionError as e: - raise writeexts.ExtensionError( - "Can't write to location %s on %s" % (vm_path, ssh_host)) - else: - writeexts.ssh_runcmd(ssh_host, ['rm', vm_path]) - - try: - writeexts.ssh_runcmd(ssh_host, ['test', '-e', vm_path]) - except writeexts.ExtensionError as e: - # vm_path doesn't already exist, so let's test we can write - check_can_write_to_given_path() - else: - raise writeexts.ExtensionError('%s already exists on %s' - % (vm_path, ssh_host)) - - def check_extra_disks_exist(self, ssh_host, filename_list): - for filename in filename_list: - try: - writeexts.ssh_runcmd(ssh_host, ['ls', filename]) - except writeexts.ExtensionError as e: - raise writeexts.ExtensionError( - 'Did not find file %s on host %s' % (filename, ssh_host)) - - def check_virtual_networks_are_started(self, ssh_host): - - def check_virtual_network_is_started(network_name): - cmd = ['virsh', '-c', 'qemu:///system', 'net-info', network_name] - net_info = writeexts.ssh_runcmd(ssh_host, cmd).split('\n') - - def pretty_concat(lines): - return '\n'.join(['\t%s' % line for line in lines]) - - for line in net_info: - m = re.match('^Active:\W*(\w+)\W*', line) - if m: - break - else: - raise writeexts.ExtensionError( - "Got unexpected output parsing output of `%s':\n%s" - % (' '.join(cmd), pretty_concat(net_info))) - - network_active = m.group(1) == 'yes' - - if not network_active: - raise writeexts.ExtensionError("Network '%s' is not started" - % network_name) - - def name(nic_entry): - if ',' in nic_entry: - # network=NETWORK_NAME,mac=12:34,model=e1000... - return nic_entry[:nic_entry.find(',')].lstrip('network=') - else: - return nic_entry.lstrip('network=') # NETWORK_NAME - - if 'NIC_CONFIG' in os.environ: - nics = os.environ['NIC_CONFIG'].split() - - for n in nics: - if not (n.startswith('network=') - or n.startswith('bridge=') - or n == 'user'): - raise writeexts.ExtensionError( - "malformed NIC_CONFIG: %s\n" - " (expected 'bridge=BRIDGE' 'network=NAME'" - " or 'user')" % n) - - # --network bridge= is used to specify a bridge - # --network user is used to specify a form of NAT - # (see the virt-install(1) man page) - networks = [name(n) for n in nics if not n.startswith('bridge=') - and not n.startswith('user')] - else: - networks = ['default'] - - for network in networks: - check_virtual_network_is_started(network) - - def check_host_has_virtinstall(self, ssh_host): - try: - writeexts.ssh_runcmd(ssh_host, ['which', 'virt-install']) - except writeexts.ExtensionError: - raise writeexts.ExtensionError( - 'virt-install does not seem to be installed on host %s' - % ssh_host) - - -KvmPlusSshCheckExtension().run() diff --git a/extensions/kvm.write b/extensions/kvm.write deleted file mode 100755 index d29f52e2..00000000 --- a/extensions/kvm.write +++ /dev/null @@ -1,126 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2012-2015 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, see . - - -'''A Morph deployment write extension for deploying to KVM+libvirt. - -See file kvm.write.help for documentation - -''' - - -import os -import re -import subprocess -import sys -import tempfile -import urlparse - -import writeexts - - -class KvmPlusSshWriteExtension(writeexts.WriteExtension): - - location_pattern = '^/(?P[^/]+)(?P/.+)$' - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - ssh_host, vm_name, vm_path = self.parse_location(location) - autostart = self.get_environment_boolean('AUTOSTART') - - fd, raw_disk = tempfile.mkstemp() - os.close(fd) - self.create_local_system(temp_root, raw_disk) - - try: - self.transfer(raw_disk, ssh_host, vm_path) - self.create_libvirt_guest(ssh_host, vm_name, vm_path, autostart) - except BaseException: - sys.stderr.write('Error deploying to libvirt') - os.remove(raw_disk) - writeexts.ssh_runcmd(ssh_host, ['rm', '-f', vm_path]) - raise - else: - os.remove(raw_disk) - - self.status( - msg='Virtual machine %(vm_name)s has been created', - vm_name=vm_name) - - def parse_location(self, location): - '''Parse the location argument to get relevant data.''' - - x = urlparse.urlparse(location) - m = re.match('^/(?P[^/]+)(?P/.+)$', x.path) - return x.netloc, m.group('guest'), m.group('path') - - def transfer(self, raw_disk, ssh_host, vm_path): - '''Transfer raw disk image to libvirt host.''' - - self.status(msg='Transferring disk image') - - xfer_hole_path = writeexts.get_data_path('xfer-hole') - recv_hole = writeexts.get_data('recv-hole') - - ssh_remote_cmd = [ - 'sh', '-c', recv_hole, 'dummy-argv0', 'file', vm_path - ] - - xfer_hole_proc = subprocess.Popen( - ['python', xfer_hole_path, raw_disk], - stdout=subprocess.PIPE) - recv_hole_proc = subprocess.Popen( - ['ssh', ssh_host] + map(writeexts.shell_quote, ssh_remote_cmd), - stdin=xfer_hole_proc.stdout) - xfer_hole_proc.stdout.close() - recv_hole_proc.communicate() - - def create_libvirt_guest(self, ssh_host, vm_name, vm_path, autostart): - '''Create the libvirt virtual machine.''' - - self.status(msg='Creating libvirt/kvm virtual machine') - - attach_disks = self.parse_attach_disks() - attach_opts = [] - for disk in attach_disks: - attach_opts.extend(['--disk', 'path=%s' % disk]) - - if 'NIC_CONFIG' in os.environ: - nics = os.environ['NIC_CONFIG'].split() - for nic in nics: - attach_opts.extend(['--network', nic]) - - ram_mebibytes = str(self.get_ram_size() / (1024**2)) - - vcpu_count = str(self.get_vcpu_count()) - - cmdline = ['virt-install', '--connect', 'qemu:///system', - '--import', '--name', vm_name, '--vnc', - '--ram', ram_mebibytes, '--vcpus', vcpu_count, - '--disk', 'path=%s,bus=ide' % vm_path] + attach_opts - if not autostart: - cmdline += ['--noreboot'] - writeexts.ssh_runcmd(ssh_host, cmdline) - - if autostart: - writeexts.ssh_runcmd(ssh_host, - ['virsh', '--connect', 'qemu:///system', - 'autostart', vm_name]) - -KvmPlusSshWriteExtension().run() diff --git a/extensions/kvm.write.help b/extensions/kvm.write.help deleted file mode 100644 index 812a5309..00000000 --- a/extensions/kvm.write.help +++ /dev/null @@ -1,90 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Deploy a Baserock system as a *new* KVM/LibVirt virtual machine. - - Use the `ssh-rsync` write extension to deploy upgrades to an *existing* VM - - Parameters: - - * location: a custom URL scheme of the form `kvm+ssh://HOST/GUEST/PATH`, - where: - * HOST is the name of the host on which KVM/LibVirt is running - * GUEST is the name of the guest VM on that host - * PATH is the path to the disk image that should be created, - on that host. For example, - `kvm+ssh://alice@192.168.122.1/testsys/home/alice/testys.img` where - * `alice@192.168.122.1` is the target host as given to ssh, - **from within the development host** (which may be - different from the target host's normal address); - * `testsys` is the name of the new guest VM'; - * `/home/alice/testys.img` is the pathname of the disk image files - on the target host. - - * HOSTNAME=name: the hostname of the **guest** VM within the network into - which it is being deployed - - * DISK_SIZE=X: the size of the VM's primary virtual hard disk. `X` should - use a suffix of `K`, `M`, or `G` (in upper or lower case) to indicate - kilo-, mega-, or gigabytes. For example, `DISK_SIZE=100G` would create a - 100 gigabyte disk image. **This parameter is mandatory**. - - * RAM_SIZE=X: The amount of RAM that the virtual machine should allocate - for itself from the host. `X` is interpreted in the same was as for - DISK_SIZE`, and defaults to `1G` - - * VCPUS=n: the number of virtual CPUs for the VM. Allowed values 1-32. Do - not use more CPU cores than you have available physically (real cores, no - hyperthreads) - - * INITRAMFS_PATH=path: the location of an initramfs for the bootloader to - tell Linux to use, rather than booting the rootfs directly. - - * AUTOSTART=` - boolean. If it is set, the VM will be started when - it has been deployed. - - * DTB_PATH=path: **(MANDATORY)** for systems that require a device tree - binary - Give the full path (without a leading /) to the location of the - DTB in the built system image . The deployment will fail if `path` does - not exist. - - * BOOTLOADER_INSTALL=value: the bootloader to be installed - **(MANDATORY)** for non-x86 systems - - allowed values = - - 'extlinux' (default) - the extlinux bootloader will - be installed - - 'none' - no bootloader will be installed by `morph deploy`. A - bootloader must be installed manually. This value must be used when - deploying non-x86 systems such as ARM. - - * BOOTLOADER_CONFIG_FORMAT=value: the bootloader format to be used. - If not specified for x86-32 and x86-64 systems, 'extlinux' will be used - - allowed values = - - 'extlinux' - - * KERNEL_ARGS=args: optional additional kernel command-line parameters to - be appended to the default set. The default set is: - - 'rw init=/sbin/init rootfstype=btrfs \ - rootflags=subvol=systems/default/run \ - root=[name or UUID of root filesystem]' - - (See https://www.kernel.org/doc/Documentation/kernel-parameters.txt) - - (See `morph help deploy` for details of how to pass parameters to write - extensions) diff --git a/extensions/mason.configure b/extensions/mason.configure deleted file mode 100644 index 40fdfe46..00000000 --- a/extensions/mason.configure +++ /dev/null @@ -1,153 +0,0 @@ -#!/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 fully configure -# a Mason instance at deployment time. It uses the following variables -# from the environment: -# -# * ARTIFACT_CACHE_SERVER -# * MASON_CLUSTER_MORPHOLOGY -# * MASON_DEFINITIONS_REF -# * MASON_DISTBUILD_ARCH -# * MASON_TEST_HOST -# * OPENSTACK_NETWORK_ID -# * TEST_INFRASTRUCTURE_TYPE -# * TROVE_HOST -# * TROVE_ID -# * CONTROLLERHOST - -set -e - -########################################################################## -# Copy Mason files into root filesystem -########################################################################## - -ROOT="$1" - -mkdir -p "$ROOT"/usr/lib/mason -cp extensions/mason/mason.sh "$ROOT"/usr/lib/mason/mason.sh -cp extensions/mason/mason-report.sh "$ROOT"/usr/lib/mason/mason-report.sh -cp extensions/mason/os-init-script "$ROOT"/usr/lib/mason/os-init-script - -cp extensions/mason/mason.timer "$ROOT"/etc/systemd/system/mason.timer - -cp extensions/mason/mason.service "$ROOT"/etc/systemd/system/mason.service - -########################################################################## -# Set up httpd web server -########################################################################## - -cp extensions/mason/httpd.service "$ROOT"/etc/systemd/system/httpd.service - -mkdir -p "$ROOT"/srv/mason - -cat >>"$ROOT"/etc/httpd.conf <"$MASON_DATA/mason.conf" -import os, sys, yaml - -mason_configuration={ - 'ARTIFACT_CACHE_SERVER': os.environ['ARTIFACT_CACHE_SERVER'], - 'MASON_CLUSTER_MORPHOLOGY': os.environ['MASON_CLUSTER_MORPHOLOGY'], - 'MASON_DEFINITIONS_REF': os.environ['MASON_DEFINITIONS_REF'], - 'MASON_DISTBUILD_ARCH': os.environ['MASON_DISTBUILD_ARCH'], - 'MASON_TEST_HOST': os.environ['MASON_TEST_HOST'], - 'OPENSTACK_NETWORK_ID': os.environ['OPENSTACK_NETWORK_ID'], - 'TEST_INFRASTRUCTURE_TYPE': os.environ['TEST_INFRASTRUCTURE_TYPE'], - 'TROVE_ID': os.environ['TROVE_ID'], - 'TROVE_HOST': os.environ['TROVE_HOST'], - 'CONTROLLERHOST': os.environ['CONTROLLERHOST'], -} - -yaml.dump(mason_configuration, sys.stdout, default_flow_style=False) -EOF - -if [ "$TEST_INFRASTRUCTURE_TYPE" = "openstack" ]; then - python <<'EOF' >>"$MASON_DATA/mason.conf" -import os, sys, yaml - -openstack_credentials={ - 'OS_USERNAME': os.environ['OPENSTACK_USER'], - 'OS_TENANT_NAME': os.environ['OPENSTACK_TENANT'], - 'OS_TENANT_ID': os.environ['OPENSTACK_TENANT_ID'], - 'OS_AUTH_URL': os.environ['OPENSTACK_AUTH_URL'], - 'OS_PASSWORD': os.environ['OPENSTACK_PASSWORD'], -} - -yaml.dump(openstack_credentials, sys.stdout, default_flow_style=False) -EOF -fi - -########################################################################## -# Enable services -########################################################################## - -ln -s ../mason.timer "$ROOT"/etc/systemd/system/multi-user.target.wants/mason.timer -ln -s ../httpd.service "$ROOT"/etc/systemd/system/multi-user.target.wants/httpd.service diff --git a/extensions/mason/ansible/hosts b/extensions/mason/ansible/hosts deleted file mode 100644 index 5b97818d..00000000 --- a/extensions/mason/ansible/hosts +++ /dev/null @@ -1 +0,0 @@ -localhost ansible_connection=local diff --git a/extensions/mason/ansible/mason-setup.yml b/extensions/mason/ansible/mason-setup.yml deleted file mode 100644 index d1528dbb..00000000 --- a/extensions/mason/ansible/mason-setup.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/mason/mason.conf" - tasks: - - - - fail: msg='TROVE_ID is mandatory' - when: TROVE_ID is not defined - - - fail: msg='TROVE_HOST is mandatory' - when: TROVE_HOST is not defined - - - fail: msg='ARTIFACT_CACHE_SERVER is mandatory' - when: ARTIFACT_CACHE_SERVER is not defined - - - fail: msg='MASON_CLUSTER_MORPHOLOGY is mandatory' - when: MASON_CLUSTER_MORPHOLOGY is not defined - - - fail: msg='MASON_DEFINITIONS_REF is mandatory' - when: MASON_DEFINITIONS_REF is not defined - - - fail: msg='MASON_DISTBUILD_ARCH is mandatory' - when: MASON_DISTBUILD_ARCH is not defined - - - fail: msg='MASON_TEST_HOST is mandatory' - when: MASON_TEST_HOST is not defined - - - fail: msg='CONTROLLERHOST is mandatory' - when: CONTROLLERHOST is not defined - - - fail: msg='TEST_INFRASTRUCTURE_TYPE is mandatory' - when: TEST_INFRASTRUCTURE_TYPE is not defined - - - fail: msg='OPENSTACK_NETWORK_ID is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OPENSTACK_NETWORK_ID is not defined - - - fail: msg='OS_USERNAME is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OS_USERNAME is not defined - - - fail: msg='OS_PASSWORD is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OS_PASSWORD is not defined - - - fail: msg='OS_TENANT_ID is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OS_TENANT_ID is not defined - - - fail: msg='OS_TENANT_NAME is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OS_TENANT_NAME is not defined - - - fail: msg='OS_AUTH_URL is mandatory when TEST_INFRASTRUCTURE_TYPE=openstack' - when: TEST_INFRASTRUCTURE_TYPE == "openstack" and OS_AUTH_URL is not defined - - - name: Create the Mason configuration file - template: src=/usr/share/mason-setup/{{ item }} dest=/etc/{{ item }} - with_items: - - mason.conf - - - name: Create the OpenStack credentials file - template: src=/usr/share/mason-setup/{{ item }} dest=/etc/{{ item }} - with_items: - - os.conf - when: TEST_INFRASTRUCTURE_TYPE == "openstack" - - - name: Enable the mason service - service: name=mason.service enabled=yes - register: mason_service - - name: Restart the mason service - service: name=mason.service state=restarted - when: mason_service|changed - - - name: Enable the mason timer - service: name=mason.timer enabled=yes - register: mason_timer - - name: Restart the mason timer - service: name=mason.timer state=restarted - when: mason_timer|changed - - - name: Enable the httpd service - service: name=httpd.service enabled=yes - register: httpd_service - - name: Restart the httpd service - service: name=httpd state=restarted - when: httpd_service|changed diff --git a/extensions/mason/httpd.service b/extensions/mason/httpd.service deleted file mode 100644 index 7572b732..00000000 --- a/extensions/mason/httpd.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=HTTP server for Mason -After=network.target - -[Service] -User=root -ExecStart=/usr/sbin/httpd -f -p 80 -h /srv/mason - -[Install] -WantedBy=multi-user.target diff --git a/extensions/mason/mason-generator.sh b/extensions/mason/mason-generator.sh deleted file mode 100755 index 187db72c..00000000 --- a/extensions/mason/mason-generator.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/sh - -set -e - -if [ "$#" -lt 5 -o "$#" -gt 6 -o "$1" == "-h" -o "$1" == "--help" ]; then - cat < $REPORT_PATH <<'EOF' - - - - - - - -

Mason

-

Baserock: Continuous Delivery

-

Build log of changes to BRANCH from TROVE. Most recent first.

- - - - - - - - -
StartedRefDurationResult
- - - -EOF - - sed -i 's/BRANCH/'"$(sed_escape "$1")"'/' $REPORT_PATH - sed -i 's/TROVE/'"$(sed_escape "$2")"'/' $REPORT_PATH -} - -update_report() { - # Give function params sensible names - build_start_time="$1" - build_trove_host="$2" - build_ref="$3" - build_sha1="$4" - build_duration="$5" - build_result="$6" - report_path="$7" - build_log="$8" - - # Generate template if report file is not there - if [ ! -f $REPORT_PATH ]; then - create_report $build_ref $build_trove_host - fi - - # Build table row for insertion into report file - if [ "$build_result" = nonet ]; then - msg=''"${build_start_time}"'Failed to contact '"${build_trove_host}"''"${build_duration}s"''"${build_result}"'' - else - msg=''"${build_start_time}"''"${build_sha1}"''"${build_duration}s"''"${build_result}"'' - fi - - # Insert report line, newest at top - sed -i 's//\n'"$(sed_escape "$msg")"'/' $report_path -} - -update_report_time() { - # Give function params sensible names - build_start_time="$1" - - # If the report file exists, update the last-checked-for-updates time - if [ -f $REPORT_PATH ]; then - sed -i 's/....-..-.. ..:..:..<\/code>/'"$(sed_escape "$build_start_time")"'<\/code>/' $REPORT_PATH - fi -} - -START_TIME=`date +%Y-%m-%d\ %T` - -update_report_time "$START_TIME" -cp "$REPORT_PATH" "$SERVER_PATH/index.html" - -logfile="$(mktemp)" - -#Update current.log symlink to point to the current build log -ln -sf "$logfile" "$SERVER_PATH"/current.log - -#Copy current server report, to restore when result is "skip" -cp "$SERVER_REPORT_PATH" "$SERVER_REPORT_PATH".bak - -update_report "$START_TIME" \ - "$UPSTREAM_TROVE_ADDRESS" \ - "$DEFINITIONS_REF" \ - "" \ - " - " \ - "progress" \ - "$SERVER_REPORT_PATH" \ - "current.log" - - -/usr/lib/mason/mason.sh 2>&1 | tee "$logfile" -case "${PIPESTATUS[0]}" in -0) - RESULT=pass - ;; -33) - RESULT=skip - ;; -42) - RESULT=nonet - ;; -*) - RESULT=fail - ;; -esac - -# TODO: Update page with last executed time -if [ "$RESULT" = skip ]; then - # Restore copied server report, otherwise the 'progress' row will - # be still present with a broken link after we remove the $logfile - mv "$SERVER_REPORT_PATH".bak "$SERVER_REPORT_PATH" - - rm "$logfile" - exit 0 -fi - -DURATION=$(( $(date +%s) - $(date --date="$START_TIME" +%s) )) -SHA1="$(cd "/ws/mason-definitions-$DEFINITIONS_REF" && git rev-parse HEAD)" -BUILD_LOG="log/${SHA1}--${START_TIME}.log" - -update_report "$START_TIME" \ - "$UPSTREAM_TROVE_ADDRESS" \ - "$DEFINITIONS_REF" \ - "$SHA1" \ - "$DURATION" \ - "$RESULT" \ - "$REPORT_PATH" \ - "$BUILD_LOG" - - -# -# Copy report into server directory -# - -cp "$REPORT_PATH" "$SERVER_REPORT_PATH" -mkdir "$SERVER_PATH/log" -mv "$logfile" "$SERVER_PATH/$BUILD_LOG" - -# Cleanup - -mkdir -p /srv/distbuild/remove -find /srv/distbuild/ -not \( -name "remove" -o -name "trees.cache.pickle" \) -mindepth 1 -maxdepth 1 -exec mv '{}' /srv/distbuild/remove \; -find /srv/distbuild/remove -delete diff --git a/extensions/mason/mason-setup.service b/extensions/mason/mason-setup.service deleted file mode 100644 index 60403bde..00000000 --- a/extensions/mason/mason-setup.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Run mason-setup Ansible scripts -Requires=network.target -After=network.target -Requires=opensshd.service -After=opensshd.service - -# If there's a shared /var subvolume, it must be mounted before this -# unit runs. -Requires=local-fs.target -After=local-fs.target - -ConditionPathExists=/etc/mason/mason.conf - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -i /usr/lib/mason-setup/ansible/hosts /usr/lib/mason-setup/ansible/mason-setup.yml diff --git a/extensions/mason/mason.service b/extensions/mason/mason.service deleted file mode 100644 index d5c99498..00000000 --- a/extensions/mason/mason.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Mason: Continuous Delivery Service -After=mason-setup.service -ConditionPathIsDirectory=/srv/distbuild - -[Service] -User=root -ExecStart=/usr/lib/mason/mason-report.sh -WorkingDirectory=/srv/distbuild - -[Install] -WantedBy=multi-user.target diff --git a/extensions/mason/mason.sh b/extensions/mason/mason.sh deleted file mode 100755 index 8b2cea5f..00000000 --- a/extensions/mason/mason.sh +++ /dev/null @@ -1,90 +0,0 @@ -#!/bin/sh - -# Load OpenStack credentials -if [ -f "/etc/os.conf" ]; then - . /etc/os.conf -fi - -set -e -set -x - -# Load our deployment config -. /etc/mason.conf - -mkdir -p /ws - -definitions_repo=/ws/mason-definitions-"$DEFINITIONS_REF" -if [ ! -e "$definitions_repo" ]; then - git clone -b "$DEFINITIONS_REF" git://"$UPSTREAM_TROVE_ADDRESS"/baserock/baserock/definitions "$definitions_repo" - cd "$definitions_repo" - git config user.name "$TROVE_ID"-mason - git config user.email "$TROVE_ID"-mason@$(hostname) -else - cd "$definitions_repo" - SHA1_PREV="$(git rev-parse HEAD)" -fi - -if ! git remote update origin; then - echo ERROR: Unable to contact trove - exit 42 -fi -git clean -fxd -git reset --hard origin/"$DEFINITIONS_REF" - -SHA1="$(git rev-parse HEAD)" - -if [ -f "$HOME/success" ] && [ "$SHA1" = "$SHA1_PREV" ]; then - echo INFO: No changes to "$DEFINITIONS_REF", nothing to do - exit 33 -fi - -rm -f "$HOME/success" - -echo INFO: Mason building: $DEFINITIONS_REF at $SHA1 - -if ! "scripts/release-build" --no-default-configs \ - --trove-host "$UPSTREAM_TROVE_ADDRESS" \ - --artifact-cache-server "http://$ARTIFACT_CACHE_SERVER:8080/" \ - --controllers "$DISTBUILD_ARCH:$DISTBUILD_CONTROLLER_ADDRESS" \ - "$BUILD_CLUSTER_MORPHOLOGY"; then - echo ERROR: Failed to build release images - echo Build logs for chunks: - find build-* -type f -exec echo {} \; -exec cat {} \; - exit 1 -fi - -releases_made="$(cd release && ls | wc -l)" -if [ "$releases_made" = 0 ]; then - echo ERROR: No release images created - exit 1 -else - echo INFO: Created "$releases_made" release images -fi - -if [ "$TEST_INFRASTRUCTURE_TYPE" = "openstack" ]; then - "scripts/release-test-os" \ - --deployment-host "$DISTBUILD_ARCH":"$MASON_TEST_HOST" \ - --trove-host "$UPSTREAM_TROVE_ADDRESS" \ - --trove-id "$TROVE_ID" \ - --net-id "$OPENSTACK_NETWORK_ID" \ - "$BUILD_CLUSTER_MORPHOLOGY" -elif [ "$TEST_INFRASTRUCTURE_TYPE" = "kvmhost" ]; then - "scripts/release-test" \ - --deployment-host "$DISTBUILD_ARCH":"$MASON_TEST_HOST" \ - --trove-host "$UPSTREAM_TROVE_ADDRESS" \ - --trove-id "$TROVE_ID" \ - "$BUILD_CLUSTER_MORPHOLOGY" -fi - -"scripts/release-upload" --build-trove-host "$ARTIFACT_CACHE_SERVER" \ - --arch "$DISTBUILD_ARCH" \ - --log-level=debug --log="$HOME"/release-upload.log \ - --public-trove-host "$UPSTREAM_TROVE_ADDRESS" \ - --public-trove-username root \ - --public-trove-artifact-dir /home/cache/artifacts \ - --no-upload-release-artifacts \ - "$BUILD_CLUSTER_MORPHOLOGY" - -echo INFO: Artifact upload complete for $DEFINITIONS_REF at $SHA1 - -touch "$HOME/success" diff --git a/extensions/mason/mason.timer b/extensions/mason/mason.timer deleted file mode 100644 index 107dff97..00000000 --- a/extensions/mason/mason.timer +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Runs Mason continually with 1 min between calls - -[Timer] -#Time between Mason finishing and calling it again -OnUnitActiveSec=1min -Unit=mason.service - -[Install] -WantedBy=multi-user.target diff --git a/extensions/mason/os-init-script b/extensions/mason/os-init-script deleted file mode 100644 index 77afb926..00000000 --- a/extensions/mason/os-init-script +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# This allows the test runner to know that cloud-init has completed the -# disc resizing, and there is enough free space to continue. -touch /root/cloud-init-finished - diff --git a/extensions/mason/share/mason.conf b/extensions/mason/share/mason.conf deleted file mode 100644 index 1295ce84..00000000 --- a/extensions/mason/share/mason.conf +++ /dev/null @@ -1,14 +0,0 @@ -# This file is generarated by the mason-setup systemd unit. -# If you want to change the configuration, change the configuration -# in /etc/mason/mason.conf and restart the service. - -ARTIFACT_CACHE_SERVER={{ ARTIFACT_CACHE_SERVER|quote }} -UPSTREAM_TROVE_ADDRESS={{ TROVE_HOST|quote }} -DEFINITIONS_REF={{ MASON_DEFINITIONS_REF|quote }} -DISTBUILD_ARCH={{ MASON_DISTBUILD_ARCH|quote }} -DISTBUILD_CONTROLLER_ADDRESS={{ CONTROLLERHOST|quote }} -TROVE_ID={{ TROVE_ID|quote }} -BUILD_CLUSTER_MORPHOLOGY={{ MASON_CLUSTER_MORPHOLOGY|quote }} -MASON_TEST_HOST={{ MASON_TEST_HOST|quote }} -TEST_INFRASTRUCTURE_TYPE={{ TEST_INFRASTRUCTURE_TYPE|quote }} -{% if OPENSTACK_NETWORK_ID is defined %}OPENSTACK_NETWORK_ID={{ OPENSTACK_NETWORK_ID|quote }}{% endif %} diff --git a/extensions/mason/share/os.conf b/extensions/mason/share/os.conf deleted file mode 100644 index 21ef398c..00000000 --- a/extensions/mason/share/os.conf +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash - -# A version of this file with the relevant information included can be -# obtained by navigating to 'Access & Security' -> 'API Access' -> -# 'Download OpenStack RC file' in The Horizon web interface of your -# OpenStack. However, the file obtained from there sets OS_PASSWORD -# such that it will ask the user for a password, so you will need to -# change that for Mason to work automatically. -# -# With the addition of Keystone, to use an openstack cloud you should -# authenticate against keystone, which returns a **Token** and **Service -# Catalog**. The catalog contains the endpoint for all services the -# user/tenant has access to - including nova, glance, keystone, swift. -# -# *NOTE*: Using the 2.0 *auth api* does not mean that compute api is 2.0. We -# will use the 1.1 *compute api* -export OS_AUTH_URL={{ OS_AUTH_URL|quote }} - -# With the addition of Keystone we have standardized on the term **tenant** -# as the entity that owns the resources. -export OS_TENANT_ID={{ OS_TENANT_ID|quote }} -export OS_TENANT_NAME={{ OS_TENANT_NAME|quote }} - -# In addition to the owning entity (tenant), openstack stores the entity -# performing the action as the **user**. -export OS_USERNAME={{ OS_USERNAME|quote }} - -# With Keystone you pass the keystone password. -export OS_PASSWORD={{ OS_PASSWORD|quote }} - diff --git a/extensions/moonshot-kernel.configure b/extensions/moonshot-kernel.configure deleted file mode 100644 index 11d01751..00000000 --- a/extensions/moonshot-kernel.configure +++ /dev/null @@ -1,33 +0,0 @@ -#!/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/extensions/nfsboot-server.configure b/extensions/nfsboot-server.configure deleted file mode 100755 index 9fb48096..00000000 --- a/extensions/nfsboot-server.configure +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh -# -# Copyright (C) 2013-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 set up a server for -# booting over nfs and tftp. -set -e - -ROOT="$1" - -########################################################################## - -nfsboot_root=/srv/nfsboot -tftp_root="$nfsboot_root"/tftp -nfs_root="$nfsboot_root"/nfs -mkdir -p "$ROOT$tftp_root" "$ROOT$nfs_root" - -install -D /dev/stdin "$ROOT/usr/lib/systemd/system/nfsboot-tftp.service" <. - -'''Preparatory checks for Morph 'nfsboot' write extension''' - -import os - -import writeexts - - -class NFSBootCheckExtension(writeexts.WriteExtension): - - _nfsboot_root = '/srv/nfsboot' - - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - location = args[0] - - upgrade = self.get_environment_boolean('UPGRADE') - if upgrade: - raise writeexts.ExtensionError( - 'Upgrading is not currently supported for NFS deployments.') - - hostname = os.environ.get('HOSTNAME', None) - if hostname is None: - raise writeexts.ExtensionError('You must specify a HOSTNAME.') - if hostname == 'baserock': - raise writeexts.ExtensionError('It is forbidden to nfsboot a ' - 'system with hostname "%s"' - % hostname) - - self.test_good_server(location) - - version_label = os.getenv('VERSION_LABEL', 'factory') - versioned_root = os.path.join(self._nfsboot_root, hostname, 'systems', - version_label) - if self.version_exists(versioned_root, location): - raise writeexts.ExtensionError( - 'Root file system for host %s (version %s) already exists on ' - 'the NFS server %s. Deployment aborted.' % (hostname, - version_label, location)) - - def test_good_server(self, server): - self.check_ssh_connectivity(server) - - # Is an NFS server - try: - writeexts.ssh_runcmd( - 'root@%s' % server, ['test', '-e', '/etc/exports']) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s is not an nfs server' - % server) - try: - writeexts.ssh_runcmd( - 'root@%s' % server, ['systemctl', 'is-enabled', - 'nfs-server.service']) - - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s does not control its ' - 'nfs server by systemd' % server) - - # TFTP server exports /srv/nfsboot/tftp - tftp_root = os.path.join(self._nfsboot_root, 'tftp') - try: - writeexts.ssh_runcmd( - 'root@%s' % server, ['test' , '-d', tftp_root]) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('server %s does not export %s' % - (tftp_root, server)) - - def version_exists(self, versioned_root, location): - try: - writeexts.ssh_runcmd('root@%s' % location, - ['test', '-d', versioned_root]) - except writeexts.ExtensionError: - return False - - return True - - -NFSBootCheckExtension().run() diff --git a/extensions/nfsboot.configure b/extensions/nfsboot.configure deleted file mode 100755 index 6a68dc48..00000000 --- a/extensions/nfsboot.configure +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013-2015 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, see . - - -# Remove all networking interfaces. On nfsboot systems, eth0 is set up -# during kernel init, and the normal ifup@eth0.service systemd unit -# would break the NFS connection and cause the system to hang. - - -set -e -if [ "$NFSBOOT_CONFIGURE" ]; then - # Remove all networking interfaces but loopback - cat > "$1/etc/network/interfaces" <. - - -'''A Morph deployment write extension for deploying to an nfsboot server - -*** DO NOT USE *** -- This was written before 'proper' deployment mechanisms were in place -It is unlikely to work at all and will not work correctly - -Use the pxeboot write extension instead - -*** - - - -An nfsboot server is defined as a baserock system that has tftp and nfs -servers running, the tftp server is exporting the contents of -/srv/nfsboot/tftp/ and the user has sufficient permissions to create nfs roots -in /srv/nfsboot/nfs/ - -''' - - -import glob -import os -import subprocess - -import writeexts - - -class NFSBootWriteExtension(writeexts.WriteExtension): - - '''Create an NFS root and kernel on TFTP during Morph's deployment. - - The location command line argument is the hostname of the nfsboot server. - The user is expected to provide the location argument - using the following syntax: - - HOST - - where: - - * HOST is the host of the nfsboot server - - The extension will connect to root@HOST via ssh to copy the kernel and - rootfs, and configure the nfs server. - - It requires root because it uses systemd, and reads/writes to /etc. - - ''' - - _nfsboot_root = '/srv/nfsboot' - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - - version_label = os.getenv('VERSION_LABEL', 'factory') - hostname = os.environ['HOSTNAME'] - - versioned_root = os.path.join(self._nfsboot_root, hostname, 'systems', - version_label) - - self.copy_rootfs(temp_root, location, versioned_root, hostname) - self.copy_kernel(temp_root, location, versioned_root, version_label, - hostname) - self.configure_nfs(location, hostname) - - def create_local_state(self, location, hostname): - statedir = os.path.join(self._nfsboot_root, hostname, 'state') - subdirs = [os.path.join(statedir, 'home'), - os.path.join(statedir, 'opt'), - os.path.join(statedir, 'srv')] - writeexts.ssh_runcmd('root@%s' % location, - ['mkdir', '-p'] + subdirs) - - def copy_kernel(self, temp_root, location, versioned_root, version, - hostname): - bootdir = os.path.join(temp_root, 'boot') - image_names = ['vmlinuz', 'zImage', 'uImage'] - for name in image_names: - try_path = os.path.join(bootdir, name) - if os.path.exists(try_path): - kernel_src = try_path - break - else: - raise writeexts.ExtensionError( - 'Could not find a kernel in the system: none of ' - '%s found' % ', '.join(image_names)) - - kernel_dest = os.path.join(versioned_root, 'orig', 'kernel') - rsync_dest = 'root@%s:%s' % (location, kernel_dest) - self.status(msg='Copying kernel') - subprocess.check_call( - ['rsync', '-s', kernel_src, rsync_dest]) - - # Link the kernel to the right place - self.status(msg='Creating links to kernel in tftp directory') - tftp_dir = os.path.join(self._nfsboot_root , 'tftp') - versioned_kernel_name = "%s-%s" % (hostname, version) - kernel_name = hostname - try: - writeexts.ssh_runcmd('root@%s' % location, - ['ln', '-f', kernel_dest, - os.path.join(tftp_dir, versioned_kernel_name)]) - - writeexts.ssh_runcmd('root@%s' % location, - ['ln', '-sf', versioned_kernel_name, - os.path.join(tftp_dir, kernel_name)]) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('Could not create symlinks to the ' - 'kernel at %s in %s on %s' % - (kernel_dest, tftp_dir, location)) - - def copy_rootfs(self, temp_root, location, versioned_root, hostname): - rootfs_src = temp_root + '/' - orig_path = os.path.join(versioned_root, 'orig') - run_path = os.path.join(versioned_root, 'run') - - self.status(msg='Creating destination directories') - try: - writeexts.ssh_runcmd('root@%s' % location, - ['mkdir', '-p', orig_path, run_path]) - except writeexts.ExtensionError: - raise writexts.ExtensionError( - 'Could not create dirs %s and %s on %s' - % (orig_path, run_path, location)) - - self.status(msg='Creating \'orig\' rootfs') - subprocess.check_call( - ['rsync', '-asXSPH', '--delete', rootfs_src, - 'root@%s:%s' % (location, orig_path)]) - - self.status(msg='Creating \'run\' rootfs') - try: - writeexts.ssh_runcmd('root@%s' % location, - ['rm', '-rf', run_path]) - writeexts.ssh_runcmd('root@%s' % location, - ['cp', '-al', orig_path, run_path]) - writeexts.ssh_runcmd('root@%s' % location, - ['rm', '-rf', - os.path.join(run_path, 'etc')]) - writeexts.ssh_runcmd('root@%s' % location, - ['cp', '-a', - os.path.join(orig_path, 'etc'), - os.path.join(run_path, 'etc')]) - except writeexts.ExtensionError: - raise writeexts.ExtensionError('Could not create \'run\' rootfs' - ' from \'orig\'') - - self.status(msg='Linking \'default\' to latest system') - try: - writeexts.ssh_runcmd('root@%s' % location, - ['ln', '-sfn', versioned_root, - os.path.join(self._nfsboot_root, hostname, 'systems', - 'default')]) - except writeexts.ExtensionError: - raise writeexts.ExtensionError("Could not link 'default' to %s" - % versioned_root) - - def configure_nfs(self, location, hostname): - exported_path = os.path.join(self._nfsboot_root, hostname) - exports_path = '/etc/exports' - # If that path is not already exported: - try: - writeexts.ssh_runcmd( - 'root@%s' % location, ['grep', '-q', exported_path, - exports_path]) - except writeexts.ExtensionError: - ip_mask = '*' - options = 'rw,no_subtree_check,no_root_squash,async' - exports_string = '%s %s(%s)\n' % (exported_path, ip_mask, options) - exports_append_sh = '''\ -set -eu -target="$1" -temp=$(mktemp) -cat "$target" > "$temp" -cat >> "$temp" -mv "$temp" "$target" -''' - writeexts.ssh_runcmd( - 'root@%s' % location, - ['sh', '-c', exports_append_sh, '--', exports_path], - feed_stdin=exports_string) - writeexts.ssh_runcmd( - 'root@%s' % location, ['systemctl', 'restart', - 'nfs-server.service']) - - -NFSBootWriteExtension().run() diff --git a/extensions/nfsboot.write.help b/extensions/nfsboot.write.help deleted file mode 100644 index 186c479a..00000000 --- a/extensions/nfsboot.write.help +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - *** DO NOT USE *** - - This was written before 'proper' deployment mechanisms were in place. - It is unlikely to work at all, and will not work correctly. - - Use the pxeboot write extension instead - - *** - Deploy a system image and kernel to an nfsboot server. - - An nfsboot server is defined as a baserock system that has - tftp and nfs servers running, the tftp server is exporting - the contents of /srv/nfsboot/tftp/ and the user has sufficient - permissions to create nfs roots in /srv/nfsboot/nfs/. - - The `location` argument is the hostname of the nfsboot server. - - The extension will connect to root@HOST via ssh to copy the - kernel and rootfs, and configure the nfs server. diff --git a/extensions/openstack-ceilometer.configure b/extensions/openstack-ceilometer.configure deleted file mode 100644 index a98c4d73..00000000 --- a/extensions/openstack-ceilometer.configure +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2015 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. - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool CEILOMETER_ENABLE_CONTROLLER -check_bool CEILOMETER_ENABLE_COMPUTE - -if ! "$CEILOMETER_ENABLE_CONTROLLER" && \ - ! "$CEILOMETER_ENABLE_COMPUTE"; then - exit 0 -fi - -if [ -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" -o \ - -z "$CEILOMETER_SERVICE_USER" -o \ - -z "$CEILOMETER_SERVICE_PASSWORD" -o \ - -z "$CEILOMETER_DB_USER" -o \ - -z "$CEILOMETER_DB_PASSWORD" -o \ - -z "$METERING_SECRET" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$NOVA_VIRT_TYPE" -o \ - -z "$CONTROLLER_HOST_ADDRESS" ]; then - echo Some options required for Ceilometer were defined, but not all. - exit 1 -fi - -###################################### -# Enable relevant openstack services # -###################################### - -if "$CEILOMETER_ENABLE_COMPUTE" || "$CEILOMETER_ENABLE_CONTROLLER"; then - enable openstack-ceilometer-config-setup -fi -if "$CEILOMETER_ENABLE_COMPUTE"; then - enable openstack-ceilometer-compute -fi -if "$CEILOMETER_ENABLE_CONTROLLER"; then - enable openstack-ceilometer-db-setup - enable openstack-ceilometer-api - enable openstack-ceilometer-collector - enable openstack-ceilometer-notification - enable openstack-ceilometer-central - enable openstack-ceilometer-alarm-evaluator - enable openstack-ceilometer-alarm-notifier -fi - -########################################################################## -# Generate configuration file -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/ceilometer.conf" -import os, sys, yaml - -ceilometer_configuration={ - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], - 'CEILOMETER_SERVICE_PASSWORD': os.environ['CEILOMETER_SERVICE_PASSWORD'], - 'CEILOMETER_SERVICE_USER': os.environ['CEILOMETER_SERVICE_USER'], - 'CEILOMETER_DB_USER': os.environ['CEILOMETER_DB_USER'], - 'CEILOMETER_DB_PASSWORD': os.environ['CEILOMETER_DB_PASSWORD'], - 'METERING_SECRET': os.environ['METERING_SECRET'], - 'RABBITMQ_HOST': os.environ['RABBITMQ_HOST'], - 'RABBITMQ_PORT': os.environ['RABBITMQ_PORT'], - 'RABBITMQ_USER': os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD': os.environ['RABBITMQ_PASSWORD'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], - 'NOVA_VIRT_TYPE': os.environ['NOVA_VIRT_TYPE'], -} - -yaml.dump(ceilometer_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-cinder.configure b/extensions/openstack-cinder.configure deleted file mode 100644 index 4c32e11a..00000000 --- a/extensions/openstack-cinder.configure +++ /dev/null @@ -1,125 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool CINDER_ENABLE_CONTROLLER -check_bool CINDER_ENABLE_COMPUTE -check_bool CINDER_ENABLE_STORAGE - -if ! "$CINDER_ENABLE_CONTROLLER" && \ - ! "$CINDER_ENABLE_COMPUTE" && \ - ! "$CINDER_ENABLE_STORAGE"; then - exit 0 -fi - -if [ -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" -o \ - -z "$CINDER_DB_USER" -o \ - -z "$CINDER_DB_PASSWORD" -o \ - -z "$CONTROLLER_HOST_ADDRESS" -o \ - -z "$CINDER_SERVICE_USER" -o \ - -z "$CINDER_SERVICE_PASSWORD" -o \ - -z "$CINDER_DEVICE" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" ]; then - echo Some options required for Cinder were defined, but not all. - exit 1 -fi - -###################################### -# Enable relevant openstack services # -###################################### - -if "$CINDER_ENABLE_COMPUTE" || "$CINDER_ENABLE_STORAGE"; then - enable iscsi-setup - enable target #target.service! - enable iscsid -fi -if "$CINDER_ENABLE_COMPUTE" || "$CINDER_ENABLE_CONTROLLER" || "$CINDER_ENABLE_STORAGE"; then - enable openstack-cinder-config-setup -fi -if "$CINDER_ENABLE_STORAGE"; then - enable openstack-cinder-lv-setup - enable lvm2-lvmetad - enable openstack-cinder-volume - enable openstack-cinder-backup - enable openstack-cinder-scheduler -fi -if "$CINDER_ENABLE_CONTROLLER"; then - enable openstack-cinder-db-setup - enable openstack-cinder-api -fi - -########################################################################## -# Generate configuration file -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/cinder.conf" -import os, sys, yaml - -cinder_configuration={ - 'RABBITMQ_HOST':os.environ['RABBITMQ_HOST'], - 'RABBITMQ_PORT':os.environ['RABBITMQ_PORT'], - 'RABBITMQ_USER':os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD':os.environ['RABBITMQ_PASSWORD'], - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN':os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], - 'CINDER_DB_USER':os.environ['CINDER_DB_USER'], - 'CINDER_DB_PASSWORD':os.environ['CINDER_DB_PASSWORD'], - 'CONTROLLER_HOST_ADDRESS':os.environ['CONTROLLER_HOST_ADDRESS'], - 'CINDER_SERVICE_USER':os.environ['CINDER_SERVICE_USER'], - 'CINDER_SERVICE_PASSWORD':os.environ['CINDER_SERVICE_PASSWORD'], - 'CINDER_DEVICE':os.environ['CINDER_DEVICE'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS':os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], -} - -yaml.dump(cinder_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-glance.configure b/extensions/openstack-glance.configure deleted file mode 100644 index 5da08895..00000000 --- a/extensions/openstack-glance.configure +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool GLANCE_ENABLE_SERVICE - -if ! "$GLANCE_ENABLE_SERVICE"; then - exit 0 -fi - -if [ -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" -o \ - -z "$GLANCE_SERVICE_USER" -o \ - -z "$GLANCE_SERVICE_PASSWORD" -o \ - -z "$GLANCE_DB_USER" -o \ - -z "$GLANCE_DB_PASSWORD" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$CONTROLLER_HOST_ADDRESS" ]; then - echo Some options required for Glance were defined, but not all. - exit 1 -fi - -###################################### -# Enable relevant openstack services # -###################################### - -enable openstack-glance-setup - -########################################################################## -# Generate configuration file -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/glance.conf" -import os, sys, yaml - -glance_configuration={ - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], - 'GLANCE_SERVICE_PASSWORD': os.environ['GLANCE_SERVICE_PASSWORD'], - 'GLANCE_SERVICE_USER': os.environ['GLANCE_SERVICE_USER'], - 'GLANCE_DB_USER': os.environ['GLANCE_DB_USER'], - 'GLANCE_DB_PASSWORD': os.environ['GLANCE_DB_PASSWORD'], - 'RABBITMQ_HOST': os.environ['RABBITMQ_HOST'], - 'RABBITMQ_PORT': os.environ['RABBITMQ_PORT'], - 'RABBITMQ_USER': os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD': os.environ['RABBITMQ_PASSWORD'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], -} - -yaml.dump(glance_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-ironic.configure b/extensions/openstack-ironic.configure deleted file mode 100644 index c77b1288..00000000 --- a/extensions/openstack-ironic.configure +++ /dev/null @@ -1,157 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2015 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. - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool IRONIC_ENABLE_SERVICE - -if ! "$IRONIC_ENABLE_SERVICE"; then - exit 0 -fi - -if [ -z "$IRONIC_SERVICE_USER" -o \ - -z "$IRONIC_SERVICE_PASSWORD" -o \ - -z "$IRONIC_DB_USER" -o \ - -z "$IRONIC_DB_PASSWORD" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$CONTROLLER_HOST_ADDRESS" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" ]; then - echo Some options required for Ironic were defined, but not all. - exit 1 -fi - -###################################### -# Enable relevant openstack services # -###################################### - -enable openstack-ironic-setup -enable iscsi-setup -enable target #target.service! -enable iscsid - -########################################################################## -# Generate configuration file -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/ironic.conf" -import os, sys, yaml - -ironic_configuration={ - 'IRONIC_SERVICE_USER': os.environ['IRONIC_SERVICE_USER'], - 'IRONIC_SERVICE_PASSWORD': os.environ['IRONIC_SERVICE_PASSWORD'], - 'IRONIC_DB_USER': os.environ['IRONIC_DB_USER'], - 'IRONIC_DB_PASSWORD': os.environ['IRONIC_DB_PASSWORD'], - 'RABBITMQ_HOST':os.environ['RABBITMQ_HOST'], - 'RABBITMQ_PORT':os.environ['RABBITMQ_PORT'], - 'RABBITMQ_USER':os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD':os.environ['RABBITMQ_PASSWORD'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], - -} - -yaml.dump(ironic_configuration, sys.stdout, default_flow_style=False) -EOF - -########################################################################## -# Configure the TFTP service # -########################################################################## - -tftp_root="/srv/tftp_root/" # trailing slash is essential -mkdir -p "$ROOT/$tftp_root" - -install -D /dev/stdin -m 644 "$ROOT/usr/lib/systemd/system/tftp-hpa.service" << 'EOF' -[Unit] -Description=tftp service for booting kernels -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -EnvironmentFile=/etc/tftp-hpa.conf -ExecStart=/usr/sbin/in.tftpd $TFTP_OPTIONS ${TFTP_ROOT} -StandardInput=socket -StandardOutput=inherit -StandardError=journal - -[Install] -WantedBy=multi-user.target -EOF - -install -D /dev/stdin -m 644 "$ROOT/usr/lib/systemd/system/tftp-hpa.socket" << EOF -[Unit] -Description=Tftp server activation socket - -[Socket] -ListenDatagram=$MANAGEMENT_INTERFACE_IP_ADDRESS:69 -FreeBind=yes - -[Install] -WantedBy=sockets.target -EOF - -install -D -m 644 /dev/stdin "$ROOT"/etc/tftp-hpa.conf << EOF -TFTP_ROOT=$tftp_root -TFTP_OPTIONS="-v -v -v -v -v --map-file $tftp_root/map-file" -EOF - -install -D /dev/stdin -m 644 "$ROOT/$tftp_root"/map-file << EOF -r ^([^/]) $tftp_root\1 -r ^/tftpboot/ $tftp_root\2 -EOF - -cp "$ROOT"/usr/share/syslinux/pxelinux.0 "$ROOT/$tftp_root" -cp "$ROOT"/usr/share/syslinux/chain.c32 "$ROOT/$tftp_root" - diff --git a/extensions/openstack-keystone.configure b/extensions/openstack-keystone.configure deleted file mode 100644 index 6b011b14..00000000 --- a/extensions/openstack-keystone.configure +++ /dev/null @@ -1,123 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool KEYSTONE_ENABLE_SERVICE - -if ! "$KEYSTONE_ENABLE_SERVICE"; then - exit 0 -fi - -if [ -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" -o \ - -z "$KEYSTONE_ADMIN_PASSWORD" -o \ - -z "$KEYSTONE_DB_USER" -o \ - -z "$KEYSTONE_DB_PASSWORD" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$CONTROLLER_HOST_ADDRESS" ]; then - echo Some options required for Keystone were defined, but not all. - exit 1 -fi - -python <<'EOF' -import socket -import sys -import os - -try: - socket.inet_pton(socket.AF_INET, os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS']) -except: - print "Error: MANAGEMENT_INTERFACE_IP_ADDRESS is not a valid IP" - sys.exit(1) -EOF - -###################################### -# Enable relevant openstack services # -###################################### - -enable openstack-keystone-setup -enable openstack-horizon-setup -enable postgres-server-setup - -########################################################################## -# Generate configuration file -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/keystone.conf" -import os, sys, yaml - -keystone_configuration={ - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], - 'KEYSTONE_ADMIN_PASSWORD': os.environ['KEYSTONE_ADMIN_PASSWORD'], - 'KEYSTONE_DB_USER': os.environ['KEYSTONE_DB_USER'], - 'KEYSTONE_DB_PASSWORD': os.environ['KEYSTONE_DB_PASSWORD'], - 'RABBITMQ_HOST': os.environ['RABBITMQ_HOST'], - 'RABBITMQ_PORT': os.environ['RABBITMQ_PORT'], - 'RABBITMQ_USER': os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD': os.environ['RABBITMQ_PASSWORD'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], -} - -yaml.dump(keystone_configuration, sys.stdout, default_flow_style=False) -EOF - -python << 'EOF' > "$OPENSTACK_DATA/postgres.conf" -import os, sys, yaml - -postgres_configuration={ - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], -} - -yaml.dump(postgres_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-network.configure b/extensions/openstack-network.configure deleted file mode 100644 index 9128f845..00000000 --- a/extensions/openstack-network.configure +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool NEUTRON_ENABLE_MANAGER -check_bool NEUTRON_ENABLE_AGENT - -if ! "$NEUTRON_ENABLE_MANAGER" && ! "$NEUTRON_ENABLE_AGENT"; then - exit 0 -fi - -################### -# Enable services # -################### - -enable openvswitch-setup -enable openstack-network-setup - -########################################################################## -# Generate config variable shell snippet -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/network.conf" -import os, sys, yaml - -network_configuration = {} - -optional_keys = ('EXTERNAL_INTERFACE',) - -network_configuration.update((k, os.environ[k]) for k in optional_keys if k in os.environ) - -yaml.dump(network_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-neutron.configure b/extensions/openstack-neutron.configure deleted file mode 100644 index 210222db..00000000 --- a/extensions/openstack-neutron.configure +++ /dev/null @@ -1,138 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/openstack-neutron-$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/openstack-neutron-$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool NEUTRON_ENABLE_CONTROLLER -check_bool NEUTRON_ENABLE_MANAGER -check_bool NEUTRON_ENABLE_AGENT - -if ! "$NEUTRON_ENABLE_CONTROLLER" && \ - ! "$NEUTRON_ENABLE_MANAGER" && \ - ! "$NEUTRON_ENABLE_AGENT"; then - exit 0 -fi - -if [ -z "$NEUTRON_SERVICE_USER" -o \ - -z "$NEUTRON_SERVICE_PASSWORD" -o \ - -z "$NEUTRON_DB_USER" -o \ - -z "$NEUTRON_DB_PASSWORD" -o \ - -z "$METADATA_PROXY_SHARED_SECRET" -o \ - -z "$NOVA_SERVICE_USER" -o \ - -z "$NOVA_SERVICE_PASSWORD" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$CONTROLLER_HOST_ADDRESS" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" ]; then - echo Some options required for Neutron were defined, but not all. - exit 1 -fi - -############################################# -# Ensure /var/run is an appropriate symlink # -############################################# - -if ! link="$(readlink "$ROOT/var/run")" || [ "$link" != ../run ]; then - rm -rf "$ROOT/var/run" - ln -s ../run "$ROOT/var/run" -fi - -################### -# Enable services # -################### - -if "$NEUTRON_ENABLE_CONTROLLER"; then - enable config-setup - enable db-setup - enable server -fi - -if "$NEUTRON_ENABLE_MANAGER"; then - enable config-setup - enable ovs-cleanup - enable dhcp-agent - enable l3-agent - enable plugin-openvswitch-agent - enable metadata-agent -fi - -if "$NEUTRON_ENABLE_AGENT"; then - enable config-setup - enable plugin-openvswitch-agent -fi - -########################################################################## -# Generate config variable shell snippet -########################################################################## - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/neutron.conf" -import os, sys, yaml - -nova_configuration={ - 'NEUTRON_SERVICE_USER': os.environ['NEUTRON_SERVICE_USER'], - 'NEUTRON_SERVICE_PASSWORD': os.environ['NEUTRON_SERVICE_PASSWORD'], - 'NEUTRON_DB_USER': os.environ['NEUTRON_DB_USER'], - 'NEUTRON_DB_PASSWORD': os.environ['NEUTRON_DB_PASSWORD'], - 'METADATA_PROXY_SHARED_SECRET': os.environ['METADATA_PROXY_SHARED_SECRET'], - 'NOVA_SERVICE_USER': os.environ['NOVA_SERVICE_USER'], - 'NOVA_SERVICE_PASSWORD': os.environ['NOVA_SERVICE_PASSWORD'], - 'RABBITMQ_HOST': os.environ['RABBITMQ_HOST'], - 'RABBITMQ_USER': os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD': os.environ['RABBITMQ_PASSWORD'], - 'RABBITMQ_PORT': os.environ['RABBITMQ_PORT'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], -} - -yaml.dump(nova_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-nova.configure b/extensions/openstack-nova.configure deleted file mode 100644 index 241d94c2..00000000 --- a/extensions/openstack-nova.configure +++ /dev/null @@ -1,163 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2015 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, see . - -set -e - -ROOT="$1" - -enable(){ - ln -sf "/usr/lib/systemd/system/openstack-nova-$1.service" \ - "$ROOT/etc/systemd/system/multi-user.target.wants/openstack-nova-$1.service" -} - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True|'') - eval "$1=true" - ;; - False) - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} - -########################################################################## -# Check variables -########################################################################## - -check_bool NOVA_ENABLE_CONTROLLER -check_bool NOVA_ENABLE_COMPUTE - -if ! "$NOVA_ENABLE_CONTROLLER" && \ - ! "$NOVA_ENABLE_COMPUTE"; then - exit 0 -fi - -if [ -z "$NOVA_SERVICE_USER" -o \ - -z "$NOVA_SERVICE_PASSWORD" -o \ - -z "$NOVA_DB_USER" -o \ - -z "$NOVA_DB_PASSWORD" -o \ - -z "$NOVA_VIRT_TYPE" -o \ - -z "$NEUTRON_SERVICE_USER" -o \ - -z "$NEUTRON_SERVICE_PASSWORD" -o \ - -z "$IRONIC_SERVICE_USER" -a \ - -z "$IRONIC_SERVICE_PASSWORD" -a \ - -z "$METADATA_PROXY_SHARED_SECRET" -o \ - -z "$RABBITMQ_HOST" -o \ - -z "$RABBITMQ_USER" -o \ - -z "$RABBITMQ_PASSWORD" -o \ - -z "$RABBITMQ_PORT" -o \ - -z "$CONTROLLER_HOST_ADDRESS" -o \ - -z "$MANAGEMENT_INTERFACE_IP_ADDRESS" -o \ - -z "$KEYSTONE_TEMPORARY_ADMIN_TOKEN" ]; then - echo Some options required for Nova were defined, but not all. - exit 1 -fi - -############################################### -# Enable libvirtd and libvirt-guests services # -############################################### - -wants_dir="$ROOT"/usr/lib/systemd/system/multi-user.target.wants -mkdir -p "$wants_dir" -mkdir -p "$ROOT"/var/lock/subsys -ln -sf ../libvirtd.service "$wants_dir/libvirtd.service" - -###################################### -# Enable relevant openstack services # -###################################### - -if "$NOVA_ENABLE_CONTROLLER" || "$NOVA_ENABLE_COMPUTE"; then - enable config-setup -fi -if "$NOVA_ENABLE_CONTROLLER" && ! "$NOVA_ENABLE_COMPUTE"; then - enable conductor -fi -if "$NOVA_ENABLE_COMPUTE"; then - enable compute -fi -if "$NOVA_ENABLE_CONTROLLER"; then - for service in db-setup api cert consoleauth novncproxy scheduler serialproxy; do - enable "$service" - done -fi - - -########################################################################## -# Generate configuration file -########################################################################## - -case "$NOVA_BAREMETAL_SCHEDULING" in - True|true|yes) - export COMPUTE_MANAGER=ironic.nova.compute.manager.ClusteredComputeManager - export RESERVED_HOST_MEMORY_MB=0 - export SCHEDULER_HOST_MANAGER=nova.scheduler.ironic_host_manager.IronicHostManager - export RAM_ALLOCATION_RATIO=1.0 - export COMPUTE_DRIVER=nova.virt.ironic.IronicDriver - export SCHEDULER_USE_BAREMETAL_FILTERS=true - ;; - *) - export COMPUTE_MANAGER=nova.compute.manager.ComputeManager - export RESERVED_HOST_MEMORY_MB=512 - export SCHEDULER_HOST_MANAGER=nova.scheduler.host_manager.HostManager - export RAM_ALLOCATION_RATIO=1.5 - export COMPUTE_DRIVER=libvirt.LibvirtDriver - export SCHEDULER_USE_BAREMETAL_FILTERS=false - ;; -esac - -OPENSTACK_DATA="$ROOT/etc/openstack" -mkdir -p "$OPENSTACK_DATA" - -python <<'EOF' >"$OPENSTACK_DATA/nova.conf" -import os, sys, yaml - -nova_configuration={ - 'NOVA_SERVICE_USER': os.environ['NOVA_SERVICE_USER'], - 'NOVA_SERVICE_PASSWORD': os.environ['NOVA_SERVICE_PASSWORD'], - 'NOVA_DB_USER': os.environ['NOVA_DB_USER'], - 'NOVA_DB_PASSWORD': os.environ['NOVA_DB_PASSWORD'], - 'NOVA_VIRT_TYPE': os.environ['NOVA_VIRT_TYPE'], - 'COMPUTE_MANAGER': os.environ['COMPUTE_MANAGER'], - 'RESERVED_HOST_MEMORY_MB': os.environ['RESERVED_HOST_MEMORY_MB'], - 'SCHEDULER_HOST_MANAGER': os.environ['SCHEDULER_HOST_MANAGER'], - 'RAM_ALLOCATION_RATIO': os.environ['RAM_ALLOCATION_RATIO'], - 'SCHEDULER_USE_BAREMETAL_FILTERS': os.environ['SCHEDULER_USE_BAREMETAL_FILTERS'], - 'COMPUTE_DRIVER': os.environ['COMPUTE_DRIVER'], - 'NEUTRON_SERVICE_USER': os.environ['NEUTRON_SERVICE_USER'], - 'NEUTRON_SERVICE_PASSWORD': os.environ['NEUTRON_SERVICE_PASSWORD'], - 'IRONIC_SERVICE_USER': os.environ['IRONIC_SERVICE_USER'], - 'IRONIC_SERVICE_PASSWORD': os.environ['IRONIC_SERVICE_PASSWORD'], - 'METADATA_PROXY_SHARED_SECRET': os.environ['METADATA_PROXY_SHARED_SECRET'], - 'RABBITMQ_HOST': os.environ['RABBITMQ_HOST'], - 'RABBITMQ_USER': os.environ['RABBITMQ_USER'], - 'RABBITMQ_PASSWORD': os.environ['RABBITMQ_PASSWORD'], - 'RABBITMQ_PORT': os.environ['RABBITMQ_PORT'], - 'CONTROLLER_HOST_ADDRESS': os.environ['CONTROLLER_HOST_ADDRESS'], - 'MANAGEMENT_INTERFACE_IP_ADDRESS': os.environ['MANAGEMENT_INTERFACE_IP_ADDRESS'], - 'KEYSTONE_TEMPORARY_ADMIN_TOKEN': os.environ['KEYSTONE_TEMPORARY_ADMIN_TOKEN'], -} - -yaml.dump(nova_configuration, sys.stdout, default_flow_style=False) -EOF diff --git a/extensions/openstack-swift-controller.configure b/extensions/openstack-swift-controller.configure deleted file mode 100644 index 424ab57b..00000000 --- a/extensions/openstack-swift-controller.configure +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash -# -# Copyright © 2015 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, see . - - -set -e - -export ROOT="$1" - -MANDATORY_OPTIONS="SWIFT_ADMIN_PASSWORD KEYSTONE_TEMPORARY_ADMIN_TOKEN" - -for option in $MANDATORY_OPTIONS -do - if ! [[ -v $option ]] - then - missing_option=True - echo "Required option $option isn't set!" >&2 - fi -done - -if [[ $missing_option = True ]]; then exit 1; fi - -mkdir -p "$ROOT/usr/lib/systemd/system/multi-user.target.wants" # ensure this exists before we make symlinks - -ln -s "/usr/lib/systemd/system/swift-controller-setup.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/swift-controller-setup.service" -ln -s "/usr/lib/systemd/system/memcached.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/memcached.service" -ln -s "/usr/lib/systemd/system/openstack-swift-proxy.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/swift-proxy.service" - -cat << EOF > "$ROOT"/usr/share/openstack/swift-controller-vars.yml ---- -SWIFT_ADMIN_PASSWORD: $SWIFT_ADMIN_PASSWORD -MANAGEMENT_INTERFACE_IP_ADDRESS: $MANAGEMENT_INTERFACE_IP_ADDRESS -KEYSTONE_TEMPORARY_ADMIN_TOKEN: $KEYSTONE_TEMPORARY_ADMIN_TOKEN -EOF diff --git a/extensions/openstack-time.configure b/extensions/openstack-time.configure deleted file mode 100644 index 4f5c8fbd..00000000 --- a/extensions/openstack-time.configure +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2015 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. - -set -e - -ROOT="$1" - -unnaceptable(){ - eval echo Unexpected value \$$1 for $1 >&2 - exit 1 -} - -check_bool(){ - case "$(eval echo \"\$$1\")" in - True) - eval "$1=true" - ;; - False|'') - eval "$1=false" - ;; - *) - unnaceptable "$1" - ;; - esac -} -check_bool SYNC_TIME_WITH_CONTROLLER - -if "$SYNC_TIME_WITH_CONTROLLER"; then - - cat << EOF > "$ROOT"/etc/ntpd.conf -# We use iburst here to reduce the potential initial delay to set the clock -server $CONTROLLER_HOST_ADDRESS iburst - -# kod - notify client when packets are denied service, -# rather than just dropping the packets -# -# nomodify - deny queries which attempt to modify the state of the server -# -# notrap - decline to provide mode 6 control message trap service to -# matching hosts -# -# see ntp.conf(5) for more details -restrict -4 default limited limited nomodify -restrict -6 default limited limited notrap nomodify -EOF - -fi diff --git a/extensions/openstack.check b/extensions/openstack.check deleted file mode 100755 index 131ea8e8..00000000 --- a/extensions/openstack.check +++ /dev/null @@ -1,92 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'openstack' write extension''' - -import os -import urlparse - -import keystoneclient - -import writeexts - - -class OpenStackCheckExtension(writeexts.WriteExtension): - - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - self.require_btrfs_in_deployment_host_kernel() - - upgrade = self.get_environment_boolean('UPGRADE') - if upgrade: - raise writeexts.ExtensionError( - 'Use the `ssh-rsync` write extension to deploy upgrades to an ' - 'existing remote system.') - - location = args[0] - self.check_location(location) - - self.check_imagename() - self.check_openstack_parameters(self._get_auth_parameters(location)) - - def _get_auth_parameters(self, location): - '''Check the environment variables needed and returns all. - - The environment variables are described in the class documentation. - ''' - - auth_keys = {'OPENSTACK_USER': 'username', - 'OPENSTACK_TENANT': 'tenant_name', - 'OPENSTACK_PASSWORD': 'password'} - - for key in auth_keys: - if os.environ.get(key, '') == '': - raise writeexts.ExtensionError(key + ' was not given') - - auth_params = {auth_keys[key]: os.environ[key] for key in auth_keys} - auth_params['auth_url'] = location - return auth_params - - def check_imagename(self): - if os.environ.get('OPENSTACK_IMAGENAME', '') == '': - raise writeexts.ExtensionError( - 'OPENSTACK_IMAGENAME was not given') - - def check_location(self, location): - x = urlparse.urlparse(location) - if x.scheme not in ['http', 'https']: - raise writeexts.ExtensionError( - 'URL schema must be http or https in %s' % location) - if (x.path != '/v2.0' and x.path != '/v2.0/'): - raise writeexts.ExtensionError( - 'API version must be v2.0 in %s' % location) - - def check_openstack_parameters(self, auth_params): - ''' Check that we can connect to and authenticate with openstack ''' - - self.status(msg='Checking OpenStack credentials...') - - try: - keystoneclient.v2_0.Client(**auth_params) - except keystoneclient.exceptions.Unauthorized: - errmsg = ('Failed to authenticate with OpenStack ' - '(are your credentials correct?)') - raise writeexts.ExtensionError(errmsg) - - -OpenStackCheckExtension().run() diff --git a/extensions/openstack.write b/extensions/openstack.write deleted file mode 100755 index 1fc3ba90..00000000 --- a/extensions/openstack.write +++ /dev/null @@ -1,94 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013-2015 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, see . - - -'''A Morph deployment write extension for deploying to OpenStack.''' - - -import os -import subprocess -import tempfile -import urlparse - -import writeexts - - -class OpenStackWriteExtension(writeexts.WriteExtension): - - '''See openstack.write.help for documentation''' - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - - os_params = self.get_openstack_parameters() - - fd, raw_disk = tempfile.mkstemp() - os.close(fd) - self.create_local_system(temp_root, raw_disk) - self.status(msg='Temporary disk image has been created at %s' - % raw_disk) - - self.set_extlinux_root_to_virtio(raw_disk) - - self.configure_openstack_image(raw_disk, location, os_params) - - def set_extlinux_root_to_virtio(self, raw_disk): - '''Re-configures extlinux to use virtio disks''' - self.status(msg='Updating extlinux.conf') - with self.find_and_mount_rootfs(raw_disk) as mp: - path = os.path.join(mp, 'extlinux.conf') - - with open(path) as f: - extlinux_conf = f.read() - - extlinux_conf = extlinux_conf.replace('root=/dev/sda', - 'root=/dev/vda') - with open(path, "w") as f: - f.write(extlinux_conf) - - def get_openstack_parameters(self): - '''Get the environment variables needed. - - The environment variables are described in the class documentation. - ''' - - keys = ('OPENSTACK_USER', 'OPENSTACK_TENANT', - 'OPENSTACK_IMAGENAME', 'OPENSTACK_PASSWORD') - return (os.environ[key] for key in keys) - - def configure_openstack_image(self, raw_disk, auth_url, os_params): - '''Configure the image in OpenStack using glance-client''' - self.status(msg='Configuring OpenStack image...') - - username, tenant_name, image_name, password = os_params - cmdline = ['glance', - '--os-username', username, - '--os-tenant-name', tenant_name, - '--os-password', password, - '--os-auth-url', auth_url, - 'image-create', - '--name=%s' % image_name, - '--disk-format=raw', - '--container-format', 'bare', - '--file', raw_disk] - subprocess.check_call(cmdline) - - self.status(msg='Image configured.') - -OpenStackWriteExtension().run() diff --git a/extensions/openstack.write.help b/extensions/openstack.write.help deleted file mode 100644 index 26983060..00000000 --- a/extensions/openstack.write.help +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Deploy a Baserock system as a *new* OpenStack virtual machine. - (Use the `ssh-rsync` write extension to deploy upgrades to an *existing* - VM) - - Deploys the system to the OpenStack host using python-glanceclient. - - Parameters: - - * location: the authentication url of the OpenStack server using the - following syntax: - - http://HOST:PORT/VERSION - - where - - * HOST is the host running OpenStack - * PORT is the port which is using OpenStack for authentications. - * VERSION is the authentication version of OpenStack (Only v2.0 - supported) - - * OPENSTACK_USER=username: the username to use in the `--os-username` - argument to `glance`. - - * OPENSTACK_TENANT=tenant: the project name to use in the - `--os-tenant-name` argument to `glance`. - - * OPENSTACK_IMAGENAME=imagename: the name of the image to use in the - `--name` argument to `glance`. - - * OPENSTACK_PASSWORD=password: the password of the OpenStack user. (We - recommend passing this on the command-line, rather than setting an - environment variable or storing it in a cluster cluster definition file.) - - (See `morph help deploy` for details of how to pass parameters to write - extensions) diff --git a/extensions/partitioning.py b/extensions/partitioning.py deleted file mode 100644 index 2a8de058..00000000 --- a/extensions/partitioning.py +++ /dev/null @@ -1,163 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2015 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, see . - - -"""A module providing Baserock-specific partitioning functions""" - -import os -import pyfdisk -import re -import subprocess -import writeexts - -def do_partitioning(location, disk_size, temp_root, part_spec): - '''Perform partitioning - - Perform partitioning using the pyfdisk.py module. Documentation - for this, and guidance on how to create a partition specification can - be found in extensions/pyfdisk.README - - This function also validates essential parts of the partition layout - - Args: - location: Path to the target device or image - temp_root: Location of the unpacked Baserock rootfs - part_spec: Path to a YAML formatted partition specification - Returns: - A pyfdisk.py Device object - Raises: - writeexts.ExtensionError - ''' - # Create partition table and filesystems - try: - dev = pyfdisk.load_yaml(location, disk_size, part_spec) - writeexts.Extension.status(msg='Loaded partition specification: %s' % - part_spec) - - # FIXME: GPT currently not fully supported due to missing tools - if dev.partition_table_format.lower() == 'gpt': - writeexts.Extension.status(msg='WARNING: GPT partition tables ' - 'are not currently supported, ' - 'when using the extlinux ' - 'bootloader') - - writeexts.Extension.status(msg='Summary:\n' + str(dev.partitionlist)) - writeexts.Extension.status(msg='Writing partition table') - dev.commit() - dev.create_filesystems(skip=('/')) - except (pyfdisk.PartitioningError, pyfdisk.FdiskError) as e: - raise writeexts.ExtensionError(e.msg) - - mountpoints = set(part.mountpoint for part in dev.partitionlist - if hasattr(part, 'mountpoint')) - if '/' not in mountpoints: - raise writeexts.ExtensionError('No partition with root ' - 'mountpoint, please specify a ' - 'partition with \'mountpoint: /\' ' - 'in the partition specification') - - mounted_partitions = set(part for part in dev.partitionlist - if hasattr(part, 'mountpoint')) - - for part in mounted_partitions: - if not hasattr(part, 'filesystem'): - raise writeexts.ExtensionError('Cannot mount a partition ' - 'without filesystem, please specify one ' - 'for \'%s\' partition in the partition ' - 'specification' % part.mountpoint) - if part.mountpoint == '/': - # Check that bootable flag is set for MBR devices - if (hasattr(part, 'boot') - and str(part.boot).lower() not in ('yes', 'true') - and dev.partition_table_format.lower() == 'mbr'): - writeexts.Extension.status(msg='WARNING: Boot partition ' - 'needs bootable flag set to ' - 'boot with extlinux/syslinux') - - return dev - -def process_raw_files(dev, temp_root): - if hasattr(dev, 'raw_files'): - write_raw_files(dev.location, temp_root, dev) - for part in dev.partitionlist: - if hasattr(part, 'raw_files'): - # dd seek=n is used, which skips n blocks before writing, - # so we must skip n-1 sectors before writing in order to - # start writing files to the first block of the partition - write_raw_files(dev.location, temp_root, part, - (part.extent.start - 1) * dev.sector_size) - -def write_raw_files(location, temp_root, dev_or_part, start_offset=0): - '''Write files with `dd`''' - offset = 0 - for raw_args in dev_or_part.raw_files: - r = RawFile(temp_root, start_offset, offset, **raw_args) - offset = r.next_offset - r.dd(location) - - -class RawFile(object): - '''A class to hold information about a raw file to write to a device''' - - def __init__(self, source_root, - start_offset=0, wr_offset=0, - sector_size=512, **kwargs): - '''Initialisation function - - Args: - source_root: Base path for filenames - wr_offset: Offset to write to (and offset per-file offsets by) - sector_size: Device sector size (default: 512) - **kwargs: - file: A path to the file to write (combined with source_root) - offset_sectors: An offset to write to in sectors (optional) - offset_bytes: An offset to write to in bytes (optional) - ''' - if 'file' not in kwargs: - raise writeexts.ExtensionError('Missing file name or path') - self.path = os.path.join(source_root, - re.sub('^/', '', kwargs['file'])) - - if not os.path.exists(self.path): - raise writeexts.ExtensionError('File not found: %s' % self.path) - elif os.path.isdir(self.path): - raise writeexts.ExtensionError('Can only dd regular files') - else: - self.size = os.stat(self.path).st_size - - self.offset = start_offset - if 'offset_bytes' in kwargs: - self.offset += pyfdisk.human_size(kwargs['offset_bytes']) - elif 'offset_sectors' in kwargs: - self.offset += kwargs['offset_sectors'] * sector_size - else: - self.offset += wr_offset - - self.skip = pyfdisk.human_size(kwargs.get('skip_bytes', 0)) - self.count = pyfdisk.human_size(kwargs.get('count_bytes', self.size)) - - # Offset of the first free byte after this file (first byte of next) - self.next_offset = self.size + self.offset - - def dd(self, location): - writeexts.Extension.status(msg='Writing %s at %d bytes' % - (self.path, self.offset)) - subprocess.check_call(['dd', 'if=%s' % self.path, - 'of=%s' % location, 'bs=1', - 'seek=%d' % self.offset, - 'skip=%d' % self.skip, - 'count=%d' % self.count, - 'conv=notrunc']) - subprocess.check_call('sync') diff --git a/extensions/pxeboot.check b/extensions/pxeboot.check deleted file mode 100755 index 19891482..00000000 --- a/extensions/pxeboot.check +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/python2 - -import itertools -import os -import subprocess -import sys -flatten = itertools.chain.from_iterable - -def powerset(iterable): - "powerset([1,2,3]) --> () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3)" - s = list(iterable) - return flatten(itertools.combinations(s, r) for r in range(len(s)+1)) - -valid_option_sets = frozenset(( - ('spawn-novlan', frozenset(('PXEBOOT_DEPLOYER_INTERFACE',))), - ('spawn-vlan', frozenset(('PXEBOOT_DEPLOYER_INTERFACE', 'PXEBOOT_VLAN'))), - ('existing-dhcp', frozenset(('PXEBOOT_DEPLOYER_INTERFACE', - 'PXEBOOT_CONFIG_TFTP_ADDRESS'))), - ('existing-server', frozenset(('PXEBOOT_CONFIG_TFTP_ADDRESS', - 'PXEBOOT_ROOTFS_RSYNC_ADDRESS'))), -)) -valid_modes = frozenset(mode for mode, opt_set in valid_option_sets) - - -def compute_matches(env): - complete_matches = set() - for mode, opt_set in valid_option_sets: - if all(k in env for k in opt_set): - complete_matches.add(opt_set) - return complete_matches - -complete_matches = compute_matches(os.environ) - -def word_separate_options(options): - assert options - s = options.pop(-1) - if options: - s = '%s and %s' % (', '.join(options), s) - return s - - -valid_options = frozenset(flatten(opt_set for (mode, opt_set) - in valid_option_sets)) -matched_options = frozenset(o for o in valid_options - if o in os.environ) -if not complete_matches: - addable_sets = frozenset(frozenset(os) - matched_options for os in - valid_options - if frozenset(os) - matched_options) - print('Please provide %s' % ' or '.join( - word_separate_options(list(opt_set)) - for opt_set in addable_sets if opt_set)) - sys.exit(1) -elif len(complete_matches) > 1: - removable_sets = frozenset(matched_options - frozenset(os) for os in - powerset(matched_options) - if len(compute_matches(os)) == 1) - print('WARNING: Following options might not be needed: %s' % ' or '.join( - word_separate_options(list(opt_set)) - for opt_set in removable_sets if opt_set)) - -if 'PXEBOOT_MODE' in os.environ: - mode = os.environ['PXEBOOT_MODE'] -else: - try: - mode, = (mode for (mode, opt_set) in valid_option_sets - if all(o in os.environ for o in opt_set)) - - except ValueError as e: - print ('More than one candidate for PXEBOOT_MODE, please ' - 'set a value for it. Type `morph help pxeboot.write for ' - 'more info') - sys.exit(1) - -if mode not in valid_modes: - print('%s is not a valid PXEBOOT_MODE' % mode) - sys.exit(1) - -if mode != 'existing-server': - with open(os.devnull, 'w') as devnull: - if subprocess.call(['systemctl', 'is-active', 'nfs-server'], - stdout=devnull) != 0: - print ('ERROR: nfs-server.service is not running and is needed ' - 'for this deployment. Please, run `systemctl start nfs-server` ' - 'and try `morph deploy` again.') - sys.exit(1) diff --git a/extensions/pxeboot.write b/extensions/pxeboot.write deleted file mode 100644 index 20e4f6bd..00000000 --- a/extensions/pxeboot.write +++ /dev/null @@ -1,756 +0,0 @@ -#!/usr/bin/env python - - -import collections -import contextlib -import errno -import itertools -import logging -import os -import select -import signal -import shutil -import socket -import string -import StringIO -import subprocess -import sys -import tempfile -import textwrap -import urlparse - -import writeexts - -def _int_to_quad_dot(i): - return '.'.join(( - str(i >> 24 & 0xff), - str(i >> 16 & 0xff), - str(i >> 8 & 0xff), - str(i & 0xff))) - - -def _quad_dot_to_int(s): - i = 0 - for octet in s.split('.'): - i <<= 8 - i += int(octet, 10) - return i - - -def _netmask_to_prefixlen(mask): - bs = '{:032b}'.format(mask) - prefix = bs.rstrip('0') - if '0' in prefix: - raise ValueError('abnormal netmask: %s' % - _int_to_quad_dot(mask)) - return len(prefix) - - -def _get_routes(): - routes = [] - with open('/proc/net/route', 'r') as f: - for line in list(f)[1:]: - fields = line.split() - destination, flags, mask = fields[1], fields[3], fields[7] - flags = int(flags, 16) - if flags & 2: - # default route, ignore - continue - destination = socket.ntohl(int(destination, 16)) - mask = socket.ntohl(int(mask, 16)) - prefixlen = _netmask_to_prefixlen(mask) - routes.append((destination, prefixlen)) - return routes - - -class IPRange(object): - def __init__(self, prefix, prefixlen): - self.prefixlen = prefixlen - mask = (1 << prefixlen) - 1 - self.mask = mask << (32 - prefixlen) - self.prefix = prefix & self.mask - @property - def bitstring(self): - return ('{:08b}' * 4).format( - self.prefix >> 24 & 0xff, - self.prefix >> 16 & 0xff, - self.prefix >> 8 & 0xff, - self.prefix & 0xff - )[:self.prefixlen] - def startswith(self, other_range): - return self.bitstring.startswith(other_range.bitstring) - - -def find_subnet(valid_ranges, invalid_ranges): - for vr in valid_ranges: - known_subnets = set(ir for ir in invalid_ranges if ir.startswith(vr)) - prefixlens = set(r.prefixlen for r in known_subnets) - prefixlens.add(32 - 2) # need at least 4 addresses in subnet - prefixlen = min(prefixlens) - if prefixlen <= vr.prefixlen: - # valid subnet is full, move on to next - continue - subnetlen = prefixlen - vr.prefixlen - for prefix in (subnetid + vr.prefix - for subnetid in xrange(1 << subnetlen)): - if any(subnet.prefix == prefix for subnet in known_subnets): - continue - return prefix, prefixlen - - -def _normalise_macaddr(macaddr): - '''pxelinux.0 wants the mac address to be lowercase and - separated''' - digits = (c for c in macaddr.lower() if c in string.hexdigits) - nibble_pairs = grouper(digits, 2) - return '-'.join(''.join(byte) for byte in nibble_pairs) - - -@contextlib.contextmanager -def executor(target_pid): - 'Kills a process if its parent dies' - read_fd, write_fd = os.pipe() - helper_pid = os.fork() - if helper_pid == 0: - try: - os.close(write_fd) - while True: - rlist, _, _ = select.select([read_fd], [], []) - if read_fd in rlist: - d = os.read(read_fd, 1) - if not d: - os.kill(target_pid, signal.SIGKILL) - if d in ('', 'Q'): - os._exit(0) - else: - os._exit(1) - except BaseException as e: - import traceback - traceback.print_exc() - os._exit(1) - os.close(read_fd) - yield - os.write(write_fd, 'Q') - os.close(write_fd) - - -def grouper(iterable, n, fillvalue=None): - "Collect data into fixed-length chunks or blocks" - # grouper('ABCDEFG', 3, 'x') --> ABC DEF Gxx" - args = [iter(iterable)] * n - return itertools.izip_longest(*args, fillvalue=fillvalue) - - -class PXEBoot(writeexts.WriteExtension): - @contextlib.contextmanager - def _vlan(self, interface, vlan): - viface = '%s.%s' % (interface, vlan) - self.status(msg='Creating vlan %(viface)s', viface=viface) - subprocess.check_call(['vconfig', 'add', interface, str(vlan)]) - try: - yield viface - finally: - self.status(msg='Destroying vlan %(viface)s', viface=viface) - subprocess.call(['vconfig', 'rem', viface]) - - @contextlib.contextmanager - def _static_ip(self, iface): - valid_ranges = set(( - IPRange(_quad_dot_to_int('192.168.0.0'), 16), - IPRange(_quad_dot_to_int('172.16.0.0'), 12), - IPRange(_quad_dot_to_int('10.0.0.0'), 8), - )) - invalid_ranges = set(IPRange(prefix, prefixlen) - for (prefix, prefixlen) in _get_routes()) - prefix, prefixlen = find_subnet(valid_ranges, invalid_ranges) - netaddr = prefix - dhcp_server_ip = netaddr + 1 - client_ip = netaddr + 2 - broadcast_ip = prefix | ((1 << (32 - prefixlen)) - 1) - self.status(msg='Assigning ip address %(ip)s/%(prefixlen)d to ' - 'iface %(iface)s', - ip=_int_to_quad_dot(dhcp_server_ip), prefixlen=prefixlen, - iface=iface) - subprocess.check_call(['ip', 'addr', 'add', - '{}/{}'.format(_int_to_quad_dot(dhcp_server_ip), - prefixlen), - 'broadcast', _int_to_quad_dot(broadcast_ip), - 'scope', 'global', - 'dev', iface]) - try: - yield (dhcp_server_ip, client_ip, broadcast_ip) - finally: - self.status(msg='Removing ip addresses from iface %(iface)s', - iface=iface) - subprocess.call(['ip', 'addr', 'flush', 'dev', iface]) - - @contextlib.contextmanager - def _up_interface(self, iface): - self.status(msg='Bringing interface %(iface)s up', iface=iface) - subprocess.check_call(['ip', 'link', 'set', iface, 'up']) - try: - yield - finally: - self.status(msg='Bringing interface %(iface)s down', iface=iface) - subprocess.call(['ip', 'link', 'set', iface, 'down']) - - @contextlib.contextmanager - def static_ip(self, interface): - with self._static_ip(iface=interface) as (host_ip, client_ip, - broadcast_ip), \ - self._up_interface(iface=interface): - yield (_int_to_quad_dot(host_ip), - _int_to_quad_dot(client_ip), - _int_to_quad_dot(broadcast_ip)) - - @contextlib.contextmanager - def vlan(self, interface, vlan): - with self._vlan(interface=interface, vlan=vlan) as viface, \ - self.static_ip(interface=viface) \ - as (host_ip, client_ip, broadcast_ip): - yield host_ip, client_ip, broadcast_ip - - @contextlib.contextmanager - def _tempdir(self): - td = tempfile.mkdtemp() - print 'Created tempdir:', td - try: - yield td - finally: - shutil.rmtree(td, ignore_errors=True) - - @contextlib.contextmanager - def _remote_tempdir(self, hostname, template): - persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') - td = writeexts.ssh_runcmd( - hostname, ['mktemp', '-d', template]).strip() - try: - yield td - finally: - if not persist: - writeexts.ssh_runcmd(hostname, ['find', td, '-delete']) - - def _serve_tftpd(self, sock, host, port, interface, tftproot): - self.settings.progname = 'tftp server' - self._set_process_name() - while True: - logging.debug('tftpd waiting for connections') - # recvfrom with MSG_PEEK is how you accept UDP connections - _, peer = sock.recvfrom(0, socket.MSG_PEEK) - conn = sock - logging.debug('Connecting socket to peer: ' + repr(peer)) - conn.connect(peer) - # The existing socket is now only serving that peer, so we need to - # bind a new UDP socket to the wildcard address, which needs the - # port to be in REUSEADDR mode. - conn.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - sock = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM) - sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - logging.debug('Binding replacement socket to ' + repr((host, port))) - sock.bind((host, port)) - - logging.debug('tftpd server handing connection to tftpd') - tftpd_serve = ['tftpd', '-rl', tftproot] - ret = subprocess.call(args=tftpd_serve, stdin=conn, - stdout=conn, stderr=None, close_fds=True) - # It's handy to turn off REUSEADDR after the rebinding, - # so we can protect against future bind attempts on this port. - sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 0) - logging.debug('tftpd exited %d' % ret) - os._exit(0) - - @contextlib.contextmanager - def _spawned_tftp_server(self, tftproot, host_ip, interface, tftp_port=0): - # inetd-style launchers tend to bind UDP ports with SO_REUSEADDR, - # because they need to have multiple ports bound, one for recieving - # all connection attempts on that port, and one for each concurrent - # connection with a peer - # this makes detecting whether there's a tftpd running difficult, so - # we'll instead use an ephemeral port and configure the PXE boot to - # use that tftp server for the kernel - s = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM) - s.bind((host_ip, tftp_port)) - host, port = s.getsockname() - self.status(msg='Bound listen socket to %(host)s, %(port)s', - host=host, port=port) - pid = os.fork() - if pid == 0: - try: - self._serve_tftpd(sock=s, host=host, port=port, - interface=interface, tftproot=tftproot) - except BaseException as e: - import traceback - traceback.print_exc() - os._exit(1) - s.close() - with executor(pid): - try: - yield port - finally: - self.status(msg='Killing tftpd listener pid=%(pid)d', - pid=pid) - os.kill(pid, signal.SIGKILL) - - @contextlib.contextmanager - def tftp_server(self, host_ip, interface, tftp_port=0): - with self._tempdir() as tftproot, \ - self._spawned_tftp_server(tftproot=tftproot, host_ip=host_ip, - interface=interface, - tftp_port=tftp_port) as tftp_port: - self.status(msg='Serving tftp root %(tftproot)s, on port %(port)d', - port=tftp_port, tftproot=tftproot) - yield tftp_port, tftproot - - @contextlib.contextmanager - def _local_copy(self, src, dst): - self.status(msg='Installing %(src)s to %(dst)s', - src=src, dst=dst) - shutil.copy2(src=src, dst=dst) - try: - yield - finally: - self.status(msg='Removing %(dst)s', dst=dst) - os.unlink(dst) - - @contextlib.contextmanager - def _local_symlink(self, src, dst): - os.symlink(src, dst) - try: - yield - finally: - os.unlink(dst) - - def local_pxelinux(self, tftproot): - return self._local_copy('/usr/share/syslinux/pxelinux.0', - os.path.join(tftproot, 'pxelinux.0')) - - def local_kernel(self, rootfs, tftproot): - return self._local_copy(os.path.join(rootfs, 'boot/vmlinuz'), - os.path.join(tftproot, 'kernel')) - - @contextlib.contextmanager - def _remote_copy(self, hostname, src, dst): - persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') - with open(src, 'r') as f: - writeexts.ssh_runcmd(hostname, - ['install', '-D', '-m644', - '/proc/self/fd/0', dst], - stdin=f, stdout=None, stderr=None) - try: - yield - finally: - if not persist: - writeexts.ssh_runcmd(hostname, ['rm', dst]) - - @contextlib.contextmanager - def _remote_symlink(self, hostname, src, dst): - persist = os.environ.get('PXE_INSTALLER') in ('no', 'False') - writeexts.ssh_runcmd(hostname, - ['ln', '-s', '-f', src, dst], - stdin=None, stdout=None, stderr=None) - try: - yield - finally: - if not persist: - writeexts.ssh_runcmd(hostname, ['rm', '-f', dst]) - - @contextlib.contextmanager - def remote_kernel(self, rootfs, tftp_url, macaddr): - for name in ('vmlinuz', 'zImage', 'uImage'): - kernel_path = os.path.join(rootfs, 'boot', name) - if os.path.exists(kernel_path): - break - else: - raise writeexts.ExtensionError('Failed to locate kernel') - url = urlparse.urlsplit(tftp_url) - basename = '{}-kernel'.format(_normalise_macaddr(macaddr)) - target_path = os.path.join(url.path, basename) - with self._remote_copy(hostname=url.hostname, src=kernel_path, - dst=target_path): - 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 writeexts.ExtensionError( - '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', - nfsroot=nfsroot) - subprocess.check_call(['exportfs', '-o', 'ro,insecure,no_root_squash', - nfsroot]) - try: - yield - finally: - self.status(msg='Removing %(nfsroot)s from local nfsroots', - nfsroot=nfsroot) - subprocess.check_call(['exportfs', '-u', nfsroot]) - - @contextlib.contextmanager - def remote_nfsroot(self, rootfs, rsync_url, macaddr): - url = urlparse.urlsplit(rsync_url) - 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)) - subprocess.check_call(['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, device=None, - fdt_subpath=None, extra_args=''): - - if device is None: - ip_cfg = "ip=dhcp" - else: - ip_cfg = "ip=:::::{device}:dhcp::".format(device=device) - - fh.write(textwrap.dedent('''\ - DEFAULT default - LABEL default - LINUX {kernel_url} - APPEND root=/dev/nfs {ip_cfg} nfsroot={rootfs_nfs_url} {extra_args} - ''').format(kernel_url=kernel_tftp_url, ip_cfg=ip_cfg, - 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 - def local_pxeboot_config(self, tftproot, macaddr, ip, tftp_port, - nfsroot_dir, device=None): - kernel_tftp_url = 'tftp://{}:{}/kernel'.format(ip, tftp_port) - rootfs_nfs_url = '{}:{}'.format(ip, nfsroot_dir) - pxe_cfg_filename = _normalise_macaddr(macaddr) - pxe_cfg_path = os.path.join(tftproot, 'pxelinux.cfg', pxe_cfg_filename) - os.makedirs(os.path.dirname(pxe_cfg_path)) - with open(pxe_cfg_path, 'w') as f: - self._write_pxe_config(fh=f, kernel_tftp_url=kernel_tftp_url, - rootfs_nfs_url=rootfs_nfs_url, - device=device, - extra_args=os.environ.get('KERNEL_ARGS','')) - - try: - with self._local_symlink( - src=pxe_cfg_filename, - dst=os.path.join(tftproot, - 'pxelinux.cfg', - '01-' + pxe_cfg_filename)): - yield - finally: - os.unlink(pxe_cfg_path) - - @contextlib.contextmanager - def remote_pxeboot_config(self, tftproot, 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') - with tempfile.NamedTemporaryFile() as f: - 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 - def dhcp_server(self, interface, host_ip, target_ip, broadcast_ip): - with self._tempdir() as td: - leases_path = os.path.join(td, 'leases') - config_path = os.path.join(td, 'config') - stdout_path = os.path.join(td, 'stdout') - stderr_path = os.path.join(td, 'stderr') - pidfile_path = os.path.join(td, 'pid') - with open(config_path, 'w') as f: - f.write(textwrap.dedent('''\ - start {target_ip} - end {target_ip} - interface {interface} - max_leases 1 - lease_file {leases_path} - pidfile {pidfile_path} - boot_file pxelinux.0 - option dns {host_ip} - option broadcast {broadcast_ip} - ''').format(**locals())) - with open(stdout_path, 'w') as stdout, \ - open(stderr_path, 'w') as stderr: - sp = subprocess.Popen(['udhcpd', '-f', config_path], cwd=td, - stdin=open(os.devnull), stdout=stdout, - stderr=stderr) - try: - with executor(sp.pid): - yield - finally: - sp.terminate() - - def get_interface_ip(self, interface): - ip_addresses = [] - info = subprocess.check_output(['ip', '-o', '-f', 'inet', 'addr', - 'show', interface]).rstrip('\n') - if info: - tokens = collections.deque(info.split()[1:]) - ifname = tokens.popleft() - while tokens: - tok = tokens.popleft() - if tok == 'inet': - address = tokens.popleft() - address, netmask = address.split('/') - ip_addresses.append(address) - elif tok == 'brd': - tokens.popleft() # not interested in broadcast address - elif tok == 'scope': - tokens.popleft() # not interested in scope tag - else: - continue - if not ip_addresses: - raise writeexts.ExtensionError('Interface %s has no addresses' - % interface) - if len(ip_addresses) > 1: - warnings.warn('Interface %s has multiple addresses, ' - 'using first (%s)' % (interface, ip_addresses[0])) - return ip_addresses[0] - - def ipmi_set_target_vlan(self): - if any(env_var.startswith('IPMI_') for env_var in os.environ): - # Needs IPMI_USER, IPMI_PASSWORD, IPMI_HOST and PXEBOOT_VLAN - default = textwrap.dedent('''\ - ipmitool -I lanplus -U "$IPMI_USER" -E -H "$IPMI_HOST" \\ - lan set 1 vlan id "$PXEBOOT_VLAN" - ''') - else: - default = textwrap.dedent('''\ - while true; do - echo Please set the target\\'s vlan to $PXEBOOT_VLAN, \\ - then enter \\"vlanned\\" - read - if [ "$REPLY" = vlanned ]; then - break - fi - done - ''') - command = os.environ.get('PXEBOOT_SET_VLAN_COMMAND', default) - subprocess.check_call(['sh', '-euc', command, '-']) - - def ipmi_pxe_reboot_target(self): - if any(env_var.startswith('IPMI_') for env_var in os.environ): - # Needs IPMI_USER, IPMI_PASSWORD, IPMI_HOST and PXEBOOT_VLAN - default = textwrap.dedent('''\ - set -- ipmitool -I lanplus -U "$IPMI_USER" -E -H "$IPMI_HOST" - "$@" chassis bootdev pxe - "$@" chassis power reset - ''') - else: - default = textwrap.dedent('''\ - while true; do - echo Please reboot the target in PXE mode, then\\ - enter \\"pxe-booted\\" - read - if [ "$REPLY" = pxe-booted ]; then - break - fi - done - ''') - command = os.environ.get('PXEBOOT_PXE_REBOOT_COMMAND', default) - subprocess.check_call(['sh', '-euc', command, '-']) - - def wait_for_target_to_install(self): - command = os.environ.get( - 'PXEBOOT_WAIT_INSTALL_COMMAND', - textwrap.dedent('''\ - while true; do - echo Please wait for the system to install, then \\ - enter \\"installed\\" - read - if [ "$REPLY" = installed ]; then - break - fi - done - ''')) - subprocess.check_call(['sh', '-euc', command, '-']) - - def ipmi_unset_target_vlan(self): - if any(env_var.startswith('IPMI_') for env_var in os.environ): - # Needs IPMI_USER, IPMI_PASSWORD, IPMI_HOST - default = textwrap.dedent('''\ - ipmitool -I lanplus -U "$IPMI_USER" -E -H "$IPMI_HOST" \\ - lan set 1 vlan id off - ''') - else: - default = textwrap.dedent('''\ - while true; do - echo Please reset the target\\'s vlan, \\ - then enter \\"unvlanned\\" - read - if [ "$REPLY" = unvlanned ]; then - break - fi - done - ''') - command = os.environ.get('PXEBOOT_UNSET_VLAN_COMMAND', default) - subprocess.check_call(['sh', '-euc', command, '-']) - - def ipmi_reboot_target(self): - if any(env_var.startswith('IPMI_') for env_var in os.environ): - # Needs IPMI_USER, IPMI_PASSWORD, IPMI_HOST - default = textwrap.dedent('''\ - ipmitool -I lanplus -U "$IPMI_USER" -E -H "$IPMI_HOST" \\ - chassis power reset - ''') - else: - default = textwrap.dedent('''\ - while true; do - echo Please reboot the target, then\\ - enter \\"rebooted\\" - read - if [ "$REPLY" = rebooted ]; then - break - fi - done - ''') - command = os.environ.get('PXEBOOT_REBOOT_COMMAND', default) - subprocess.check_call(['sh', '-euc', command, '-']) - - def process_args(self, (temp_root, macaddr)): - interface = os.environ.get('PXEBOOT_DEPLOYER_INTERFACE', None) - target_interface = os.environ.get('PXEBOOT_TARGET_INTERFACE', None) - vlan = os.environ.get('PXEBOOT_VLAN') - if vlan is not None: vlan = int(vlan) - mode = os.environ.get('PXEBOOT_MODE') - if mode is None: - if interface: - if vlan is not None: - mode = 'spawn-vlan' - else: - if 'PXEBOOT_CONFIG_TFTP_ADDRESS' in os.environ: - mode = 'existing-dhcp' - else: - mode = 'spawn-novlan' - else: - mode = 'existing-server' - assert mode in ('spawn-vlan', 'spawn-novlan', 'existing-dhcp', - 'existing-server') - if mode == 'spawn-vlan': - with self.vlan(interface=interface, vlan=vlan) \ - as (host_ip, target_ip, broadcast_ip), \ - self.tftp_server(host_ip=host_ip, interface=interface) \ - as (tftp_port, tftproot), \ - self.local_pxelinux(tftproot=tftproot), \ - self.local_kernel(rootfs=temp_root, tftproot=tftproot), \ - self.local_nfsroot(rootfs=temp_root, target_ip=target_ip), \ - self.local_pxeboot_config(tftproot=tftproot, macaddr=macaddr, - device=target_interface, - ip=host_ip, tftp_port=tftp_port, - nfsroot_dir=temp_root), \ - self.dhcp_server(interface=interface, host_ip=host_ip, - target_ip=target_ip, - broadcast_ip=broadcast_ip): - self.ipmi_set_target_vlan() - self.ipmi_pxe_reboot_target() - self.wait_for_target_to_install() - self.ipmi_unset_target_vlan() - self.ipmi_reboot_target() - elif mode == 'spawn-novlan': - with self.static_ip(interface=interface) as (host_ip, target_ip, - broadcast_ip), \ - self.tftp_server(host_ip=host_ip, interface=interface, - tftp_port=69) \ - as (tftp_port, tftproot), \ - self.local_pxelinux(tftproot=tftproot), \ - self.local_kernel(rootfs=temp_root, tftproot=tftproot), \ - self.local_nfsroot(rootfs=temp_root, target_ip=target_ip), \ - self.local_pxeboot_config(tftproot=tftproot, macaddr=macaddr, - device=target_interface, - ip=host_ip, tftp_port=tftp_port, - nfsroot_dir=temp_root), \ - self.dhcp_server(interface=interface, host_ip=host_ip, - target_ip=target_ip, - broadcast_ip=broadcast_ip): - self.ipmi_pxe_reboot_target() - self.wait_for_target_to_install() - self.ipmi_reboot_target() - elif mode == 'existing-dhcp': - ip = self.get_interface_ip(interface) - config_tftpaddr = os.environ['PXEBOOT_CONFIG_TFTP_ADDRESS'] - with self.tftp_server(ip=ip, interface=interface, tftp_port=69) \ - as (tftp_port, tftproot), \ - self.local_kernel(rootfs=temp_root, tftproot=tftproot), \ - self.local_nfsroot(rootfs=temp_root, client_ip=''): - kernel_tftproot = 'tftp://{}:{}/'.format(ip, tftp_port) - rootfs_nfsroot = '{}:{}'.format(ip, temp_root) - with self.remote_pxeboot_config( - tftproot=config_tftpaddr, - kernel_tftproot=kernel_tftproot, - kernel_subpath='kernel', - rootfs_nfsroot=nfsroot, - rootfs_subpath='', - macaddr=macaddr): - self.ipmi_pxe_reboot_target() - self.wait_for_target_to_install() - self.ipmi_reboot_target() - elif mode == 'existing-server': - config_tftpaddr = os.environ[ 'PXEBOOT_CONFIG_TFTP_ADDRESS'] - kernel_tftpaddr = os.environ.get('PXEBOOT_KERNEL_TFTP_ADDRESS', - config_tftpaddr) - url = urlparse.urlsplit(kernel_tftpaddr) - kernel_tftproot = os.environ.get('PXEBOOT_KERNEL_TFTP_ROOT', - 'tftp://%s/%s' % (url.hostname, - url.path)) - rootfs_rsync = os.environ['PXEBOOT_ROOTFS_RSYNC_ADDRESS'] - 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, tftp_url=kernel_tftpaddr, - macaddr=macaddr) as kernel_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): - 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: - writeexts.ExtensionError('Invalid PXEBOOT_MODE: %s' % mode) - -PXEBoot().run() diff --git a/extensions/pxeboot.write.help b/extensions/pxeboot.write.help deleted file mode 100644 index 7cb78bce..00000000 --- a/extensions/pxeboot.write.help +++ /dev/null @@ -1,166 +0,0 @@ -help: > - pxeboot.write extension. - - - This write extension will serve your generated system over NFS to - the target system. - - In all modes `location` is the mac address of the interface that - the target will PXE boot from. This is used so that the target will - load the configuration file appropriate to it. - - - # `PXEBOOT_MODE` - - - It has 4 modes, which can be specified with PXEBOOT_MODE, or inferred - from which parameters are passed: - - - ## spawn-vlan - - - Specify PXEBOOT_DEPLOYER_INTERFACE and PXEBOOT_VLAN to configure - the target to pxeboot on a vlan and spawn a dhcp, nfs and tftp - server. This is potentially the fastest, since it doesn't need to - copy data to other servers. - - This will create a vlan interface for the interface specified in - PXEBOOT_DEPLOYER_INTERFACE and spawn a dhcp server which serves - pxelinux.0, a configuration file and a kernel image from itself. - - The configuration file informs the target to boot with a kernel - command-line that uses an NFS root served from the deployment host. - - - ## spawn-novlan - - - Specify PXEBOOT_DEPLOYER_INTERFACE without PXEBOOT_VLAN to configure - like `spawn-vlan`, but without creating the vlan interface. - - This assumes that you have exclusive access to the interface, such - as if you're plugged in to the device directly, or your interface - is vlanned by your infrastructure team. - - This is required if you are serving from a VM and bridging it to the - correct network via macvtap. For this to work, you need to macvtap - bridge to a pre-vlanned interface on your host machine. - - - ## existing-dhcp - - - Specify PXEBOOT_DEPLOYER_INTERFACE and PXEBOOT_CONFIG_TFTP_ADDRESS - to put config on an existing tftp server, already configured by the - dhcp server. - - This spawns a tftp server and configures the local nfs server, but - doesn't spawn a dhcp server. This is useful if you have already got a - dhcp server that serves PXE images. - - PXEBOOT_CONFIG_TFTP_ADDRESS is a URL in the form `sftp://$HOST/$PATH`. - The configuration file is copied to `$PATH/pxelinux.cfg/` on the - target identified by `$HOST`. - - - ## existing-server - - - Specify at least PXEBOOT_CONFIG_TFTP_ADDRESS and - PXEBOOT_ROOTFS_RSYNC_ADDRESS to specify existing servers to copy - config, kernels and the rootfs to. - - Configuration is copied to the target as `existing-dhcp`. - - Specify PXEBOOT_KERNEL_TFTP_ADDRESS if the tftp server that the - kernel must be downloaded from is different to that of the pxelinux - configuration file. - - PXEBOOT_ROOTFS_RSYNC_ADDRESS is a rsync URL describing where to copy - nfsroots to where they will be exported by the NFS server. - - Specify PXEBOOT_ROOTFS_NFSROOT if the nfsroot appears as a different - address from the target's perspective. - - - # IPMI commands - - - After the PXE boot has been set up, the target needs to be rebooted - in PXE mode. - - If the target is IPMI enabled, you can set `IPMI_USER`, `IPMI_HOST` - and `IPMI_PASSWORD` to make it reboot the target into netboot mode - automatically. - - If they are not specified, then instructions will be displayed, and - `pxeboot.write` will wait for you to finish. - - If there are command-line automation tools for rebooting the target - in netboot mode, then appropriate commands can be defined in the - following variables. - - - ## PXEBOOT_PXE_REBOOT_COMMAND - - - This command will be used to reboot the target device with its boot - device set to PXE boot. - - - ## PXEBOOT_REBOOT_COMMAND - - - This command will be used to reboot the target device in its default - boot mode. - - - ## PXEBOOT_WAIT_INSTALL_COMMAND - - - 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. - - - ## PXEBOOT_TARGET_INTERFACE - - Name of the interface of the target to pxeboot from. Some targets - with more than one interface try to get the rootfs from a different - interface than the interface from where the pxeboot server is - reachable. Using this variable, the kernel arguments will be filled - to include the device. - - Note that the name of this interface is the kernel's default name, - usually called ethX, and is non-determinisic. diff --git a/extensions/pyfdisk.README b/extensions/pyfdisk.README deleted file mode 100644 index 8b3b941b..00000000 --- a/extensions/pyfdisk.README +++ /dev/null @@ -1,144 +0,0 @@ -Introduction -============ - -The pyfdisk.py module provides a basic Python wrapper around command-line -fdisk from util-linux, and some assorted related functions for querying -information from real disks or disk images. - - -YAML partition specification -============================ - -A YAML file may be loaded, using the function load_yaml(). This can contain -all the information needed to create a Device object which can then be -committed to disk. - -The format of this file is as follows: - - start_offset: 2048 - partition_table_format: gpt - partitions: - - description: boot - size: 1M - fdisk_type: 0x0B - filesystem: vfat - boot: yes - mountpoint: /boot - - description: rootfs - number: 3 - size: 10G - filesystem: btrfs - fdisk_type: 0x83 - mountpoint: / - - description: src - size: fill - filesystem: ext4 - fdisk_type: 0x81 - mountpoint: /src - -There are a couple of global attributes: - -* 'start_offset': specifies the start sector of the first partition on the - device (default: 2048) - -* 'partition_table_format': specifies the partition table format to be used - when creating the partition table. Possible format - strings are 'gpt', 'dos', or 'mbr' ('dos' and - 'mbr' are interchangeable). (default: gpt) - -Following this, up to 4 (for MBR) or 128 (for GPT) partitions can be -specified, in the list, 'partitions'. For partitions, 'size', 'fdisk_type' and -'filesystem' are required. - -* 'size' is the size in bytes, or 'fill', which will expand the partition to - fill any unused space. Multiple partitions with 'size: fill' will share the - free space on the device. Human readable formatting can be used: K, M, G, T, - for integer multiples (calculated as powers of 2^n) - -* 'fdisk_type' is the fdisk partition type, specified as a hexadecimal value - (default: 0x81) - -* 'filesystem' specifies a filesystem to be created on the partition. It can - be a filesystem with associated any mkfs.* tool, or 'none' for an - unformatted partition. - -Optional partition attributes include: - -* 'number' is optional, and can be used to override the numbering of - partitions, if it is desired to have partition numbering that differs from - the physical order of the partitions on the disk. - - For all un-numbered partitions, the physical order of partitions on the - device is determined by the order in which they appear in the - specification. - - For any partitions without a specified number, partition numbering is - handled automatically. In the example above, /boot is 1, /src is 2, - and / is 3, even though the physical order differs. - -* 'boot' sets the partition's bootable flag (currently only for MBR partition - tables) - -* 'mountpoint' specifies a mountpoint of a partition. One partition must - have a '/' mountpoint to contain the rootfs, otherwise this is optional. - Files present in the rootfs under the mount point for a given partition will - be copied to the created partition. - -load_yaml() produces a Device object, populated with any partitions contained -in the specification. - - -Objects -======= - -Partition - An object containing properties of a partition - -Device - An object holding information about a physical device, and the - overall properties of the partitioning scheme. It contains a - PartitionList holding the partitions on the device. - -PartitionList - An object which holds a list of partitions on the disk. New - partitions can be added to the list at any time. When the list - is queried, properties of partitions which depend on the - properties of the other partitions in the list, for example - the size of a fill partition, or numbering, are recalculated, - and an updated copy of a Partition object is returned. - -Extent - An object which helps encapsulate sector dimensions for partitions - and devices. - - -Quick start -=========== - - >>> dev = pyfdisk.Device('test.img', 'fill') - >>> print dev - - >>> part = pyfdisk.Partition(size='1M', fdisk_type=0x81, filesystem='ext4', mountpoint='/test1') - >>> part2 = pyfdisk.Partition(size='fill', filesystem='btrfs', mountpoint='/test2') - >>> dev.add_partition(part) - >>> dev.add_partition(part2) - >>> print dev.partitionlist - Partition - size: 14663168 - fdisk type: 0x81 - filesystem: btrfs - start: 4096 - end: 32734 - number: 2 - mountpoint: /test2 - Partition - size: 1048576 - fdisk type: 0x81 - filesystem: ext4 - start: 2048 - end: 4095 - number: 1 - mountpoint: /test1 - >>> dev.commit() - Creating GPT partition table on test.img - - $ fdisk -l test.img - Disk test.img: 16 MiB, 16777216 bytes, 32768 sectors - ... - Device Start End Sectors Size Type - test.img1 2048 4095 2048 1M Linux filesystem - test.img2 4096 32734 28639 14M Linux filesystem diff --git a/extensions/pyfdisk.py b/extensions/pyfdisk.py deleted file mode 100644 index a7796729..00000000 --- a/extensions/pyfdisk.py +++ /dev/null @@ -1,769 +0,0 @@ -#!/usr/bin/env python2 -# Copyright (C) 2015 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, see . - -""" -A simple Python wrapper for fdisk - - * Intends to have as few dependencies as possible, beyond command line fdisk - * Intends to work on Linux, though may work on other operating systems with - fdisk from util-linux. - * Provides for the creation of MBR and GPT partitioned images or devices - * Includes some utility functions for reading information from existing - partition tables - -Caveats: - * Designed to cater for disks using 4096 byte sectors, although this hasn't - been tested yet. -""" - -import contextlib -from copy import deepcopy -import re -import subprocess -import time -import yaml - - -class Extent(object): - """ - A class to hold start and end points for other objects - - Start and end points are measured in sectors. This class transparently - handles the inclusive nature of the start and end sectors of blocks of - storage. It also allows extents to be aligned within other extents. - """ - - def __init__(self, start=0, length=0, end=0): - if length and not start: - raise PartitioningError('Extent requires a non-zero start ' - 'point and length') - if start and length: - self.start = int(start) - self.end = int(start) + int(length) - 1 - else: - self.start = int(start) - self.end = int(end) - - self.filled_sectors = 0 - - def __max__(self): - return self.end - - def __min__(self): - return self.start - - def __len__(self): - return self.end - self.start + 1 - - def __add__(self, other): - """Return the sum of two extents""" - return Extent(start=self.start, - length=(len(self) + len(other))) - - def __iadd__(self, other): - """+=""" - self.end += len(other) - return self - - def __gt__(self, other): - return len(self) > len(other) - - def __lt__(self, other): - return not self > other - - def __str__(self): - return ('' % - (self.start, self.end, len(self))) - - def pack(self, other): - """ - Return a new Extent aligned to self's first unused sector - - This is done by length, to quantify fitting an area of disk space - inside the other. The filled space in self is calculated and updated. - - Returns: - A new Extent, starting at the first available sector in `self`, - with the same length as `other`. - """ - length_other = len(other) - first_free_sector = self.start + self.filled_sectors - if length_other + self.filled_sectors > len(self): - raise PartitioningError('Not enough free space to pack Extent') - self.filled_sectors += length_other - return Extent(start=first_free_sector, length=length_other) - - def free_sectors(self): - return len(self) - self.filled_sectors - - -class PartitionList(object): - """ - An iterable object to contain and process a list of Partition objects - - This class eases the calculation of partition sizes and numbering, since - the properties of a given partition depend on each of the other partitions - in the list. - - Attributes: - device: A Device class containing the partition list - """ - - def __init__(self, device): - """ - Initialisation function - - Args: - device: A Device object - """ - self.device = device - self.extent = device.extent - - self.__cached_list_hash = 0 - - self.__partition_list = [] - self.__iter_index = 0 - - def append(self, partition): - """Append a new Partition object to the list""" - partition.check() - if isinstance(partition, Partition): - for part in self.__partition_list: - dup_attrib = part.compare(partition) - if dup_attrib: - raise PartitioningError('Duplicated partition attribute ' - '\'%s\'' % dup_attrib) - self.__partition_list.append(partition) - else: - raise PartitioningError('PartitionList can only ' - 'contain Partition objects') - - def __iter__(self): - """Return a copy of self as an iterable object""" - self.__iter_index = 0 - copy = deepcopy(self) - return copy - - def __next__(self): - """Return the next item in an iteration""" - if self.__iter_index == len(self.__partition_list): - raise StopIteration - else: - partition = self[self.__iter_index] - self.__iter_index += 1 - return partition - - def next(self): - """Provide a next() method for Python 2 compatibility""" - return self.__next__() - - def __getitem__(self, i): - """Return an partition from the list, sorted by partition number""" - part_list = sorted(self.__update_partition_list(), - key=lambda part: part.number) - return part_list[i] - - def free_sectors(self): - """Calculate the amount of unused space in the list""" - part_list = self.__update_partition_list() - self.extent.filled_sectors = 0 - for part in part_list: - self.extent.pack(part.extent) - return self.extent.free_sectors() - - def __update_partition_list(self): - """ - Allocate extent and numbering for each Partition object in the list - - A copy of the partition list is made so that any Partition object - returned from this list is a copy of a stored Partition object, thus - any partitions stored in the partition list remain intact even if a - copy is modified after is is returned. Hashing is used to avoid - updating the list when the partition list has not changed. - """ - current_list_hash = hash(str(self.__partition_list)) - if current_list_hash == self.__cached_list_hash: - return self.__cached_list - - part_list = deepcopy(self.__partition_list) - used_numbers = set() - fill_partitions = set(partition for partition in part_list - if partition.size == 'fill') - requested_numbers = set(partition.number for partition in part_list - if hasattr(partition, 'number')) - - # Get free space and the size of 'fill' partitions - self.extent.filled_sectors = 0 - for part in part_list: - if part.size != 'fill': - extent = Extent(start=1, - length=self.get_length_sectors(part.size)) - part.extent = extent - self.extent.pack(extent) - - # Allocate aligned Extents and process partition numbers - if len(fill_partitions): - fill_size = self.extent.free_sectors() / len(fill_partitions) - # Set size of fill partitions - for part in fill_partitions: - part.size = fill_size * self.device.sector_size - part.extent = Extent(start=1, length=fill_size) - - self.extent.filled_sectors = 0 - for part in part_list: - part.extent = self.extent.pack(part.extent) - - # Find the next unused partition number if not assigned - if hasattr(part, 'number'): - num = part.number - else: - for n in range(1, self.device.max_allowed_partitions + 1): - if n not in used_numbers and n not in requested_numbers: - num = n - break - - part.number = num - used_numbers.add(num) - - self.__cached_list_hash = current_list_hash - self.__cached_list = part_list - return part_list - - def get_length_sectors(self, size_bytes): - """Get a length in sectors, aligned to 4096 byte boundaries""" - return (int(size_bytes) / self.device.sector_size + - ((int(size_bytes) % 4096) != 0) * - (4096 / self.device.sector_size)) - - def __str__(self): - string = '' - for part in self: - string = '%s\n%s\n' % (part, string) - return string.rstrip() - - def __len__(self): - return len(self.__partition_list) - - def __setitem__(self, i, value): - """Update the ith item in the list""" - self.append(partition) - - -class Partition(object): - """ - A class to describe a partition in a disk or image - - The required attributes are loaded via kwargs. - - Required attributes: - size: String describing the size of the partition in bytes - This may also be 'fill' to indicate that this partition should - be expanded to fill all unused space. Where there is more than - one fill partition, unused space is divided equally between the - fill partitions. - fdisk_type: An integer representing the hexadecimal code used by fdisk - to describe the partition type. Any partitions with - fdisk_type='none' create an area of unused space. - - Optional attributes: - **kwargs: A mapping of any keyword arguments - filesystem: A string describing the filesystem format for the - partition, or 'none' to skip filesystem creation. - description: A string describing the partition, for documentation - boot: Boolean string describing whether to set the bootable flag - mountpoint: String describing the mountpoint for the partition - number: Number used to override partition numbering for the - partition (Possible only when using an MBR partition table) - """ - def __init__(self, size=0, fdisk_type=0x81, filesystem='none', **kwargs): - if not size and 'size' not in kwargs: - raise PartitioningError('Partition must have a non-zero size') - - self.filesystem = filesystem - self.fdisk_type = fdisk_type - - self.size = human_size(size) - self.__dict__.update(**kwargs) - - def check(self): - """Check for correctness""" - if self.fdisk_type == 'none': - if self.filesystem != 'none': - raise PartitioningError('Partition: Free space ' - 'cannot have a filesystem') - if hasattr(self, 'mountpoint') and self.mountpoint != 'none': - raise PartitioningError('Partition: Free space ' - 'cannot have a mountpoint') - - def compare(self, other): - """Check for mutually exclusive attributes""" - non_duplicable = ('number', 'mountpoint') - for attrib in non_duplicable: - if hasattr(self, attrib) and hasattr(other, attrib): - if getattr(self, attrib) == getattr(other, attrib): - return attrib - return False - - def __str__(self): - string = ('Partition\n' - ' size: %s\n' - ' fdisk type: %s\n' - ' filesystem: %s' - % (self.size, - hex(self.fdisk_type) if self.fdisk_type != 'none' - else 'none', - self.filesystem)) - if hasattr(self, 'extent'): - string += ( - '\n start: %s' - '\n end: %s' - % (self.extent.start, self.extent.end)) - if hasattr(self, 'number'): - string += '\n number: %s' % self.number - if hasattr(self, 'mountpoint'): - string += '\n mountpoint: %s' % self.mountpoint - if hasattr(self, 'boot'): - string += '\n bootable: %s' % self.boot - - return string - - -class Device(object): - """ - A class to describe a disk or image, and its partition layout - - Attributes are loaded from **kwargs, containing key-value pairs describing - the required attributes. This can be loaded from a YAML file, using the - module function load_yaml(). - - Required attributes: - location: The location of the device or disk image - size: A size in bytes describing the total amount of space the - partition table on the device will occupy, or 'fill' to - automatically fill the available space. - - Optional attributes: - **kwargs: A mapping of any keyword arguments - start_offset: The first 512 byte sector of the first partition - (default: 2048) - partition_table_format: A string describing the type of partition - table used on the device (default: 'gpt') - partitions: A list of mappings for the attributes for each Partition - object. update_partitions() populates the partition list - based on the contents of this attribute. - """ - min_start_bytes = 1024**2 - - def __init__(self, location, size, **kwargs): - - if 'partition_table_format' not in kwargs: - self.partition_table_format = 'gpt' - if 'start_offset' not in kwargs: - self.start_offset = 2048 - - target_size = get_disk_size(location) - if str(size).lower() == 'fill': - self.size = target_size - else: - self.size = human_size(size) - - if self.size > target_size: - raise PartitioningError('Not enough space available on target') - - if self.size <= self.min_start_bytes: - raise PartitioningError('Device size must be greater than %d ' - 'bytes' % self.min_start_bytes) - - # Get sector size - self.sector_size = get_sector_size(location) - self.location = location - - # Populate Device attributes from keyword args - self.__dict__.update(**kwargs) - - if self.partition_table_format.lower() == 'gpt': - self.max_allowed_partitions = 128 - else: - self.max_allowed_partitions = 4 - - # Process Device size - start = (self.start_offset * 512) / self.sector_size - # Sector quantities in the specification are assumed to be 512 bytes - # This converts to the real sector size - if (start * self.sector_size) < self.min_start_bytes: - raise PartitioningError('Start offset should be greater than ' - '%d, for %d byte sectors' % - (min_start_bytes / self.sector_size, - self.sector_size)) - # Check the disk's first partition starts on a 4096 byte boundary - # this ensures alignment, and avoiding a reduction in performance - # on disks which use a 4096 byte physical sector size - if (start * self.sector_size) % 4096 != 0: - print('WARNING: Start sector is not aligned ' - 'to 4096 byte sector boundaries') - - # End sector is one sector less than the disk length - disk_end_sector = (self.size / self.sector_size) - 1 - if self.partition_table_format == 'gpt': - # GPT partition table is duplicated at the end of the device. - # GPT header takes one sector, whatever the sector size, - # with a 16384 byte 'minimum' area for partition entries, - # supporting up to 128 partitions (128 bytes per entry). - # The duplicate GPT does not include the 'protective' MBR - gpt_size = ((16 * 1024) / self.sector_size) + 1 - self.extent = Extent(start=start, - end=(disk_end_sector - gpt_size)) - else: - self.extent = Extent(start=start, end=disk_end_sector) - - self.update_partitions() - - def update_partitions(self, partitions=None): - """ - Reset list, populate with partitions from a list of attributes - - Args: - partitions: A list of partition keyword attributes - """ - - self.partitionlist = PartitionList(self) - if partitions: - self.partitions = partitions - if hasattr(self, 'partitions'): - for partition_args in self.partitions: - self.add_partition(Partition(**partition_args)) - - def add_partition(self, partition): - """ - Add a Partition object to the device's list of partitions - - Args: - partition: a Partition class - """ - - if len(self.partitionlist) < self.max_allowed_partitions: - self.partitionlist.append(partition) - else: - raise PartitioningError('Exceeded maximum number of partitions ' - 'for %s partition table (%d)' % - (self.partition_table_format.upper(), - self.max_allowed_partitions)) - - def get_partition_by_mountpoint(self, mountpoint): - """Return a Partition with a specified mountpoint""" - - try: - return next(r for r in self.partitionlist - if hasattr(r, 'mountpoint') - and r.mountpoint == mountpoint) - except StopIteration: - return False - - def commit(self): - """Write the partition table to the disk or image""" - - pt_format = self.partition_table_format.lower() - print("Creating %s partition table on %s" % - (pt_format.upper(), self.location)) - - # Create a new partition table - if pt_format in ('mbr', 'dos'): - cmd = "o\n" - elif pt_format == 'gpt': - cmd = "g\n" - else: - raise PartitioningError('Unrecognised partition ' - 'table type \'%s\'' % pt_format) - - for partition in self.partitionlist: - # Create partitions - if str(partition.fdisk_type).lower() != 'none': - cmd += "n\n" - if pt_format in ('mbr', 'dos'): - cmd += "p\n" - cmd += (str(partition.number) + "\n" - "" + str(partition.extent.start) + "\n" - "" + str(partition.extent.end) + "\n") - - # Set partition types - cmd += "t\n" - if partition.number > 1: - # fdisk does not ask for a partition - # number when setting the type of the - # first created partition - cmd += str(partition.number) + "\n" - cmd += str(hex(partition.fdisk_type)) + "\n" - - # Set bootable flag - if hasattr(partition, 'boot') and pt_format == 'mbr': - if str(partition.boot).lower() in ('yes', 'true'): - cmd += "a\n" - if partition.number > 1: - cmd += str(partition.number) + "\n" - - # Write changes - cmd += ("w\n" - "q\n") - p = subprocess.Popen(["fdisk", self.location], - stdin=subprocess.PIPE, - stderr=subprocess.PIPE, - stdout=subprocess.PIPE) - output = p.communicate(cmd) - - errors = output[1].split('\n')[1:-1] - if errors: - # Exception handling is done in this way since fdisk will not - # return a failure exit code if it finds problems with its input. - # Note that the message 'disk does not contain a valid partition - # table' is not an error, it's a status message printed to stderr - # when fdisk starts with a blank device. - raise FdiskError('"%s"' % ' '.join(str(x) for x in errors)) - - def get_partition_uuid(self, partition): - """Read a partition's UUID from disk (MBR or GPT)""" - - return get_partition_uuid(self.location, partition.number, - self.partition_table_format) - - def create_filesystems(self, skip=[]): - """Create filesystems on the disk or image - - Args: - skip: An iterable of mountpoints identifying partitions to skip - filesystem creation on, for example if custom settings are - required - """ - - for part in self.partitionlist: - if hasattr(part, 'mountpoint') and part.mountpoint in skip: - continue - if part.filesystem.lower() != 'none': - with create_loopback(self.location, - part.extent.start * self.sector_size, - part.size) as loop: - print ('Creating %s filesystem on partition %s' % - (part.filesystem, part.number)) - subprocess.check_output(['mkfs.' + part.filesystem, loop]) - - def __str__(self): - return ('' % - (self.location, self.size, len(self.partitionlist))) - - -class PartitioningError(Exception): - - def __init__(self, msg=None): - self.msg = msg - - def __str__(self): - return self.msg - - -class FdiskError(Exception): - - def __init__(self, msg=None): - self.msg = msg - - def __str__(self): - return self.msg - - -def load_yaml(location, size, yaml_file): - """ - Load partition data from a yaml specification - - The YAML file describes the attributes documented in the Device - and Partition classes. - - Args: - yaml_file: String path to a YAML file to load - location: Path to the device node or image to use for partitioning - size: The desired device size in bytes (may be 'fill' to occupy the - entire device - - Returns: - A Device object - """ - - with open(yaml_file, 'r') as f: - kwargs = yaml.safe_load(f) - return Device(location, size, **kwargs) - - -def get_sector_size(location): - """Get the logical sector size of a block device or image, in bytes""" - - return int(__filter_fdisk_list_output('Sector size.*?(\d+) bytes', - location)[0]) - -def get_disk_size(location): - """Get the total size of a block device or image, in bytes""" - - return int(__filter_fdisk_list_output('Disk.*?(\d+) bytes', - location)[0]) - -def get_partition_offsets(location): - """Return an array of the partition start sectors in a device or image""" - - return __get_fdisk_list_numeric_column(location, 1) - -def get_partition_sector_sizes(location): - """Return an array of sizes of partitions in a device or image in sectors""" - - return __get_fdisk_list_numeric_column(location, 3) - -def __get_fdisk_list_numeric_column(location, column): - return map(int, __filter_fdisk_list_output('%s(?:\d+[\*\s]+){%d}(\d+)' % - (location, column), location)) - -def __filter_fdisk_list_output(regex, location): - r = re.compile(regex, re.DOTALL) - m = re.findall(r, subprocess.check_output(['fdisk', '-l', location])) - if m: - return m - else: - raise PartitioningError('Error reading information from fdisk') - -def human_size(size_string): - """Parse strings for human readable size factors""" - - facts_of_1024 = ['', 'k', 'm', 'g', 't'] - m = re.match('^(\d+)([kmgtKMGT]?)$', str(size_string)) - if not m: - return size_string - return int(m.group(1)) * (1024 ** facts_of_1024.index(m.group(2).lower())) - -@contextlib.contextmanager -def create_loopback(mount_path, offset=0, size=0): - """ - Create a loopback device for accessing partitions in block devices - - Args: - mount_path: String path to mount - offset: Offset of the start of a partition in bytes (default 0) - size: Limits the size of the partition, in bytes (default 0). This is - important when creating filesystems, otherwise tools often - corrupt areas beyond the desired limits of the partition. - Returns: - The path to a created loopback device node - """ - - try: - base_args = ['losetup', '--show', '-f', '-P', '-o', str(offset)] - if size and offset: - cmd = base_args + ['--sizelimit', str(size), mount_path] - else: - cmd = base_args + [mount_path] - loop_device = subprocess.check_output(cmd).rstrip() - # Allow the system time to see the new device On some systems, mounts - # created on the loopdev too soon after creating the loopback device - # may be unreliable, even though the -P option (--partscan) is passed - # to losetup - time.sleep(1) - except subprocess.CalledProcessError: - PartitioningError('Error creating loopback') - try: - yield loop_device - finally: - subprocess.check_call(['losetup', '-d', loop_device]) - -def get_pt_type(location): - """Read the partition table type from location (device or image)""" - - pt_type = __get_blkid_output('PTTYPE', location).lower() - return 'none' if pt_type == '' else pt_type - -def __get_blkid_output(field, location): - return subprocess.check_output(['blkid', '-p', '-o', 'value', - '-s', field, location]).rstrip() - -def get_partition_uuid(location, part_num, pt_type=None): - """ - Read the partition UUID (MBR or GPT) for location (device or image) - - Args: - location: Path to device or image - part_num: Integer number of the partition - pt_type: The partition table format (MBR or GPT) - """ - - if not pt_type: - pt_type = get_pt_type(location) - if pt_type == 'gpt': - return get_partition_gpt_guid(location, part_num) - elif pt_type == 'mbr': - return get_partition_mbr_uuid(location, part_num) - -def get_partition_mbr_uuid(location, part_num): - """ - Get a partition's UUID in a device using MBR partition table - - In Linux, MBR partition UUIDs are comprised of the NT disk signature, - followed by '-' and a two digit, zero-padded partition number. This is - necessary since the MBR does not provide per-partition GUIDs as GPT - partition tables do. This can be passed to the kernel with - "root=PARTUUID=$UUID" to identify a partition containing a root - filesystem. - - Args: - partition: A partition object - location: Location of the storage device containing the partition - - an image or device node - Returns: - A UUID referring to an MBR partition, e.g. '97478dab-02' - """ - - pt_uuid = __get_blkid_output('PTUUID', location).upper() - return '%s-%02d' % (pt_uuid, part_num) - -def get_partition_gpt_guid(location, part_num): - """ - Get a partition's GUID from a GPT partition table - - This is read directly from the partition table, since current fdisk does - not support reading GPT partition GUIDs. It does not require special tools - (gfdisk). This is the GUID which identifies the partition, created with - the partition table, as opposed to the filesystem UUID, created with the - filesystem. It is particularly useful for specifying the partition which - the Linux kernel can use on boot to find the root filesystem, e.g. when - using the kernel command line "root=PARTUUID=$UUID" - - Args: - part_num: The partition number - location: Location of the storage device containing the partition - - an image path or device node - Returns: - A GUID string, e.g. 'B342D1AB-4B65-4601-97DC-D6DF3FE2E95E' - """ - - sector_size = get_sector_size(location) - # The partition GUID is located two sectors (protective MBR + GPT header) - # plus 128 bytes for each partition entry in the table, plus 16 bytes for - # the location of the partition's GUID - guid_offset = (2 * sector_size) + (128 * (part_num - 1)) + 16 - - with open(location, 'rb') as f: - f.seek(guid_offset) - raw_uuid_bin = f.read(16) - - a = '' - for c in raw_uuid_bin: - a += '%02X' % ord(c) - - return ('%s%s%s%s-%s%s-%s%s-%s-%s' % - (a[6:8], a[4:6], a[2:4], a[0:2], - a[10:12], a[8:10], - a[14:16], a[12:14], - a[16:20], a[20:32])) diff --git a/extensions/rawdisk.check b/extensions/rawdisk.check deleted file mode 100755 index e7aed390..00000000 --- a/extensions/rawdisk.check +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'rawdisk' write extension''' - -import os - -import writeexts - - -class RawdiskCheckExtension(writeexts.WriteExtension): - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - self.require_btrfs_in_deployment_host_kernel() - - location = args[0] - upgrade = self.get_environment_boolean('UPGRADE') - if upgrade: - if not self.is_device(location): - if not os.path.isfile(location): - raise writeexts.ExtensionError( - 'Cannot upgrade %s: it is not an existing disk image' % - location) - - version_label = os.environ.get('VERSION_LABEL') - if version_label is None: - raise writeexts.ExtensionError( - 'VERSION_LABEL was not given. It is required when ' - 'upgrading an existing system.') - else: - if not self.is_device(location): - if os.path.exists(location): - raise writeexts.ExtensionError( - 'Target %s already exists. Use `morph upgrade` if you ' - 'want to update an existing image.' % location) - -RawdiskCheckExtension().run() diff --git a/extensions/rawdisk.write b/extensions/rawdisk.write deleted file mode 100755 index ad81ca45..00000000 --- a/extensions/rawdisk.write +++ /dev/null @@ -1,122 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2012-2015 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, see . - - -'''A Morph deployment write extension for raw disk images.''' - - -import contextlib -import os -import pyfdisk -import re -import subprocess -import sys -import time -import tempfile - -import writeexts - - -class RawDiskWriteExtension(writeexts.WriteExtension): - - '''See rawdisk.write.help for documentation''' - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - upgrade = self.get_environment_boolean('UPGRADE') - - if upgrade: - self.upgrade_local_system(location, temp_root) - else: - try: - if not self.is_device(location): - with self.created_disk_image(location): - self.create_baserock_system(temp_root, location) - self.status(msg='Disk image has been created at %s' % - location) - else: - self.create_baserock_system(temp_root, location) - self.status(msg='System deployed to %s' % location) - except Exception: - self.status(msg='Failure to deploy system to %s' % - location) - raise - - def upgrade_local_system(self, location, temp_root): - self.complete_fstab_for_btrfs_layout(temp_root) - - try: - with self.mount(location) as mp: - self.do_upgrade(mp, temp_root) - return - except subprocess.CalledProcessError: - pass - - # At this point, we have failed to mount a raw image, so instead - # search for a Baserock root filesystem in the device's partitions - with self.find_and_mount_rootfs(location) as mp: - self.do_upgrade(mp, temp_root) - - def do_upgrade(self, mp, temp_root): - version_label = self.get_version_label(mp) - self.status(msg='Updating image to a new version with label %s' % - version_label) - - version_root = os.path.join(mp, 'systems', version_label) - os.mkdir(version_root) - - old_orig = os.path.join(mp, 'systems', 'default', 'orig') - new_orig = os.path.join(version_root, 'orig') - subprocess.check_call( - ['btrfs', 'subvolume', 'snapshot', old_orig, new_orig]) - - subprocess.check_call( - ['rsync', '-a', '--checksum', '--numeric-ids', '--delete', - temp_root + os.path.sep, new_orig]) - - self.create_run(version_root) - - default_path = os.path.join(mp, 'systems', 'default') - if os.path.exists(default_path): - os.remove(default_path) - else: - # we are upgrading and old system that does - # not have an updated extlinux config file - if self.bootloader_config_is_wanted(): - self.generate_bootloader_config(mp) - self.install_bootloader(mp) - os.symlink(version_label, default_path) - - if self.bootloader_config_is_wanted(): - self.install_kernel(version_root, temp_root) - - def get_version_label(self, mp): - version_label = os.environ.get('VERSION_LABEL') - - if version_label is None: - raise writeexts.ExtensionError('VERSION_LABEL was not given') - - if os.path.exists(os.path.join(mp, 'systems', version_label)): - raise writeexts.ExtensionError('VERSION_LABEL %s already exists' - % version_label) - - return version_label - - -RawDiskWriteExtension().run() diff --git a/extensions/rawdisk.write.help b/extensions/rawdisk.write.help deleted file mode 100644 index 72e285b7..00000000 --- a/extensions/rawdisk.write.help +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Write a system produced by Morph to a physical disk, or to a file that can - be used as a virtual disk. The target will be formatted as a single Btrfs - partition, with the system image written to a subvolume in /systems, and - other subvolumes created for /home, /opt, /root, /srv and /var. - - When written to a physical drive, the drive can be used as the boot device - for a 'real' machine. - - When written to a file, the file can be used independently of `morph` to - create virtual machines with KVM / libvirt, OpenStack or, after converting - it to VDI format, VirtualBox. - - `morph deploy` will fail if the file specified by `location` already - exists. - - If used in `morph upgrade`, the rootfs produced by 'morph build' is added - to the existing raw disk image or device as an additional btrfs sub-volume. - `morph upgrade` will fail if the file specified by `location` does not - exist, or is not a Baserock raw disk image. (Most users are unlikely to - need or use this functionality: it is useful mainly for developers working - on the Baserock tools.) - - Parameters: - - * location: the pathname of the disk image to be created/upgraded, or the - path to the physical device. - - * VERSION_LABEL=label - should contain only alpha-numeric - characters and the '-' (hyphen) character. Mandatory if being used with - `morph update` - - * INITRAMFS_PATH=path: the location of an initramfs for the bootloader to - tell Linux to use, rather than booting the rootfs directly. - - * DTB_PATH=path: **(MANDATORY)** for systems that require a device tree - binary - Give the full path (without a leading /) to the location of the - DTB in the built system image . The deployment will fail if `path` does - not exist. - - * BOOTLOADER_INSTALL=value: the bootloader to be installed - **(MANDATORY)** for non-x86 systems - - allowed values = - - 'extlinux' (default) - the extlinux bootloader will - be installed - - 'none' - no bootloader will be installed by `morph deploy`. A - bootloader must be installed manually. This value must be used when - deploying non-x86 systems such as ARM. - - * BOOTLOADER_CONFIG_FORMAT=value: the bootloader format to be used. - If not specified for x86-32 and x86-64 systems, 'extlinux' will be used - - allowed values = - - 'extlinux' - - * KERNEL_ARGS=args: optional additional kernel command-line parameters to - be appended to the default set. The default set is: - - 'rw init=/sbin/init rootfstype=btrfs \ - rootflags=subvol=systems/default/run \ - root=[name or UUID of root filesystem]' - - (See https://www.kernel.org/doc/Documentation/kernel-parameters.txt) - - * PARTITION_FILE=path: path to a YAML partition specification to use for - producing partitioned disks or devices. The default specification is - 'partitioning/default' in definitions, which specifies a device with a - single partition. This may serve as an example of the format of this - file, or check the pyfdisk.py documentation in pyfdisk.README. - - In addition to the features available in pyfdisk.py, using this - extension, a list of 'raw_files' items can be added at the partition - level, or the top level of the partition specification. This specifies - files to be written directly to the target device or image using `dd` - - start_offset: 2048 - partition_table_format: mbr - partitions: - - description: boot - filesystem: none - ... - raw_files: - - file: boot/uboot.img - raw_files: - - file: boot/uboot-env.img - offset_bytes: 512 - - file: boot/preloader.bin - skip_bytes: 128 - count_bytes: 16K - - * Files are written consecutively in the order they are listed, and - sourced from the unpacked root filesystem image - * Files can be given a specific offset with 'offset_sectors' or - 'offset_bytes' - * With 'raw_files' specified inside a partition, 'offset_sectors' or - 'offset_bytes' is counted from the start of that partition, - otherwise from the start of the device. - * For files without an explicit offset, the next file is written - starting with the next free byte following the previous file - * Providing an offset is optional for all files - * Specifying 'skip_bytes' will set the 'skip=' option for dd, skipping - a number of bytes at the start of the input file - * Specifying 'count_bytes' sets the 'count=' option for dd - * For properties which take an input in bytes, a human-readable - multiplier can be used, e.g. K, M, G (integer multiplicands only) - - * USE_PARTITIONING=boolean (default: no) Use this flag to enable - partitioning functions. - - (See `morph help deploy` for details of how to pass parameters to write - extensions) diff --git a/extensions/recv-hole b/extensions/recv-hole deleted file mode 100755 index fe69f304..00000000 --- a/extensions/recv-hole +++ /dev/null @@ -1,158 +0,0 @@ -#!/bin/sh -# -# Copyright (C) 2014-2015 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, see . -# -# =*= License: GPL-2 =*= - - -# Receive a data stream describing a sparse file, and reproduce it, -# either to a named file or stdout. -# -# The data stream is simple: it's a sequence of DATA or HOLE records: -# -# DATA -# 123 -# <123 bytes of binary data, NOT including newline at the end> -# -# HOLE -# 123 -# -# This shell script can be executed over ssh (given to ssh as an arguemnt, -# with suitable escaping) on a different computer. This allows a large -# sparse file (e.g., disk image) be transferred quickly. -# -# This script should be called in one of the following ways: -# -# recv-hole file FILENAME -# recv-hole vbox FILENAME DISKSIZE -# -# In both cases, FILENAME is the pathname of the disk image on the -# receiving end. DISKSIZE is the size of the disk image in bytes. The -# first form is used when transferring a disk image to become an -# identical file on the receiving end. -# -# The second form is used when the disk image should be converted for -# use by VirtualBox. In this case, we want to avoid writing a -# temporary file on disk, and then calling the VirtualBox VBoxManage -# tool to do the conversion, since that would involve large amounts of -# unnecessary I/O and disk usage. Instead we pipe the file directly to -# VBoxManage, avoiding those issues. The piping is done here in this -# script, instead of in the caller, to make it easier to run things -# over ssh. -# -# However, since it's not possible seek in a Unix pipe, we have to -# explicitly write the zeroes into the pipe. This is not -# super-efficient, but the way to avoid that would be to avoid sending -# a sparse file, and do the conversion to a VDI on the sending end. -# That is out of scope for xfer-hole and recv-hole. - - -set -eu - - -die() -{ - echo "$@" 1>&2 - exit 1 -} - - -recv_hole_to_file() -{ - local n - - read n - truncate --size "+$n" "$1" -} - - -recv_data_to_file() -{ - local n - read n - - local blocksize=1048576 - local blocks=$(($n / $blocksize)) - local extra=$(($n % $blocksize)) - - xfer_data_to_stdout "$blocksize" "$blocks" >> "$1" - xfer_data_to_stdout 1 "$extra" >> "$1" -} - - -recv_hole_to_stdout() -{ - local n - read n - (echo "$n"; cat /dev/zero) | recv_data_to_stdout -} - - -recv_data_to_stdout() -{ - local n - read n - - local blocksize=1048576 - local blocks=$(($n / $blocksize)) - local extra=$(($n % $blocksize)) - - xfer_data_to_stdout "$blocksize" "$blocks" - xfer_data_to_stdout 1 "$extra" -} - - -xfer_data_to_stdout() -{ - local log="$(mktemp)" - if ! dd "bs=$1" count="$2" iflag=fullblock status=noxfer 2> "$log" - then - cat "$log" 1>&2 - rm -f "$log" - exit 1 - else - rm -f "$log" - fi -} - - -type="$1" -case "$type" in - file) - output="$2" - truncate --size=0 "$output" - while read what - do - case "$what" in - DATA) recv_data_to_file "$output" ;; - HOLE) recv_hole_to_file "$output" ;; - *) die "Unknown instruction: $what" ;; - esac - done - ;; - vbox) - output="$2" - disk_size="$3" - while read what - do - case "$what" in - DATA) recv_data_to_stdout ;; - HOLE) recv_hole_to_stdout ;; - *) die "Unknown instruction: $what" ;; - esac - done | - VBoxManage convertfromraw stdin "$output" "$disk_size" - ;; -esac diff --git a/extensions/sdk.write b/extensions/sdk.write deleted file mode 100755 index 8d3d2a63..00000000 --- a/extensions/sdk.write +++ /dev/null @@ -1,284 +0,0 @@ -#!/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. -# -# =*= License: GPL-2 =*= - -set -eu - -die(){ - echo "$@" >&2 - exit 1 -} - -shellescape(){ - echo "'$(echo "$1" | sed -e "s/'/'\\''/g")'" -} - -########################## END OF COMMON HEADER ############################### -# -# The above lines, as well as being part of this script, are copied into the -# self-installing SDK blob's header script, as a means of re-using content. -# - -help(){ - cat <>"$OUTPUT_SCRIPT" <>"$OUTPUT_SCRIPT" <<'EOF' -########################### START OF HEADER SCRIPT ############################ - -usage(){ - cat <&2 - usage >&2 - exit 1 -fi - -TOOLCHAIN_PATH="$(readlink -f \"$1\")" - -sedescape(){ - # Escape the passed in string so it can be safely interpolated into - # a sed expression as a literal value. - echo "$1" | sed -e 's/[\/&]/\\&/g' -} - -prepend_to_path_elements(){ - # Prepend $1 to every entry in the : separated list specified as $2. - local prefix="$1" - ( - # Split path into components - IFS=: - set -- $2 - # Print path back out with new prefix - printf %s "$prefix/$1" - shift - for arg in "$@"; do - printf ":%s" "$prefix/$arg" - done - ) -} - -extract_rootfs(){ - # Extract the bzipped tarball at the end of the script passed as $1 - # to the path specified as $2 - local selfextractor="$1" - local target="$2" - local script_end="$(($(\ - grep -aEn -m1 -e '^#+ END OF HEADER SCRIPT #+$' "$selfextractor" | - cut -d: -f1) + 1 ))" - mkdir -p "$target" - tail -n +"$script_end" "$selfextractor" | tar -xj -C "$target" . -} - -amend_text_file_paths(){ - # Replace all instances of $3 with $4 in the directory specified by $1 - # excluding the subdirectory $2 - local root="$1" - local inner_sysroot="$2" - local old_prefix="$3" - local new_prefix="$4" - find "$root" \( -path "$inner_sysroot" -prune \) -o -type f \ - -exec sh -c 'file "$1" | grep -q text' - {} \; \ - -exec sed -i -e \ - "s/$(sedescape "$old_prefix")/$(sedescape "$new_prefix")/g" {} + -} - -filter_patchelf_errors(){ - # Filter out warnings from patchelf that are acceptable - # The warning that it's making a file bigger is just noise - # The warning about not being an ELF executable just means we got a - # false positive from file that it was an ELF binary - # Failing to find .interp is because for convenience, we set the - # interpreter in the same command as setting the rpath, even though - # we give it both executables and libraries. - grep -v -e 'warning: working around a Linux kernel bug' \ - -e 'not an ELF executable' \ - -e 'cannot find section .interp' -} - -patch_elves(){ - # Set the interpreter and library paths of ELF binaries in $1, - # except for the $2 subdirectory, using the patchelf command in the - # toolchain specified as $3, so that it uses the linker specified - # as $4 as the interpreter, and the runtime path specified by $5. - # - # The patchelf inside the toolchain is used to ensure that it works - # independently of the availability of patchelf on the host. - # - # This is possible by invoking the linker directly and specifying - # --linker-path as the RPATH we want to set the binaries to use. - local root="$1" - local inner_sysroot="$2" - local patchelf="$3" - local linker="$4" - local lib_path="$5" - find "$root" \( -path "$inner_sysroot" -prune \) -o -type f \ - -type f -perm +u=x \ - -exec sh -c 'file "$1" | grep -q "ELF"' - {} \; \ - -exec "$linker" --library-path "$lib_path" \ - "$patchelf" --set-interpreter "$linker" \ - --set-rpath "$lib_path" {} \; 2>&1 \ - | filter_patchelf_errors -} - -generate_environment_setup(){ - local target="$1" - install -m 644 -D /dev/stdin "$target" <>"$OUTPUT_SCRIPT" . diff --git a/extensions/set-hostname.configure b/extensions/set-hostname.configure deleted file mode 100755 index 3c400563..00000000 --- a/extensions/set-hostname.configure +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013,2015 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, see . - - -# Set hostname on system from HOSTNAME. - - -set -e - -if [ -n "$HOSTNAME" ] -then - mkdir -p "$1/etc" - echo "$HOSTNAME" > "$1/etc/hostname" -fi - diff --git a/extensions/simple-network.configure b/extensions/simple-network.configure deleted file mode 100755 index 67f46bc4..00000000 --- a/extensions/simple-network.configure +++ /dev/null @@ -1,296 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013,2015 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, see . - -'''A Morph deployment configuration extension to handle network configutation - -This extension prepares /etc/network/interfaces and networkd .network files -in /etc/systemd/network/ with the interfaces specified during deployment. - -If no network configuration is provided, eth0 will be configured for DHCP -with the hostname of the system in the case of /etc/network/interfaces. -In the case of networkd, any interface starting by e* will be configured -for DHCP -''' - - -import errno -import os -import sys - -import writeexts - - -class SimpleNetworkError(writeexts.ExtensionError): - '''Errors associated with simple network setup''' - pass - - -class SimpleNetworkConfigurationExtension(object): - '''Configure /etc/network/interfaces and generate networkd .network files - - Reading NETWORK_CONFIG, this extension sets up /etc/network/interfaces - and .network files in /etc/systemd/network/. - ''' - - def run(self, args): - network_config = os.environ.get("NETWORK_CONFIG") - - self.rename_networkd_chunk_file(args) - - if network_config is None: - self.generate_default_network_config(args) - else: - self.status(msg="Processing NETWORK_CONFIG=%(nc)s", - nc=network_config) - - stanzas = self.parse_network_stanzas(network_config) - - self.generate_interfaces_file(args, stanzas) - self.generate_networkd_files(args, stanzas) - - def rename_networkd_chunk_file(self, args): - """Rename the 10-dchp.network file generated in the systemd chunk - - The systemd chunk will place something in 10-dhcp.network, which will - have higher precedence than anything added in this extension (we - start at 50-*). - - We should check for that file and rename it instead remove it in - case the file is being used by the user. - - Until both the following happen, we should continue to rename that - default config file: - - 1. simple-network.configure is always run when systemd is included - 2. We've been building systems without systemd including that default - networkd config for long enough that nobody should be including - that config file. - """ - file_path = os.path.join(args[0], "etc", "systemd", "network", - "10-dhcp.network") - - if os.path.isfile(file_path): - try: - os.rename(file_path, file_path + ".morph") - self.status(msg="Renaming networkd file from systemd chunk: \ - %(f)s to %(f)s.morph", f=file_path) - except OSError: - pass - - def generate_default_network_config(self, args): - """Generate default network config: DHCP in all the interfaces""" - - default_network_config_interfaces = "lo:loopback;" \ - "eth0:dhcp,hostname=$(hostname)" - default_network_config_networkd = "e*:dhcp" - - stanzas_interfaces = self.parse_network_stanzas( - default_network_config_interfaces) - stanzas_networkd = self.parse_network_stanzas( - default_network_config_networkd) - - self.generate_interfaces_file(args, stanzas_interfaces) - self.generate_networkd_files(args, stanzas_networkd) - - def generate_interfaces_file(self, args, stanzas): - """Generate /etc/network/interfaces file""" - - iface_file = self.generate_iface_file(stanzas) - - directory_path = os.path.join(args[0], "etc", "network") - self.make_sure_path_exists(directory_path) - file_path = os.path.join(directory_path, "interfaces") - with open(file_path, "w") as f: - f.write(iface_file) - - def generate_iface_file(self, stanzas): - """Generate an interfaces file from the provided stanzas. - - The interfaces will be sorted by name, with loopback sorted first. - """ - - def cmp_iface_names(a, b): - a = a['name'] - b = b['name'] - if a == "lo": - return -1 - elif b == "lo": - return 1 - else: - return cmp(a,b) - - return "\n".join(self.generate_iface_stanza(stanza) - for stanza in sorted(stanzas, cmp=cmp_iface_names)) - - def generate_iface_stanza(self, stanza): - """Generate an interfaces stanza from the provided data.""" - - name = stanza['name'] - itype = stanza['type'] - lines = ["auto %s" % name, "iface %s inet %s" % (name, itype)] - lines += [" %s %s" % elem for elem in stanza['args'].items()] - lines += [""] - return "\n".join(lines) - - def generate_networkd_files(self, args, stanzas): - """Generate .network files""" - - for i, stanza in enumerate(stanzas, 50): - iface_file = self.generate_networkd_file(stanza) - - if iface_file is None: - continue - - directory_path = os.path.join(args[0], "etc", "systemd", "network") - self.make_sure_path_exists(directory_path) - file_path = os.path.join(directory_path, - "%s-%s.network" % (i, stanza['name'])) - - with open(file_path, "w") as f: - f.write(iface_file) - - def generate_networkd_file(self, stanza): - """Generate an .network file from the provided data.""" - - name = stanza['name'] - itype = stanza['type'] - pairs = stanza['args'].items() - - if itype == "loopback": - return - - lines = ["[Match]"] - lines += ["Name=%s\n" % name] - lines += ["[Network]"] - if itype == "dhcp": - lines += ["DHCP=yes"] - else: - lines += self.generate_networkd_entries(pairs) - - return "\n".join(lines) - - def generate_networkd_entries(self, pairs): - """Generate networkd configuration entries with the other parameters""" - - address = None - netmask = None - gateway = None - dns = None - lines = [] - - for pair in pairs: - if pair[0] == 'address': - address = pair[1] - elif pair[0] == 'netmask': - netmask = pair[1] - elif pair[0] == 'gateway': - gateway = pair[1] - elif pair[0] == 'dns': - dns = pair[1] - - if address and netmask: - network_suffix = self.convert_net_mask_to_cidr_suffix (netmask); - address_line = address + '/' + str(network_suffix) - lines += ["Address=%s" % address_line] - elif address or netmask: - raise SimpleNetworkError( - 'address and netmask must be specified together') - - if gateway: - lines += ["Gateway=%s" % gateway] - - if dns: - lines += ["DNS=%s" % dns] - - return lines - - def convert_net_mask_to_cidr_suffix(self, mask): - """Convert dotted decimal form of a subnet mask to CIDR suffix notation - - For example: 255.255.255.0 -> 24 - """ - return sum(bin(int(x)).count('1') for x in mask.split('.')) - - def parse_network_stanzas(self, config): - """Parse a network config environment variable into stanzas. - - Network config stanzas are semi-colon separated. - """ - - return [self.parse_network_stanza(s) for s in config.split(";")] - - def parse_network_stanza(self, stanza): - """Parse a network config stanza into name, type and arguments. - - Each stanza is of the form name:type[,arg=value]... - - For example: - lo:loopback - eth0:dhcp - eth1:static,address=10.0.0.1,netmask=255.255.0.0 - """ - elements = stanza.split(",") - lead = elements.pop(0).split(":") - if len(lead) != 2: - raise SimpleNetworkError("Stanza '%s' is missing its type" % - stanza) - iface = lead[0] - iface_type = lead[1] - - if iface_type not in ['loopback', 'static', 'dhcp']: - raise SimpleNetworkError("Stanza '%s' has unknown interface type" - " '%s'" % (stanza, iface_type)) - - argpairs = [element.split("=", 1) for element in elements] - output_stanza = { "name": iface, - "type": iface_type, - "args": {} } - for argpair in argpairs: - if len(argpair) != 2: - raise SimpleNetworkError("Stanza '%s' has bad argument '%r'" - % (stanza, argpair.pop(0))) - if argpair[0] in output_stanza["args"]: - raise SimpleNetworkError("Stanza '%s' has repeated argument" - " %s" % (stanza, argpair[0])) - output_stanza["args"][argpair[0]] = argpair[1] - - return output_stanza - - def make_sure_path_exists(self, path): - try: - os.makedirs(path) - except OSError as e: - if e.errno == errno.EEXIST and os.path.isdir(path): - pass - else: - raise SimpleNetworkError("Unable to create directory '%s'" - % path) - - def status(self, **kwargs): - '''Provide status output. - - The ``msg`` keyword argument is the actual message, - the rest are values for fields in the message as interpolated - by %. - - ''' - - sys.stdout.write('%s\n' % (kwargs['msg'] % kwargs)) - -try: - SimpleNetworkConfigurationExtension().run(sys.argv[1:]) -except SimpleNetworkError as e: - sys.stdout.write('ERROR: %s\n' % e) - sys.exit(1) diff --git a/extensions/ssh-rsync.check b/extensions/ssh-rsync.check deleted file mode 100755 index 5c2e5507..00000000 --- a/extensions/ssh-rsync.check +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'ssh-rsync' write extension''' - - -import os - -import writeexts - - -class SshRsyncCheckExtension(writeexts.WriteExtension): - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - upgrade = self.get_environment_boolean('UPGRADE') - if not upgrade: - raise writeexts.ExtensionError( - 'The ssh-rsync write is for upgrading existing remote ' - 'Baserock machines. It cannot be used for an initial ' - 'deployment.') - - if os.environ.get('VERSION_LABEL', '') == '': - raise writeexts.ExtensionError( - 'A VERSION_LABEL must be set when deploying an upgrade.') - - location = args[0] - self.check_ssh_connectivity(location) - self.check_is_baserock_system(location) - - # The new system that being deployed as an upgrade must contain - # baserock-system-config-sync and system-version-manager. However, the - # old system simply needs to have SSH and rsync. - self.check_command_exists(location, 'rsync') - - def check_is_baserock_system(self, location): - output = writeexts.ssh_runcmd( - location, - ['sh', '-c', 'test -d /baserock || echo -n dirnotfound']) - if output == 'dirnotfound': - raise writeexts.ExtensionError('%s is not a baserock system' - % location) - - def check_command_exists(self, location, command): - test = 'type %s > /dev/null 2>&1 || echo -n cmdnotfound' % command - output = writeexts.ssh_runcmd(location, ['sh', '-c', test]) - if output == 'cmdnotfound': - raise writeexts.ExtensionError( - "%s does not have %s" % (location, command)) - - -SshRsyncCheckExtension().run() diff --git a/extensions/ssh-rsync.write b/extensions/ssh-rsync.write deleted file mode 100755 index 1045c528..00000000 --- a/extensions/ssh-rsync.write +++ /dev/null @@ -1,175 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013-2015 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, see . - - -'''A Morph deployment write extension for upgrading systems over ssh.''' - - -import contextlib -import os -import subprocess -import sys -import tempfile -import time - -import writeexts - - -def ssh_runcmd_ignore_failure(location, command, **kwargs): - try: - return writeexts.ssh_runcmd(location, command, **kwargs) - except writeexts.ExtensionError: - pass - - -class SshRsyncWriteExtension(writeexts.WriteExtension): - - '''See ssh-rsync.write.help for documentation''' - - - def find_root_disk(self, location): - '''Read /proc/mounts on location to find which device contains "/"''' - - self.status(msg='Finding device that contains "/"') - contents = writeexts.ssh_runcmd(location, - ['cat', '/proc/mounts']) - for line in contents.splitlines(): - line_words = line.split() - if (line_words[1] == '/' and line_words[0] != 'rootfs'): - return line_words[0] - - @contextlib.contextmanager - def _remote_mount_point(self, location): - self.status(msg='Creating remote mount point') - remote_mnt = writeexts.ssh_runcmd(location, - ['mktemp', '-d']).strip() - try: - yield remote_mnt - finally: - self.status(msg='Removing remote mount point') - writeexts.ssh_runcmd(location, ['rmdir', remote_mnt]) - - @contextlib.contextmanager - def _remote_mount(self, location, root_disk, mountpoint): - self.status(msg='Mounting root disk') - writeexts.ssh_runcmd(location, ['mount', root_disk, mountpoint]) - try: - yield - finally: - self.status(msg='Unmounting root disk') - writeexts.ssh_runcmd(location, ['umount', mountpoint]) - - @contextlib.contextmanager - def _created_version_root(self, location, remote_mnt, version_label): - version_root = os.path.join(remote_mnt, 'systems', version_label) - self.status(msg='Creating %(root)s', root=version_root) - writeexts.ssh_runcmd(location, ['mkdir', version_root]) - try: - yield version_root - except BaseException as e: - # catch all, we always want to clean up - self.status(msg='Cleaning up %(root)s', root=version_root) - ssh_runcmd_ignore_failure(location, ['rmdir', version_root]) - raise - - def get_old_orig(self, location, remote_mnt): - '''Identify which subvolume to snapshot from''' - - # rawdisk upgrades use 'default' - return os.path.join(remote_mnt, 'systems', 'default', 'orig') - - @contextlib.contextmanager - def _created_orig_subvolume(self, location, remote_mnt, version_root): - self.status(msg='Creating "orig" subvolume') - old_orig = self.get_old_orig(location, remote_mnt) - new_orig = os.path.join(version_root, 'orig') - writeexts.ssh_runcmd(location, ['btrfs', 'subvolume', 'snapshot', - old_orig, new_orig]) - try: - yield new_orig - except BaseException as e: - ssh_runcmd_ignore_failure( - location, ['btrfs', 'subvolume', 'delete', new_orig]) - raise - - def populate_remote_orig(self, location, new_orig, temp_root): - '''Populate the subvolume version_root/orig on location''' - - self.status(msg='Populating "orig" subvolume') - subprocess.check_call(['rsync', '-as', '--checksum', '--numeric-ids', - '--delete', temp_root + os.path.sep, - '%s:%s' % (location, new_orig)]) - - @contextlib.contextmanager - def _deployed_version(self, location, version_label, - system_config_sync, system_version_manager): - self.status(msg='Calling system-version-manager to deploy upgrade') - deployment = os.path.join('/systems', version_label, 'orig') - writeexts.ssh_runcmd(location, - ['env', 'BASEROCK_SYSTEM_CONFIG_SYNC='+system_config_sync, - system_version_manager, 'deploy', deployment]) - try: - yield deployment - except BaseException as e: - self.status(msg='Cleaning up failed version installation') - writeexts.ssh_runcmd(location, - [system_version_manager, 'remove', version_label]) - raise - - def upgrade_remote_system(self, location, temp_root): - root_disk = self.find_root_disk(location) - uuid = writeexts.ssh_runcmd(location, - ['blkid', '-s', 'UUID', '-o', 'value', root_disk]).strip() - - self.complete_fstab_for_btrfs_layout(temp_root, uuid) - - version_label = os.environ['VERSION_LABEL'] - autostart = self.get_environment_boolean('AUTOSTART') - - with self._remote_mount_point(location) as remote_mnt, \ - self._remote_mount(location, root_disk, remote_mnt), \ - self._created_version_root(location, remote_mnt, - version_label) as version_root, \ - self._created_orig_subvolume(location, remote_mnt, - version_root) as orig: - self.populate_remote_orig(location, orig, temp_root) - system_root = os.path.join(remote_mnt, 'systems', - version_label, 'orig') - config_sync = os.path.join(system_root, 'usr', 'bin', - 'baserock-system-config-sync') - version_manager = os.path.join(system_root, 'usr', 'bin', - 'system-version-manager') - with self._deployed_version(location, version_label, - config_sync, version_manager): - self.status(msg='Setting %(v)s as the new default system', - v=version_label) - writeexts.ssh_runcmd(location, - [version_manager, 'set-default', version_label]) - - if autostart: - self.status(msg="Rebooting into new system ...") - ssh_runcmd_ignore_failure(location, ['reboot']) - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - - self.upgrade_remote_system(location, temp_root) - - -SshRsyncWriteExtension().run() diff --git a/extensions/ssh-rsync.write.help b/extensions/ssh-rsync.write.help deleted file mode 100644 index f3f79ed5..00000000 --- a/extensions/ssh-rsync.write.help +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Upgrade a Baserock system which is already deployed: - - as a KVM/LibVirt, OpenStack or vbox-ssh virtual machine; - - on a Jetson board. - - Copies a binary delta over to the target system and arranges for it - to be bootable. - - The recommended way to use this extension is by calling `morph upgrade`. - Using `morph deploy --upgrade` is deprecated. - - The upgrade will fail if: - - no VM is deployed and running at `location`; - - the target system is not a Baserock system; - - the target's filesystem and its layout are not compatible with that - created by `morph deploy`." - - See also the 'Upgrading a Baserock installation' section of the 'Using - Baserock` page at wiki.baserock.org - http://wiki.baserock.org/devel-with/#index8h2 - - Parameters: - - * location: the 'user@hostname' string that will be used by ssh and rsync. - 'user' will always be `root` and `hostname` the hostname or address of - the system being upgraded. - - * VERSION_LABEL=label - **(MANDATORY)** should contain only alpha-numeric - characters and the '-' (hyphen) character. - - * AUTOSTART=` - boolean. If it is set, the VM will be started when - it has been deployed. - - (See `morph help deploy` for details of how to pass parameters to write - extensions) diff --git a/extensions/sshkeys.configure b/extensions/sshkeys.configure deleted file mode 100755 index 7a5a8379..00000000 --- a/extensions/sshkeys.configure +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -# -# Copyright 2014 Codethink Ltd -# -# 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. - -set -e - -if [ "$SSHKEYS" ] -then - install -d -m 700 "$1/root/.ssh" - echo Adding Key in "$SSHKEYS" to authorized_keys file - cat $SSHKEYS >> "$1/root/.ssh/authorized_keys" -fi diff --git a/extensions/strip-gplv3.configure b/extensions/strip-gplv3.configure deleted file mode 100755 index e4e836f4..00000000 --- a/extensions/strip-gplv3.configure +++ /dev/null @@ -1,97 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2013-2016 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. - -''' A Morph configuration extension for removing gplv3 chunks from a system - -Using a hard-coded list of chunks, it will read the system's /baserock metadata -to find the files created by that chunk, then remove them. - -''' - -import os -import re -import subprocess -import sys - -import writeexts - -import imp -scriptslib = imp.load_source('scriptslib', 'scripts/scriptslib.py') - -class StripGPLv3ConfigureExtension(writeexts.Extension): - gplv3_chunks = [ - ['autoconf', ''], - ['autoconf-tarball', ''], - ['automake', ''], - ['bash', ''], - ['binutils', ''], - ['bison', ''], - ['ccache', ''], - ['cmake', ''], - ['flex', ''], - ['gawk', ''], - ['gcc', r'^.*lib.*\.so(\.\d+)*$'], - ['gdbm', ''], - ['gettext-tarball', ''], - ['gperf', ''], - ['groff', ''], - ['libtool', r'^.*lib.*\.so(\.\d+)*$'], - ['libtool-tarball', r'^.*lib.*\.so(\.\d+)*$'], - ['m4', ''], - ['make', ''], - ['nano', ''], - ['patch', ''], - ['rsync', ''], - ['texinfo-tarball', ''], - ] - - def process_args(self, args): - target_root = args[0] - meta_dir = os.path.join(target_root, 'baserock') - metadata = scriptslib.meta_load_from_dir(meta_dir) - - for chunk in self.gplv3_chunks: - for meta in metadata.get_name(chunk[0]): - self.remove_chunk( - target_root, reversed(meta['contents']), chunk[1]) - - def remove_chunk(self, target_root, chunk_contents, pattern): - updated_contents = [] - for content_entry in chunk_contents: - pat = re.compile(pattern) - if len(pattern) == 0 or not pat.match(content_entry): - self.remove_content_entry(target_root, content_entry) - else: - updated_contents.append(content_entry) - - def remove_content_entry(self, target_root, content_entry): - entry_path = os.path.join(target_root, './' + content_entry) - if not entry_path.startswith(target_root): - raise writeexts.ExtensionError( - '%s is not in %s' % (entry_path, target_root)) - if os.path.exists(entry_path): - if os.path.islink(entry_path): - os.unlink(entry_path) - elif os.path.isfile(entry_path): - os.remove(entry_path) - elif os.path.isdir(entry_path): - if not os.listdir(entry_path): - os.rmdir(entry_path) - else: - raise writeexts.ExtensionError( - '%s is not a link, file or directory' % entry_path) - -StripGPLv3ConfigureExtension().run(sys.argv[1:]) diff --git a/extensions/swift-build-rings.yml b/extensions/swift-build-rings.yml deleted file mode 100644 index 1ffe9c37..00000000 --- a/extensions/swift-build-rings.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- -- hosts: localhost - vars: - - rings: - - { name: account, port: 6002 } - - { name: container, port: 6001 } - - { name: object, port: 6000 } - remote_user: root - tasks: - - file: path={{ ansible_env.ROOT }}/etc/swift owner=root group=root state=directory - - - name: Create ring - shell: swift-ring-builder {{ item.name }}.builder create {{ ansible_env.SWIFT_PART_POWER }} - {{ ansible_env.SWIFT_REPLICAS }} {{ ansible_env.SWIFT_MIN_PART_HOURS }} - with_items: rings - - - name: Add each storage node to the ring - shell: swift-ring-builder {{ item[0].name }}.builder - add r1z1-{{ item[1].ip }}:{{ item[0].port }}/{{ item[1].device }} {{ item[1].weight }} - with_nested: - - rings - - ansible_env.SWIFT_STORAGE_DEVICES - - - name: Rebalance the ring - shell: swift-ring-builder {{ item.name }}.builder rebalance {{ ansible_env.SWIFT_REBALANCE_SEED }} - with_items: rings - - - name: Copy ring configuration files into place - copy: src={{ item.name }}.ring.gz dest={{ ansible_env.ROOT }}/etc/swift - with_items: rings - - - name: Copy ring builder files into place - copy: src={{ item.name }}.builder dest={{ ansible_env.ROOT }}/etc/swift - with_items: rings diff --git a/extensions/swift-storage-devices-validate.py b/extensions/swift-storage-devices-validate.py deleted file mode 100755 index 57ab23d0..00000000 --- a/extensions/swift-storage-devices-validate.py +++ /dev/null @@ -1,60 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# Copyright © 2015 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, see . -# -# This is used by the openstack-swift.configure extension -# to validate any provided storage device specifiers -# under SWIFT_STORAGE_DEVICES -# - - -''' - This is used by the swift-storage.configure extension - to validate any storage device specifiers specified - in the SWIFT_STORAGE_DEVICES environment variable -''' - -from __future__ import print_function - -import yaml -import sys - -EXAMPLE_DEVSPEC = '{device: sdb1, ip: 127.0.0.1, weight: 100}' -REQUIRED_KEYS = ['ip', 'device', 'weight'] - -def err(msg): - print(msg, file=sys.stderr) - sys.exit(1) - -if len(sys.argv) != 2: - err('usage: %s STRING_TO_BE_VALIDATED' % sys.argv[0]) - -swift_storage_devices = yaml.load(sys.argv[1]) - -if not isinstance(swift_storage_devices, list): - err('Expected list of device specifiers\n' - 'Example: [%s]' % EXAMPLE_DEVSPEC) - -for d in swift_storage_devices: - if not isinstance(d, dict): - err("Invalid device specifier: `%s'\n" - 'Device specifier must be a dictionary\n' - 'Example: %s' % (d, EXAMPLE_DEVSPEC)) - - if set(d.keys()) != set(REQUIRED_KEYS): - err("Invalid device specifier: `%s'\n" - 'Specifier should contain: %s\n' - 'Example: %s' % (d, str(REQUIRED_KEYS)[1:-1], EXAMPLE_DEVSPEC)) diff --git a/extensions/swift-storage.configure b/extensions/swift-storage.configure deleted file mode 100644 index 391b392a..00000000 --- a/extensions/swift-storage.configure +++ /dev/null @@ -1,107 +0,0 @@ -#!/bin/bash -# -# Copyright © 2015 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, see . - -set -e - -# The ansible script needs to know where the rootfs is, so we export it here -export ROOT="$1" - -validate_number() { - local name="$1" - local value="$2" - - local pattern='^[0-9]+$' - if ! [[ $value =~ $pattern ]] - then - echo "'$name' must be a number" >&2 - exit 1 - fi -} - -validate_non_empty() { - local name="$1" - local value="$2" - - if [[ $value = None ]] - then - echo "'$name' cannot be empty" >&2 - exit 1 - fi -} - -MANDATORY_OPTIONS="SWIFT_HASH_PATH_PREFIX \ - SWIFT_HASH_PATH_SUFFIX \ - SWIFT_REBALANCE_SEED \ - SWIFT_PART_POWER \ - SWIFT_REPLICAS \ - SWIFT_MIN_PART_HOURS \ - SWIFT_STORAGE_DEVICES \ - CONTROLLER_HOST_ADDRESS \ - MANAGEMENT_INTERFACE_IP_ADDRESS" - -for option in $MANDATORY_OPTIONS -do - if ! [[ -v $option ]] - then - missing_option=True - echo "Required option $option isn't set!" >&2 - fi -done - -if [[ $missing_option = True ]]; then exit 1; fi - -./swift-storage-devices-validate.py "$SWIFT_STORAGE_DEVICES" - -# Validate SWIFT_PART_POWER, SWIFT_REPLICAS, SWIFT_MIN_PART_HOURS -# just make sure they're numbers - -validate_number "SWIFT_PART_POWER" "$SWIFT_PART_POWER" -validate_number "SWIFT_REPLICAS" "$SWIFT_REPLICAS" -validate_number "SWIFT_MIN_PART_HOURS" "$SWIFT_MIN_PART_HOURS" - -# Make sure these aren't empty -validate_non_empty "SWIFT_HASH_PATH_PREFIX" "$SWIFT_HASH_PATH_PREFIX" -validate_non_empty "SWIFT_HASH_PATH_SUFFIX" "$SWIFT_HASH_PATH_SUFFIX" -validate_non_empty "SWIFT_REBALANCE_SEED" "$SWIFT_REBALANCE_SEED" -validate_non_empty "CONTROLLER_HOST_ADDRESS" "$CONTROLLER_HOST_ADDRESS" -validate_non_empty "MANAGEMENT_INTERFACE_IP_ADDRESS" "$MANAGEMENT_INTERFACE_IP_ADDRESS" - -mkdir -p "$ROOT/usr/lib/systemd/system/multi-user.target.wants" # ensure this exists before we make symlinks - -# A swift controller needs the storage setup service -# but does not want any of the other storage services enabled -ln -s "/usr/lib/systemd/system/swift-storage-setup.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/swift-storage-setup.service" - -SWIFT_CONTROLLER=${SWIFT_CONTROLLER:-False} - -if [[ $SWIFT_CONTROLLER = False ]] -then - ln -s "/usr/lib/systemd/system/rsync.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/rsync.service" - ln -s "/usr/lib/systemd/system/swift-storage.service" \ - "$ROOT/usr/lib/systemd/system/multi-user.target.wants/swift-storage.service" -fi - -# Build swift data structures (the rings) -/usr/bin/ansible-playbook -i hosts swift-build-rings.yml - -cat << EOF > "$ROOT"/usr/share/swift/swift-storage-vars.yml ---- -MANAGEMENT_INTERFACE_IP_ADDRESS: $MANAGEMENT_INTERFACE_IP_ADDRESS -SWIFT_HASH_PATH_PREFIX: $SWIFT_HASH_PATH_PREFIX -SWIFT_HASH_PATH_SUFFIX: $SWIFT_HASH_PATH_SUFFIX -EOF diff --git a/extensions/sysroot.check b/extensions/sysroot.check deleted file mode 100755 index 71b35175..00000000 --- a/extensions/sysroot.check +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# Copyright (C) 2015 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, see . - -# Preparatory checks for Morph 'sysroot' write extension - -set -eu - -if [ "$UPGRADE" == "yes" ]; then - echo >&2 "ERROR: Cannot upgrade a sysroot deployment" - exit 1 -fi diff --git a/extensions/sysroot.write b/extensions/sysroot.write deleted file mode 100755 index 46f1a780..00000000 --- a/extensions/sysroot.write +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh -# Copyright (C) 2014,2015 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, see . - -# A Morph write extension to deploy to another directory - -set -eu - -mkdir -p "$2" - -cp -a "$1"/* "$2" diff --git a/extensions/tar.check b/extensions/tar.check deleted file mode 100755 index ca5747fd..00000000 --- a/extensions/tar.check +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# Copyright (C) 2014-2015 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, see . - -# Preparatory checks for Morph 'tar' write extension - -set -eu - -if [ "$UPGRADE" = "yes" ]; then - echo >&2 "ERROR: Cannot upgrade a tar file deployment." - exit 1 -fi diff --git a/extensions/tar.write b/extensions/tar.write deleted file mode 100755 index 01b545b4..00000000 --- a/extensions/tar.write +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013,2015 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, see . - -# A Morph write extension to deploy to a .tar file - -set -eu - -tar -C "$1" -cf "$2" . diff --git a/extensions/tar.write.help b/extensions/tar.write.help deleted file mode 100644 index b45c61fa..00000000 --- a/extensions/tar.write.help +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - Create a .tar file of the deployed system. - - The `location` argument is a pathname to the .tar file to be - created. diff --git a/extensions/trove.configure b/extensions/trove.configure deleted file mode 100755 index c1cd8a65..00000000 --- a/extensions/trove.configure +++ /dev/null @@ -1,172 +0,0 @@ -#!/bin/sh -# -# Copyright (C) 2013 - 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 fully configure -# a Trove instance at deployment time. It uses the following variables -# from the environment (run `morph help trove.configure` to see a description -# of them): -# -# * TROVE_ID -# * TROVE_HOSTNAME (optional, defaults to TROVE_ID) -# * TROVE_COMPANY -# * LORRY_SSH_KEY -# * UPSTREAM_TROVE -# * UPSTREAM_TROVE_PROTOCOL -# * TROVE_ADMIN_USER -# * TROVE_ADMIN_EMAIL -# * TROVE_ADMIN_NAME -# * TROVE_ADMIN_SSH_PUBKEY -# * LORRY_CONTROLLER_MINIONS (optional, defaults to 4) -# * TROVE_BACKUP_KEYS - a space-separated list of paths to SSH keys. -# (optional) -# * TROVE_GENERIC (optional) -# -# The configuration of a Trove is slightly tricky: part of it has to -# be run on the configured system after it has booted. We accomplish -# this by copying in all the relevant data to the target system -# (in /var/lib/trove-setup), and creating a systemd unit file that -# runs on the first boot. The first boot will be detected by the -# existence of the /var/lib/trove-setup/needed file. - -set -e - -if [ "$TROVE_GENERIC" ] -then - echo "Not configuring the trove, it will be generic" - exit 0 -fi - - -# Check that all the variables needed are present: - -error_vars=false -if test "x$TROVE_ID" = "x"; then - echo "ERROR: TROVE_ID needs to be defined." - error_vars=true -fi - -if test "x$TROVE_COMPANY" = "x"; then - echo "ERROR: TROVE_COMPANY needs to be defined." - error_vars=true -fi - -if test "x$TROVE_ADMIN_USER" = "x"; then - echo "ERROR: TROVE_ADMIN_USER needs to be defined." - error_vars=true -fi - -if test "x$TROVE_ADMIN_NAME" = "x"; then - echo "ERROR: TROVE_ADMIN_NAME needs to be defined." - error_vars=true -fi - -if test "x$TROVE_ADMIN_EMAIL" = "x"; then - echo "ERROR: TROVE_ADMIN_EMAIL needs to be defined." - error_vars=true -fi - -if ! ssh-keygen -lf $LORRY_SSH_KEY > /dev/null 2>&1 -then - echo "ERROR: LORRY_SSH_KEY is not a vaild ssh key." - error_vars=true -fi - -if ! ssh-keygen -lf $WORKER_SSH_PUBKEY > /dev/null 2>&1 -then - echo "ERROR: WORKER_SSH_PUBKEY is not a vaild ssh key." - error_vars=true -fi - -if ! ssh-keygen -lf $TROVE_ADMIN_SSH_PUBKEY > /dev/null 2>&1 -then - echo "ERROR: TROVE_ADMIN_SSH_PUBKEY is not a vaild ssh key." - error_vars=true -fi - -if "$error_vars"; then - exit 1 -fi - -ROOT="$1" - - -TROVE_DATA="$ROOT/etc/trove" -mkdir -p "$TROVE_DATA" - -# Install mandatory files -install -m 0600 "$LORRY_SSH_KEY" "$TROVE_DATA/lorry.key" -install -m 0644 "${LORRY_SSH_KEY}.pub" "$TROVE_DATA/lorry.key.pub" -install -m 0644 "$TROVE_ADMIN_SSH_PUBKEY" "$TROVE_DATA/admin.key.pub" -install -m 0644 "$WORKER_SSH_PUBKEY" "$TROVE_DATA/worker.key.pub" - - -# Create base configuration file -python <<'EOF' >"$TROVE_DATA/trove.conf" -import os, sys, yaml - -trove_configuration={ - 'TROVE_ID': os.environ['TROVE_ID'], - 'TROVE_COMPANY': os.environ['TROVE_COMPANY'], - 'TROVE_ADMIN_USER': os.environ['TROVE_ADMIN_USER'], - 'TROVE_ADMIN_EMAIL': os.environ['TROVE_ADMIN_EMAIL'], - 'TROVE_ADMIN_NAME': os.environ['TROVE_ADMIN_NAME'], - 'LORRY_SSH_KEY': '/etc/trove/lorry.key', - 'LORRY_SSH_PUBKEY': '/etc/trove/lorry.key.pub', - 'TROVE_ADMIN_SSH_PUBKEY': '/etc/trove/admin.key.pub', - 'WORKER_SSH_PUBKEY': '/etc/trove/worker.key.pub', -} - - - -optional_keys = ('MASON_ID', 'HOSTNAME', 'TROVE_HOSTNAME', - 'LORRY_CONTROLLER_MINIONS', 'TROVE_BACKUP_KEYS', - 'UPSTREAM_TROVE', 'UPSTREAM_TROVE_PROTOCOL') - -for key in optional_keys: - if key in os.environ: - trove_configuration[key]=os.environ[key] - -yaml.dump(trove_configuration, sys.stdout, default_flow_style=False) -EOF - -# Add backups configuration -if [ -n "$TROVE_BACKUP_KEYS" ]; then - mkdir -p "$TROVE_DATA/backup-keys" - cp -- $TROVE_BACKUP_KEYS "$TROVE_DATA/backup-keys" - echo "TROVE_BACKUP_KEYS: /etc/trove/backup-keys/*" >> "$TROVE_DATA/trove.conf" -fi - -# Add SSL configuration -if test "x$TROVE_SSL_PEMFILE" != "x"; then - if test -f "$TROVE_SSL_PEMFILE"; then - install -m 0600 "$TROVE_SSL_PEMFILE" "$TROVE_DATA/trove-ssl-pemfile.pem" - echo "TROVE_SSL_PEMFILE: /etc/trove/trove-ssl-pemfile.pem" >> "$TROVE_DATA/trove.conf" - else - echo "ERROR: $TROVE_SSL_PEMFILE (TROVE_SSL_PEMFILE) doesn't exist." - exit 1 - fi -fi - -if test "x$TROVE_SSL_CA_FILE" != "x"; then - if test -f "$TROVE_SSL_CA_FILE"; then - install -m 0644 "$TROVE_SSL_CA_FILE" "$TROVE_DATA/trove-ssl-ca-file.pem" - echo "TROVE_SSL_CA_FILE: /etc/trove/trove-ssl-ca-file.pem" >> "$TROVE_DATA/trove.conf" - else - echo "ERROR: $TROVE_SSL_CA_FILE (TROVE_SSL_CA_FILE) doesn't exist." - exit 1 - fi -fi diff --git a/extensions/trove.configure.help b/extensions/trove.configure.help deleted file mode 100644 index 2669f693..00000000 --- a/extensions/trove.configure.help +++ /dev/null @@ -1,134 +0,0 @@ -help: | - This is a "morph deploy" configuration extension to fully configure - a Trove instance at deployment time. It uses the following - configuration variables: - - * `TROVE_ID` - * `TROVE_HOSTNAME` (optional, defaults to `TROVE_ID`) - * `TROVE_COMPANY` - * `LORRY_SSH_KEY` - * `UPSTREAM_TROVE` - * `TROVE_ADMIN_USER` - * `TROVE_ADMIN_EMAIL` - * `TROVE_ADMIN_NAME` - * `TROVE_ADMIN_SSH_PUBKEY` - * `LORRY_CONTROLLER_MINIONS` (optional, defaults to 4) - * `TROVE_BACKUP_KEYS` - a space-separated list of paths to SSH keys. - (optional) - * `TROVE_SSL_PEMFILE` (optional) - * `TROVE_SSL_CA_FILE` (optional) - - The variables are described in more detail below. - - A Trove deployment needs to know the following things: - - * The Trove's ID and public name. - * The Trove's administrator name and access details. - * Private and public SSH keys for the Lorry user on the Trove. - * Which upstream Trove it should be set to mirror upon initial deploy. - - These are specified with the configuration variables described in this - help. - - * `TROVE_GENERIC` -- boolean. If it's true the trove will be generic - and it won't be configured with any of the other variables listed - here. - - * `TROVE_ID` -- the identifier of the Trove. This separates it from - other Troves, and allows mirroring of Troves to happen without local - changes getting overwritten. - - The Trove ID is used in several ways. Any local repositories (those not - mirrored from elsewhere) get created under a prefix that is the ID. - Thus, the local repositories on the `git.baserock.org` Trove, whose - Trove ID is `baserock`, are named - `baserock/baserock/definitions.git` and similar. The ID is used - there twice: first as a prefix and then as a "project name" within - that prefix. There can be more projects under the prefix. For - example, there is a `baserock/local-config/lorries.git` repository, - where `local-config` is a separate project from `baserock`. Projects - here are a concept for the Trove's git access control language. - - The Trove ID also used as the prefix for any branch and tag names - created locally for repositories that are not local. Thus, in the - `delta/linux.git` repository, any local branches would be called - something like `baserock/morph`, instead of just `morph`. The - Trove's git access control prevents normal uses from pushing - branches and tags that do not have the Trove ID as the prefix. - - * `TROVE_HOSTNAME` -- the public name of the Trove. This is an - optional setting, and defaults to `TROVE_ID`. The public name is - typically the domain name of the server (e.g., `git.baserock.org`), - but can also be an IP address. This setting is used when Trove needs - to generate URLs that point to itself, such as the `git://` and - `http://` URLs for each git repository that is viewed via the web - interface. - - Note that this is _not_ the system hostname. That is set separately, - with the `HOSTNAME` configuration setting (see the - `set-hostname.configure` extension). - - * `TROVE_COMPANY` -- a description of the organisation who own the - Trove. This is shown in various parts of the web interface of the - Trove. It is for descriptive purposes only. - - * `LORRY_SSH_KEY` -- ssh key pair that the Trove's Lorry will use to - access an upstream Trove, and to push updates to the Trove's git - server. - - The value is a filename on the system doing the deployment (where - `morph deploy` is run). The file contains the _private_ key, and the - public key is in a file with the `.pub` suffix added to the name. - - The upstream Trove needs to be configured to allow this key to - access it. This configuration does not do that automatically. - - * `UPSTREAM_TROVE` -- public name of the upstream Trove (domain - name or IP address). This is an optional setting. If it's set, - the new Trove will be configured to mirror that Trove. - - * `TROVE_ADMIN_USER`, `TROVE_ADMIN_EMAIL`, `TROVE_ADMIN_NAME`, - `TROVE_ADMIN_SSH_PUBKEY` -- details of the Trove's (initial) - administrator. - - Each Trove needs at least one administrator user, and one is created - upon initial deployment. `TROVE_ADMIN_USER` is the username of the - account to be created, `TROVE_ADMIN_EMAIL` should be the e-mail of - the user, and `TROVE_ADMIN_NAME` is their name. If more - administrators are needed, the initial person should create them - using the usual Gitano commands. - - * `LORRY_CONTROLLER_MINIONS` -- the number of Lorry Controller worker - processes to start. This is an optional setting and defaults to 4. - The more workers are running, the more Lorry jobs can run at the same - time, but the more resources they require. - - * `TROVE_BACKUP_KEYS` -- a space-separated list of paths to SSH keys. - If this is set, the Trove will have a backup user that can be accessed - with rsync using the SSH keys provided. - - * `TROVE_SSL_PEMFILE` -- SSL certificate to use in lighttpd SSL - configuration. - - * `TROVE_SSL_CA_FILE` -- CA chain certificate to use in lighttpd SSL - configuration. - - Example - ------- - - The following set of variables could be to deploy a Trove instance: - - TROVE_ID: my-trove - TROVE_HOSTNAME: my-trove.example.com - TROVE_COMPANY: My Personal Trove for Me, Myself and I - LORRY_SSH_KEY: my-trove/lorry.key - UPSTREAM_TROVE: git.baserock.org - UPSTREAM_TROVE_USER: my-trove - UPSTREAM_TROVE_EMAIL: my-trove@example.com - TROVE_ADMIN_USER: tomjon - TROVE_ADMIN_EMAIL: tomjon@example.com - TROVE_ADMIN_NAME: Tomjon of Lancre - TROVE_ADMIN_SSH_PUBKEY: my-trove/tomjon.key.pub - - These would be put into the cluster morphology used to do the - deployment. diff --git a/extensions/vagrant.configure b/extensions/vagrant.configure deleted file mode 100644 index abc3ea0c..00000000 --- a/extensions/vagrant.configure +++ /dev/null @@ -1,55 +0,0 @@ -#!/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.5 -# -# 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. - -set -e - -ROOT="$1" - -if test "x$VAGRANT" = "x"; then - exit 0 -fi - -for needed in etc/ssh/sshd_config etc/sudoers; do - if ! test -e "$ROOT/$needed"; then - echo >&2 "Unable to find $needed" - echo >&2 "Cannot continue configuring as Vagrant basebox" - exit 1 - fi -done - -# SSH daemon needs to be configured to not use DNS... -sed -i -e's/^(.*[Uu]][Ss][Ee][Dd][Nn][Ss].*)$/#\1/' "$ROOT/etc/ssh/sshd_config" -echo "UseDNS no" >> "$ROOT/etc/ssh/sshd_config" - -# We need to add a vagrant user with "vagrant" as the password We're doing this -# manually because chrooting in to run adduser is not really allowed for -# deployment time since we wouldn't be able to run the adduser necessarily. In -# practice for now we'd be able to because we can't deploy raw disks -# cross-platform and expect extlinux to install but we won't, for good -# practice and to hilight this deficiency. -echo 'vagrant:x:1000:1000:Vagrant User:/home/vagrant:/bin/bash' >> "$ROOT/etc/passwd" -echo 'vagrant:/6PTOoWylhw3w:16198:0:99999:7:::' >> "$ROOT/etc/shadow" -echo 'vagrant:x:1000:' >> "$ROOT/etc/group" -mkdir -p "$ROOT/home/vagrant" -chown -R 1000:1000 "$ROOT/home/vagrant" - -# Next, the vagrant user is meant to have sudo access -echo 'vagrant ALL=(ALL) NOPASSWD: ALL' >> "$ROOT/etc/sudoers" - -# And ensure that we get sbin in our path -echo 'PATH="$PATH:/sbin:/usr/sbin"' >> "$ROOT/etc/profile" -echo 'export PATH' >> "$ROOT/etc/profile" - diff --git a/extensions/vdaboot.configure b/extensions/vdaboot.configure deleted file mode 100755 index 60de925b..00000000 --- a/extensions/vdaboot.configure +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Copyright (C) 2013,2015 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, see . - - -# Change the "/" mount point to /dev/vda to use virtio disks. - -set -e - -if [ "$OPENSTACK_USER" ] -then - # Modifying fstab - if [ -f "$1/etc/fstab" ] - then - mv "$1/etc/fstab" "$1/etc/fstab.old" - awk 'BEGIN {print "/dev/vda / btrfs defaults,rw,noatime 0 1"}; - $2 != "/" {print $0 };' "$1/etc/fstab.old" > "$1/etc/fstab" - rm "$1/etc/fstab.old" - else - echo "/dev/vda / btrfs defaults,rw,noatime 0 1"> "$1/etc/fstab" - fi -fi diff --git a/extensions/virtualbox-ssh.check b/extensions/virtualbox-ssh.check deleted file mode 100755 index 215c8b30..00000000 --- a/extensions/virtualbox-ssh.check +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2014-2015 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, see . - -'''Preparatory checks for Morph 'virtualbox-ssh' write extension''' - - -import writeexts - - -class VirtualBoxPlusSshCheckExtension(writeexts.WriteExtension): - def process_args(self, args): - if len(args) != 1: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - self.require_btrfs_in_deployment_host_kernel() - - upgrade = self.get_environment_boolean('UPGRADE') - if upgrade: - raise writeexts.ExtensionError( - 'Use the `ssh-rsync` write extension to deploy upgrades to an ' - 'existing remote system.') - -VirtualBoxPlusSshCheckExtension().run() diff --git a/extensions/virtualbox-ssh.write b/extensions/virtualbox-ssh.write deleted file mode 100755 index 56c0bb57..00000000 --- a/extensions/virtualbox-ssh.write +++ /dev/null @@ -1,219 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2012-2015 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, see . - - -'''A Morph deployment write extension for deploying to VirtualBox via ssh. - -VirtualBox is assumed to be running on a remote machine, which is -accessed over ssh. The machine gets created, but not started. - -See file virtualbox-ssh.write.help for documentation - -''' - - -import os -import re -import subprocess -import sys -import tempfile -import time -import urlparse - -import writeexts - - -class VirtualBoxPlusSshWriteExtension(writeexts.WriteExtension): - - def process_args(self, args): - if len(args) != 2: - raise writeexts.ExtensionError( - 'Wrong number of command line args') - - temp_root, location = args - ssh_host, vm_name, vdi_path = self.parse_location(location) - autostart = self.get_environment_boolean('AUTOSTART') - - vagrant = self.get_environment_boolean('VAGRANT') - - fd, raw_disk = tempfile.mkstemp() - os.close(fd) - self.create_local_system(temp_root, raw_disk) - - try: - self.transfer_and_convert_to_vdi( - raw_disk, ssh_host, vdi_path) - self.create_virtualbox_guest(ssh_host, vm_name, vdi_path, - autostart, vagrant) - except BaseException: - sys.stderr.write('Error deploying to VirtualBox') - os.remove(raw_disk) - writeexts.ssh_runcmd(ssh_host, ['rm', '-f', vdi_path]) - raise - else: - os.remove(raw_disk) - self.status( - msg='Virtual machine %(vm_name)s has been created', - vm_name=vm_name) - - def parse_location(self, location): - '''Parse the location argument to get relevant data.''' - - x = urlparse.urlparse(location) - if x.scheme != 'vbox+ssh': - raise writeexts.ExtensionError( - 'URL schema must be vbox+ssh in %s' % location) - m = re.match('^/(?P[^/]+)(?P/.+)$', x.path) - if not m: - raise writeexts.ExtensionError( - 'Cannot parse location %s' % location) - return x.netloc, m.group('guest'), m.group('path') - - def transfer_and_convert_to_vdi(self, raw_disk, ssh_host, vdi_path): - '''Transfer raw disk image to VirtualBox host, and convert to VDI.''' - - self.status(msg='Transfer disk and convert to VDI') - - st = os.lstat(raw_disk) - # TODO: Something! - xfer_hole_path = writeexts.get_data_path('xfer-hole') - recv_hole = writeexts.get_data('recv-hole') - - ssh_remote_cmd = [ - 'sh', '-c', recv_hole, - 'dummy-argv0', 'vbox', vdi_path, str(st.st_size), - ] - - xfer_hole_proc = subprocess.Popen( - ['python', xfer_hole_path, raw_disk], - stdout=subprocess.PIPE) - recv_hole_proc = subprocess.Popen( - ['ssh', ssh_host] + map(writeexts.shell_quote, ssh_remote_cmd), - stdin=xfer_hole_proc.stdout) - xfer_hole_proc.stdout.close() - recv_hole_proc.communicate() - - def virtualbox_version(self, ssh_host): - 'Get the version number of the VirtualBox running on the remote host.' - - # --version gives a build id, which looks something like - # 1.2.3r456789, so we need to strip the suffix off and get a tuple - # of the (major, minor, patch) version, since comparing with a - # tuple is more reliable than a string and more convenient than - # comparing against the major, minor and patch numbers directly - self.status(msg='Checking version of remote VirtualBox') - build_id = writeexts.ssh_runcmd(ssh_host, - ['VBoxManage', '--version']) - version_string = re.match(r"^([0-9\.]+).*$", build_id.strip()).group(1) - return tuple(int(s or '0') for s in version_string.split('.')) - - def create_virtualbox_guest(self, ssh_host, vm_name, vdi_path, autostart, - vagrant): - '''Create the VirtualBox virtual machine.''' - - self.status(msg='Create VirtualBox virtual machine') - - ram_mebibytes = str(self.get_ram_size() / (1024**2)) - - vcpu_count = str(self.get_vcpu_count()) - - if not vagrant: - hostonly_iface = self.get_host_interface(ssh_host) - - if self.virtualbox_version(ssh_host) < (4, 3, 0): - sataportcount_option = '--sataportcount' - else: - sataportcount_option = '--portcount' - - commands = [ - ['createvm', '--name', vm_name, '--ostype', 'Linux26_64', - '--register'], - ['modifyvm', vm_name, '--ioapic', 'on', - '--memory', ram_mebibytes, '--cpus', vcpu_count], - ['storagectl', vm_name, '--name', 'SATA Controller', - '--add', 'sata', '--bootable', 'on', sataportcount_option, '2'], - ['storageattach', vm_name, '--storagectl', 'SATA Controller', - '--port', '0', '--device', '0', '--type', 'hdd', '--medium', - vdi_path], - ] - if vagrant: - commands[1].extend(['--nic1', 'nat', - '--natnet1', 'default']) - else: - commands[1].extend(['--nic1', 'hostonly', - '--hostonlyadapter1', hostonly_iface, - '--nic2', 'nat', '--natnet2', 'default']) - - attach_disks = self.parse_attach_disks() - for device_no, disk in enumerate(attach_disks, 1): - cmd = ['storageattach', vm_name, - '--storagectl', 'SATA Controller', - '--port', str(device_no), - '--device', '0', - '--type', 'hdd', - '--medium', disk] - commands.append(cmd) - - if autostart: - commands.append(['startvm', vm_name]) - - for command in commands: - argv = ['VBoxManage'] + command - writeexts.ssh_runcmd(ssh_host, argv) - - def get_host_interface(self, ssh_host): - host_ipaddr = os.environ.get('HOST_IPADDR') - netmask = os.environ.get('NETMASK') - - if host_ipaddr is None: - raise writeexts.ExtensionError('HOST_IPADDR was not given') - - if netmask is None: - raise writeexts.ExtensionError('NETMASK was not given') - - # 'VBoxManage list hostonlyifs' retrieves a list with the hostonly - # interfaces on the host. For each interface, the following lines - # are shown on top: - # - # Name: vboxnet0 - # GUID: 786f6276-656e-4074-8000-0a0027000000 - # Dhcp: Disabled - # IPAddress: 192.168.100.1 - # - # The following command tries to retrieve the hostonly interface - # name (e.g. vboxnet0) associated with the given ip address. - iface = None - lines = writeexts.ssh_runcmd(ssh_host, - ['VBoxManage', 'list', 'hostonlyifs']).splitlines() - for i, v in enumerate(lines): - if host_ipaddr in v: - iface = lines[i-3].split()[1] - break - - if iface is None: - iface = writeexts.ssh_runcmd(ssh_host, - ['VBoxManage', 'hostonlyif', 'create']) - # 'VBoxManage hostonlyif create' shows the name of the - # created hostonly interface inside single quotes - iface = iface[iface.find("'") + 1 : iface.rfind("'")] - writeexts.ssh_runcmd(ssh_host, - ['VBoxManage', 'hostonlyif', - 'ipconfig', iface, - '--ip', host_ipaddr, - '--netmask', netmask]) - - return iface - -VirtualBoxPlusSshWriteExtension().run() diff --git a/extensions/virtualbox-ssh.write.help b/extensions/virtualbox-ssh.write.help deleted file mode 100644 index 2dbf988c..00000000 --- a/extensions/virtualbox-ssh.write.help +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright (C) 2014, 2015 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, see . - -help: | - - Deploy a Baserock system as a *new* VirtualBox virtual machine. - (Use the `ssh-rsync` write extension to deploy upgrades to an *existing* - VM) - - Connects to HOST via ssh to run VirtualBox's command line management tools. - - Parameters: - - * location: a custom URL scheme of the form `vbox+ssh://HOST/GUEST/PATH`, - where: - * HOST is the name of the host on which VirtualBox is running - * GUEST is the name of the guest VM on that host - * PATH is the path to the disk image that should be created, - on that host. For example, - `vbox+ssh://alice@192.168.122.1/testsys/home/alice/testys.img` where - * `alice@192.168.122.1` is the target host as given to ssh, - **from within the development host** (which may be - different from the target host's normal address); - * `testsys` is the name of the new guest VM'; - * `/home/alice/testys.img` is the pathname of the disk image files - on the target host. - - * HOSTNAME=name: the hostname of the **guest** VM within the network into - which it is being deployed. - - * DISK_SIZE=X: **(MANDATORY)** the size of the VM's primary virtual hard - disk. `X` should use a suffix of `K`, `M`, or `G` (in upper or lower - case) to indicate kilo-, mega-, or gigabytes. For example, - `DISK_SIZE=100G` would create a 100 gigabyte virtual hard disk. - - * RAM_SIZE=X: The amount of RAM that the virtual machine should allocate - for itself from the host. `X` is interpreted in the same as for - DISK_SIZE, and defaults to `1G`. - - * VCPUS=n: the number of virtual CPUs for the VM. Allowed values 1-32. Do - not use more CPU cores than you have available physically (real cores, - no hyperthreads). - - * INITRAMFS_PATH=path: the location of an initramfs for the bootloader to - tell Linux to use, rather than booting the rootfs directly. - - * DTB_PATH=path: **(MANDATORY)** for systems that require a device tree - binary - Give the full path (without a leading /) to the location of the - DTB in the built system image . The deployment will fail if `path` does - not exist. - - * BOOTLOADER_INSTALL=value: the bootloader to be installed - **(MANDATORY)** for non-x86 systems - - allowed values = - - 'extlinux' (default) - the extlinux bootloader will - be installed - - 'none' - no bootloader will be installed by `morph deploy`. A - bootloader must be installed manually. This value must be used when - deploying non-x86 systems such as ARM. - - * BOOTLOADER_CONFIG_FORMAT=value: the bootloader format to be used. - If not specified for x86-32 and x86-64 systems, 'extlinux' will be used - - allowed values = - - 'extlinux' - - * KERNEL_ARGS=args: optional additional kernel command-line parameters to - be appended to the default set. The default set is: - - 'rw init=/sbin/init rootfstype=btrfs \ - rootflags=subvol=systems/default/run \ - root=[name or UUID of root filesystem]' - - (See https://www.kernel.org/doc/Documentation/kernel-parameters.txt) - - * AUTOSTART= - boolean. If it is set, the VM will be started when - it has been deployed. - - * VAGRANT= - boolean. If it is set, then networking is configured - so that the VM will work with Vagrant. Otherwise networking is - configured to run directly in VirtualBox. - - * HOST_IPADDR= - the IP address of the VM host. - - * NETMASK= - the netmask of the VM host. - - * NETWORK_CONFIG= - `net_config` is used to set up the VM's - network interfaces. It is a string containing semi-colon separated - 'stanzas' where each stanza provides information about a network - interface. Each stanza is of the form name:type[,arg=value] e.g. - - lo:loopback - eth0:dhcp - eth1:static,address=10.0.0.1,netmask=255.255.0.0 - - An example of the NETWORK_CONFIG parameter (It should be in one line) - - `"lo:loopback;eth0:static,address=192.168.100.2,netmask=255.255.255.0; - eth1:dhcp,hostname=$(hostname)"` - - It is useful to configure one interface to use NAT to give the VM access - to the outside world and another interface to use the Virtual Box host - adapter to allow you to access the Trove from the host machine. - - The NAT interface eth1 is set up to use dhcp, the host-only adapter - interface is configured statically. - - Note: you must give the host-only adapter interface an address that lies - **on the same network** as the host adapter. So if the host adapter has - an IP of 192.168.100.1 eth0 should have an address such as - 192.168.100.42. - - The settings of the host adapter, including its IP can be changed either - in the VirtualBox manager UI - (https://www.virtualbox.org/manual/ch03.html#settings-network) - or via the VBoxManage command line - (https://www.virtualbox.org/manual/ch08.html#idp57572192) - - See Chapter 6 of the VirtualBox User Manual for more information about - virtual networking (https://www.virtualbox.org/manual/ch06.html) - - (See `morph help deploy` for details of how to pass parameters to write - extensions) diff --git a/extensions/writeexts.py b/extensions/writeexts.py deleted file mode 100644 index 5b79093b..00000000 --- a/extensions/writeexts.py +++ /dev/null @@ -1,1072 +0,0 @@ -#!/usr/bin/python2 -# Copyright (C) 2012-2015 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, see . - - -import contextlib -import errno -import logging -import os -import re -import shutil -import stat -import subprocess -import sys -import time -import tempfile - -import partitioning -import pyfdisk -import writeexts - - -if sys.version_info >= (3, 3, 0): - import shlex - shell_quote = shlex.quote -else: - import pipes - shell_quote = pipes.quote - - -def get_data_path(relative_path): - extensions_dir = os.path.dirname(__file__) - return os.path.join(extensions_dir, relative_path) - - -def get_data(relative_path): - with open(get_data_path(relative_path)) as f: - return f.read() - - -def ssh_runcmd(host, args, **kwargs): - '''Run command over ssh''' - command = ['ssh', host, '--'] + [shell_quote(arg) for arg in args] - - feed_stdin = kwargs.get('feed_stdin') - stdin = kwargs.get('stdin', subprocess.PIPE) - stdout = kwargs.get('stdout', subprocess.PIPE) - stderr = kwargs.get('stderr', subprocess.PIPE) - - p = subprocess.Popen(command, stdin=stdin, stdout=stdout, stderr=stderr) - out, err = p.communicate(input=feed_stdin) - if p.returncode != 0: - raise ExtensionError('ssh command `%s` failed' % ' '.join(command)) - return out - - -def write_from_dict(filepath, d, validate=lambda x, y: True): - """Takes a dictionary and appends the contents to a file - - An optional validation callback can be passed to perform validation on - each value in the dictionary. - - e.g. - - def validation_callback(dictionary_key, dictionary_value): - if not dictionary_value.isdigit(): - raise Exception('value contains non-digit character(s)') - - Any callback supplied to this function should raise an exception - if validation fails. - - """ - # Sort items asciibetically - # the output of the deployment should not depend - # on the locale of the machine running the deployment - items = sorted(d.iteritems(), key=lambda (k, v): [ord(c) for c in v]) - - for (k, v) in items: - validate(k, v) - - with open(filepath, 'a') as f: - for (_, v) in items: - f.write('%s\n' % v) - - os.fchown(f.fileno(), 0, 0) - os.fchmod(f.fileno(), 0644) - - -def parse_environment_pairs(env, pairs): - '''Add key=value pairs to the environment dict. - - Given a dict and a list of strings of the form key=value, - set dict[key] = value, unless key is already set in the - environment, at which point raise an exception. - - This does not modify the passed in dict. - - Returns the extended dict. - - ''' - extra_env = dict(p.split('=', 1) for p in pairs) - conflicting = [k for k in extra_env if k in env] - if conflicting: - raise ExtensionError('Environment already set: %s' - % ', '.join(conflicting)) - - # Return a dict that is the union of the two - # This is not the most performant, since it creates - # 3 unnecessary lists, but I felt this was the most - # easy to read. Using itertools.chain may be more efficicent - return dict(env.items() + extra_env.items()) - - -class ExtensionError(Exception): - - def __init__(self, msg): - self.msg = msg - - def __str__(self): - return self.msg - - -class Fstab(object): - '''Small helper class for parsing and adding lines to /etc/fstab.''' - - # There is an existing Python helper library for editing of /etc/fstab. - # However it is unmaintained and has an incompatible license (GPL3). - # - # https://code.launchpad.net/~computer-janitor-hackers/python-fstab/trunk - - def __init__(self, filepath='/etc/fstab'): - if os.path.exists(filepath): - with open(filepath, 'r') as f: - self.text= f.read() - else: - self.text = '' - self.filepath = filepath - self.lines_added = 0 - - def get_mounts(self): - '''Return list of mount devices and targets in /etc/fstab. - - Return value is a dict of target -> device. - ''' - mounts = dict() - for line in self.text.splitlines(): - words = line.split() - if len(words) >= 2 and not words[0].startswith('#'): - device, target = words[0:2] - mounts[target] = device - return mounts - - def add_line(self, line): - '''Add a new entry to /etc/fstab. - - Lines are appended, and separated from any entries made by configure - extensions with a comment. - - ''' - if self.lines_added == 0: - if len(self.text) == 0 or self.text[-1] is not '\n': - self.text += '\n' - self.text += '# Morph default system layout\n' - self.lines_added += 1 - - self.text += line + '\n' - - def write(self): - '''Rewrite the fstab file to include all new entries.''' - with tempfile.NamedTemporaryFile(delete=False) as f: - f.write(self.text) - tmp = f.name - shutil.move(os.path.abspath(tmp), os.path.abspath(self.filepath)) - - -class Extension(object): - - '''A base class for deployment extensions. - - A subclass should subclass this class, and add a - ``process_args`` method. - - Note that it is not necessary to subclass this class for write - extensions. This class is here just to collect common code for - write extensions. - - ''' - - def setup_logging(self): - '''Direct all logging output to MORPH_LOG_FD, if set. - - This file descriptor is read by Morph and written into its own log - file. - - ''' - log_write_fd = int(os.environ.get('MORPH_LOG_FD', 0)) - - if log_write_fd == 0: - return - - formatter = logging.Formatter('%(message)s') - - handler = logging.StreamHandler(os.fdopen(log_write_fd, 'w')) - handler.setFormatter(formatter) - - logger = logging.getLogger() - logger.addHandler(handler) - logger.setLevel(logging.DEBUG) - - def process_args(self, args): - raise NotImplementedError() - - def run(self, args=None): - if args is None: - args = sys.argv[1:] - try: - self.setup_logging() - self.process_args(args) - except ExtensionError as e: - sys.stdout.write('ERROR: %s\n' % e) - sys.exit(1) - - @staticmethod - def status(**kwargs): - '''Provide status output. - - The ``msg`` keyword argument is the actual message, - the rest are values for fields in the message as interpolated - by %. - - ''' - sys.stdout.write('%s\n' % (kwargs['msg'] % kwargs)) - sys.stdout.flush() - - -class WriteExtension(Extension): - - '''A base class for deployment write extensions. - - A subclass should subclass this class, and add a - ``process_args`` method. - - Note that it is not necessary to subclass this class for write - extensions. This class is here just to collect common code for - write extensions. - - ''' - - def check_for_btrfs_in_deployment_host_kernel(self): - with open('/proc/filesystems') as f: - text = f.read() - return '\tbtrfs\n' in text - - def require_btrfs_in_deployment_host_kernel(self): - if not self.check_for_btrfs_in_deployment_host_kernel(): - raise ExtensionError( - 'Error: Btrfs is required for this deployment, but was not ' - 'detected in the kernel of the machine that is running Morph.') - - def create_local_system(self, temp_root, location): - '''Create a raw system image locally.''' - - with self.created_disk_image(location): - self.create_baserock_system(temp_root, location) - - def create_baserock_system(self, temp_root, location): - if self.get_environment_boolean('USE_PARTITIONING', 'no'): - self.create_partitioned_system(temp_root, location) - else: - self.format_btrfs(location) - self.create_unpartitioned_system(temp_root, location) - - @contextlib.contextmanager - def created_disk_image(self, location): - size = self.get_disk_size() - if not size: - raise ExtensionError('DISK_SIZE is not defined') - self.create_raw_disk_image(location, size) - try: - yield - except BaseException: - os.unlink(location) - raise - - def format_btrfs(self, raw_disk): - try: - self.mkfs_btrfs(raw_disk) - except BaseException: - sys.stderr.write('Error creating disk image') - raise - - def create_unpartitioned_system(self, temp_root, raw_disk): - '''Deploy a bootable Baserock system within a single Btrfs filesystem. - - Called if USE_PARTITIONING=no (the default) is set in the deployment - options. - - ''' - with self.mount(raw_disk) as mp: - try: - self.create_versioned_layout(mp, version_label='factory') - self.create_btrfs_system_rootfs( - temp_root, mp, version_label='factory', - rootfs_uuid=self.get_uuid(raw_disk)) - if self.bootloader_config_is_wanted(): - self.create_bootloader_config( - temp_root, mp, version_label='factory', - rootfs_uuid=self.get_uuid(raw_disk)) - except BaseException: - sys.stderr.write('Error creating Btrfs system layout') - raise - - def _parse_size(self, size): - '''Parse a size from a string. - - Return size in bytes. - - ''' - - m = re.match('^(\d+)([kmgKMG]?)$', size) - if not m: - return None - - factors = { - '': 1, - 'k': 1024, - 'm': 1024**2, - 'g': 1024**3, - } - factor = factors[m.group(2).lower()] - - return int(m.group(1)) * factor - - def _parse_size_from_environment(self, env_var, default): - '''Parse a size from an environment variable.''' - - size = os.environ.get(env_var, default) - if size is None: - return None - bytes = self._parse_size(size) - if bytes is None: - raise ExtensionError('Cannot parse %s value %s' - % (env_var, size)) - return bytes - - def get_disk_size(self): - '''Parse disk size from environment.''' - return self._parse_size_from_environment('DISK_SIZE', None) - - def get_ram_size(self): - '''Parse RAM size from environment.''' - return self._parse_size_from_environment('RAM_SIZE', '1G') - - def get_vcpu_count(self): - '''Parse the virtual cpu count from environment.''' - return self._parse_size_from_environment('VCPUS', '1') - - def create_raw_disk_image(self, filename, size): - '''Create a raw disk image.''' - - self.status(msg='Creating empty disk image') - with open(filename, 'wb') as f: - if size > 0: - f.seek(size-1) - f.write('\0') - - def mkfs_btrfs(self, location): - '''Create a btrfs filesystem on the disk.''' - - self.status(msg='Creating btrfs filesystem') - try: - # The following command disables some new filesystem features. We - # need to do this because at the time of writing, SYSLINUX has not - # been updated to understand these new features and will fail to - # boot if the kernel is on a filesystem where they are enabled. - subprocess.check_output( - ['mkfs.btrfs','-f', '-L', 'baserock', - '--features', '^extref', - '--features', '^skinny-metadata', - '--features', '^mixed-bg', - '--nodesize', '4096', - location], stderr=subprocess.STDOUT) - except subprocess.CalledProcessError as e: - if 'unrecognized option \'--features\'' in e.output: - # Old versions of mkfs.btrfs (including v0.20, present in many - # Baserock releases) don't support the --features option, but - # also don't enable the new features by default. So we can - # still create a bootable system in this situation. - logging.debug( - 'Assuming mkfs.btrfs failure was because the tool is too ' - 'old to have --features flag.') - subprocess.check_call(['mkfs.btrfs','-f', - '-L', 'baserock', location]) - else: - raise - - def get_uuid(self, location, offset=0): - '''Get the filesystem UUID of a block device's file system. - - Requires util-linux blkid; the busybox version ignores options and - lies by exiting successfully. - - Args: - location: Path of device or image to inspect - offset: A byte offset - which should point to the start of a - partition containing a filesystem - ''' - - return subprocess.check_output(['blkid', '-s', 'UUID', '-o', - 'value', '-p', '-O', str(offset), - location]).strip() - - @contextlib.contextmanager - def mount(self, location): - self.status(msg='Mounting filesystem') - try: - mount_point = tempfile.mkdtemp() - if self.is_device(location): - subprocess.check_call(['mount', location, mount_point]) - else: - subprocess.check_call(['mount', '-o', 'loop', - location, mount_point]) - except BaseException: - sys.stderr.write('Error mounting filesystem') - os.rmdir(mount_point) - raise - try: - yield mount_point - finally: - self.status(msg='Unmounting filesystem') - subprocess.check_call(['umount', mount_point]) - os.rmdir(mount_point) - - def create_versioned_layout(self, mountpoint, version_label): - '''Create a versioned directory structure within a partition. - - The Baserock project has defined a 'reference upgrade mechanism'. This - mandates a specific directory layout. It consists of a toplevel - '/systems' directory, containing subdirectories named with a 'version - label'. These subdirectories contain the actual OS content. - - For the root file system, a Btrfs partition must be used. For each - version, two subvolumes are created: 'orig' and 'run'. This is handled - in create_btrfs_system_rootfs(). - - Other partitions (e.g. /boot) can also follow the same layout. In the - case of /boot, content goes directly in the version directory. That - means there are no 'orig' and 'run' subvolumes, which avoids the - need to use Btrfs. - - The `system-version-manager` tool from tbdiff.git is responsible for - deploying live upgrades, and it understands this layout. - - ''' - version_root = os.path.join(mountpoint, 'systems', version_label) - - os.makedirs(version_root) - os.symlink( - version_label, os.path.join(mountpoint, 'systems', 'default')) - - def create_btrfs_system_rootfs(self, temp_root, mountpoint, version_label, - rootfs_uuid, device=None): - '''Separate base OS versions from state using subvolumes. - - The 'device' parameter should be a pyfdisk.Device instance, - as returned by partitioning.do_partitioning(), that describes the - partition layout of the target device. This is used to set up - mountpoints in the root partition for the other partitions. - If no 'device' instance is passed, no mountpoints are set up in the - rootfs. - - ''' - version_root = os.path.join(mountpoint, 'systems', version_label) - state_root = os.path.join(mountpoint, 'state') - os.makedirs(state_root) - - system_dir = self.create_orig(version_root, temp_root) - state_dirs = self.complete_fstab_for_btrfs_layout(system_dir, - rootfs_uuid, device) - - for state_dir in state_dirs: - self.create_state_subvolume(system_dir, mountpoint, state_dir) - - self.create_run(version_root) - - if device: - self.create_partition_mountpoints(device, system_dir) - - def create_bootloader_config(self, temp_root, mountpoint, version_label, - rootfs_uuid, device=None): - '''Setup the bootloader. - - ''' - initramfs = self.find_initramfs(temp_root) - version_root = os.path.join(mountpoint, 'systems', version_label) - - self.install_kernel(version_root, temp_root) - if self.get_dtb_path() != '': - self.install_dtb(version_root, temp_root) - self.install_syslinux_menu(mountpoint, temp_root) - if initramfs is not None: - # Using initramfs - can boot a rootfs with a filesystem UUID - self.install_initramfs(initramfs, version_root) - self.generate_bootloader_config(mountpoint, - rootfs_uuid=rootfs_uuid) - else: - if device: - # A partitioned disk or image - boot with partition UUID - root_part = device.get_partition_by_mountpoint('/') - root_guid = device.get_partition_uuid(root_part) - self.generate_bootloader_config(mountpoint, - root_guid=root_guid) - else: - # Unpartitioned and no initramfs - cannot boot with a UUID - self.generate_bootloader_config(mountpoint) - self.install_bootloader(mountpoint) - - def create_partition_mountpoints(self, device, system_dir): - '''Create (or empty) partition mountpoints in the root filesystem - - Delete contents of partition mountpoints in the rootfs to leave an - empty mount drectory (files are copied to the actual partition in - create_partitioned_system()), or create an empty mount directory in - the rootfs if the mount path doesn't exist. - - Args: - device: A pyfdisk.py Device object describing the partitioning - system_dir: A path to the Baserock rootfs to be modified - ''' - - for part in device.partitionlist: - if hasattr(part, 'mountpoint') and part.mountpoint != '/': - part_mount_dir = os.path.join(system_dir, - re.sub('^/', '', part.mountpoint)) - if os.path.exists(part_mount_dir): - self.status(msg='Deleting files in mountpoint ' - 'for %s partition' % part.mountpoint) - self.empty_dir(part_mount_dir) - else: - self.status(msg='Creating empty mount directory ' - 'for %s partition' % part.mountpoint) - os.mkdir(part_mount_dir) - - def create_orig(self, version_root, temp_root): - '''Create the default "factory" system.''' - - orig = os.path.join(version_root, 'orig') - - self.status(msg='Creating orig subvolume') - subprocess.check_call(['btrfs', 'subvolume', 'create', orig]) - self.status(msg='Copying files to orig subvolume') - subprocess.check_call(['cp', '-a', temp_root + '/.', orig + '/.']) - - return orig - - def create_run(self, version_root): - '''Create the 'run' snapshot.''' - - self.status(msg='Creating run subvolume') - orig = os.path.join(version_root, 'orig') - run = os.path.join(version_root, 'run') - subprocess.check_call( - ['btrfs', 'subvolume', 'snapshot', orig, run]) - - def create_state_subvolume(self, system_dir, mountpoint, state_subdir): - '''Create a shared state subvolume. - - We need to move any files added to the temporary rootfs by the - configure extensions to their correct home. For example, they might - have added keys in `/root/.ssh` which we now need to transfer to - `/state/root/.ssh`. - - ''' - self.status(msg='Creating %s subvolume' % state_subdir) - subvolume = os.path.join(mountpoint, 'state', state_subdir) - subprocess.check_call(['btrfs', 'subvolume', 'create', subvolume]) - os.chmod(subvolume, 0o755) - - existing_state_dir = os.path.join(system_dir, state_subdir) - self.move_dir_contents(existing_state_dir, subvolume) - - def move_dir_contents(self, source_dir, target_dir): - '''Move all files source_dir, to target_dir''' - - n = self.__cmd_files_in_dir(['mv'], source_dir, target_dir) - if n: - self.status(msg='Moved %d files to %s' % (n, target_dir)) - - def copy_dir_contents(self, source_dir, target_dir): - '''Copy all files source_dir, to target_dir''' - - n = self.__cmd_files_in_dir(['cp', '-a', '-r'], source_dir, target_dir) - if n: - self.status(msg='Copied %d files to %s' % (n, target_dir)) - - def empty_dir(self, directory): - '''Empty the contents of a directory, but not the directory itself''' - - n = self.__cmd_files_in_dir(['rm', '-rf'], directory) - if n: - self.status(msg='Deleted %d files in %s' % (n, directory)) - - def __cmd_files_in_dir(self, cmd, source_dir, target_dir=None): - files = [] - if os.path.exists(source_dir): - files = os.listdir(source_dir) - for filename in files: - filepath = os.path.join(source_dir, filename) - add_params = [filepath, target_dir] if target_dir else [filepath] - subprocess.check_call(cmd + add_params) - return len(files) - - def complete_fstab_for_btrfs_layout(self, system_dir, - rootfs_uuid=None, device=None): - '''Fill in /etc/fstab entries for the default Btrfs disk layout. - - In the future we should move this code out of the write extension and - in to a configure extension. To do that, though, we need some way of - informing the configure extension what layout should be used. Right now - a configure extension doesn't know if the system is going to end up as - a Btrfs disk image, a tarfile or something else and so it can't come - up with a sensible default fstab. - - Configuration extensions can already create any /etc/fstab that they - like. This function only fills in entries that are missing, so if for - example the user configured /home to be on a separate partition, that - decision will be honoured and /state/home will not be created. - - ''' - shared_state_dirs = {'home', 'root', 'opt', 'srv', 'var'} - - fstab = Fstab(os.path.join(system_dir, 'etc', 'fstab')) - existing_mounts = fstab.get_mounts() - - if '/' in existing_mounts: - root_device = existing_mounts['/'] - else: - root_device = (self.get_root_device() if rootfs_uuid is None else - 'UUID=%s' % rootfs_uuid) - fstab.add_line('%s / btrfs defaults,rw,noatime 0 1' % root_device) - - # Add fstab entries for partitions - part_mountpoints = set() - if device: - mount_parts = set(p for p in device.partitionlist - if hasattr(p, 'mountpoint') and p.mountpoint != '/') - for part in mount_parts: - if part.mountpoint not in existing_mounts: - # Get filesystem UUID - part_uuid = self.get_uuid(device.location, - part.extent.start * - device.sector_size) - self.status(msg='Adding fstab entry for %s ' - 'partition' % part.mountpoint) - fstab.add_line('UUID=%s %s %s defaults,rw,noatime ' - '0 2' % (part_uuid, part.mountpoint, - part.filesystem)) - part_mountpoints.add(part.mountpoint) - else: - self.status(msg='WARNING: an entry already exists in ' - 'fstab for %s partition, skipping' % - part.mountpoint) - - # Add entries for state dirs - all_mountpoints = set(existing_mounts.keys()) | part_mountpoints - state_dirs_to_create = set() - for state_dir in shared_state_dirs: - mp = '/' + state_dir - if mp not in all_mountpoints: - state_dirs_to_create.add(state_dir) - state_subvol = os.path.join('/state', state_dir) - fstab.add_line( - '%s /%s btrfs subvol=%s,defaults,rw,noatime 0 2' % - (root_device, state_dir, state_subvol)) - - fstab.write() - return state_dirs_to_create - - def find_initramfs(self, temp_root): - '''Check whether the rootfs has an initramfs. - - Uses the INITRAMFS_PATH option to locate it. - ''' - if 'INITRAMFS_PATH' in os.environ: - initramfs = os.path.join(temp_root, os.environ['INITRAMFS_PATH']) - if not os.path.exists(initramfs): - raise ExtensionError('INITRAMFS_PATH specified, ' - 'but file does not exist') - return initramfs - return None - - def install_initramfs(self, initramfs_path, version_root): - '''Install the initramfs outside of 'orig' or 'run' subvolumes. - - This is required because syslinux doesn't traverse subvolumes when - loading the kernel or initramfs. - ''' - self.status(msg='Installing initramfs') - initramfs_dest = os.path.join(version_root, 'initramfs') - subprocess.check_call(['cp', '-a', initramfs_path, initramfs_dest]) - - def install_kernel(self, version_root, temp_root): - '''Install the kernel outside of 'orig' or 'run' subvolumes''' - - self.status(msg='Installing kernel') - image_names = ['vmlinuz', 'zImage', 'uImage'] - kernel_dest = os.path.join(version_root, 'kernel') - for name in image_names: - try_path = os.path.join(temp_root, 'boot', name) - if os.path.exists(try_path): - subprocess.check_call(['cp', '-a', try_path, kernel_dest]) - break - - def install_dtb(self, version_root, temp_root): - '''Install the device tree outside of 'orig' or 'run' subvolumes''' - - self.status(msg='Installing devicetree') - device_tree_path = self.get_dtb_path() - dtb_dest = os.path.join(version_root, 'dtb') - try_path = os.path.join(temp_root, device_tree_path) - if os.path.exists(try_path): - subprocess.check_call(['cp', '-a', try_path, dtb_dest]) - else: - logging.error("Failed to find device tree %s", device_tree_path) - raise ExtensionError( - 'Failed to find device tree %s' % device_tree_path) - - def get_dtb_path(self): - return os.environ.get('DTB_PATH', '') - - def get_bootloader_install(self): - # Do we actually want to install the bootloader? - # Set this to "none" to prevent the install - return os.environ.get('BOOTLOADER_INSTALL', 'extlinux') - - def get_bootloader_config_format(self): - # The config format for the bootloader, - # if not set we default to extlinux for x86 - return os.environ.get('BOOTLOADER_CONFIG_FORMAT', 'extlinux') - - def get_extra_kernel_args(self): - return os.environ.get('KERNEL_ARGS', '') - - def get_root_device(self): - return os.environ.get('ROOT_DEVICE', '/dev/sda') - - def generate_bootloader_config(self, *args, **kwargs): - '''Install extlinux on the newly created disk image.''' - config_function_dict = { - 'extlinux': self.generate_extlinux_config, - } - - config_type = self.get_bootloader_config_format() - if config_type in config_function_dict: - config_function_dict[config_type](*args, **kwargs) - else: - raise ExtensionError( - 'Invalid BOOTLOADER_CONFIG_FORMAT %s' % config_type) - - def generate_extlinux_config(self, real_root, - rootfs_uuid=None, root_guid=None): - '''Generate the extlinux configuration file - - Args: - real_root: Path to the mounted top level of the root filesystem - rootfs_uuid: Specify a filesystem UUID which can be loaded using - an initramfs aware of filesystems - root_guid: Specify a partition GUID, can be used without an - initramfs - ''' - - self.status(msg='Creating extlinux.conf') - # To be compatible with u-boot, create the extlinux.conf file in - # /extlinux/ rather than / - # Syslinux, however, requires this to be in /, so create a symlink - # as well - config_path = os.path.join(real_root, 'extlinux') - os.makedirs(config_path) - config = os.path.join(config_path, 'extlinux.conf') - os.symlink('extlinux/extlinux.conf', os.path.join(real_root, - 'extlinux.conf')) - - ''' Please also update the documentation in the following files - if you change these default kernel args: - - kvm.write.help - - rawdisk.write.help - - virtualbox-ssh.write.help ''' - kernel_args = ( - 'rw ' # ro ought to work, but we don't test that regularly - 'init=/sbin/init ' # default, but it doesn't hurt to be explicit - 'rootfstype=btrfs ' # required when using initramfs, also boots - # faster when specified without initramfs - 'rootflags=subvol=systems/default/run ') # boot runtime subvol - - # See init/do_mounts.c:182 in the kernel source, in the comment above - # function name_to_dev_t(), for an explanation of the available - # options for the kernel parameter 'root', particularly when using - # GUID/UUIDs - if rootfs_uuid: - root_device = 'UUID=%s' % rootfs_uuid - elif root_guid: - root_device = 'PARTUUID=%s' % root_guid - else: - # Fall back to the root partition named in the cluster - root_device = self.get_root_device() - kernel_args += 'root=%s ' % root_device - - kernel_args += self.get_extra_kernel_args() - with open(config, 'w') as f: - f.write('default linux\n') - f.write('timeout 1\n') - f.write('label linux\n') - f.write('kernel /systems/default/kernel\n') - if rootfs_uuid is not None: - f.write('initrd /systems/default/initramfs\n') - if self.get_dtb_path() != '': - f.write('devicetree /systems/default/dtb\n') - f.write('append %s\n' % kernel_args) - - def install_bootloader(self, *args, **kwargs): - install_function_dict = { - 'extlinux': self.install_bootloader_extlinux, - } - - install_type = self.get_bootloader_install() - if install_type in install_function_dict: - install_function_dict[install_type](*args, **kwargs) - elif install_type != 'none': - raise ExtensionError( - 'Invalid BOOTLOADER_INSTALL %s' % install_type) - - def install_bootloader_extlinux(self, real_root): - self.status(msg='Installing extlinux') - subprocess.check_call(['extlinux', '--install', real_root]) - - # FIXME this hack seems to be necessary to let extlinux finish - subprocess.check_call(['sync']) - time.sleep(2) - - def install_syslinux_blob(self, device, orig_root): - '''Install Syslinux MBR blob - - This is the first stage of boot (for partitioned images) on x86 - machines. It is not required where there is no partition table. The - syslinux bootloader is written to the MBR, and is capable of loading - extlinux. This only works when the partition is set as bootable (MBR), - or the legacy boot flag is set (GPT). The blob is built with extlinux, - and found in the rootfs''' - - pt_format = device.partition_table_format.lower() - if pt_format in ('gpb', 'mbr'): - blob = 'mbr.bin' - elif pt_format == 'gpt': - blob = 'gptmbr.bin' - blob_name = 'usr/share/syslinux/' + blob - self.status(msg='Installing syslinux %s blob' % pt_format.upper()) - blob_location = os.path.join(orig_root, blob_name) - if os.path.exists(blob_location): - subprocess.check_call(['dd', 'if=%s' % blob_location, - 'of=%s' % device.location, - 'bs=440', 'count=1', 'conv=notrunc']) - else: - raise ExtensionError('MBR blob not found. Is this the correct' - 'architecture? The MBR blob will only be built for x86' - 'systems. You may wish to configure BOOTLOADER_INSTALL') - - def install_syslinux_menu(self, real_root, temp_root): - '''Make syslinux/extlinux menu binary available. - - The syslinux boot menu is compiled to a file named menu.c32. Extlinux - searches a few places for this file but it does not know to look inside - our subvolume, so we copy it to the filesystem root. - - If the file is not available, the bootloader will still work but will - not be able to show a menu. - - ''' - menu_file = os.path.join(temp_root, 'usr', 'share', 'syslinux', - 'menu.c32') - if os.path.isfile(menu_file): - self.status(msg='Copying menu.c32') - shutil.copy(menu_file, real_root) - - def parse_attach_disks(self): - '''Parse $ATTACH_DISKS into list of disks to attach.''' - - if 'ATTACH_DISKS' in os.environ: - s = os.environ['ATTACH_DISKS'] - return s.split(':') - else: - return [] - - def bootloader_config_is_wanted(self): - '''Does the user want to generate a bootloader config? - - The user may set $BOOTLOADER_CONFIG_FORMAT to the desired - format. 'extlinux' is the only allowed value, and is the default - value for x86-32 and x86-64. - - ''' - - def is_x86(arch): - return (arch == 'x86_64' or - (arch.startswith('i') and arch.endswith('86'))) - - value = os.environ.get('BOOTLOADER_CONFIG_FORMAT', '') - if value == '': - if not is_x86(os.uname()[-1]): - return False - - return True - - def get_environment_boolean(self, variable, default='no'): - '''Parse a yes/no boolean passed through the environment.''' - - value = os.environ.get(variable, default).lower() - if value in ('no', '0', 'false'): - return False - elif value in ('yes', '1', 'true'): - return True - else: - raise ExtensionError('Unexpected value for %s: %s' % - (variable, value)) - - def check_ssh_connectivity(self, ssh_host): - try: - output = ssh_runcmd(ssh_host, ['echo', 'test']) - except ExtensionError as e: - logging.error("Error checking SSH connectivity: %s", str(e)) - raise ExtensionError( - 'Unable to SSH to %s: %s' % (ssh_host, e)) - - if output.strip() != 'test': - raise ExtensionError( - 'Unexpected output from remote machine: %s' % output.strip()) - - def is_device(self, location): - try: - st = os.stat(location) - return stat.S_ISBLK(st.st_mode) - except OSError as e: - if e.errno == errno.ENOENT: - return False - raise - - def create_partitioned_system(self, temp_root, location): - '''Deploy a bootable Baserock system with a custom partition layout. - - Called if USE_PARTITIONING=yes is set in the deployment options. - - ''' - part_spec = os.environ.get('PARTITION_FILE', 'partitioning/default') - - disk_size = self.get_disk_size() - if not disk_size: - raise writeexts.ExtensionError('DISK_SIZE is not defined') - - dev = partitioning.do_partitioning(location, disk_size, - temp_root, part_spec) - boot_partition_available = dev.get_partition_by_mountpoint('/boot') - - for part in dev.partitionlist: - if not hasattr(part, 'mountpoint'): - continue - if part.mountpoint == '/': - # Re-format the rootfs, to include needed extra features - with pyfdisk.create_loopback(location, - part.extent.start * - dev.sector_size, part.size) as l: - self.mkfs_btrfs(l) - - self.status(msg='Mounting partition %d' % part.number) - offset = part.extent.start * dev.sector_size - with self.mount_partition(location, - offset, part.size) as part_mount_dir: - if part.mountpoint == '/': - # Install root filesystem - rfs_uuid = self.get_uuid(location, part.extent.start * - dev.sector_size) - self.create_versioned_layout(part_mount_dir, 'factory') - self.create_btrfs_system_rootfs(temp_root, part_mount_dir, - 'factory', rfs_uuid, dev) - - # If there's no /boot partition, but we do need to generate - # a bootloader configuration file, then it needs to go in - # the root partition. - if (boot_partition_available is False - and self.bootloader_config_is_wanted()): - self.create_bootloader_config( - temp_root, part_mount_dir, 'factory', rfs_uuid, - dev) - - if self.get_bootloader_install() == 'extlinux': - # The extlinux/syslinux MBR blob always needs to be - # installed in the root partition. - self.install_syslinux_blob(dev, temp_root) - else: - # Copy files to partition from unpacked rootfs - src_dir = os.path.join(temp_root, - re.sub('^/', '', part.mountpoint)) - self.status(msg='Copying files to %s partition' % - part.mountpoint) - self.copy_dir_contents(src_dir, part_mount_dir) - - if (part.mountpoint == '/boot' and - self.bootloader_config_is_wanted()): - # We need to mirror the layout of the root partition in the - # /boot partition. Each kernel lives in its own - # systems/$version_label/ directory within the /boot - # partition. - self.create_versioned_layout(part_mount_dir, 'factory') - self.create_bootloader_config(temp_root, part_mount_dir, - 'factory', None, dev) - - # Write raw files to disk with dd - partitioning.process_raw_files(dev, temp_root) - - @contextlib.contextmanager - def mount_partition(self, location, offset_bytes, size_bytes): - '''Mount a partition in a partitioned device or image''' - - with pyfdisk.create_loopback(location, offset=offset_bytes, - size=size_bytes) as loop: - with self.mount(loop) as mountpoint: - yield mountpoint - - @contextlib.contextmanager - def find_and_mount_rootfs(self, location): - ''' - Mount a Baserock rootfs inside a partitioned device or image - - This function searches a disk image or device, with unknown - partitioning scheme, for a Baserock rootfs. This is done by finding - offsets and sizes of partitions in the partition table, mounting each - partition, and checking whether a known path exists in the mount. - - Args: - location: the location of the disk image or device to search - Returns: - A path to the mount point of the mounted Baserock rootfs - ''' - - if pyfdisk.get_pt_type(location) == 'none': - with self.mount(location) as mountpoint: - yield mountpoint - - sector_size = pyfdisk.get_sector_size(location) - partn_sizes = pyfdisk.get_partition_sector_sizes(location) - for i, offset in enumerate(pyfdisk.get_partition_offsets(location)): - try: - with self.mount_partition(location, offset * sector_size, - partn_sizes[i] * sector_size) as mp: - path = os.path.join(mp, 'systems/default/orig/baserock') - if os.path.exists(path): - self.status(msg='Found a Baserock rootfs at ' - 'offset %d sectors/%d bytes' % - (offset, offset * sector_size)) - yield mp - except BaseException: - # Probably a partition without a filesystem, carry on - pass diff --git a/extensions/xfer-hole b/extensions/xfer-hole deleted file mode 100755 index 91f1be01..00000000 --- a/extensions/xfer-hole +++ /dev/null @@ -1,137 +0,0 @@ -#!/usr/bin/env python -# -# Send a sparse file more space-efficiently. -# See recv-hole for a description of the protocol. -# -# Note that xfer-hole requires a version of Linux with support for -# SEEK_DATA and SEEK_HOLE. -# -# -# Copyright (C) 2014-2015 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, see . -# -# =*= License: GPL-2 =*= - - - -import errno -import os -import sys - - -SEEK_DATA = 3 -SEEK_HOLE = 4 - - -filename = sys.argv[1] -fd = os.open(filename, os.O_RDONLY) -pos = 0 - - -DATA = 'data' -HOLE = 'hole' -EOF = 'eof' - - -def safe_lseek(fd, pos, whence): - try: - return os.lseek(fd, pos, whence) - except OSError as e: - if e.errno == errno.ENXIO: - return -1 - raise - - -def current_data_or_pos(fd, pos): - length = safe_lseek(fd, 0, os.SEEK_END) - next_data = safe_lseek(fd, pos, SEEK_DATA) - next_hole = safe_lseek(fd, pos, SEEK_HOLE) - - if pos == length: - return EOF, pos - elif pos == next_data: - return DATA, pos - elif pos == next_hole: - return HOLE, pos - else: - assert False, \ - ("Do not understand: pos=%d next_data=%d next_hole=%d" % - (pos, next_data, next_hole)) - - -def next_data_or_hole(fd, pos): - length = safe_lseek(fd, 0, os.SEEK_END) - next_data = safe_lseek(fd, pos, SEEK_DATA) - next_hole = safe_lseek(fd, pos, SEEK_HOLE) - - if pos == length: - return EOF, pos - elif pos == next_data: - # We are at data. - if next_hole == -1 or next_hole == length: - return EOF, length - else: - return HOLE, next_hole - elif pos == next_hole: - # We are at a hole. - if next_data == -1 or next_data == length: - return EOF, length - else: - return DATA, next_data - else: - assert False, \ - ("Do not understand: pos=%d next_data=%d next_hole=%d" % - (pos, next_data, next_hole)) - - -def find_data_and_holes(fd): - pos = safe_lseek(fd, 0, os.SEEK_CUR) - - kind, pos = current_data_or_pos(fd, pos) - while kind != EOF: - yield kind, pos - kind, pos = next_data_or_hole(fd, pos) - yield kind, pos - - -def make_xfer_instructions(fd): - prev_kind = None - prev_pos = None - for kind, pos in find_data_and_holes(fd): - if prev_kind == DATA: - yield (DATA, prev_pos, pos) - elif prev_kind == HOLE: - yield (HOLE, prev_pos, pos) - prev_kind = kind - prev_pos = pos - - -def copy_slice_from_file(to, fd, start, end): - safe_lseek(fd, start, os.SEEK_SET) - nbytes = end - start - max_at_a_time = 1024**2 - while nbytes > 0: - data = os.read(fd, min(nbytes, max_at_a_time)) - if not data: - break - to.write(data) - nbytes -= len(data) - - -for kind, start, end in make_xfer_instructions(fd): - if kind == HOLE: - sys.stdout.write('HOLE\n%d\n' % (end - start)) - elif kind == DATA: - sys.stdout.write('DATA\n%d\n' % (end - start)) - copy_slice_from_file(sys.stdout, fd, start, end) diff --git a/genivi/clusters/gdp-jetson-upgrade.morph b/genivi/clusters/gdp-jetson-upgrade.morph deleted file mode 100644 index 57287f4c..00000000 --- a/genivi/clusters/gdp-jetson-upgrade.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: gdp-jetson-upgrade -kind: cluster -systems: -- morph: genivi/systems/genivi-demo-platform-armv7lhf-jetson.morph - deploy-defaults: - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 - FSTAB_SRC: LABEL=src /src auto defaults,rw,noatime,nofail 0 2 - GENIVI_WESTON_BACKEND: drm - GENIVI_WESTON_CONFIG: gdp - GENIVI_WESTON_AUTOSTART: True - deploy: - self: - type: extensions/ssh-rsync - location: root@127.0.0.1 diff --git a/genivi/clusters/genivi-demo-platform-x86_32-deploy.morph b/genivi/clusters/genivi-demo-platform-x86_32-deploy.morph deleted file mode 100644 index d1c5544d..00000000 --- a/genivi/clusters/genivi-demo-platform-x86_32-deploy.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: genivi-demo-platform-x86_32-deploy -kind: cluster -description: | - Deploy GENIVI Demo platform system -systems: -- morph: genivi/systems/genivi-demo-platform-x86_32-generic.morph - deploy: - genivi-demo-platform-x86_32-generic: - type: extensions/rawdisk - location: genivi-demo-platform-x86_32-generic.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - HOSTNAME: genivi-demo-platform-x86-32-generic - GENIVI_WESTON_CONFIG: gdp - GENIVI_WESTON_AUTOSTART: False - subsystems: - - morph: systems/initramfs-x86_32.morph - deploy: - initramfs-genivi-demo-platform-x86_32-generic: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/genivi/clusters/genivi-demo-platform-x86_64-deploy.morph b/genivi/clusters/genivi-demo-platform-x86_64-deploy.morph deleted file mode 100644 index 4e1005c4..00000000 --- a/genivi/clusters/genivi-demo-platform-x86_64-deploy.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: genivi-demo-platform-x86_64-deploy -kind: cluster -description: | - Deploy GENIVI Demo platform system -systems: -- morph: genivi/systems/genivi-demo-platform-x86_64-generic.morph - deploy: - genivi-demo-platform-x86_64-generic: - type: extensions/rawdisk - location: genivi-demo-platform-x86_64-generic.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - HOSTNAME: genivi-demo-platform-x86-64-generic - GENIVI_WESTON_CONFIG: gdp - GENIVI_WESTON_AUTOSTART: False - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs-genivi-demo-platform-x86_64-generic: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/genivi/clusters/release-genivi-baseline.morph b/genivi/clusters/release-genivi-baseline.morph deleted file mode 100644 index 08a8c622..00000000 --- a/genivi/clusters/release-genivi-baseline.morph +++ /dev/null @@ -1,41 +0,0 @@ -name: release-genivi-baseline -kind: cluster -description: | - Deploy GENIVI Baseline systems -systems: -- morph: genivi/systems/genivi-baseline-system-x86_64-generic.morph - deploy: - genivi-baseline-system-x86_64-generic: - type: extensions/rawdisk - location: genivi-baseline-system-x86_64-generic.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - HOSTNAME: genivi-baseline-system-x86-64-generic - GENIVI_WESTON_BACKEND: fbdev - GENIVI_WESTON_CONFIG: baseline - GENIVI_WESTON_AUTOSTART: False - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs-genivi-baseline-system-x86_64-generic: - type: extensions/initramfs - location: boot/initramfs.gz -- morph: genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph - deploy: - genivi-baseline-system-armv7lhf-jetson: - type: extensions/rawdisk - location: genivi-baseline-system-armv7lhf-jetson.img - DISK_SIZE: 4G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 - HOSTNAME: genivi-baseline-system-armv7lhf-jetson - GENIVI_WESTON_BACKEND: drm - GENIVI_WESTON_CONFIG: baseline - GENIVI_WESTON_AUTOSTART: False - diff --git a/genivi/strata/genivi-demo-platform-libs.morph b/genivi/strata/genivi-demo-platform-libs.morph deleted file mode 100644 index ed8bc458..00000000 --- a/genivi/strata/genivi-demo-platform-libs.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: genivi-demo-platform-libs -kind: stratum -description: Libraries needed for the GENIVI demo platform. -build-depends: -- morph: strata/foundation.morph -- morph: strata/python-pygobject.morph -- morph: strata/bluetooth.morph -chunks: -- name: dbus-c++ - morph: genivi/strata/genivi-demo-platform-libs/dbus-c++.morph - repo: upstream:dbus-c++ - ref: f000001329c1d008d8db22cc3369d331dbf5cf4e - unpetrify-ref: baserock/genivi-demo-platform -- name: dbus-python - repo: upstream:dbus-python - ref: d0d5b5be685dc4c16b21c54335becc87ca4d6f58 - unpetrify-ref: dbus-python-1.2.0 - build-system: autotools diff --git a/genivi/strata/genivi-demo-platform-libs/dbus-c++.morph b/genivi/strata/genivi-demo-platform-libs/dbus-c++.morph deleted file mode 100644 index bd805ebf..00000000 --- a/genivi/strata/genivi-demo-platform-libs/dbus-c++.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: dbus-c++ -kind: chunk -description: libdbus-c++ and dbusxx-xml2cpp tool -build-system: autotools -configure-commands: -- autoreconf -ivf -- ./configure --prefix="$PREFIX" --disable-ecore -post-install-commands: -- install tools/dbusxx-xml2cpp "$DESTDIR/$PREFIX"/bin/dbusxx-xml2cpp diff --git a/genivi/strata/genivi-demo-platform.morph b/genivi/strata/genivi-demo-platform.morph deleted file mode 100644 index 46c486ea..00000000 --- a/genivi/strata/genivi-demo-platform.morph +++ /dev/null @@ -1,42 +0,0 @@ -name: genivi-demo-platform -kind: stratum -description: Components which make up the GENIVI demo platform. -build-depends: -- morph: genivi/strata/genivi-demo-platform-libs.morph -- morph: strata/qt5-tools.morph -- morph: strata/qt5-tools-qtmultimedia.morph -- morph: strata/qt5-tools-qtwebkit.morph -- morph: genivi/strata/genivi.morph -- morph: strata/wayland-generic.morph -- morph: genivi/strata/weston-genivi.morph -chunks: -- name: browser-poc - morph: genivi/strata/genivi-demo-platform/browser-poc.morph - repo: upstream:genivi/browser-poc - ref: d90501f8bd3edcd35eae72efbfb4583ba8f3cdfc - unpetrify-ref: baserock/genivi/genivi-demo-platform - submodules: - documentation/designdocument/cls: - url: http://github.com/Pelagicore/Pelagicore-LaTeX-Class.git -- name: audiomanager-poc - morph: genivi/strata/genivi-demo-platform/audiomanager-poc.morph - repo: upstream:audiomanager - ref: bb65a4d0a18667baa64e5ba40104dc2cda06b299 - unpetrify-ref: baserock/genivi/genivi-demo-platform -- name: audiomanager@gdp - morph: genivi/strata/genivi-demo-platform/audiomanager@gdp.morph - repo: upstream:audiomanager - ref: ea8fb493035eb211c097ac4013c89ef99ecc00cc - unpetrify-ref: baserock/genivi/6.1-3-gba709ee-gdp -- name: audiomanagerdemo - repo: upstream:genivi/audiomanagerdemo - ref: 30b7817bb5c2de17c725d6624d073092d3a821c0 - unpetrify-ref: master - build-system: qmake - build-depends: - - audiomanager@gdp -- name: genivi-demo-platform-hmi - morph: genivi/strata/genivi-demo-platform/genivi-demo-platform-hmi.morph - repo: upstream:genivi/genivi-demo-platform-hmi - ref: fd2c954165b0c0f7f4d9e94e8c9c3c8541a53e79 - unpetrify-ref: master diff --git a/genivi/strata/genivi-demo-platform/audiomanager-poc.morph b/genivi/strata/genivi-demo-platform/audiomanager-poc.morph deleted file mode 100644 index 6974705b..00000000 --- a/genivi/strata/genivi-demo-platform/audiomanager-poc.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: audiomanager-poc -kind: chunk -pre-configure-commands: -- sed 's:/opt/:/usr/lib/:g' $(git grep -l "/opt/") -configure-commands: -- cd AudioManagerPoC && qmake -makefile -build-commands: -- cd AudioManagerPoC && make -install-commands: -- cd AudioManagerPoC && make install INSTALL_ROOT="$DESTDIR" diff --git a/genivi/strata/genivi-demo-platform/audiomanager@gdp.morph b/genivi/strata/genivi-demo-platform/audiomanager@gdp.morph deleted file mode 100644 index d5e4684a..00000000 --- a/genivi/strata/genivi-demo-platform/audiomanager@gdp.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: audiomanager@gdp -kind: chunk -configure-commands: -- | - cmake -DUSE_BUILD_LIBS=OFF \ - -DWITH_PULSE_ROUTING_PLUGIN=ON \ - -DWITH_PULSE_CONTROL_PLUGIN=ON \ - -DWITH_ENABLED_IPC=DBUS \ - -DWITH_DATABASE_STORAGE=OFF \ - -DWITH_DLT=OFF \ - -DCMAKE_INSTALL_PREFIX="$PREFIX" -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install -# BuildStream builds break if files are installed to /tmp -- the element -# itself builds fine, but subsequent builds do not. -- rm -R "$DESTDIR"/tmp/* diff --git a/genivi/strata/genivi-demo-platform/browser-poc.morph b/genivi/strata/genivi-demo-platform/browser-poc.morph deleted file mode 100644 index 1ca23d40..00000000 --- a/genivi/strata/genivi-demo-platform/browser-poc.morph +++ /dev/null @@ -1,29 +0,0 @@ -name: browser-poc -kind: chunk -description: The GENIVI browser proof-of-concept for the GENIVI Demo Platform. -configure-commands: -- qmake -d -r browser-poc.pro -build-commands: -- make all -install-commands: -- make INSTALL_ROOT="$DESTDIR" install -- mkdir -p "$DESTDIR/usr/lib/systemd/user" -- | - cat >"$DESTDIR/usr/lib/systemd/user/browser.service" <"$DESTDIR/usr/lib/systemd/user/demoui.service" <"$DESTDIR/usr/lib/systemd/user/gdp-hmi-launcher2.service" <"$DESTDIR/usr/lib/systemd/user/gdp-hmi-background.service" <"$DESTDIR/usr/lib/systemd/user/gdp-hmi-controller.service" <"$DESTDIR/usr/lib/systemd/user/gdp-hmi-panel.service" <"$DESTDIR/usr/lib/systemd/user/EGLWLMockNavigation.service" < "$DESTDIR/usr/lib/systemd/user/EGLWLInputEventExample.service" < "$DESTDIR/usr/lib/systemd/user/qml-example.service" < "$DESTDIR/usr/lib/systemd/user/PowerOff.service" <> ivi-shell/ivi-shell-weston.ini - [ivi-launcher] - workspace-id=0 - icon-id=4001 - icon=/usr/share/weston/icon_ivi_flower.png - path=/usr/bin/weston-flower - - [ivi-launcher] - workspace-id=0 - icon-id=4002 - icon=/usr/share/weston/icon_ivi_clickdot.png - path=/usr/bin/weston-clickdot - - [ivi-launcher] - workspace-id=1 - icon-id=4003 - icon=/usr/share/weston/icon_ivi_simple-egl.png - path=/usr/bin/weston-simple-egl - - [ivi-launcher] - workspace-id=1 - icon-id=4004 - icon=/usr/share/weston/icon_ivi_simple-shm.png - path=/usr/bin/weston-simple-shm - - [ivi-launcher] - workspace-id=2 - icon-id=4005 - icon=/usr/share/weston/icon_ivi_smoke.png - path=/usr/bin/weston-smoke - - [ivi-launcher] - workspace-id=2 - icon-id=4006 - icon=/usr/share/weston/terminal.png - path=/usr/bin/EGLWLMockNavigation - EOF - -# Generate gdp-weston config used for GENIVI Demo Platform -- | - cat < ivi-shell/gdp-weston.ini - [core] - shell=ivi-shell.so - - [ivi-shell] - ivi-module=ivi-controller.so - ivi-input-module=ivi-input-controller.so - - cursor-theme=default - cursor-size=32 - - base-layer-id=1000 - workspace-background-layer-id=2000 - workspace-layer-id=3000 - application-layer-id=4000 - - transition-duration=300 - EOF - -# Install both config files to decide later which one to use -- install -d "$DESTDIR/usr/share/doc/weston" -- install -m 0644 ivi-shell/ivi-shell-weston.ini "$DESTDIR/usr/share/doc/weston/ivi-shell-weston.ini" -- install -m 0644 ivi-shell/gdp-weston.ini "$DESTDIR/usr/share/doc/weston/gdp-weston.ini" diff --git a/genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph b/genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph deleted file mode 100644 index e2145b6f..00000000 --- a/genivi/systems/genivi-baseline-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,56 +0,0 @@ -name: genivi-baseline-system-armv7lhf-jetson -kind: system -description: A GENIVI baseline system for a Jetson TK. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/strip-gplv3 -- extensions/fstab -- extensions/install-essential-files -- extensions/genivi diff --git a/genivi/systems/genivi-baseline-system-armv7lhf-versatile.morph b/genivi/systems/genivi-baseline-system-armv7lhf-versatile.morph deleted file mode 100644 index 35104513..00000000 --- a/genivi/systems/genivi-baseline-system-armv7lhf-versatile.morph +++ /dev/null @@ -1,54 +0,0 @@ -name: genivi-baseline-system-armv7lhf-versatile -kind: system -description: A GENIVI baseline system for an ARMv7 system. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-versatile - morph: strata/bsp-armv7-versatile.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/strip-gplv3 -- extensions/fstab -- extensions/install-essential-files -- extensions/genivi diff --git a/genivi/systems/genivi-baseline-system-x86_64-generic.morph b/genivi/systems/genivi-baseline-system-x86_64-generic.morph deleted file mode 100644 index ec32952c..00000000 --- a/genivi/systems/genivi-baseline-system-x86_64-generic.morph +++ /dev/null @@ -1,57 +0,0 @@ -name: genivi-baseline-system-x86_64-generic -kind: system -description: A GENIVI baseline system for a 64-bit x86 system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/strip-gplv3 -- extensions/install-essential-files -- extensions/genivi diff --git a/genivi/systems/genivi-demo-platform-armv7lhf-jetson.morph b/genivi/systems/genivi-demo-platform-armv7lhf-jetson.morph deleted file mode 100644 index e729c314..00000000 --- a/genivi/systems/genivi-demo-platform-armv7lhf-jetson.morph +++ /dev/null @@ -1,83 +0,0 @@ -name: genivi-demo-platform-armv7lhf-jetson -kind: system -description: A GENIVI demo platform for a 64-bit x86 system. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: python2-core - morph: strata/python2-core.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: navigation - morph: strata/navigation.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -- name: ruby - morph: strata/ruby.morph -- name: icu-common - morph: strata/icu-common.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebkit - morph: strata/qt5-tools-qtwebkit.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: genivi-demo-platform-libs - morph: genivi/strata/genivi-demo-platform-libs.morph -- name: genivi-demo-platform - morph: genivi/strata/genivi-demo-platform.morph -- name: tools - morph: strata/tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files -- extensions/genivi diff --git a/genivi/systems/genivi-demo-platform-x86_32-generic.morph b/genivi/systems/genivi-demo-platform-x86_32-generic.morph deleted file mode 100644 index a18bbe28..00000000 --- a/genivi/systems/genivi-demo-platform-x86_32-generic.morph +++ /dev/null @@ -1,85 +0,0 @@ -name: genivi-demo-platform-x86_32-generic -kind: system -description: A GENIVI demo platform for a 32-bit x86 system. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: python2-core - morph: strata/python2-core.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_32-generic - morph: strata/bsp-x86_32-generic.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: navigation - morph: strata/navigation.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -- name: ruby - morph: strata/ruby.morph -- name: icu-common - morph: strata/icu-common.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebkit - morph: strata/qt5-tools-qtwebkit.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: genivi-demo-platform-libs - morph: genivi/strata/genivi-demo-platform-libs.morph -- name: genivi-demo-platform - morph: genivi/strata/genivi-demo-platform.morph -- name: tools - morph: strata/tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files -- extensions/genivi diff --git a/genivi/systems/genivi-demo-platform-x86_64-generic.morph b/genivi/systems/genivi-demo-platform-x86_64-generic.morph deleted file mode 100644 index a14216bc..00000000 --- a/genivi/systems/genivi-demo-platform-x86_64-generic.morph +++ /dev/null @@ -1,85 +0,0 @@ -name: genivi-demo-platform-x86_64-generic -kind: system -description: A GENIVI demo platform for a 64-bit x86 system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: python2-core - morph: strata/python2-core.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: device-management - morph: strata/device-management.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: navigation - morph: strata/navigation.morph -- name: genivi - morph: genivi/strata/genivi.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: x-common - morph: strata/x-common.morph -- name: weston-genivi - morph: genivi/strata/weston-genivi.morph -- name: ruby - morph: strata/ruby.morph -- name: icu-common - morph: strata/icu-common.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebkit - morph: strata/qt5-tools-qtwebkit.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: genivi-demo-platform-libs - morph: genivi/strata/genivi-demo-platform-libs.morph -- name: genivi-demo-platform - morph: genivi/strata/genivi-demo-platform.morph -- name: tools - morph: strata/tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files -- extensions/genivi diff --git a/gnome/clusters/gnome-system-armv7lhf-jetson-deploy.morph b/gnome/clusters/gnome-system-armv7lhf-jetson-deploy.morph deleted file mode 100644 index 4b9739a0..00000000 --- a/gnome/clusters/gnome-system-armv7lhf-jetson-deploy.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: gnome-system-armv7lhf-jetson-deploy -kind: cluster -description: Deploy a GNOME system. -systems: -- morph: gnome/systems/gnome-system-armv7lhf-jetson.morph - deploy: - gnome-system-armv7lhf-jetson: - type: extensions/rawdisk - location: gnome-system-armv7lhf-jetson.img - DISK_SIZE: 7G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 diff --git a/gnome/clusters/gnome-system-x86_64-deploy.morph b/gnome/clusters/gnome-system-x86_64-deploy.morph deleted file mode 100644 index faa036ce..00000000 --- a/gnome/clusters/gnome-system-x86_64-deploy.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: gnome-system-x86_64-deploy -kind: cluster -description: | - Deploy a stock weston system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: gnome/systems/gnome-system-x86_64.morph - deploy: - gnome-system-x86_64: - type: extensions/rawdisk - location: /gnome-system-x86_64.img - DISK_SIZE: 7G - INSTALL_FILES: install-files/gnome/manifest - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: initramfs - location: boot/initramfs.gz diff --git a/gnome/strata/flatpak-common.morph b/gnome/strata/flatpak-common.morph deleted file mode 100644 index fb9fae2b..00000000 --- a/gnome/strata/flatpak-common.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: flatpak-common -kind: stratum -build-depends: -- morph: strata/ostree-core.morph -- morph: strata/privileges-management.morph -- morph: strata/x-common.morph -chunks: -- name: elfutils - morph: gnome/strata/flatpak-common/elfutils.morph - repo: upstream:elfutils - ref: 515dd0acc77673c953380bcf5ccfb05b83c5a3ab - unpetrify-ref: elfutils-0.168 -- name: flatpak - morph: gnome/strata/flatpak-common/flatpak.morph - repo: upstream:flatpak - ref: 07b342a937ed562a59aa649d793771babee57a09 - unpetrify-ref: 0.6.8 - build-depends: - - elfutils - submodules: - libglnx: - url: upstream:libglnx - bubblewrap: - url: upstream:bubblewrap diff --git a/gnome/strata/flatpak-common/elfutils.morph b/gnome/strata/flatpak-common/elfutils.morph deleted file mode 100644 index 45707250..00000000 --- a/gnome/strata/flatpak-common/elfutils.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: elfutils -kind: chunk -build-system: autotools -configure-commands: -- autoreconf -fi -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var - --enable-maintainer-mode diff --git a/gnome/strata/flatpak-common/flatpak.morph b/gnome/strata/flatpak-common/flatpak.morph deleted file mode 100644 index e052c2a3..00000000 --- a/gnome/strata/flatpak-common/flatpak.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: flatpak -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-documentation diff --git a/gnome/strata/gnome.morph b/gnome/strata/gnome.morph deleted file mode 100644 index 071f4024..00000000 --- a/gnome/strata/gnome.morph +++ /dev/null @@ -1,969 +0,0 @@ -name: gnome -kind: stratum -description: GNOME stratum -build-depends: -- morph: strata/bluetooth.morph -- morph: strata/icu-common.morph -- morph: strata/input-common.morph -- morph: strata/data-indexing-management.morph -- morph: strata/vala-common.morph -- morph: strata/geolocation.morph -- morph: strata/gtk2.morph -- morph: strata/gtk3.morph -- morph: strata/libsoup-common.morph -- morph: strata/NetworkManager-common.morph -- morph: strata/multimedia-gstreamer.morph -- morph: strata/network-security.morph -- morph: strata/privileges-management.morph -- morph: strata/python3-gobject.morph -- morph: strata/wayland-generic.morph -- morph: strata/ruby.morph -- morph: strata/samba.morph -- morph: strata/secret-service.morph -- morph: strata/sound-server-pulseaudio.morph -- morph: strata/spell-checking.morph -- morph: strata/cups.morph -chunks: -- name: dconf - morph: gnome/strata/gnome/dconf.morph - repo: upstream:dconf - ref: 7c0beccf286a1dbd396fda7d40b438598a6ce7f4 - unpetrify-ref: master -- name: cogl - morph: gnome/strata/gnome/cogl.morph - repo: upstream:gnome/cogl - ref: 85e0b084592e6beef2987b02e34a3909f35708e0 - unpetrify-ref: cogl-1.22 -- name: clutter - morph: gnome/strata/gnome/clutter.morph - repo: upstream:gnome/clutter - ref: 2faa83baf3ce9b9c94635311ad79944ab2a73c84 - unpetrify-ref: 1.26.2 - build-depends: - - cogl -- name: clutter-gtk - repo: upstream:gnome/clutter-gtk - ref: d48408a24672fa553034a0b3749bee930ad7c49d - unpetrify-ref: 1.8.2 - build-system: autotools - build-depends: - - clutter -- name: libchamplain - morph: gnome/strata/gnome/libchamplain.morph - repo: upstream:gnome/libchamplain - ref: c873d9d8116b8e14c1bfa939439d763926a77446 - unpetrify-ref: LIBCHAMPLAIN_0_12_12 - build-depends: - - clutter - - clutter-gtk -- name: gsettings-desktop-schemas - repo: upstream:gnome/gsettings-desktop-schemas - ref: a5c759a1d9d7e4825f94da30f0f8fb8abc2e3efb - unpetrify-ref: 3.24.0 - build-system: autotools -- name: itstool - repo: upstream:itstool - ref: 359be5c350fc3d869807f663cee2b028adf1f5d7 - unpetrify-ref: master - build-system: autotools -- name: yelp-xsl - repo: upstream:yelp-xsl - ref: 2dcf168dde754d18152b008473269a803d6e650b - unpetrify-ref: master - build-depends: - - itstool - build-system: autotools -- name: yelp-tools - repo: upstream:yelp-tools - ref: 6df6bf24e385bbc1ac0b800be8a6e878f18a775c - unpetrify-ref: master - build-depends: - - itstool - - yelp-xsl - build-system: autotools -- name: iso-codes - repo: upstream:iso-codes - ref: 18ac112b4b84c8f03743565fde3512a637820761 - unpetrify-ref: master - build-system: autotools -- name: gnome-desktop - repo: upstream:gnome/gnome-desktop - ref: 3feec7a250265747f204e220f7acfe6b8d849dca - unpetrify-ref: 3.24.2 - build-depends: - - gsettings-desktop-schemas - - iso-codes - - yelp-tools - build-system: autotools -- name: libnotify - repo: upstream:gnome/libnotify - ref: 2f2c5649ef210b1dffeb46cddf062d20e1518ccf - unpetrify-ref: master - build-system: autotools -- name: lcms2 - repo: upstream:lcms2 - ref: ff42eeaf932b64af997681f0eed6be3b67ebeb18 - unpetrify-ref: baserock/gnome - build-system: autotools -- name: gconf - morph: gnome/strata/gnome/gconf.morph - repo: upstream:gconf - ref: 4ef012c2a62d9abd759adb3aeb9d3b9cee17f721 - unpetrify-ref: master -- name: ibus - morph: gnome/strata/gnome/ibus.morph - repo: upstream:ibus - ref: 1d678673e18e132ed53df32502b779b0a56314d5 - unpetrify-ref: master - build-depends: - - dconf - - gconf - - iso-codes - - libnotify -- name: libhangul - morph: gnome/strata/gnome/libhangul.morph - repo: upstream:libhangul - ref: 78e9d8926262db423b4cf9181e1c2cb06a120a9b - unpetrify-ref: baserock/libhangul-0.1.0-19-g78e9d89 -- name: ibus-hangul - morph: gnome/strata/gnome/ibus-hangul.morph - repo: upstream:ibus-hangul - ref: 44f41ae5178372a7ff0540a4ce7a4944335525df - unpetrify-ref: baserock/1.5.0-13-g44f41ae - build-depends: - - ibus - - libhangul -- name: berkeleydb - morph: gnome/strata/gnome/berkeleydb.morph - repo: upstream:berkeleydb - ref: 780b92ada9afcf1d58085a83a0b9e6bc982203d1 - unpetrify-ref: db-6.1.23 -- name: libpinyin - repo: upstream:libpinyin - ref: 2e0c23b3ab6c247dd6a683c716e784a371646af4 - unpetrify-ref: baserock/1.2.91 - build-system: autotools - build-depends: - - berkeleydb -- name: ibus-libpinyin - morph: gnome/strata/gnome/ibus-libpinyin.morph - repo: upstream:ibus-libpinyin - ref: 4bb5fc19c0829053acd29619de59a85a73e03676 - unpetrify-ref: baserock/1.7.2-7-g4bb5fc1 - build-depends: - - ibus - - libpinyin -- name: anthy - repo: upstream:anthy - ref: a7a06a7ccfe0af1e134357678b8fa6cf87dff3b0 - unpetrify-ref: anthy-9100h - build-system: autotools -- name: ibus-anthy - morph: gnome/strata/gnome/ibus-anthy.morph - repo: upstream:ibus-anthy - ref: 9ba0a2a1e595fbf6e39c50a15814bb6f9e337769 - unpetrify-ref: baserock/1.5.7-6-g9ba0a2a - build-depends: - - ibus - - anthy -- name: libcanberra - repo: upstream:libcanberra - ref: c0620e432650e81062c1967cc669829dbd29b310 - unpetrify-ref: master - build-system: autotools -- name: upower - morph: gnome/strata/gnome/upower.morph - repo: upstream:upower - ref: 0825c162d3dc909966b10fecabbc2c1da364c1a6 - unpetrify-ref: master -- name: gusb - repo: upstream:gusb - ref: 0c5eb813279c67607e17dfd99087358d34c6c8f5 - unpetrify-ref: master - build-system: autotools -- name: colord - morph: gnome/strata/gnome/colord.morph - repo: upstream:colord - ref: e68f251b753297fcd1fc2bb7356588945bd3e69b - unpetrify-ref: baserock/gnome - build-depends: - - gusb - - lcms2 -- name: colord-gtk - repo: upstream:colord-gtk - ref: eadca143872288e1300303a771efdaab196900e1 - unpetrify-ref: COLORD_GTK_0_1_26 - build-system: autotools - build-depends: - - colord -- name: libgweather - repo: upstream:gnome/libgweather - ref: 5b8aed611f24d03434eed35e438cea213b894b7c - unpetrify-ref: master - build-system: autotools -- name: gnome-settings-daemon - morph: gnome/strata/gnome/gnome-settings-daemon.morph - repo: upstream:gnome-settings-daemon - ref: 2ff67385f2b7c7adb0ab438cb41d114235a8e40a - unpetrify-ref: GNOME_SETTINGS_DAEMON_3_24_2 - build-depends: - - colord - - gnome-desktop - - gsettings-desktop-schemas - - ibus - - libcanberra - - libgweather - - libnotify - - lcms2 - - upower - submodules: - plugins/media-keys/gvc: - url: upstream:gnome/libgnome-volume-control -- name: zenity - repo: upstream:zenity - ref: d7135db2bdfdca812c0165f90e4611af9c7c6a50 - unpetrify-ref: master - build-depends: - - yelp-tools - build-system: autotools -- name: mozjs24 - morph: gnome/strata/gnome/mozjs24.morph - repo: upstream:mozilla/mozjs24 - ref: 6c7e94087fead341de6adc85cb9a7f412fc6905d - unpetrify-ref: baserock/gnome -- name: gjs - repo: upstream:gjs - ref: 5d480f519e2b7e95cf1fad2f9f1a8e798fd5fe49 - unpetrify-ref: master - build-depends: - - mozjs24 - build-system: autotools -- name: telepathy-glib - morph: gnome/strata/gnome/telepathy-glib.morph - repo: upstream:telepathy-glib - ref: d27684c488ceee4f2f54f549738adab0e2e8165d - unpetrify-ref: master -- name: telepathy-logger - morph: gnome/strata/gnome/telepathy-logger.morph - repo: upstream:telepathy-logger - ref: 711842911edb15977430c0b6c1803e947619efc3 - unpetrify-ref: master - build-depends: - - telepathy-glib -- name: telepathy-mission-control - repo: upstream:telepathy-mission-control - ref: 84dc7d0fd952a9ef3d200ac5557cdf2daccca145 - unpetrify-ref: telepathy-mission-control-5.16.3 - build-system: autotools - build-depends: - - telepathy-glib -- name: startup-notification - repo: upstream:startup-notification - ref: 07237ff25d6171e1b548118442ddba4259a53ba5 - unpetrify-ref: master - build-system: autotools -- name: mutter - morph: gnome/strata/gnome/mutter.morph - repo: upstream:mutter - ref: a8b06afba6e9210171303bfef13f5bbddecc3668 - unpetrify-ref: 3.22.4 - build-depends: - - clutter - - cogl - - gnome-desktop - - gnome-settings-daemon - - gsettings-desktop-schemas - - startup-notification - - upower - - zenity -- name: libxklavier - repo: upstream:libxklavier - ref: 65c132a65e90a42e898f07243ef544109ada53c9 - unpetrify-ref: master - build-depends: - - iso-codes - build-system: autotools -- name: caribou - morph: gnome/strata/gnome/caribou.morph - repo: upstream:caribou - ref: e1a7a2488cdf8d0d32f0de67d68a85e9a6ab5fd2 - unpetrify-ref: baserock/CARIBOU_0_4_19-1-ge1a7a24+python3 - build-depends: - - clutter - - libxklavier -- name: librest - morph: gnome/strata/gnome/librest.morph - repo: upstream:gnome/librest - ref: 08f1fc35e3c77aecedacf08aa510e82c91ac7f2a - unpetrify-ref: 0.7.93 -- name: WebKitGtk - morph: gnome/strata/gnome/WebKitGtk.morph - repo: upstream:WebKitGtk-tarball - ref: 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c - unpetrify-ref: webkitgtk-2.16.5 - build-depends: - - libnotify -- name: gnome-online-accounts - morph: gnome/strata/gnome/gnome-online-accounts.morph - repo: upstream:gnome/gnome-online-accounts - ref: f5169b28bfef03f0c82b538784bb4c66a2a0034c - unpetrify-ref: 3.24.1 - build-depends: - - librest - - telepathy-glib - - WebKitGtk - submodules: - telepathy-account-widgets: - url: upstream:gnome/telepathy-account-widgets -- name: liboauth - repo: upstream:liboauth - ref: 9ff9d2902caf8a85c5019c11214d73e67053ba69 - unpetrify-ref: liboauth-0.9.7 - build-system: autotools -- name: autoconf-archive - morph: gnome/strata/gnome/autoconf-archive.morph - repo: upstream:autoconf-archive - ref: 77e8330ea91e1f2be52ea8d348c72f56f1337dfb - unpetrify-ref: baserock/v2017.03.21 -- name: libgdata - morph: gnome/strata/gnome/libgdata.morph - repo: upstream:libgdata - ref: 19f9f9420146bc51c7dc6dba2102c7d94bae149a - unpetrify-ref: 0.17.8 - build-depends: - - autoconf-archive - - gnome-online-accounts - - liboauth -- name: krb5 - morph: gnome/strata/gnome/krb5.morph - repo: upstream:krb5 - ref: db2acb6b06e469c6c12476bec68acc7964626523 - unpetrify-ref: master -- name: evolution-data-server - morph: gnome/strata/gnome/evolution-data-server.morph - repo: upstream:evolution-data-server - ref: 6ad2fc6fba46d79449be4090eafd91015d0d8cce - unpetrify-ref: gnome-3-24 - build-depends: - - gnome-online-accounts - - krb5 - - libgdata - - libgweather -- name: raptor - morph: gnome/strata/gnome/raptor.morph - repo: upstream:raptor - ref: 286452cd786098ce31a002f16e5ec2e0fbdc9041 - unpetrify-ref: raptor2_2_0_15 -- name: isodate - repo: upstream:python-packages/isodate - ref: b99c0bd318991a8a8a9dc0c5273800b9801428f6 - unpetrify-ref: 0.5.4 - build-system: python-distutils -- name: rdflib - repo: upstream:python-packages/rdflib - ref: c2f9725f385a85fd280b4cf30239748b24f5cc06 - unpetrify-ref: 4.2.1 - build-system: python-distutils - build-depends: - - isodate -- name: zeitgeist - morph: gnome/strata/gnome/zeitgeist.morph - repo: upstream:zeitgeist - ref: abc7939806346a563ded2b16456dc7e2fff54fcc - unpetrify-ref: v0.9.16 - build-depends: - - raptor - - rdflib - - telepathy-glib -- name: folks - morph: gnome/strata/gnome/folks.morph - repo: upstream:gnome/folks - ref: 27367f26cd66bb86b745c892db214aa9a136c818 - unpetrify-ref: 0.11.2 - build-depends: - - evolution-data-server - - telepathy-logger - - zeitgeist -- name: libgfbgraph - repo: upstream:gnome/libgfbgraph - ref: 50eabf601310052216e25fa112e688204738f222 - unpetrify-ref: v_0_2_3 - build-system: autotools - build-depends: - - gnome-online-accounts - - librest -- name: network-manager-applet - morph: gnome/strata/gnome/network-manager-applet.morph - repo: upstream:gnome/network-manager-applet - ref: 04e2bd752b231bdd87fe3b83a6e540ee812144ad - unpetrify-ref: 1.8.2 - build-system: autotools - build-depends: - - iso-codes - - libnotify -- name: gnome-shell - morph: gnome/strata/gnome/gnome-shell.morph - repo: upstream:gnome/gnome-shell - ref: 4da5b8dd1189e7e628605b2b23efe5db2d88f94b - unpetrify-ref: baserock/3.18.0-71-g4da5b8d - build-depends: - - caribou - - clutter - - evolution-data-server - - gjs - - libcanberra - - mutter - - startup-notification - - telepathy-glib - - network-manager-applet - submodules: - src/gvc: - url: upstream:gnome/libgnome-volume-control - data/theme/gnome-shell-sass: - url: upstream:gnome/gnome-shell-sass -- name: gnome-session - morph: gnome/strata/gnome/gnome-session.morph - repo: upstream:gnome/gnome-session - ref: 4ab09c39738adaaf16116b3bd82e47188b5483cd - unpetrify-ref: 3.18.1.2 - build-depends: - - gnome-desktop -- name: d-feet - morph: gnome/strata/gnome/d-feet.morph - repo: upstream:gnome/d-feet - ref: a526f5325f179482f915216f7781232899be5600 - unpetrify-ref: master - build-depends: - - yelp-tools -- name: accountsservice - morph: gnome/strata/gnome/accountsservice.morph - repo: upstream:accountsservice - ref: 1b91edfe9db81e75d0f08e98c6909cdf34c9e91e - unpetrify-ref: baserock/0.6.40-8-gcad21b1+libsystemd_fix -- name: gdm - morph: gnome/strata/gnome/gdm.morph - repo: upstream:gdm - ref: 494ec8cee5727c37118994d3864c44f36aa454fc - unpetrify-ref: 3.18.0 - build-depends: - - accountsservice - - libcanberra - - dconf -- name: hicolor-icon-theme - morph: gnome/strata/gnome/hicolor-icon-theme.morph - repo: upstream:hicolor-icon-theme - ref: 5954bd6c123aa31c8f35b83d70b73e1f6dcf34b3 - unpetrify-ref: master -- name: gnome-themes-standard - morph: gnome/strata/gnome/gnome-themes-standard.morph - repo: upstream:gnome-themes-standard - ref: 4058c3bced2173c8e6f2a22953327dcc2023e82d - unpetrify-ref: master - build-depends: - - hicolor-icon-theme -- name: adwaita-icon-theme - morph: gnome/strata/gnome/adwaita-icon-theme.morph - repo: upstream:gnome/adwaita-icon-theme - ref: 5e469ae6e664cb0808b6ce9fcfd7bd2ac6fc4216 - unpetrify-ref: gnome-3-18 -- name: gnome-backgrounds - repo: upstream:gnome/gnome-backgrounds - ref: e68462edd35ae3edb4311df90dc4d1a3cdcb175f - unpetrify-ref: baserock/3.18.0-2-ge68462e - build-system: autotools -- name: glib-networking - morph: gnome/strata/gnome/glib-networking.morph - repo: upstream:gnome/glib-networking - ref: 32ee55186d7df497e3d402a1940cddfabd9dbc21 - unpetrify-ref: 2.46.0 -- name: cracklib - morph: gnome/strata/gnome/cracklib.morph - repo: upstream:cracklib - ref: 1dd5ca2114c0dd478b17e68e38d2c9f7094552cc - unpetrify-ref: cracklib-2.9.6 -- name: libpwquality - morph: gnome/strata/gnome/libpwquality.morph - repo: upstream:libpwquality - ref: 24937f6fdcc1673e064c9626407c89f58289957d - unpetrify-ref: libpwquality-1.3.0 - build-depends: - - cracklib -- name: glade - morph: gnome/strata/gnome/glade.morph - repo: upstream:gnome/glade - ref: 4f81f15467ad45c3dddc7ee50ffaca9596d628ee - unpetrify-ref: master - build-depends: - - yelp-tools -- name: vte - morph: gnome/strata/gnome/vte.morph - repo: upstream:gnome/vte - ref: aa7120c2e359bb5d6d0b0ec6c1e0eecf0583be03 - unpetrify-ref: 0.43.0 - build-depends: - - glade -- name: nautilus - morph: gnome/strata/gnome/nautilus.morph - repo: upstream:nautilus - ref: 2efab5ea404077bfb09f543ed2acc8e0940d21c9 - unpetrify-ref: baserock/3.18.1 - build-depends: - - vte - - gnome-desktop - - gsettings-desktop-schemas - submodules: - libgd: - url: upstream:gnome/libgd -- name: desktop-file-utils - morph: gnome/strata/gnome/desktop-file-utils.morph - repo: upstream:desktop-file-utils - ref: 4944725bddcf5821d53d7d648fc53347ce12cc03 - unpetrify-ref: '0.22' -- name: gnome-terminal - morph: gnome/strata/gnome/gnome-terminal.morph - repo: upstream:gnome/gnome-terminal - ref: d52e6beb2df7aedd0c98696ae3be4a36b4c8f0f0 - unpetrify-ref: 3.18.1 - build-depends: - - desktop-file-utils - - dconf - - gconf - - gsettings-desktop-schemas - - nautilus - - yelp-tools -- name: libnice - repo: upstream:libnice - ref: 533ff6c5a03680f300709be4dc999f45659f3a1b - unpetrify-ref: 0.1.13 - build-system: autotools -- name: farstream - repo: upstream:farstream - ref: 01fafe82fbc01f31e76623fbbbe6dd99eb28d6bb - unpetrify-ref: 0.2.7 - build-system: autotools - build-depends: - - libnice - submodules: - common: - url: upstream:gstreamer-common -- name: telepathy-farstream - repo: upstream:telepathy-farstream - ref: 0b1bba79cfe94e7676fe69e9e0d2e3983a3c14c5 - unpetrify-ref: telepathy-farstream-0.6.2 - build-system: autotools - build-depends: - - farstream - - telepathy-glib -- name: telepathy-gabble - morph: gnome/strata/gnome/telepathy-gabble.morph - repo: upstream:telepathy-gabble - ref: f10f557fd67ec11738670828a553496960c0d411 - unpetrify-ref: telepathy-gabble-0.18.3 - build-depends: - - libnice - - telepathy-glib - submodules: - lib/ext/wocky: - url: upstream:wocky -- name: telepathy-salut - morph: gnome/strata/gnome/telepathy-salut.morph - repo: upstream:telepathy-salut - ref: cd32e00a3a461756cbf1f6899a0c2aa5bd5d79ee - unpetrify-ref: telepathy-salut-0.8.1 - build-depends: - - telepathy-glib - submodules: - lib/ext/wocky: - url: upstream:wocky -- name: telepathy-idle - repo: upstream:telepathy-idle - ref: 55e9841a4af51d7f014395475526b700abec4d0b - unpetrify-ref: telepathy-idle-0.2.0 - build-system: autotools - build-depends: - - telepathy-glib -- name: libpurple - morph: gnome/strata/gnome/libpurple.morph - repo: upstream:pidgin - ref: 9273b95bd66893a362cbf6f69bb8bc749db41f04 - unpetrify-ref: baserock/v2.10.11 - build-depends: - - evolution-data-server - - farstream -- name: telepathy-haze - repo: upstream:telepathy-haze - ref: d3d7b7f9342511c0c961e3f2d9fc1f5fb0804142 - unpetrify-ref: telepathy-haze-0.8.0 - build-system: autotools - build-depends: - - libpurple - - telepathy-glib -- name: grilo - repo: upstream:gnome/grilo - ref: 53b44b711a4558c0511dbe73d928971fd2c7bb30 - unpetrify-ref: grilo-0.3.3 - build-system: autotools -- name: grilo-plugins - repo: upstream:gnome/grilo-plugins - ref: 9e4026978b4069468a6fe6d3e961c4d1a9c88051 - unpetrify-ref: grilo-0.3.4 - build-system: autotools - build-depends: - - gnome-online-accounts - - grilo - - libgdata - - liboauth - - librest - - yelp-tools -- name: libgtop - repo: upstream:gnome/libgtop - ref: ac2aef0f47fd998555abf18003f4c11ffecbf542 - unpetrify-ref: 2.32.0 - build-system: autotools -- name: gnome-bluetooth - repo: upstream:gnome/gnome-bluetooth - ref: 9219cc1ab433d3237b46146cbab2a7d89c5f09b5 - unpetrify-ref: GNOMEBT_V_3_20_1 - build-system: autotools - build-depends: - - libcanberra - - libnotify -- name: gcab - repo: upstream:gnome/gcab - ref: e57dd3d1ddb0da91df9188c2a98d59d1050ac6cb - unpetrify-ref: baserock/v0.6-22-ge57dd3d - build-system: autotools -- name: appstream-glib - repo: upstream:appstream-glib - ref: d3885c325271fee0bed5c5815d41eb788712acb4 - unpetrify-ref: appstream_glib_0_5_0 - # Building 0.5.3 requires absurdly new libsoup - # ref: 2b57a0c407021f2b1efca38eb99a9bf61c1d16b2 - # unpetrify-ref: appstream_glib_0_5_3 - build-system: autotools - build-depends: - - gcab -- name: gnome-color-manager - morph: gnome/strata/gnome/gnome-color-manager.morph - repo: upstream:gnome/gnome-color-manager - ref: 8284cb186e0e7c248fc2a2449735fd24b778ec81 - unpetrify-ref: GNOME_COLOR_MANAGER_3_18_0 - build-depends: - - appstream-glib - - colord-gtk - - gnome-desktop - - lcms2 - - libcanberra - - vte - - yelp-tools -- name: clutter-gst - repo: upstream:gnome/clutter-gst - ref: 395797827a148809a2be0d968c5bf71a6e9c9299 - unpetrify-ref: 3.0.14 - build-system: autotools - build-depends: - - clutter -- name: clutter-gst2 - repo: upstream:gnome/clutter-gst - ref: e9372b1c7d858ae0268d92d0c5e02532a8352b68 - unpetrify-ref: 2.0.16 - build-system: autotools - build-depends: - - clutter -- name: cheese - morph: gnome/strata/gnome/cheese.morph - repo: upstream:gnome/cheese - ref: 61651e03e8346bd0084da7247269e52e2a42190e - unpetrify-ref: gnome-3-18 - build-depends: - - appstream-glib - - clutter - - clutter-gst - - clutter-gtk - - gnome-desktop - - libcanberra - - yelp-tools -- name: gnome-control-center - morph: gnome/strata/gnome/gnome-control-center.morph - repo: upstream:gnome/gnome-control-center - ref: e44054466a35e637e0b8cb88cf676f94a9f40dc8 - unpetrify-ref: GNOME_CONTROL_CENTER_3_24_2 - build-depends: - - accountsservice - - cheese - - clutter - - clutter-gtk - - colord - - colord-gtk - - gnome-bluetooth - - gnome-desktop - - gnome-online-accounts - - gnome-settings-daemon - - grilo - - gsettings-desktop-schemas - - ibus - - iso-codes - - krb5 - - libcanberra - - libgtop - - libpwquality - - network-manager-applet - submodules: - libgd: - url: upstream:gnome/libgd - panels/sound/gvc: - url: upstream:gnome/libgnome-volume-control -- name: gnome-initial-setup - morph: gnome/strata/gnome/gnome-initial-setup.morph - repo: upstream:gnome/gnome-initial-setup - ref: a6ae059a7fab60cae534f78eb485960a7b406be5 - unpetrify-ref: new-user-mode-fixes - build-depends: - - accountsservice - - cheese - - gdm - - gnome-desktop - - gnome-online-accounts - - ibus - - iso-codes - - krb5 - - libgweather - - libpwquality - - network-manager-applet -- name: libgnomekbd - repo: upstream:gnome/libgnomekbd - ref: d8ff867e95e548476c68db12ade3a0a4697a24a1 - unpetrify-ref: master - build-system: autotools - build-depends: - - libxklavier -- name: sound-theme-freedesktop - build-system: autotools - repo: upstream:sound-theme-freedesktop - ref: 9d2ac65a2f88263f0eec8b777ef3bdc023b93c25 - unpetrify-ref: '0.8' -- name: libwnck - morph: gnome/strata/gnome/libwnck.morph - repo: upstream:libwnck - ref: 46bade6f53351f2a63d030e27cbba2e0048d1cde - unpetrify-ref: 3.14.0 -- name: libpeas - morph: gnome/strata/gnome/libpeas.morph - repo: upstream:gnome/libpeas - ref: ede1902bee26dbe36c2c1559b1166035580cdf30 - unpetrify-ref: libpeas-1.16.0 -- name: gtksourceview - morph: gnome/strata/gnome/gtksourceview.morph - repo: upstream:gnome/gtksourceview - ref: eeb6fd40fbbc74515828070fef554ed98ad481e9 - unpetrify-ref: 3.18.1 - build-depends: - - glade -############################################### -# Applications Start Here # -############################################### -- name: epiphany - morph: gnome/strata/gnome/epiphany.morph - repo: upstream:gnome/epiphany - ref: 4a9588f5812c7e5cd56fde2844fa29a4e33304fb - unpetrify-ref: gnome-3.24 - build-depends: - - appstream-glib - - autoconf-archive - - gnome-desktop - - iso-codes - - libcanberra - - libnotify - - libwnck - - startup-notification - - WebKitGtk - submodules: - gvdb/gvdb: - url: upstream:gnome/gvdb - libgd: - url: upstream:gnome/libgd -- name: totem - repo: upstream:gnome/totem - ref: dec87510f22daf87144eda36e1d97bfcabace1d1 - unpetrify-ref: 3.24.0 - build-system: autotools - build-depends: - - appstream-glib - - clutter - - clutter-gst - - clutter-gtk - - gnome-desktop - - grilo - - grilo-plugins - - gsettings-desktop-schemas - - iso-codes - - libpeas - - yelp-tools - submodules: - libgd: - url: upstream:gnome/libgd -- name: yelp - repo: upstream:gnome/yelp - morph: gnome/strata/gnome/yelp.morph - ref: 9932283ce9610f969e023a0dc326c81159c06a15 - unpetrify-ref: 3.18.1 - build-depends: - - WebKitGtk - - yelp-xsl -- name: gnome-user-docs - repo: upstream:gnome/gnome-user-docs - ref: 618fc9644317c55d674ca2e1b00b41d364427fb1 - unpetrify-ref: master - build-system: autotools - build-depends: - - yelp-tools -- name: gnome-getting-started-docs - repo: upstream:gnome/gnome-getting-started-docs - ref: e50ec428ee080513f059a5cab0a41174f99f0413 - unpetrify-ref: 3.18.2 - build-system: autotools - build-depends: - - yelp-tools -- name: gedit - repo: upstream:gnome/gedit - ref: 8156d35a6eb27f3251e1ea454a48cb2a2ae4f87c - unpetrify-ref: 3.18.2 - build-system: autotools - build-depends: - - gsettings-desktop-schemas - - gtksourceview - - iso-codes - - libpeas - - yelp-tools - submodules: - libgd: - url: upstream:gnome/libgd -- name: gnome-calendar - repo: upstream:gnome/gnome-calendar - ref: 5292e9d57442067701ce94eea54b4b12d13b7aa3 - unpetrify-ref: 3.18.1 - build-system: autotools - build-depends: - - appstream-glib - - gnome-online-accounts - - evolution-data-server -- name: gnome-todo - repo: upstream:gnome/gnome-todo - ref: a39ccadf8a659fca8b4503bf4844383f5346f6cb - unpetrify-ref: GNOME_TODO_3_18_1 - build-system: autotools - build-depends: - - appstream-glib - - evolution-data-server - - gnome-online-accounts -- name: empathy - morph: gnome/strata/gnome/empathy.morph - repo: upstream:gnome/empathy - ref: 24708b78dc0d66adfacc5a4c28f3a318af4ccd97 - unpetrify-ref: master - build-depends: - - cheese - - clutter - - clutter-gst2 - - clutter-gtk - - farstream - - folks - - gnome-online-accounts - - gsettings-desktop-schemas - - iso-codes - - libcanberra - - libchamplain - - libnotify - - telepathy-farstream - - telepathy-glib - - telepathy-logger - - telepathy-mission-control - - yelp-tools - submodules: - telepathy-account-widgets: - url: upstream:gnome/telepathy-account-widgets -- name: gnome-contacts - repo: upstream:gnome/gnome-contacts - ref: fa736997cc7ec8df89458502c0a181090def64e9 - unpetrify-ref: 3.18.0 - build-system: autotools - build-depends: - - cheese - - folks - - gnome-desktop - - gnome-online-accounts - - libchamplain - - libnotify - - telepathy-glib - submodules: - libgd: - url: upstream:gnome/libgd -- name: gnome-maps - repo: upstream:gnome/gnome-maps - ref: 6d6e8afd54735e565a0c81cb761f22bb82d142db - unpetrify-ref: v3.18.1 - build-system: autotools - build-depends: - - folks - - clutter-gtk - - gjs - - gnome-desktop - - gnome-online-accounts - - libchamplain - - libgfbgraph -- name: gnome-dictionary - repo: upstream:gnome/gnome-dictionary - ref: 902d1e02391486b152e84e36946d437c31040bb8 - unpetrify-ref: 3.24.0 - build-system: autotools - build-depends: - - yelp-tools -- name: eog - repo: upstream:gnome/eog - ref: c665b86c19cec9e9ec783adb062c387ddb46958c - unpetrify-ref: 3.24.1 - build-system: autotools - build-depends: - - gnome-desktop - - gsettings-desktop-schemas - - lcms2 - - libpeas - - yelp-tools -- name: baobab - repo: upstream:gnome/baobab - ref: 59fa8171d2dfa02be56930f451ae186680074bb6 - unpetrify-ref: 3.18.1 - build-system: autotools - build-depends: - - yelp-tools -- name: gnome-font-viewer - repo: upstream:gnome/gnome-font-viewer - ref: 9af2f35a63f34f87407e784b514cafe1cc772384 - unpetrify-ref: master - build-system: autotools - build-depends: - - gnome-desktop -- name: gnome-screenshot - repo: upstream:gnome/gnome-screenshot - ref: 3a97ad23ff14a0400f12dd3fdf501d1d9dad04d4 - unpetrify-ref: 3.18.0 - build-system: autotools - build-depends: - - libcanberra -- name: evolution - morph: gnome/strata/gnome/evolution.morph - repo: upstream:gnome/evolution - ref: 57b4424f7dd260b50c2f3fd12ec31948942d656e - unpetrify-ref: gnome-3-24 - build-depends: - - evolution-data-server - - clutter-gtk - - gnome-desktop - - gnome-online-accounts - - gsettings-desktop-schemas - - libcanberra - - libchamplain - - libgdata - - libgweather - - libnotify - - yelp-tools diff --git a/gnome/strata/gnome/WebKitGtk.morph b/gnome/strata/gnome/WebKitGtk.morph deleted file mode 100644 index 9cb50a0d..00000000 --- a/gnome/strata/gnome/WebKitGtk.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: WebKitGtk -kind: chunk -build-system: cmake -configure-commands: -- CXXFLAGS=-Wno-expansion-to-defined cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$PREFIX" -DCMAKE_INSTALL_LIBDIR=lib diff --git a/gnome/strata/gnome/accountsservice.morph b/gnome/strata/gnome/accountsservice.morph deleted file mode 100644 index 15ba434d..00000000 --- a/gnome/strata/gnome/accountsservice.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: accountsservice -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-admin-group=adm -system-integration: - accountsservice-misc: - 00-enable-accounts-daemon-unit: - - systemctl enable accounts-daemon diff --git a/gnome/strata/gnome/adwaita-icon-theme.morph b/gnome/strata/gnome/adwaita-icon-theme.morph deleted file mode 100644 index 99ded09c..00000000 --- a/gnome/strata/gnome/adwaita-icon-theme.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: adwaita-icon-theme -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" diff --git a/gnome/strata/gnome/autoconf-archive.morph b/gnome/strata/gnome/autoconf-archive.morph deleted file mode 100644 index 5420b68a..00000000 --- a/gnome/strata/gnome/autoconf-archive.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: autoconf-archive -kind: chunk -build-system: autotools - -pre-configure-commands: -# Disable documentation, as it requires texinfo -- sed -e '/^SUBDIRS\s\+=\s\+doc.*$/d' Makefile.am -i -- ./bootstrap.sh diff --git a/gnome/strata/gnome/berkeleydb.morph b/gnome/strata/gnome/berkeleydb.morph deleted file mode 100644 index e6238e7a..00000000 --- a/gnome/strata/gnome/berkeleydb.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: berkeleydb -kind: chunk -build-system: autotools -configure-commands: -- | - cd build_unix; - ../dist/configure --prefix="$PREFIX" \ - --enable-compat185 \ - --enable-dbm \ - --enable-cxx -build-commands: -- | - cd build_unix; - make -install-commands: -- | - cd build_unix; - make DESTDIR="$DESTDIR" install diff --git a/gnome/strata/gnome/caribou.morph b/gnome/strata/gnome/caribou.morph deleted file mode 100644 index 14827a98..00000000 --- a/gnome/strata/gnome/caribou.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: caribou -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-gtk2-module diff --git a/gnome/strata/gnome/cheese.morph b/gnome/strata/gnome/cheese.morph deleted file mode 100644 index 5e3671fb..00000000 --- a/gnome/strata/gnome/cheese.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: cheese -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" diff --git a/gnome/strata/gnome/clutter.morph b/gnome/strata/gnome/clutter.morph deleted file mode 100644 index d454c6e3..00000000 --- a/gnome/strata/gnome/clutter.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: clutter -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-wayland-backend --enable-wayland-compositor - --enable-egl-backend --enable-evdev-input --enable-x11-backend diff --git a/gnome/strata/gnome/cogl.morph b/gnome/strata/gnome/cogl.morph deleted file mode 100644 index 8c9dca76..00000000 --- a/gnome/strata/gnome/cogl.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: cogl -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-wayland-egl-platform --enable-wayland-egl-server - --enable-kms-egl-platform --enable-xlib-egl-platform --enable-cogl-gst diff --git a/gnome/strata/gnome/colord.morph b/gnome/strata/gnome/colord.morph deleted file mode 100644 index d1e14454..00000000 --- a/gnome/strata/gnome/colord.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: colord -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc -system-integration: - colord-misc: - 00-enable-colord-unit: - - systemctl enable colord diff --git a/gnome/strata/gnome/cracklib.morph b/gnome/strata/gnome/cracklib.morph deleted file mode 100644 index fe204255..00000000 --- a/gnome/strata/gnome/cracklib.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: cracklib -kind: chunk -build-system: autotools -configure-commands: -# cracklib has it's own autogen.sh script, but uses curl to download config.sub & config.guess, we just skip it -- cd src && autopoint -f && cd m4 && echo EXTRA_DIST = *.m4 > Makefile.am && cd .. && autoreconf -f -i -- cd src && ./configure --prefix="$PREFIX" --sysconfdir=/etc --with-default-dict=/lib/cracklib/pw_dict -build-commands: -- make -C src -- make -C words cracklib-words.gz -install-commands: -- make -C src install -- install -m644 -D words/cracklib-words.gz $DESTDIR$PREFIX/share/dict/cracklib-words.gz -- install -v -m755 -d $DESTDIR/lib/cracklib -system-integration: - cracklib-misc: - 00-cracklib-create-dict: - - create-cracklib-dict /usr/share/dict/cracklib-words.gz diff --git a/gnome/strata/gnome/d-feet.morph b/gnome/strata/gnome/d-feet.morph deleted file mode 100644 index df74d3e0..00000000 --- a/gnome/strata/gnome/d-feet.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: d-feet -kind: chunk -build-system: autotools -configure-commands: -# Workaround upstream bug https://bugzilla.gnome.org/show_bug.cgi?id=757769 -- sed -i 's/AM_PATH_PYTHON(\[2\.7\])/AM_PATH_PYTHON(\[3\.1\])/g' configure.ac -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-tests diff --git a/gnome/strata/gnome/dconf.morph b/gnome/strata/gnome/dconf.morph deleted file mode 100644 index a49efd36..00000000 --- a/gnome/strata/gnome/dconf.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: dconf -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-man diff --git a/gnome/strata/gnome/desktop-file-utils.morph b/gnome/strata/gnome/desktop-file-utils.morph deleted file mode 100644 index df34dad6..00000000 --- a/gnome/strata/gnome/desktop-file-utils.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: desktop-file-utils -kind: chunk -build-system: autotools -system-integration: - desktop-file-utils-misc: - 01-update-desktop-database: - - update-desktop-database diff --git a/gnome/strata/gnome/empathy.morph b/gnome/strata/gnome/empathy.morph deleted file mode 100644 index a2a0cbc0..00000000 --- a/gnome/strata/gnome/empathy.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: empathy -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-Werror diff --git a/gnome/strata/gnome/epiphany.morph b/gnome/strata/gnome/epiphany.morph deleted file mode 100644 index 3a47a1a2..00000000 --- a/gnome/strata/gnome/epiphany.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: epiphany -kind: chunk -build-system: autotools -configure-commands: -- CFLAGS="-std=gnu99" ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var --disable-Werror diff --git a/gnome/strata/gnome/evolution-data-server.morph b/gnome/strata/gnome/evolution-data-server.morph deleted file mode 100644 index dfe9b55d..00000000 --- a/gnome/strata/gnome/evolution-data-server.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: evolution-data-server -kind: chunk -build-system: cmake -configure-commands: -- cmake -DCMAKE_INSTALL_PREFIX="$PREFIX" - -DSYSCONFDIR=/etc - -DENABLE_INTROSPECTION=ON - -DENABLE_UOA=OFF - -DENABLE_VALA_BINDINGS=ON - -DWITH_LIBDB=OFF - -DWITH_OPENLDAP=OFF . diff --git a/gnome/strata/gnome/evolution.morph b/gnome/strata/gnome/evolution.morph deleted file mode 100644 index fcef80e5..00000000 --- a/gnome/strata/gnome/evolution.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: evolution -kind: chunk -build-system: cmake -configure-commands: -- cmake . -DCMAKE_INSTALL_PREFIX="$PREFIX" -DENABLE_AUTOAR=OFF - -DENABLE_CONTACT_MAPS=ON -DENABLE_GTKSPELL=OFF - -DENABLE_LIBCRYPTUI=OFF -DENABLE_PST_IMPORT=OFF - -DENABLE_TEXT_HIGHLIGHT=OFF -DENABLE_YTNEF=OFF -DWITH_OPENLDAP=OFF diff --git a/gnome/strata/gnome/folks.morph b/gnome/strata/gnome/folks.morph deleted file mode 100644 index 132c8f3f..00000000 --- a/gnome/strata/gnome/folks.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: folks -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-fatal-warnings --enable-tracker-backend diff --git a/gnome/strata/gnome/gconf.morph b/gnome/strata/gnome/gconf.morph deleted file mode 100644 index 26930945..00000000 --- a/gnome/strata/gnome/gconf.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gconf -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-orbit --disable-documentation diff --git a/gnome/strata/gnome/gdm.morph b/gnome/strata/gnome/gdm.morph deleted file mode 100644 index 73081766..00000000 --- a/gnome/strata/gnome/gdm.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: gdm -kind: chunk -build-system: autotools -configure-commands: -- | - # GDM includes a few stock PAM configurations, we choose the LFS flavor - # because of it's simplicity over the others, also it does not require - # selinux modules, however we neet to tweak the config a little after install. - ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var \ - --with-selinux=no --with-plymouth=no \ - --enable-gdm-xsession --with-x --with-default-pam-config=lfs -post-install-commands: -# Instead of following LFS PAM config to the letter, we redirect the includes -# to use the systemd installed all purpose 'system-auth' file -- sed -i 's/system-account/system-auth/g' "$DESTDIR"/etc/pam.d/gdm* -- sed -i 's/system-password/system-auth/g' "$DESTDIR"/etc/pam.d/gdm* -- sed -i 's/system-session/system-auth/g' "$DESTDIR"/etc/pam.d/gdm* -system-integration: - gdm-misc: - 00-add-gdm-user: - - groupadd -g 21 gdm - - useradd -rM -c "GDM Daemon Owner" -d /var/lib/gdm -u 21 -g gdm -s /bin/false gdm - 00-enable-gdm-unit: - - systemctl enable gdm diff --git a/gnome/strata/gnome/glade.morph b/gnome/strata/gnome/glade.morph deleted file mode 100644 index 9cc3675d..00000000 --- a/gnome/strata/gnome/glade.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: glade -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-man-pages diff --git a/gnome/strata/gnome/glib-networking.morph b/gnome/strata/gnome/glib-networking.morph deleted file mode 100644 index 53380583..00000000 --- a/gnome/strata/gnome/glib-networking.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: glib-networking -kind: chunk -build-system: autotools -configure-commands: -# -# Tell glib-networking where the system CA certs are found, avoid depending -# on an installed ca-certificates. -# -- ./autogen.sh --prefix="$PREFIX" --with-ca-certificates=/etc/ssl/certs/ca-certificates.crt diff --git a/gnome/strata/gnome/gnome-color-manager.morph b/gnome/strata/gnome/gnome-color-manager.morph deleted file mode 100644 index 90ed1815..00000000 --- a/gnome/strata/gnome/gnome-color-manager.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: gnome-color-manager -kind: chunk -build-system: autotools -configure-commands: -# There is no justification to disable EXIV, we were just -# too lazy to integrate EXIV -- ./autogen.sh --prefix="$PREFIX" --disable-exiv diff --git a/gnome/strata/gnome/gnome-control-center.morph b/gnome/strata/gnome/gnome-control-center.morph deleted file mode 100644 index 9b5ec037..00000000 --- a/gnome/strata/gnome/gnome-control-center.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-control-center -kind: chunk -build-system: autotools -configure-commands: -- CFLAGS="-std=gnu99" ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-documentation diff --git a/gnome/strata/gnome/gnome-initial-setup.morph b/gnome/strata/gnome/gnome-initial-setup.morph deleted file mode 100644 index 47324950..00000000 --- a/gnome/strata/gnome/gnome-initial-setup.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: gnome-initial-setup -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc -system-integration: - gnome-initial-setup-misc: - 01-add-gnome-initial-setup-user: - - useradd -rM -d /run/gnome-initial-setup/ -c "GNOME Initial Setup Owner" -s /bin/false gnome-initial-setup diff --git a/gnome/strata/gnome/gnome-online-accounts.morph b/gnome/strata/gnome/gnome-online-accounts.morph deleted file mode 100644 index 0dea9543..00000000 --- a/gnome/strata/gnome/gnome-online-accounts.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-online-accounts -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-gtk-doc --disable-documentation diff --git a/gnome/strata/gnome/gnome-session.morph b/gnome/strata/gnome/gnome-session.morph deleted file mode 100644 index e7a4a927..00000000 --- a/gnome/strata/gnome/gnome-session.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-session -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-docbook-docs --disable-man --enable-systemd diff --git a/gnome/strata/gnome/gnome-settings-daemon.morph b/gnome/strata/gnome/gnome-settings-daemon.morph deleted file mode 100644 index 3112f778..00000000 --- a/gnome/strata/gnome/gnome-settings-daemon.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-settings-daemon -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-man diff --git a/gnome/strata/gnome/gnome-shell.morph b/gnome/strata/gnome/gnome-shell.morph deleted file mode 100644 index dc58f670..00000000 --- a/gnome/strata/gnome/gnome-shell.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-shell -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-man --enable-compile-warnings=maximum diff --git a/gnome/strata/gnome/gnome-terminal.morph b/gnome/strata/gnome/gnome-terminal.morph deleted file mode 100644 index 89ec5964..00000000 --- a/gnome/strata/gnome/gnome-terminal.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-terminal -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-search-provider diff --git a/gnome/strata/gnome/gnome-themes-standard.morph b/gnome/strata/gnome/gnome-themes-standard.morph deleted file mode 100644 index c5b6702c..00000000 --- a/gnome/strata/gnome/gnome-themes-standard.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-themes-standard -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-gtk2-engine diff --git a/gnome/strata/gnome/gtksourceview.morph b/gnome/strata/gnome/gtksourceview.morph deleted file mode 100644 index a41c5e9c..00000000 --- a/gnome/strata/gnome/gtksourceview.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gtksourceview -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-glade-catalog --disable-Werror diff --git a/gnome/strata/gnome/hicolor-icon-theme.morph b/gnome/strata/gnome/hicolor-icon-theme.morph deleted file mode 100644 index 88629b39..00000000 --- a/gnome/strata/gnome/hicolor-icon-theme.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: hicolor-icon-theme -kind: chunk -build-system: autotools -system-integration: - hicolor-icon-theme-misc: - 00-update-icon-cache: - - gtk-update-icon-cache -f -t /usr/share/icons/hicolor diff --git a/gnome/strata/gnome/ibus-anthy.morph b/gnome/strata/gnome/ibus-anthy.morph deleted file mode 100644 index bb48e8bb..00000000 --- a/gnome/strata/gnome/ibus-anthy.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: ibus-anthy -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --with-python=python3 --enable-private-png=yes diff --git a/gnome/strata/gnome/ibus-hangul.morph b/gnome/strata/gnome/ibus-hangul.morph deleted file mode 100644 index a479459b..00000000 --- a/gnome/strata/gnome/ibus-hangul.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: ibus-hangul -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --with-python=python3 diff --git a/gnome/strata/gnome/ibus-libpinyin.morph b/gnome/strata/gnome/ibus-libpinyin.morph deleted file mode 100644 index 7ad8a349..00000000 --- a/gnome/strata/gnome/ibus-libpinyin.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: ibus-libpinyin -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --with-python=python3 --disable-lua-extension diff --git a/gnome/strata/gnome/ibus.morph b/gnome/strata/gnome/ibus.morph deleted file mode 100644 index f46a1a71..00000000 --- a/gnome/strata/gnome/ibus.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: ibus -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc \ - --disable-tests --disable-gconf --enable-dconf \ - --disable-memconf --disable-ui GSETTINGS_SCHEMA_CONVERT=/usr/bin/false \ - --with-python=python3 --enable-wayland diff --git a/gnome/strata/gnome/krb5.morph b/gnome/strata/gnome/krb5.morph deleted file mode 100644 index d0a4600e..00000000 --- a/gnome/strata/gnome/krb5.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: krb5 -kind: chunk -build-system: autotools -configure-commands: -- cd src && ./util/reconf --force -- cd src && ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var/lib --enable-dns -build-commands: -- make -C src -install-commands: -- make -C src install diff --git a/gnome/strata/gnome/libchamplain.morph b/gnome/strata/gnome/libchamplain.morph deleted file mode 100644 index e1c902b8..00000000 --- a/gnome/strata/gnome/libchamplain.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libchamplain -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-vala=yes diff --git a/gnome/strata/gnome/libgdata.morph b/gnome/strata/gnome/libgdata.morph deleted file mode 100644 index 4ff7c477..00000000 --- a/gnome/strata/gnome/libgdata.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libgdata -kind: chunk -build-system: autotools -configure-commands: -# Disable these cause we're too lazy to build libuhttpmock -- ./autogen.sh --prefix="$PREFIX" --disable-installed-tests --disable-always-build-tests diff --git a/gnome/strata/gnome/libhangul.morph b/gnome/strata/gnome/libhangul.morph deleted file mode 100644 index f3df4601..00000000 --- a/gnome/strata/gnome/libhangul.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libhangul -kind: chunk -build-system: autotools -pre-configure-commands: -# Avoid an autotools error at translation build time, simply dont build po directory -- sed -i 's/SUBDIRS = hangul data tools po/SUBDIRS = hangul data tools/g' Makefile.am diff --git a/gnome/strata/gnome/libpeas.morph b/gnome/strata/gnome/libpeas.morph deleted file mode 100644 index d5193600..00000000 --- a/gnome/strata/gnome/libpeas.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libpeas -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-python3 diff --git a/gnome/strata/gnome/libpurple.morph b/gnome/strata/gnome/libpurple.morph deleted file mode 100644 index 9bbe089b..00000000 --- a/gnome/strata/gnome/libpurple.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: libpurple -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc \ - --with-gstreamer=1.0 --disable-gtkui \ - --disable-idn --disable-meanwhile \ - --disable-tcl diff --git a/gnome/strata/gnome/libpwquality.morph b/gnome/strata/gnome/libpwquality.morph deleted file mode 100644 index aefed50d..00000000 --- a/gnome/strata/gnome/libpwquality.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libpwquality -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --with-securedir=/lib/security --disable-nls diff --git a/gnome/strata/gnome/librest.morph b/gnome/strata/gnome/librest.morph deleted file mode 100644 index 34503de3..00000000 --- a/gnome/strata/gnome/librest.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: librest -kind: chunk -build-system: autotools -configure-commands: -# -# Tell librest where the system CA certs are found, avoid depending on -# an installed ca-certificates. -# -- ./autogen.sh --prefix="$PREFIX" --with-ca-certificates=/etc/ssl/certs/ca-certificates.crt diff --git a/gnome/strata/gnome/libwnck.morph b/gnome/strata/gnome/libwnck.morph deleted file mode 100644 index bb8d7afa..00000000 --- a/gnome/strata/gnome/libwnck.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: libwnck -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" diff --git a/gnome/strata/gnome/mozjs24.morph b/gnome/strata/gnome/mozjs24.morph deleted file mode 100644 index a3254305..00000000 --- a/gnome/strata/gnome/mozjs24.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: mozjs24 -kind: chunk -build-system: manual -configure-commands: -- | - cd js/src; - ./configure --prefix="$PREFIX" \ - --sysconfdir=/etc \ - --with-system-nspr \ - --with-system-ffi \ - --enable-threadsafe -build-commands: -- | - cd js/src; - make -install-commands: -- cd js/src; - make DESTDIR="$DESTDIR" install diff --git a/gnome/strata/gnome/mutter.morph b/gnome/strata/gnome/mutter.morph deleted file mode 100644 index 334e3306..00000000 --- a/gnome/strata/gnome/mutter.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: mutter -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-compile-warnings=no diff --git a/gnome/strata/gnome/nautilus.morph b/gnome/strata/gnome/nautilus.morph deleted file mode 100644 index 3afe7fd7..00000000 --- a/gnome/strata/gnome/nautilus.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: nautilus -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-xmp diff --git a/gnome/strata/gnome/network-manager-applet.morph b/gnome/strata/gnome/network-manager-applet.morph deleted file mode 100644 index 8b144ed8..00000000 --- a/gnome/strata/gnome/network-manager-applet.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: network-manager-applet -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --without-selinux --without-team diff --git a/gnome/strata/gnome/raptor.morph b/gnome/strata/gnome/raptor.morph deleted file mode 100644 index fe2d1321..00000000 --- a/gnome/strata/gnome/raptor.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: raptor -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-gtk-doc diff --git a/gnome/strata/gnome/telepathy-gabble.morph b/gnome/strata/gnome/telepathy-gabble.morph deleted file mode 100644 index fef9b8d6..00000000 --- a/gnome/strata/gnome/telepathy-gabble.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: telepathy-gabble -kind: chunk -build-system: autotools -configure-commands: -# -# Tell telepathy-gabble where to load the certificate bundle from. -# -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --with-ca-certificates=/etc/ssl/certs/ca-certificates.crt diff --git a/gnome/strata/gnome/telepathy-glib.morph b/gnome/strata/gnome/telepathy-glib.morph deleted file mode 100644 index 1a262ae8..00000000 --- a/gnome/strata/gnome/telepathy-glib.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: telepathy-glib -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var - --disable-Werror --enable-vala-bindings --disable-fatal-warnings diff --git a/gnome/strata/gnome/telepathy-logger.morph b/gnome/strata/gnome/telepathy-logger.morph deleted file mode 100644 index 38c90539..00000000 --- a/gnome/strata/gnome/telepathy-logger.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: telepathy-logger -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc diff --git a/gnome/strata/gnome/telepathy-salut.morph b/gnome/strata/gnome/telepathy-salut.morph deleted file mode 100644 index bdb50cbd..00000000 --- a/gnome/strata/gnome/telepathy-salut.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: telepathy-salut -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --with-backend=avahi --disable-avahi-tests diff --git a/gnome/strata/gnome/upower.morph b/gnome/strata/gnome/upower.morph deleted file mode 100644 index 00e828bd..00000000 --- a/gnome/strata/gnome/upower.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: upower -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-man-pages diff --git a/gnome/strata/gnome/vte.morph b/gnome/strata/gnome/vte.morph deleted file mode 100644 index 34552c20..00000000 --- a/gnome/strata/gnome/vte.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: vte -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-introspection=yes --without-pcre2 --enable-glade-catalogue diff --git a/gnome/strata/gnome/yelp.morph b/gnome/strata/gnome/yelp.morph deleted file mode 100644 index 86434a4a..00000000 --- a/gnome/strata/gnome/yelp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: yelp -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --disable-Werror diff --git a/gnome/strata/gnome/zeitgeist.morph b/gnome/strata/gnome/zeitgeist.morph deleted file mode 100644 index ec8dc87c..00000000 --- a/gnome/strata/gnome/zeitgeist.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: zeitgeist -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --with-session-bus-services-dir="$PREFIX"/share/dbus-1/services diff --git a/gnome/systems/gnome-system-armv7lhf-jetson.morph b/gnome/systems/gnome-system-armv7lhf-jetson.morph deleted file mode 100644 index ab99e493..00000000 --- a/gnome/systems/gnome-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,94 +0,0 @@ -name: gnome-system-armv7lhf-jetson -kind: system -description: A GNOME system system. -arch: armv7lhf -strata: -- name: bluetooth - morph: strata/bluetooth.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: build-essential - morph: strata/build-essential.morph -- name: NetworkManager-common - morph: strata/NetworkManager-common.morph -- name: core - morph: strata/core.morph -- name: data-indexing-management - morph: strata/data-indexing-management.morph -- name: device-management - morph: strata/device-management.morph -- name: dlna-services - morph: strata/dlna-services.morph -- name: foundation - morph: strata/foundation.morph -- name: geolocation - morph: strata/geolocation.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: gnome - morph: gnome/strata/gnome.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: gtk-deps - morph: strata/gtk-deps.morph -- name: gtk2 - morph: strata/gtk2.morph -- name: gtk3 - morph: strata/gtk3.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-gobject - morph: strata/python3-gobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: ruby - morph: strata/ruby.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-drivers - morph: strata/x-drivers.morph -- name: x-generic - morph: strata/x-generic.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: flatpak-common - morph: gnome/strata/flatpak-common.morph -- name: network-security - morph: strata/network-security.morph -- name: icu-common - morph: strata/icu-common.morph -- name: samba - morph: strata/samba.morph -- name: secret-service - morph: strata/secret-service.morph -- name: spell-checking - morph: strata/spell-checking.morph -- name: storage-management - morph: strata/storage-management.morph -- name: cups - morph: strata/cups.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/install-files -- extensions/install-essential-files diff --git a/gnome/systems/gnome-system-x86_64.morph b/gnome/systems/gnome-system-x86_64.morph deleted file mode 100644 index c7fb60b1..00000000 --- a/gnome/systems/gnome-system-x86_64.morph +++ /dev/null @@ -1,102 +0,0 @@ -name: gnome-system-x86_64 -kind: system -description: A GNOME system system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: NetworkManager-common - morph: strata/NetworkManager-common.morph -- name: core - morph: strata/core.morph -- name: data-indexing-management - morph: strata/data-indexing-management.morph -- name: device-management - morph: strata/device-management.morph -- name: dlna-services - morph: strata/dlna-services.morph -- name: foundation - morph: strata/foundation.morph -- name: geolocation - morph: strata/geolocation.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: gnome - morph: gnome/strata/gnome.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: gtk-deps - morph: strata/gtk-deps.morph -- name: gtk2 - morph: strata/gtk2.morph -- name: gtk3 - morph: strata/gtk3.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-hardware-codecs-x86 - morph: strata/multimedia-hardware-codecs-x86.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: multimedia-gstreamer-openmax-generic - morph: strata/multimedia-gstreamer-openmax-generic.morph -- name: privileges-management - morph: strata/privileges-management.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-gobject - morph: strata/python3-gobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: ruby - morph: strata/ruby.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: vala-common - morph: strata/vala-common.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-drivers - morph: strata/x-drivers.morph -- name: x-generic - morph: strata/x-generic.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: flatpak-common - morph: gnome/strata/flatpak-common.morph -- name: network-security - morph: strata/network-security.morph -- name: icu-common - morph: strata/icu-common.morph -- name: samba - morph: strata/samba.morph -- name: secret-service - morph: strata/secret-service.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: spell-checking - morph: strata/spell-checking.morph -- name: storage-management - morph: strata/storage-management.morph -- name: cups - morph: strata/cups.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/install-files -- extensions/install-essential-files diff --git a/install-files/chef/manifest b/install-files/chef/manifest deleted file mode 100644 index de6cc542..00000000 --- a/install-files/chef/manifest +++ /dev/null @@ -1,3 +0,0 @@ -0040755 0 0 /root -0040700 1000 1000 /root/.ssh -0100600 1000 1000 /root/.ssh/authorized_keys diff --git a/install-files/distbuild/lib/systemd/system-generators/ccache-nfs-mount-generator b/install-files/distbuild/lib/systemd/system-generators/ccache-nfs-mount-generator deleted file mode 100755 index 127bc84f..00000000 --- a/install-files/distbuild/lib/systemd/system-generators/ccache-nfs-mount-generator +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -read trove_host "$1/srv-distbuild-ccache.mount" < /root/.ssh/id_rsa.pub creates=/root/.ssh/id_rsa.pub - - - name: Add trove's host key - shell: | - trove_key="$(ssh-keyscan -t dsa,ecdsa,rsa {{ TROVE_HOST|quote }})" - if [ -n "$trove_key" ]; then - echo "$trove_key" > /etc/ssh/ssh_known_hosts - fi - creates=/etc/ssh/ssh_known_hosts - - # This is a kludge. We can add the host key for the TROVE_HOST that was - # specified, but users may access the Trove by other names, e.g. IP address - # or domain name. Distbuild is currently not safe to run except on a private - # network where host key checking is not important, so we disable it by - # default to avoid errors when users don't stick to using the exact same - # TROVE_HOST in repo URLs. - - name: Disable strict SSH host key checking - lineinfile: - dest: /etc/ssh/ssh_config - line: StrictHostKeyChecking no - - - name: Enable the morph-cache-server service - service: name=morph-cache-server.service enabled=yes - register: morph_cache_server_service - - name: Restart the morph-cache-server service - service: name=morph-cache-server state=restarted - when: morph_cache_server_service|changed - - - name: Enable the morph-worker service - service: name=morph-worker.service enabled=yes - register: morph_worker_service - when: DISTBUILD_WORKER - - name: Restart the morph-worker service - service: name=morph-worker state=restarted - when: morph_worker_service|changed - - - name: Enable the morph-worker-helper service - service: name=morph-worker-helper.service enabled=yes - register: morph_worker_helper_service - when: DISTBUILD_WORKER - - name: Restart the morph-worker-helper service - service: name=morph-worker-helper state=restarted - when: morph_worker_helper_service|changed - - - name: Enable the morph-controller service - service: name=morph-controller.service enabled=yes - register: morph_controller_service - when: DISTBUILD_CONTROLLER - - name: Restart the morph-controller service - service: name=morph-controller state=restarted - when: morph_controller_service|changed - - - name: Enable the morph-controller-helper service - service: name=morph-controller-helper.service enabled=yes - register: morph_controller_helper_service - when: DISTBUILD_CONTROLLER - - name: Restart the morph-controller-helper service - service: name=morph-controller-helper state=restarted - when: morph_controller_helper_service|changed diff --git a/install-files/distbuild/usr/lib/distbuild-setup/ansible/hosts b/install-files/distbuild/usr/lib/distbuild-setup/ansible/hosts deleted file mode 100644 index 5b97818d..00000000 --- a/install-files/distbuild/usr/lib/distbuild-setup/ansible/hosts +++ /dev/null @@ -1 +0,0 @@ -localhost ansible_connection=local diff --git a/install-files/distbuild/usr/lib/systemd/system/distbuild-setup.service b/install-files/distbuild/usr/lib/systemd/system/distbuild-setup.service deleted file mode 100644 index ec5f5a2d..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/distbuild-setup.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Run distbuild-setup Ansible scripts -Requires=network.target -After=network.target -Requires=opensshd.service -After=opensshd.service - -# If there's a shared /var subvolume, it must be mounted before this -# unit runs. -Requires=local-fs.target -After=local-fs.target - -ConditionPathExists=/etc/distbuild/distbuild.conf - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -i /usr/lib/distbuild-setup/ansible/hosts /usr/lib/distbuild-setup/ansible/distbuild-setup.yml diff --git a/install-files/distbuild/usr/lib/systemd/system/morph-cache-server.service b/install-files/distbuild/usr/lib/systemd/system/morph-cache-server.service deleted file mode 100644 index f55f3b6d..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/morph-cache-server.service +++ /dev/null @@ -1,12 +0,0 @@ -[Install] -WantedBy=multi-user.target - -[Unit] -Description=Morph cache server -Requires=local-fs.target network.target -After=local-fs.target network.target -ConditionPathExists=/etc/morph-cache-server.conf - -[Service] -ExecStart=/usr/bin/morph-cache-server -Restart=always diff --git a/install-files/distbuild/usr/lib/systemd/system/morph-controller-helper.service b/install-files/distbuild/usr/lib/systemd/system/morph-controller-helper.service deleted file mode 100644 index 3f30cbcf..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/morph-controller-helper.service +++ /dev/null @@ -1,13 +0,0 @@ -[Install] -WantedBy=multi-user.target - -[Unit] -Description=Morph distributed build controller helper -Requires=morph-controller.service -After=morph-controller.service -ConditionPathExists=/etc/morph-controller.conf -ConditionPathExists=/etc/morph-controller-helper.conf - -[Service] -ExecStart=/usr/bin/distbuild-helper --config /etc/morph-controller-helper.conf -Restart=always diff --git a/install-files/distbuild/usr/lib/systemd/system/morph-controller.service b/install-files/distbuild/usr/lib/systemd/system/morph-controller.service deleted file mode 100644 index 1556d232..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/morph-controller.service +++ /dev/null @@ -1,12 +0,0 @@ -[Install] -WantedBy=multi-user.target - -[Unit] -Description=Morph distributed build controller -Requires=local-fs.target network.target -After=local-fs.target network.target -ConditionPathExists=/etc/morph-controller.conf - -[Service] -ExecStart=/usr/bin/morph controller-daemon --config /etc/morph-controller.conf -Restart=always diff --git a/install-files/distbuild/usr/lib/systemd/system/morph-worker-helper.service b/install-files/distbuild/usr/lib/systemd/system/morph-worker-helper.service deleted file mode 100644 index 28400701..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/morph-worker-helper.service +++ /dev/null @@ -1,13 +0,0 @@ -[Install] -WantedBy=multi-user.target - -[Unit] -Description=Morph distributed build worker helper -Requires=morph-worker.service -After=morph-worker.service -ConditionPathExists=/etc/morph-worker.conf -ConditionPathExists=/etc/morph-worker-helper.conf - -[Service] -ExecStart=/usr/bin/distbuild-helper --config /etc/morph-worker-helper.conf -Restart=always diff --git a/install-files/distbuild/usr/lib/systemd/system/morph-worker.service b/install-files/distbuild/usr/lib/systemd/system/morph-worker.service deleted file mode 100644 index 90fea404..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/morph-worker.service +++ /dev/null @@ -1,13 +0,0 @@ -[Install] -WantedBy=multi-user.target - -[Unit] -Description=Morph distributed build worker -Requires=local-fs.target network.target -Wants=srv-distbuild-ccache.mount -After=local-fs.target network.target srv-distbuild-ccache.mount -ConditionPathExists=/etc/morph-worker.conf - -[Service] -ExecStart=/usr/bin/morph worker-daemon --config /etc/morph-worker.conf -Restart=always diff --git a/install-files/distbuild/usr/lib/systemd/system/multi-user.target.wants/distbuild-setup.service b/install-files/distbuild/usr/lib/systemd/system/multi-user.target.wants/distbuild-setup.service deleted file mode 120000 index 8f06febd..00000000 --- a/install-files/distbuild/usr/lib/systemd/system/multi-user.target.wants/distbuild-setup.service +++ /dev/null @@ -1 +0,0 @@ -../distbuild-setup.service \ No newline at end of file diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph-cache-server.conf b/install-files/distbuild/usr/share/distbuild-setup/morph-cache-server.conf deleted file mode 100644 index b9020e7d..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph-cache-server.conf +++ /dev/null @@ -1,5 +0,0 @@ -[config] -port = 8080 -artifact-dir = /srv/distbuild/artifacts -direct-mode = True -fcgi-server = False diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph-controller-helper.conf b/install-files/distbuild/usr/share/distbuild-setup/morph-controller-helper.conf deleted file mode 100644 index 99d38739..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph-controller-helper.conf +++ /dev/null @@ -1,5 +0,0 @@ -[config] -log = /srv/distbuild/morph-controller-helper.log -log-max = 100M -parent-port = 5656 -parent-address = 127.0.0.1 diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph-controller.conf b/install-files/distbuild/usr/share/distbuild-setup/morph-controller.conf deleted file mode 100644 index c16c0343..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph-controller.conf +++ /dev/null @@ -1,6 +0,0 @@ -[config] -log = /srv/distbuild/morph-controller.log -log-max = 100M -writeable-cache-server = http://{{ ARTIFACT_CACHE_SERVER }}:8081/ -worker = {{ WORKERS }} -controller-helper-address = 127.0.0.1 diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph-worker-helper.conf b/install-files/distbuild/usr/share/distbuild-setup/morph-worker-helper.conf deleted file mode 100644 index 29d4ef3f..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph-worker-helper.conf +++ /dev/null @@ -1,4 +0,0 @@ -[config] -log = /srv/distbuild/morph-worker-helper.log -log-max = 100M -parent-address = 127.0.0.1 diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph-worker.conf b/install-files/distbuild/usr/share/distbuild-setup/morph-worker.conf deleted file mode 100644 index fb382bad..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph-worker.conf +++ /dev/null @@ -1,4 +0,0 @@ -[config] -log = /srv/distbuild/morph-worker.log -log-max = 100M -controller-initiator-address = diff --git a/install-files/distbuild/usr/share/distbuild-setup/morph.conf b/install-files/distbuild/usr/share/distbuild-setup/morph.conf deleted file mode 100644 index 29de684c..00000000 --- a/install-files/distbuild/usr/share/distbuild-setup/morph.conf +++ /dev/null @@ -1,13 +0,0 @@ -[config] -log = /srv/distbuild/morph.log -log-max = 100M -cachedir = /srv/distbuild -tempdir = /srv/distbuild/tmp -trove-host = {{ TROVE_HOST }} -trove-id = {{ TROVE_ID }} -controller-initiator-address = {{ CONTROLLERHOST }} -tempdir-min-space = 4G -cachedir-min-space = 4G -build-ref-prefix = {{ TROVE_ID }} -artifact-cache-server = http://{{ ARTIFACT_CACHE_SERVER }}:8080/ -git-resolve-cache-server = http://{{ TROVE_HOST }}:8080/ diff --git a/install-files/essential-files/etc/inputrc b/install-files/essential-files/etc/inputrc deleted file mode 100644 index ddee44cd..00000000 --- a/install-files/essential-files/etc/inputrc +++ /dev/null @@ -1,38 +0,0 @@ -# Allow the command prompt to wrap to the next line -set horizontal-scroll-mode Off - -# Enable 8bit input -set meta-flag On -set input-meta On - -# Turns off 8th bit stripping -set convert-meta Off - -# Keep the 8th bit for display -set output-meta On - -# none, visible or audible -set bell-style none - -# for linux console and RH/Debian xterm -"\e[1~": beginning-of-line -"\e[4~": end-of-line -"\e[5~": beginning-of-history -"\e[6~": end-of-history -"\e[7~": beginning-of-line -"\e[3~": delete-char -"\e[2~": quoted-insert -"\e[5C": forward-word -"\e[5D": backward-word -"\e\e[C": forward-word -"\e\e[D": backward-word -"\e[1;5C": forward-word -"\e[1;5D": backward-word - -# for non RH/Debian xterm, can't hurt for RH/DEbian xterm -"\eOH": beginning-of-line -"\eOF": end-of-line - -# for Konsole and freebsd console -"\e[H": beginning-of-line -"\e[F": end-of-line diff --git a/install-files/essential-files/etc/os-release b/install-files/essential-files/etc/os-release deleted file mode 120000 index c4c75b41..00000000 --- a/install-files/essential-files/etc/os-release +++ /dev/null @@ -1 +0,0 @@ -../usr/lib/os-release \ No newline at end of file diff --git a/install-files/essential-files/etc/profile b/install-files/essential-files/etc/profile deleted file mode 100644 index 5c0a1331..00000000 --- a/install-files/essential-files/etc/profile +++ /dev/null @@ -1,13 +0,0 @@ -# /etc/profile - -# Set our default path -PATH="/usr/local/bin:/usr/bin" -export PATH - -# Source global bash config -if test "$PS1" && test "$BASH" && test -r /etc/bash.bashrc; then - . /etc/bash.bashrc -fi - -# Set default pager to less -export MANPAGER='less -R' diff --git a/install-files/essential-files/manifest b/install-files/essential-files/manifest deleted file mode 100644 index 93095d86..00000000 --- a/install-files/essential-files/manifest +++ /dev/null @@ -1,11 +0,0 @@ -0040755 0 0 /etc -overwrite 0120000 0 0 /etc/os-release -overwrite 0100644 0 0 /etc/profile -overwrite 0100644 0 0 /etc/inputrc -0040755 0 0 /usr -0040755 0 0 /usr/bin -0100755 0 0 /usr/bin/brpaste -0040755 0 0 /usr/lib -0100644 0 0 /usr/lib/os-release -0040755 0 0 /usr/lib/tmpfiles.d -0100644 0 0 /usr/lib/tmpfiles.d/shutdownramfs.conf diff --git a/install-files/essential-files/usr/bin/brpaste b/install-files/essential-files/usr/bin/brpaste deleted file mode 100644 index d2f9d867..00000000 --- a/install-files/essential-files/usr/bin/brpaste +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env python3 - -import urllib.request -import os -import json - -URL = 'http://paste.baserock.org/documents' - -def run(*args): - if args: - content = [open(x).read() for x in args] - extensions = [os.path.splitext(x)[1] for x in args] - else: - content = [sys.stdin.read()] - extensions = [None] - - for i, each in enumerate(content): - req = urllib.request.Request(URL, each.encode('utf-8')) - response = urllib.request.urlopen(req) - the_page = response.read().decode('utf-8') - key = json.loads(the_page)['key'] - url = "http://paste.baserock.org/%s" % key - if extensions[i]: - url += extensions[i] - print(url) - -if __name__ == '__main__': - import sys - sys.exit(run(*sys.argv[1:])) diff --git a/install-files/essential-files/usr/lib/os-release b/install-files/essential-files/usr/lib/os-release deleted file mode 100644 index b729c75f..00000000 --- a/install-files/essential-files/usr/lib/os-release +++ /dev/null @@ -1,5 +0,0 @@ -NAME="Baserock" -ID=baserock -HOME_URL="http://wiki.baserock.org" -SUPPORT_URL="http://wiki.baserock.org/mailinglist" -BUG_REPORT_URL="http://wiki.baserock.org/mailinglist" diff --git a/install-files/essential-files/usr/lib/tmpfiles.d/shutdownramfs.conf b/install-files/essential-files/usr/lib/tmpfiles.d/shutdownramfs.conf deleted file mode 100644 index 174f1f03..00000000 --- a/install-files/essential-files/usr/lib/tmpfiles.d/shutdownramfs.conf +++ /dev/null @@ -1,4 +0,0 @@ -# If /usr/lib/shutdownramfs has been populated, copy it into /run/initramfs so -# /run/initramfs/shutdown will be executed on shut-down, so that it may unmount -# the rootfs. -C /run/initramfs - - - - /usr/lib/shutdownramfs diff --git a/install-files/genivi-devel-system-armv7/etc/morph.conf b/install-files/genivi-devel-system-armv7/etc/morph.conf deleted file mode 120000 index 8f384049..00000000 --- a/install-files/genivi-devel-system-armv7/etc/morph.conf +++ /dev/null @@ -1 +0,0 @@ -/src/morph.conf \ No newline at end of file diff --git a/install-files/genivi-devel-system-armv7/manifest b/install-files/genivi-devel-system-armv7/manifest deleted file mode 100644 index 31980633..00000000 --- a/install-files/genivi-devel-system-armv7/manifest +++ /dev/null @@ -1,5 +0,0 @@ -0040755 0 0 /src -0040755 0 0 /src/tmp -0100666 0 0 /src/morph.conf -0040755 0 0 /etc -0120666 0 0 /etc/morph.conf diff --git a/install-files/genivi-devel-system-armv7/src/morph.conf b/install-files/genivi-devel-system-armv7/src/morph.conf deleted file mode 100644 index 76b6fde9..00000000 --- a/install-files/genivi-devel-system-armv7/src/morph.conf +++ /dev/null @@ -1,5 +0,0 @@ -[config] -log = /src/morph.log -cachedir = /src/cache -tempdir = /src/tmp -staging-chroot = true diff --git a/install-files/gnome/etc/pam.d/gdm b/install-files/gnome/etc/pam.d/gdm deleted file mode 100644 index 42036102..00000000 --- a/install-files/gnome/etc/pam.d/gdm +++ /dev/null @@ -1,15 +0,0 @@ -# Baserock customized /etc/pam.d/gdm -# - -auth requisite pam_nologin.so -auth required pam_env.so - -auth required pam_succeed_if.so uid >= 1000 quiet -auth include system-auth - -account include system-auth -password include system-auth - -session optional pam_keyinit.so force revoke -session include system-auth -session required pam_loginuid.so diff --git a/install-files/gnome/etc/pam.d/gdm-autologin b/install-files/gnome/etc/pam.d/gdm-autologin deleted file mode 100644 index c99449ac..00000000 --- a/install-files/gnome/etc/pam.d/gdm-autologin +++ /dev/null @@ -1,17 +0,0 @@ -# Baserock customized /etc/pam.d/gdm-autologin -# - -auth requisite pam_nologin.so -auth required pam_env.so - -auth required pam_succeed_if.so uid >= 1000 quiet -auth required pam_permit.so -auth optional pam_gnome_keyring.so - -account include system-auth -password include system-auth - -session required pam_loginuid.so -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session include system-auth diff --git a/install-files/gnome/etc/pam.d/gdm-launch-environment b/install-files/gnome/etc/pam.d/gdm-launch-environment deleted file mode 100644 index f63c80fa..00000000 --- a/install-files/gnome/etc/pam.d/gdm-launch-environment +++ /dev/null @@ -1,11 +0,0 @@ -# Baserock customized /etc/pam.d/gdm-launch-environment -# - -auth required pam_env.so -auth optional pam_permit.so - -account include system-auth -password include system-auth - -session optional pam_keyinit.so force revoke -session include system-auth diff --git a/install-files/gnome/etc/pam.d/gdm-password b/install-files/gnome/etc/pam.d/gdm-password deleted file mode 100644 index 798d40a6..00000000 --- a/install-files/gnome/etc/pam.d/gdm-password +++ /dev/null @@ -1,24 +0,0 @@ -# Baserock customized /etc/pam.d/gdm-password -# -# This configuration ensures that the default keyring -# is unlocked at gdm login time, and also that the -# authentication token is used to update the keyring -# when the password is set. - -auth requisite pam_nologin.so -auth required pam_env.so - -auth required pam_succeed_if.so uid >= 1000 quiet -auth substack system-auth -auth optional pam_gnome_keyring.so - -account include system-auth -password substack system-auth -password optional pam_gnome_keyring.so use_authtok - -session required pam_limits.so -session required pam_loginuid.so -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session substack system-auth -session optional pam_gnome_keyring.so auto_start diff --git a/install-files/gnome/etc/pam.d/passwd b/install-files/gnome/etc/pam.d/passwd deleted file mode 100644 index e0c98057..00000000 --- a/install-files/gnome/etc/pam.d/passwd +++ /dev/null @@ -1,10 +0,0 @@ -# Baserock customized /etc/pam.d/passwd -# -# This configuration ensures authentication token -# is used to update the keyring when the password is set -# using the regular passwd mechanism - -auth include system-auth -account include system-auth -password substack system-auth -password optional pam_gnome_keyring.so use_authtok diff --git a/install-files/gnome/etc/pam.d/system-auth b/install-files/gnome/etc/pam.d/system-auth deleted file mode 100644 index 73d3968c..00000000 --- a/install-files/gnome/etc/pam.d/system-auth +++ /dev/null @@ -1,19 +0,0 @@ -# Baserock customized /etc/pam.d/system-auth -# -# This configuration is modified from the upstream -# systemd provided file mostly because the upstream file -# tries to pass the invalid 'try_authtok' option to the -# pam_unix.so module. - -auth sufficient pam_unix.so nullok try_first_pass -auth requisite pam_deny.so - -account required pam_nologin.so -account sufficient pam_unix.so - -password sufficient pam_unix.so nullok sha512 shadow try_first_pass -password required pam_deny.so - --session optional pam_loginuid.so --session optional pam_systemd.so -session sufficient pam_unix.so diff --git a/install-files/gnome/etc/securetty b/install-files/gnome/etc/securetty deleted file mode 100644 index e3dfb6c4..00000000 --- a/install-files/gnome/etc/securetty +++ /dev/null @@ -1,8 +0,0 @@ -tty1 -#tty2 -#tty3 -#tty4 -#tty5 -#tty6 -#tty7 -#tty8 diff --git a/install-files/gnome/etc/ssh/sshd_config b/install-files/gnome/etc/ssh/sshd_config deleted file mode 100644 index aaab3cca..00000000 --- a/install-files/gnome/etc/ssh/sshd_config +++ /dev/null @@ -1,135 +0,0 @@ -# $OpenBSD: sshd_config,v 1.93 2014/01/10 05:59:19 djm Exp $ - -# This is the sshd server system-wide configuration file. See -# sshd_config(5) for more information. - -# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin - -# The strategy used for options in the default sshd_config shipped with -# OpenSSH is to specify options with their default value where -# possible, but leave them commented. Uncommented options override the -# default value. - -#Port 22 -#AddressFamily any -#ListenAddress 0.0.0.0 -#ListenAddress :: - -# The default requires explicit activation of protocol 1 -#Protocol 2 - -# HostKey for protocol version 1 -#HostKey /etc/ssh/ssh_host_key -# HostKeys for protocol version 2 -#HostKey /etc/ssh/ssh_host_rsa_key -#HostKey /etc/ssh/ssh_host_dsa_key -#HostKey /etc/ssh/ssh_host_ecdsa_key -#HostKey /etc/ssh/ssh_host_ed25519_key - -# Lifetime and size of ephemeral version 1 server key -#KeyRegenerationInterval 1h -#ServerKeyBits 1024 - -# Ciphers and keying -#RekeyLimit default none - -# Logging -# obsoletes QuietMode and FascistLogging -#SyslogFacility AUTH -#LogLevel INFO - -# Authentication: - -#LoginGraceTime 2m -#PermitRootLogin yes -#StrictModes yes -#MaxAuthTries 6 -#MaxSessions 10 - -#RSAAuthentication yes -#PubkeyAuthentication yes - -# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2 -# but this is overridden so installations will only check .ssh/authorized_keys -AuthorizedKeysFile .ssh/authorized_keys - -#AuthorizedPrincipalsFile none - -#AuthorizedKeysCommand none -#AuthorizedKeysCommandUser nobody - -# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts -#RhostsRSAAuthentication no -# similar for protocol version 2 -#HostbasedAuthentication no -# Change to yes if you don't trust ~/.ssh/known_hosts for -# RhostsRSAAuthentication and HostbasedAuthentication -#IgnoreUserKnownHosts no -# Don't read the user's ~/.rhosts and ~/.shosts files -#IgnoreRhosts yes - -# To disable tunneled clear text passwords, change to no here! -#PasswordAuthentication yes -#PermitEmptyPasswords no - -# Change to no to disable s/key passwords -#ChallengeResponseAuthentication yes - -# Kerberos options -#KerberosAuthentication no -#KerberosOrLocalPasswd yes -#KerberosTicketCleanup yes -#KerberosGetAFSToken no - -# GSSAPI options -#GSSAPIAuthentication no -#GSSAPICleanupCredentials yes - -# Set this to 'yes' to enable PAM authentication, account processing, -# and session processing. If this is enabled, PAM authentication will -# be allowed through the ChallengeResponseAuthentication and -# PasswordAuthentication. Depending on your PAM configuration, -# PAM authentication via ChallengeResponseAuthentication may bypass -# the setting of "PermitRootLogin without-password". -# If you just want the PAM account and session checks to run without -# PAM authentication, then enable this but set PasswordAuthentication -# and ChallengeResponseAuthentication to 'no'. -UsePAM yes - -#AllowAgentForwarding yes -#AllowTcpForwarding yes -#GatewayPorts no -#X11Forwarding no -#X11DisplayOffset 10 -#X11UseLocalhost yes -#PermitTTY yes -#PrintMotd yes -#PrintLastLog yes -#TCPKeepAlive yes -#UseLogin no -UsePrivilegeSeparation sandbox # Default for new installations. -PermitUserEnvironment yes -#Compression delayed -#ClientAliveInterval 0 -#ClientAliveCountMax 3 -#UseDNS yes -#PidFile /var/run/sshd.pid -#MaxStartups 10:30:100 -#PermitTunnel no -#ChrootDirectory none -#VersionAddendum none - -# no default banner path -#Banner none - -# override default of no subsystems -Subsystem sftp /usr/lib/openssh/sftp-server - -# Example of overriding settings on a per-user basis -#Match User anoncvs -# X11Forwarding no -# AllowTcpForwarding no -# PermitTTY no -# ForceCommand cvs server - -AcceptEnv LANG LC_* diff --git a/install-files/gnome/manifest b/install-files/gnome/manifest deleted file mode 100644 index d72a5e89..00000000 --- a/install-files/gnome/manifest +++ /dev/null @@ -1,9 +0,0 @@ -0100644 0 0 /etc/securetty -overwrite 0100644 0 0 /etc/ssh/sshd_config -overwrite 0100644 0 0 /etc/pam.d/passwd -overwrite 0100644 0 0 /etc/pam.d/system-auth -overwrite 0100644 0 0 /etc/pam.d/gdm -overwrite 0100644 0 0 /etc/pam.d/gdm-password -overwrite 0100644 0 0 /etc/pam.d/gdm-autologin -overwrite 0100644 0 0 /etc/pam.d/gdm-launch-environment -0100644 0 0 /usr/share/polkit-1/rules.d/geoclue-2.0.rules diff --git a/install-files/gnome/usr/share/polkit-1/rules.d/geoclue-2.0.rules b/install-files/gnome/usr/share/polkit-1/rules.d/geoclue-2.0.rules deleted file mode 100644 index aeb42345..00000000 --- a/install-files/gnome/usr/share/polkit-1/rules.d/geoclue-2.0.rules +++ /dev/null @@ -1,7 +0,0 @@ -polkit.addRule(function(action, subject) { - if ((action.id == "org.freedesktop.ModemManager1.Device.Control" || - action.id == "org.freedesktop.ModemManager1.Location") && - subject.user == "geoclue") { - return polkit.Result.YES; - } -}); diff --git a/install-files/moonshot/boot/m400-1003.dtb b/install-files/moonshot/boot/m400-1003.dtb deleted file mode 100644 index d6fd83ee..00000000 Binary files a/install-files/moonshot/boot/m400-1003.dtb and /dev/null differ diff --git a/install-files/moonshot/manifest b/install-files/moonshot/manifest deleted file mode 100644 index dd80fe49..00000000 --- a/install-files/moonshot/manifest +++ /dev/null @@ -1,2 +0,0 @@ -0040755 0 0 /boot -0100744 0 0 /boot/m400-1003.dtb diff --git a/install-files/openstack/etc/horizon/apache-horizon.conf b/install-files/openstack/etc/horizon/apache-horizon.conf deleted file mode 100644 index ab3cf0c7..00000000 --- a/install-files/openstack/etc/horizon/apache-horizon.conf +++ /dev/null @@ -1,36 +0,0 @@ - - WSGIScriptAlias / /var/lib/horizon/openstack_dashboard/wsgi/django.wsgi - WSGIDaemonProcess horizon user=horizon group=horizon processes=3 threads=10 home=/var/lib/horizon display-name=horizon - WSGIApplicationGroup %{GLOBAL} - - SetEnv APACHE_RUN_USER apache - SetEnv APACHE_RUN_GROUP apache - WSGIProcessGroup horizon - - DocumentRoot /var/lib/horizon/.blackhole - Alias /static /var/lib/horizon/static - - - Require all granted - - - - Options Indexes FollowSymLinks MultiViews - AllowOverride None - # Apache 2.4 uses mod_authz_host for access control now (instead of - # "Allow") - - Order allow,deny - Allow from all - - = 2.4> - Require all granted - - - - ErrorLog /var/log/httpd/horizon_error.log - LogLevel warn - CustomLog /var/log/httpd/horizon_access.log combined - - -WSGISocketPrefix /var/run/httpd diff --git a/install-files/openstack/etc/neutron/dnsmasq-neutron.conf b/install-files/openstack/etc/neutron/dnsmasq-neutron.conf deleted file mode 100644 index d2659481..00000000 --- a/install-files/openstack/etc/neutron/dnsmasq-neutron.conf +++ /dev/null @@ -1,2 +0,0 @@ -# Provide a MTU (DHCP MTU option 26) -dhcp-option-force=26,1454 diff --git a/install-files/openstack/etc/tempest/set_openstack_to_run_tempest.sh b/install-files/openstack/etc/tempest/set_openstack_to_run_tempest.sh deleted file mode 100755 index 8c0b8da3..00000000 --- a/install-files/openstack/etc/tempest/set_openstack_to_run_tempest.sh +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/bash -# -# Copyright ©2015 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, see . -# - - -# This script creates an public image in the admin tenant and -# sets tempest.conf variables for running tests with images involved. -# This is the minimal configuration to run tests for compute (api and services -# tests). -# -# NOTE: the test image will be the following cirros image: -# http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img -# - - -set -e - -# Global variables -admin_filename="admin_env" -admin_test_image="cirros64_img_ref" -image_ref="" - -# Openstack admin credentials -admin_username="admin" -admin_password="veryinsecure" -admin_tenant="admin" - -# Create a file with the environment variables -# required for setting a Openstack admin user in the -# admin tenant. -create_admin_user_env(){ - cat > "$admin_filename" < - -# DEPRECATED. A logging.Formatter log message format string which may -# use any of the available logging.LogRecord attributes. This option -# is deprecated. Please use logging_context_format_string and -# logging_default_format_string instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s -# . (string value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, -# logging will go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. -# (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during -# I, and will change in J to honor RFC5424. (boolean value) -use_syslog = true - -# (Optional) Enables or disables syslog rfc5424 format for logging. If -# enabled, prefixes the MSG part of the syslog message with APP-NAME -# (RFC5424). The format without the APP-NAME is deprecated in I, and -# will be removed in J. (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string -# value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string -# value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. -# (string value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. -# (string value) -#instance_uuid_format = "[instance: %(uuid)s] " - - -[auth] - -# -# From tempest.config -# - -# Path to the yaml file that contains the list of credentials to use -# for running tests. If used when running in parallel you have to make -# sure sufficient credentials are provided in the accounts file. For -# example if no tests with roles are being run it requires at least `2 -# * CONC` distinct accounts configured in the `test_accounts_file`, -# with CONC == the number of concurrent test processes. (string value) -#test_accounts_file = - -# Allows test cases to create/destroy tenants and users. This option -# requires that OpenStack Identity API admin credentials are known. If -# false, isolated test cases and parallel execution, can still be -# achieved configuring a list of test accounts (boolean value) -# Deprecated group/name - [compute]/allow_tenant_isolation -# Deprecated group/name - [orchestration]/allow_tenant_isolation -allow_tenant_isolation = true - -# Roles to assign to all users created by tempest (list value) -#tempest_roles = - -# Only applicable when identity.auth_version is v3.Domain within which -# isolated credentials are provisioned.The default "None" means that -# the domain from theadmin user is used instead. (string value) -#tenant_isolation_domain_name = - - -[baremetal] - -# -# From tempest.config -# - -# Catalog type of the baremetal provisioning service (string value) -#catalog_type = baremetal - -# Whether the Ironic nova-compute driver is enabled (boolean value) -#driver_enabled = false - -# Driver name which Ironic uses (string value) -#driver = fake - -# The endpoint type to use for the baremetal provisioning service -# (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Timeout for Ironic node to completely provision (integer value) -#active_timeout = 300 - -# Timeout for association of Nova instance and Ironic node (integer -# value) -#association_timeout = 30 - -# Timeout for Ironic power transitions. (integer value) -#power_timeout = 60 - -# Timeout for unprovisioning an Ironic node. (integer value) -#unprovision_timeout = 60 - - -[boto] - -# -# From tempest.config -# - -# EC2 URL (string value) -#ec2_url = http://localhost:8773/services/Cloud - -# S3 URL (string value) -#s3_url = http://localhost:8080 - -# AWS Secret Key (string value) -#aws_secret = - -# AWS Access Key (string value) -#aws_access = - -# AWS Zone for EC2 tests (string value) -#aws_zone = nova - -# S3 Materials Path (string value) -#s3_materials_path = /opt/stack/devstack/files/images/s3-materials/cirros-0.3.0 - -# ARI Ramdisk Image manifest (string value) -#ari_manifest = cirros-0.3.0-x86_64-initrd.manifest.xml - -# AMI Machine Image manifest (string value) -#ami_manifest = cirros-0.3.0-x86_64-blank.img.manifest.xml - -# AKI Kernel Image manifest (string value) -#aki_manifest = cirros-0.3.0-x86_64-vmlinuz.manifest.xml - -# Instance type (string value) -#instance_type = m1.tiny - -# boto Http socket timeout (integer value) -#http_socket_timeout = 3 - -# boto num_retries on error (integer value) -#num_retries = 1 - -# Status Change Timeout (integer value) -#build_timeout = 60 - -# Status Change Test Interval (integer value) -#build_interval = 1 - - -[cli] - -# -# From tempest.config -# - -# enable cli tests (boolean value) -enabled = true - -# directory where python client binaries are located (string value) -cli_dir = /usr/bin - -# Whether the tempest run location has access to the *-manage -# commands. In a pure blackbox environment it will not. (boolean -# value) -has_manage = true - -# Number of seconds to wait on a CLI timeout (integer value) -#timeout = 15 - - -[compute] - -# -# From tempest.config -# - -# Valid primary image reference to be used in tests. This is a -# required option (string value) -#image_ref = - -# Valid secondary image reference to be used in tests. This is a -# required option, but if only one image is available duplicate the -# value of image_ref above (string value) -#image_ref_alt = - -# Valid primary flavor to use in tests. (string value) -flavor_ref = 1 - -# Valid secondary flavor to be used in tests. (string value) -flavor_ref_alt = 2 - -# User name used to authenticate to an instance. (string value) -#image_ssh_user = root - -# Password used to authenticate to an instance. (string value) -#image_ssh_password = password - -# User name used to authenticate to an instance using the alternate -# image. (string value) -#image_alt_ssh_user = root - -# Time in seconds between build status checks. (integer value) -build_interval = 1 - -# Timeout in seconds to wait for an instance to build. Other services -# that do not define build_timeout will inherit this value. (integer -# value) -build_timeout = 300 - -# Should the tests ssh to instances? (boolean value) -#run_ssh = false - -# Auth method used for authenticate to the instance. Valid choices -# are: keypair, configured, adminpass and disabled. Keypair: start the -# servers with a ssh keypair. Configured: use the configured user and -# password. Adminpass: use the injected adminPass. Disabled: avoid -# using ssh when it is an option. (string value) -ssh_auth_method = adminpass - -# How to connect to the instance? fixed: using the first ip belongs -# the fixed network floating: creating and using a floating ip. -# (string value) -ssh_connect_method = floating - -# User name used to authenticate to an instance. (string value) -#ssh_user = root - -# Timeout in seconds to wait for ping to succeed. (integer value) -#ping_timeout = 120 - -# The packet size for ping packets originating from remote linux hosts -# (integer value) -#ping_size = 56 - -# The number of ping packets originating from remote linux hosts -# (integer value) -#ping_count = 1 - -# Timeout in seconds to wait for authentication to succeed. (integer -# value) -#ssh_timeout = 300 - -# Additional wait time for clean state, when there is no OS-EXT-STS -# extension available (integer value) -#ready_wait = 0 - -# Timeout in seconds to wait for output from ssh channel. (integer -# value) -#ssh_channel_timeout = 60 - -# Name of the fixed network that is visible to all test tenants. If -# multiple networks are available for a tenant this is the network -# which will be used for creating servers if tempest does not create a -# network or a network is not specified elsewhere. It may be used for -# ssh validation only if floating IPs are disabled. (string value) -#fixed_network_name = - -# Network used for SSH connections. Ignored if -# use_floatingip_for_ssh=true or run_ssh=false. (string value) -#network_for_ssh = public - -# IP version used for SSH connections. (integer value) -ip_version_for_ssh = 4 - -# Does SSH use Floating IPs? (boolean value) -#use_floatingip_for_ssh = true - -# Catalog type of the Compute service. (string value) -catalog_type = compute - -# The compute region name to use. If empty, the value of -# identity.region is used instead. If no such region is found in the -# service catalog, the first found one is used. (string value) -region = regionOne - -# The endpoint type to use for the compute service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# Expected device name when a volume is attached to an instance -# (string value) -volume_device_name = vdb - -# Time in seconds before a shelved instance is eligible for removing -# from a host. -1 never offload, 0 offload when shelved. This time -# should be the same as the time of nova.conf, and some tests will run -# for as long as the time. (integer value) -#shelved_offload_time = 0 - -# Unallocated floating IP range, which will be used to test the -# floating IP bulk feature for CRUD operation. This block must not -# overlap an existing floating IP pool. (string value) -#floating_ip_range = 10.0.0.0/29 - - -[compute-feature-enabled] - -# -# From tempest.config -# - -# If false, skip disk config tests (boolean value) -disk_config = true - -# A list of enabled compute extensions with a special entry all which -# indicates every extension is enabled. Each extension should be -# specified with alias name. Empty list indicates all extensions are -# disabled (list value) -#api_extensions = all - -# Does the test environment support changing the admin password? -# (boolean value) -change_password = false - -# Does the test environment support obtaining instance serial console -# output? (boolean value) -console_output = true - -# Does the test environment support resizing? (boolean value) -resize = false - -# Does the test environment support pausing? (boolean value) -pause = true - -# Does the test environment support shelving/unshelving? (boolean -# value) -shelve = true - -# Does the test environment support suspend/resume? (boolean value) -suspend = true - -# Does the test environment support live migration available? (boolean -# value) -live_migration = false - -# Does the test environment use block devices for live migration -# (boolean value) -block_migration_for_live_migration = false - -# Does the test environment block migration support cinder iSCSI -# volumes. Note, libvirt doesn't support this, see -# https://bugs.launchpad.net/nova/+bug/1398999 (boolean value) -block_migrate_cinder_iscsi = false - -# Enable VNC console. This configuration value should be same as -# [nova.vnc]->vnc_enabled in nova.conf (boolean value) -vnc_console = true - -# Enable Spice console. This configuration value should be same as -# [nova.spice]->enabled in nova.conf (boolean value) -spice_console = false - -# Enable RDP console. This configuration value should be same as -# [nova.rdp]->enabled in nova.conf (boolean value) -rdp_console = false - -# Does the test environment support instance rescue mode? (boolean -# value) -rescue = true - -# Enables returning of the instance password by the relevant server -# API calls such as create, rebuild or rescue. (boolean value) -enable_instance_password = true - -# Does the test environment support dynamic network interface -# attachment? (boolean value) -interface_attach = true - -# Does the test environment support creating snapshot images of -# running instances? (boolean value) -snapshot = true - -# Does the test environment have the ec2 api running? (boolean value) -ec2_api = false - -# Does Nova preserve preexisting ports from Neutron when deleting an -# instance? This should be set to True if testing Kilo+ Nova. (boolean -# value) -preserve_ports = true - - -[dashboard] - -# -# From tempest.config -# - -# Where the dashboard can be found (string value) -dashboard_url = http://{{ CONTROLLER_HOST_ADDRESS }} - -# Login page for the dashboard (string value) -login_url = http://{{ CONTROLLER_HOST_ADDRESS }}/auth/login/ - - -[data_processing] - -# -# From tempest.config -# - -# Catalog type of the data processing service. (string value) -#catalog_type = data_processing - -# The endpoint type to use for the data processing service. (string -# value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - - -[data_processing-feature-enabled] - -# -# From tempest.config -# - -# List of enabled data processing plugins (list value) -#plugins = vanilla,hdp - - -[database] - -# -# From tempest.config -# - -# Catalog type of the Database service. (string value) -#catalog_type = database - -# Valid primary flavor to use in database tests. (string value) -#db_flavor_ref = 1 - -# Current database version to use in database tests. (string value) -#db_current_version = v1.0 - - -[debug] - -# -# From tempest.config -# - -# A regex to determine which requests should be traced. This is a -# regex to match the caller for rest client requests to be able to -# selectively trace calls out of specific classes and methods. It -# largely exists for test development, and is not expected to be used -# in a real deploy of tempest. This will be matched against the -# discovered ClassName:method in the test environment. Expected -# values for this field are: * ClassName:test_method_name - traces -# one test_method * ClassName:setUp(Class) - traces specific setup -# functions * ClassName:tearDown(Class) - traces specific teardown -# functions * ClassName:_run_cleanups - traces the cleanup functions -# If nothing is specified, this feature is not enabled. To trace -# everything specify .* as the regex. (string value) -#trace_requests = - - -[identity] - -# -# From tempest.config -# - -# Catalog type of the Identity service. (string value) -catalog_type = identity - -# Set to True if using self-signed SSL certificates. (boolean value) -#disable_ssl_certificate_validation = false - -# Specify a CA bundle file to use in verifying a TLS (https) server -# certificate. (string value) -#ca_certificates_file = - -# Full URI of the OpenStack Identity API (Keystone), v2 (string value) -uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0/ - -# Full URI of the OpenStack Identity API (Keystone), v3 (string value) -#uri_v3 = - -# Identity API version to be used for authentication for API tests. -# (string value) -auth_version = v2 - -# The identity region name to use. Also used as the other services' -# region name unless they are set explicitly. If no such region is -# found in the service catalog, the first found one is used. (string -# value) -region = RegionOne - -# The endpoint type to use for the identity service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# Username to use for Nova API requests. (string value) -username = {{ NOVA_SERVICE_USER }} - -# Tenant name to use for Nova API requests. (string value) -tenant_name = service - -# Role required to administrate keystone. (string value) -admin_role = admin - -# API key to use when authenticating. (string value) -password = {{ NOVA_SERVICE_PASSWORD }} - -# Domain name for authentication (Keystone V3).The same domain applies -# to user and project (string value) -#domain_name = - -# Username of alternate user to use for Nova API requests. (string -# value) -#alt_username = - -# Alternate user's Tenant name to use for Nova API requests. (string -# value) -#alt_tenant_name = - -# API key to use when authenticating as alternate user. (string value) -#alt_password = - -# Alternate domain name for authentication (Keystone V3).The same -# domain applies to user and project (string value) -#alt_domain_name = - -# Administrative Username to use for Keystone API requests. (string -# value) -admin_username = admin - -# Administrative Tenant name to use for Keystone API requests. (string -# value) -admin_tenant_name = admin - -# API key to use when authenticating as admin. (string value) -admin_password = {{ KEYSTONE_ADMIN_PASSWORD }} - -# Admin domain name for authentication (Keystone V3).The same domain -# applies to user and project (string value) -#admin_domain_name = - - -[identity-feature-enabled] - -# -# From tempest.config -# - -# Does the identity service have delegation and impersonation enabled -# (boolean value) -trust = false - -# Is the v2 identity API enabled (boolean value) -api_v2 = true - -# Is the v3 identity API enabled (boolean value) -api_v3 = false - - -[image] - -# -# From tempest.config -# - -# Catalog type of the Image service. (string value) -catalog_type = image - -# The image region name to use. If empty, the value of identity.region -# is used instead. If no such region is found in the service catalog, -# the first found one is used. (string value) -region = regionOne - -# The endpoint type to use for the image service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# http accessible image (string value) -http_image = http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz - -# Timeout in seconds to wait for an image to become available. -# (integer value) -build_timeout = 300 - -# Time in seconds between image operation status checks. (integer -# value) -build_interval = 1 - - -[image-feature-enabled] - -# -# From tempest.config -# - -# Is the v2 image API enabled (boolean value) -api_v2 = true - -# Is the v1 image API enabled (boolean value) -api_v1 = true - - -[input-scenario] - -# -# From tempest.config -# - -# Matching images become parameters for scenario tests (string value) -image_regex = ^cirros-0.3.1-x86_64-uec$ - -# Matching flavors become parameters for scenario tests (string value) -flavor_regex = ^m1.nano$ - -# SSH verification in tests is skippedfor matching images (string -# value) -#non_ssh_image_regex = ^.*[Ww]in.*$ - -# List of user mapped to regex to matching image names. (string value) -#ssh_user_regex = [["^.*[Cc]irros.*$", "cirros"]] - - -[messaging] - -# -# From tempest.config -# - -# Catalog type of the Messaging service. (string value) -catalog_type = messaging - -# The maximum number of queue records per page when listing queues -# (integer value) -max_queues_per_page = 20 - -# The maximum metadata size for a queue (integer value) -max_queue_metadata = 65536 - -# The maximum number of queue message per page when listing (or) -# posting messages (integer value) -max_messages_per_page = 20 - -# The maximum size of a message body (integer value) -max_message_size = 262144 - -# The maximum number of messages per claim (integer value) -max_messages_per_claim = 20 - -# The maximum ttl for a message (integer value) -max_message_ttl = 1209600 - -# The maximum ttl for a claim (integer value) -max_claim_ttl = 43200 - -# The maximum grace period for a claim (integer value) -max_claim_grace = 43200 - - -[negative] - -# -# From tempest.config -# - -# Test generator class for all negative tests (string value) -test_generator = tempest.common.generator.negative_generator.NegativeTestGenerator - - -[network] - -# -# From tempest.config -# - -# Catalog type of the Neutron service. (string value) -catalog_type = network - -# The network region name to use. If empty, the value of -# identity.region is used instead. If no such region is found in the -# service catalog, the first found one is used. (string value) -region = regionOne - -# The endpoint type to use for the network service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# The cidr block to allocate tenant ipv4 subnets from (string value) -tenant_network_cidr = 192.168.1.0/24 - -# The mask bits for tenant ipv4 subnets (integer value) -tenant_network_mask_bits = 28 - -# The cidr block to allocate tenant ipv6 subnets from (string value) -#tenant_network_v6_cidr = 2003::/48 - -# The mask bits for tenant ipv6 subnets (integer value) -#tenant_network_v6_mask_bits = 64 - -# Whether tenant networks can be reached directly from the test -# client. This must be set to True when the 'fixed' ssh_connect_method -# is selected. (boolean value) -#tenant_networks_reachable = false - -# Id of the public network that provides external connectivity (string -# value) -#public_network_id = - -# Default floating network name. Used to allocate floating IPs when -# neutron is enabled. (string value) -#floating_network_name = - -# Id of the public router that provides external connectivity. This -# should only be used when Neutron's 'allow_overlapping_ips' is set to -# 'False' in neutron.conf. usually not needed past 'Grizzly' release -# (string value) -#public_router_id = - -# Timeout in seconds to wait for network operation to complete. -# (integer value) -build_timeout = 300 - -# Time in seconds between network operation status checks. (integer -# value) -build_interval = 1 - -# List of dns servers which should be used for subnet creation (list -# value) -dns_servers = 8.8.8.8,8.8.4.4 - -# vnic_type to use when Launching instances with pre-configured ports. -# Supported ports are: ['normal','direct','macvtap'] (string value) -# Allowed values: , normal, direct, macvtap -#port_vnic_type = - - -[network-feature-enabled] - -# -# From tempest.config -# - -# Allow the execution of IPv6 tests (boolean value) -ipv6 = false - -# A list of enabled network extensions with a special entry all which -# indicates every extension is enabled. Empty list indicates all -# extensions are disabled (list value) -api_extensions = router - -# Allow the execution of IPv6 subnet tests that use the extended IPv6 -# attributes ipv6_ra_mode and ipv6_address_mode (boolean value) -#ipv6_subnet_attributes = false - -# Does the test environment support changing port admin state (boolean -# value) -#port_admin_state_change = true - - -[object-storage] - -# -# From tempest.config -# - -# Catalog type of the Object-Storage service. (string value) -#catalog_type = object-store - -# The object-storage region name to use. If empty, the value of -# identity.region is used instead. If no such region is found in the -# service catalog, the first found one is used. (string value) -#region = - -# The endpoint type to use for the object-store service. (string -# value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Number of seconds to time on waiting for a container to container -# synchronization complete. (integer value) -#container_sync_timeout = 600 - -# Number of seconds to wait while looping to check the status of a -# container to container synchronization (integer value) -#container_sync_interval = 5 - -# Role to add to users created for swift tests to enable creating -# containers (string value) -#operator_role = Member - -# User role that has reseller admin (string value) -#reseller_admin_role = ResellerAdmin - -# Name of sync realm. A sync realm is a set of clusters that have -# agreed to allow container syncing with each other. Set the same -# realm name as Swift's container-sync-realms.conf (string value) -#realm_name = realm1 - -# One name of cluster which is set in the realm whose name is set in -# 'realm_name' item in this file. Set the same cluster name as Swift's -# container-sync-realms.conf (string value) -#cluster_name = name1 - - -[object-storage-feature-enabled] - -# -# From tempest.config -# - -# A list of the enabled optional discoverable apis. A single entry, -# all, indicates that all of these features are expected to be enabled -# (list value) -#discoverable_apis = all - -# Execute (old style) container-sync tests (boolean value) -#container_sync = true - -# Execute object-versioning tests (boolean value) -#object_versioning = true - -# Execute discoverability tests (boolean value) -#discoverability = true - - -[orchestration] - -# -# From tempest.config -# - -# Catalog type of the Orchestration service. (string value) -#catalog_type = orchestration - -# The orchestration region name to use. If empty, the value of -# identity.region is used instead. If no such region is found in the -# service catalog, the first found one is used. (string value) -#region = - -# The endpoint type to use for the orchestration service. (string -# value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Role required for users to be able to manage stacks (string value) -#stack_owner_role = heat_stack_owner - -# Time in seconds between build status checks. (integer value) -#build_interval = 1 - -# Timeout in seconds to wait for a stack to build. (integer value) -#build_timeout = 1200 - -# Instance type for tests. Needs to be big enough for a full OS plus -# the test workload (string value) -#instance_type = m1.micro - -# Name of existing keypair to launch servers with. (string value) -#keypair_name = - -# Value must match heat configuration of the same name. (integer -# value) -#max_template_size = 524288 - -# Value must match heat configuration of the same name. (integer -# value) -#max_resources_per_stack = 1000 - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -disable_process_locking = false - -# Directory to use for lock files. For security, the specified -# directory should only be writable by the user running the processes -# that need locking. Defaults to environment variable OSLO_LOCK_PATH. -# If external locks are used, a lock path must be set. (string value) -# Deprecated group/name - [DEFAULT]/lock_path -lock_path = /run/lock - - -[scenario] - -# -# From tempest.config -# - -# Directory containing image files (string value) -img_dir = /opt/openstack/images/ - -# Image file name (string value) -# Deprecated group/name - [DEFAULT]/qcow2_img_file -img_file = cirros-0.3.1-x86_64-disk.img - -# Image disk format (string value) -img_disk_format = qcow2 - -# Image container format (string value) -img_container_format = bare - -# AMI image file name (string value) -ami_img_file = cirros-0.3.1-x86_64-blank.img - -# ARI image file name (string value) -ari_img_file = cirros-0.3.1-x86_64-initrd - -# AKI image file name (string value) -aki_img_file = cirros-0.3.1-x86_64-vmlinuz - -# ssh username for the image file (string value) -ssh_user = cirros - -# specifies how many resources to request at once. Used for large -# operations testing. (integer value) -#large_ops_number = 0 - -# DHCP client used by images to renew DCHP lease. If left empty, -# update operation will be skipped. Supported clients: "udhcpc", -# "dhclient" (string value) -# Allowed values: udhcpc, dhclient -#dhcp_client = udhcpc - - -[service_available] - -# -# From tempest.config -# - -# Whether or not cinder is expected to be available (boolean value) -cinder = true - -# Whether or not neutron is expected to be available (boolean value) -neutron = true - -# Whether or not glance is expected to be available (boolean value) -glance = true - -# Whether or not swift is expected to be available (boolean value) -swift = false - -# Whether or not nova is expected to be available (boolean value) -nova = true - -# Whether or not Heat is expected to be available (boolean value) -heat = false - -# Whether or not Ceilometer is expected to be available (boolean -# value) -ceilometer = true - -# Whether or not Horizon is expected to be available (boolean value) -horizon = true - -# Whether or not Sahara is expected to be available (boolean value) -sahara = false - -# Whether or not Ironic is expected to be available (boolean value) -ironic = false - -# Whether or not Trove is expected to be available (boolean value) -trove = false - -# Whether or not Zaqar is expected to be available (boolean value) -zaqar = false - - -[stress] - -# -# From tempest.config -# - -# Directory containing log files on the compute nodes (string value) -#nova_logdir = - -# Maximum number of instances to create during test. (integer value) -#max_instances = 16 - -# Controller host. (string value) -#controller = - -# Controller host. (string value) -#target_controller = - -# ssh user. (string value) -#target_ssh_user = - -# Path to private key. (string value) -#target_private_key_path = - -# regexp for list of log files. (string value) -#target_logfiles = - -# time (in seconds) between log file error checks. (integer value) -#log_check_interval = 60 - -# The number of threads created while stress test. (integer value) -#default_thread_number_per_action = 4 - -# Prevent the cleaning (tearDownClass()) between each stress test run -# if an exception occurs during this run. (boolean value) -#leave_dirty_stack = false - -# Allows a full cleaning process after a stress test. Caution : this -# cleanup will remove every objects of every tenant. (boolean value) -#full_clean_stack = false - - -[telemetry] - -# -# From tempest.config -# - -# Catalog type of the Telemetry service. (string value) -catalog_type = metering - -# The endpoint type to use for the telemetry service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# This variable is used as flag to enable notification tests (boolean -# value) -too_slow_to_test = true - - -[validation] - -# -# From tempest.config -# - -# Default IP type used for validation: -fixed: uses the first IP -# belonging to the fixed network -floating: creates and uses a -# floating IP (string value) -# Allowed values: fixed, floating -connect_method = floating - -# Default authentication method to the instance. Only ssh via keypair -# is supported for now. Additional methods will be handled in a -# separate spec. (string value) -# Allowed values: keypair -auth_method = keypair - -# Default IP version for ssh connections. (integer value) -ip_version_for_ssh = 4 - -# Timeout in seconds to wait for ping to succeed. (integer value) -ping_timeout = 120 - -# Timeout in seconds to wait for the TCP connection to be successful. -# (integer value) -connect_timeout = 60 - -# Timeout in seconds to wait for the ssh banner. (integer value) -ssh_timeout = 300 - - -[volume] - -# -# From tempest.config -# - -# Time in seconds between volume availability checks. (integer value) -#build_interval = 1 - -# Timeout in seconds to wait for a volume to become available. -# (integer value) -#build_timeout = 300 - -# Catalog type of the Volume Service (string value) -catalog_type = volume - -# The volume region name to use. If empty, the value of -# identity.region is used instead. If no such region is found in the -# service catalog, the first found one is used. (string value) -region = regionOne - -# The endpoint type to use for the volume service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -endpoint_type = publicURL - -# Name of the backend1 (must be declared in cinder.conf) (string -# value) -backend1_name = LVM_iSCSI - -# Name of the backend2 (must be declared in cinder.conf) (string -# value) -#backend2_name = BACKEND_2 - -# Backend protocol to target when creating volume types (string value) -storage_protocol = iSCSI - -# Backend vendor to target when creating volume types (string value) -#vendor_name = Open Source - -# Disk format to use when copying a volume to image (string value) -disk_format = raw - -# Default size in GB for volumes created by volumes tests (integer -# value) -volume_size = 1 - - -[volume-feature-enabled] - -# -# From tempest.config -# - -# Runs Cinder multi-backend test (requires 2 backends) (boolean value) -multi_backend = false - -# Runs Cinder volumes backup test (boolean value) -backup = false - -# Runs Cinder volume snapshot test (boolean value) -snapshot = true - -# A list of enabled volume extensions with a special entry all which -# indicates every extension is enabled. Empty list indicates all -# extensions are disabled (list value) -api_extensions = all - -# Is the v1 volume API enabled (boolean value) -api_v1 = true - -# Is the v2 volume API enabled (boolean value) -api_v2 = true - diff --git a/install-files/openstack/manifest b/install-files/openstack/manifest deleted file mode 100644 index 3d9ea2dd..00000000 --- a/install-files/openstack/manifest +++ /dev/null @@ -1,117 +0,0 @@ -0040755 0 0 /etc/neutron -0100644 0 0 /etc/neutron/dnsmasq-neutron.conf -0040755 0 0 /etc/horizon -0100644 0 0 /etc/horizon/apache-horizon.conf -template 0100644 0 0 /etc/tempest/tempest.conf -0100755 0 0 /etc/tempest/set_openstack_to_run_tempest.sh -0040755 0 0 /usr/share/openstack -0100644 0 0 /usr/share/openstack/hosts -0040755 0 0 /usr/share/openstack/ceilometer -0100644 0 0 /usr/share/openstack/ceilometer-config.yml -0100644 0 0 /usr/share/openstack/ceilometer-db.yml -0100644 0 0 /usr/share/openstack/ceilometer/ceilometer.conf -0040755 0 0 /usr/share/openstack/cinder -0100644 0 0 /usr/share/openstack/cinder-config.yml -0100644 0 0 /usr/share/openstack/cinder-db.yml -0100644 0 0 /usr/share/openstack/cinder-lvs.yml -0100644 0 0 /usr/share/openstack/cinder/cinder.conf -0040755 0 0 /usr/share/openstack/extras -0100644 0 0 /usr/share/openstack/extras/00-disable-device.network -0100644 0 0 /usr/share/openstack/extras/60-device-dhcp.network -0100644 0 0 /usr/share/openstack/glance.yml -0040755 0 0 /usr/share/openstack/glance -0100644 0 0 /usr/share/openstack/glance/glance-api.conf -0100644 0 0 /usr/share/openstack/glance/glance-registry.conf -0100644 0 0 /usr/share/openstack/horizon.yml -0040755 0 0 /usr/share/openstack/ironic -0100644 0 0 /usr/share/openstack/ironic.yml -0100644 0 0 /usr/share/openstack/ironic/ironic.conf -0100644 0 0 /usr/share/openstack/iscsi.yml -0100644 0 0 /usr/share/openstack/keystone.yml -0040755 0 0 /usr/share/openstack/keystone -0100644 0 0 /usr/share/openstack/keystone/keystone.conf -0100644 0 0 /usr/share/openstack/network.yml -0040755 0 0 /usr/share/openstack/neutron -0100644 0 0 /usr/share/openstack/neutron-config.yml -0100644 0 0 /usr/share/openstack/neutron-db.yml -0100644 0 0 /usr/share/openstack/neutron/dhcp_agent.ini -0100644 0 0 /usr/share/openstack/neutron/l3_agent.ini -0100644 0 0 /usr/share/openstack/neutron/neutron.conf -0100644 0 0 /usr/share/openstack/neutron/metadata_agent.ini -0040755 0 0 /usr/share/openstack/neutron/plugins/ -0040755 0 0 /usr/share/openstack/neutron/plugins/ml2 -0100644 0 0 /usr/share/openstack/neutron/plugins/ml2/ml2_conf.ini -0040755 0 0 /usr/share/openstack/nova -0100644 0 0 /usr/share/openstack/nova-config.yml -0100644 0 0 /usr/share/openstack/nova-db.yml -0100644 0 0 /usr/share/openstack/nova/nova.conf -0100644 0 0 /usr/share/openstack/nova/nova-compute.conf -0100644 0 0 /usr/share/openstack/openvswitch.yml -0040755 0 0 /usr/share/openstack/postgres -0100644 0 0 /usr/share/openstack/postgres.yml -0100644 0 0 /usr/share/openstack/postgres/pg_hba.conf -0100644 0 0 /usr/share/openstack/postgres/postgresql.conf -0040755 0 0 /usr/share/openstack/rabbitmq -0100644 0 0 /usr/share/openstack/rabbitmq/rabbitmq-env.conf -0100644 0 0 /usr/share/openstack/rabbitmq/rabbitmq.config -0040755 0 0 /usr/lib/sysctl.d -0100644 0 0 /usr/lib/sysctl.d/neutron.conf -0100644 0 0 /usr/lib/systemd/system/apache-httpd.service -0100644 0 0 /usr/lib/systemd/system/iscsi-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-keystone.service -0100644 0 0 /usr/lib/systemd/system/openstack-keystone-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-glance-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-glance-api.service -0100644 0 0 /usr/lib/systemd/system/openstack-glance-registry.service -0100644 0 0 /usr/lib/systemd/system/openstack-horizon-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-ironic-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-ironic-api.service -0100644 0 0 /usr/lib/systemd/system/openstack-ironic-conductor.service -0100644 0 0 /usr/lib/systemd/system/openstack-network-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-config-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-db-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-server.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-metadata-agent.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-plugin-openvswitch-agent.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-ovs-cleanup.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-dhcp-agent.service -0100644 0 0 /usr/lib/systemd/system/openstack-neutron-l3-agent.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-config-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-db-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-compute.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-conductor.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-api.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-scheduler.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-consoleauth.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-novncproxy.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-cert.service -0100644 0 0 /usr/lib/systemd/system/openstack-nova-serialproxy.service -0100644 0 0 /usr/lib/systemd/system/rabbitmq-server.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-config-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-db-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-lv-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-api.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-scheduler.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-volume.service -0100644 0 0 /usr/lib/systemd/system/openstack-cinder-backup.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-config-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-db-setup.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-alarm-evaluator.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-alarm-notifier.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-api.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-central.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-collector.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-compute.service -0100644 0 0 /usr/lib/systemd/system/openstack-ceilometer-notification.service -0100644 0 0 /usr/lib/systemd/system/openvswitch-setup.service -0100644 0 0 /usr/lib/systemd/system/openvswitch-db-server.service -0100644 0 0 /usr/lib/systemd/system/openvswitch.service -0100644 0 0 /usr/lib/systemd/system/postgres-server.service -0100644 0 0 /usr/lib/systemd/system/postgres-server-setup.service -0100644 0 0 /usr/share/openstack/swift-controller.yml -0100644 0 0 /usr/lib/systemd/system/swift-controller-setup.service -0100644 0 0 /usr/lib/systemd/system/swift-proxy.service -0040755 0 0 /usr/share/swift -0040755 0 0 /usr/share/swift/etc -0040755 0 0 /usr/share/swift/etc/swift -0100644 0 0 /usr/share/swift/etc/swift/proxy-server.j2 diff --git a/install-files/openstack/usr/lib/sysctl.d/neutron.conf b/install-files/openstack/usr/lib/sysctl.d/neutron.conf deleted file mode 100644 index 644ca116..00000000 --- a/install-files/openstack/usr/lib/sysctl.d/neutron.conf +++ /dev/null @@ -1,3 +0,0 @@ -# Disable rp filtering, enabling forwarding is handled by networkd -net.ipv4.conf.all.rp_filter=0 -net.ipv4.conf.default.rp_filter=0 diff --git a/install-files/openstack/usr/lib/systemd/system/apache-httpd.service b/install-files/openstack/usr/lib/systemd/system/apache-httpd.service deleted file mode 100644 index e2a840c6..00000000 --- a/install-files/openstack/usr/lib/systemd/system/apache-httpd.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Apache Web Server -After=network.target remote-fs.target nss-lookup.target -Wants=network.target - -[Service] -Type=forking -PIDFile=/var/run/httpd.pid -ExecStart=/usr/sbin/apachectl start -ExecStop=/usr/sbin/apachectl graceful-stop -ExecReload=/usr/sbin/apachectl graceful -PrivateTmp=true -LimitNOFILE=infinity - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/iscsi-setup.service b/install-files/openstack/usr/lib/systemd/system/iscsi-setup.service deleted file mode 100644 index 4cb10045..00000000 --- a/install-files/openstack/usr/lib/systemd/system/iscsi-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run iscsi-setup Ansible scripts -Before=iscsid.service target.service -Wants=iscsid.service target.service - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/iscsi.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-evaluator.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-evaluator.service deleted file mode 100644 index 6e3ada59..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-evaluator.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer alarm evaluation service -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-alarm-evaluator --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-notifier.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-notifier.service deleted file mode 100644 index 7a3e1c91..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-alarm-notifier.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer alarm notification service -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-alarm-notifier --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-api.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-api.service deleted file mode 100644 index eb0293bf..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer API service -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-api --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-central.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-central.service deleted file mode 100644 index a1bc11ee..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-central.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer central agent -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service openstack-ceilometer-collector.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-agent-central --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-collector.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-collector.service deleted file mode 100644 index dafc3ac7..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-collector.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer collection service -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-collector --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-compute.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-compute.service deleted file mode 100644 index 9fe8a1e6..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-compute.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer compute agent -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-agent-compute --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-config-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-config-setup.service deleted file mode 100644 index c3e809d7..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-config-setup.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run ceilometer-config-setup Ansible scripts -ConditionPathExists=/etc/openstack/ceilometer.conf - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/ceilometer-config.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-db-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-db-setup.service deleted file mode 100644 index 7a785227..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-db-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run ceilometer-db-setup Ansible scripts -ConditionPathExists=/etc/openstack/ceilometer.conf -After=network-online.target postgres-server-setup.service openstack-keystone-setup.service openstack-ceilometer-config-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/ceilometer-db.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-notification.service b/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-notification.service deleted file mode 100644 index 6696116e..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ceilometer-notification.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack ceilometer notification agent -ConditionPathExists=/etc/ceilometer/ceilometer.conf -After=network-online.target openstack-ceilometer-config-setup.service openstack-ceilometer-db-setup.service openstack-ceilometer-collector.service -Wants=network-online.target - -[Service] -Type=simple -User=ceilometer -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ceilometer-agent-notification --config-file /etc/ceilometer/ceilometer.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-api.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-api.service deleted file mode 100644 index a284f31d..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Volume Service (code-named Cinder) API server -ConditionPathExists=/etc/cinder/cinder.conf -After=network-online.target openstack-cinder-config-setup.service openstack-cinder-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=cinder -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/cinder-api --config-file /etc/cinder/cinder.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-backup.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-backup.service deleted file mode 100644 index c14e13aa..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-backup.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Cinder backup server -ConditionPathExists=/etc/cinder/cinder.conf -After=network-online.target openstack-cinder-config-setup.service openstack-cinder-db-setup.service openstack-cinder-volume.service -Wants=network-online.target - -[Service] -Type=simple -User=cinder -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/cinder-backup --config-file /etc/cinder/cinder.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-config-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-config-setup.service deleted file mode 100644 index 1c966933..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-config-setup.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run cinder-config-setup Ansible scripts -ConditionPathExists=/etc/openstack/cinder.conf - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/cinder-config.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-db-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-db-setup.service deleted file mode 100644 index a3c66d67..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-db-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run cinder-db-setup Ansible scripts -ConditionPathExists=/etc/openstack/cinder.conf -After=network-online.target postgres-server-setup.service openstack-keystone-setup.service openstack-cinder-config-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/cinder-db.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-lv-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-lv-setup.service deleted file mode 100644 index 82e9b08d..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-lv-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run cinder-lvs-setup Ansible scripts -ConditionPathExists=/etc/openstack/cinder.conf -Wants=lvm2-lvmetad.service - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/cinder-lvs.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-scheduler.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-scheduler.service deleted file mode 100644 index f205aaff..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-scheduler.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Cinder scheduler server -ConditionPathExists=/etc/cinder/cinder.conf -After=network-online.target openstack-cinder-config-setup.service openstack-cinder-db-setup.service openstack-cinder-volume.service -Wants=network-online.target - -[Service] -Type=simple -User=cinder -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/cinder-scheduler --config-file /etc/cinder/cinder.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-volume.service b/install-files/openstack/usr/lib/systemd/system/openstack-cinder-volume.service deleted file mode 100644 index a5b7fe85..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-cinder-volume.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Cinder volume server -ConditionPathExists=/etc/cinder/cinder.conf -After=network-online.target openstack-cinder-config-setup.service openstack-cinder-db-setup.service openstack-cinder-lv-setup.service lvm2-lvmetad.service iscsid.service target.service -Requisite=openstack-cinder-lv-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=cinder -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/cinder-volume --config-file /etc/cinder/cinder.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-glance-api.service b/install-files/openstack/usr/lib/systemd/system/openstack-glance-api.service deleted file mode 100644 index 4c34ff10..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-glance-api.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Image Service (code-named Glance) API server -ConditionPathExists=/etc/glance/glance-api.conf -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=glance -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/glance-api --config-file /etc/glance/glance-api.conf - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-glance-registry.service b/install-files/openstack/usr/lib/systemd/system/openstack-glance-registry.service deleted file mode 100644 index d53c8b33..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-glance-registry.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Image Service (code-named Glance) Registry server -ConditionPathExists=/etc/glance/glance-registry.conf -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=glance -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/glance-registry --config-file /etc/glance/glance-registry.conf - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-glance-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-glance-setup.service deleted file mode 100644 index 43810797..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-glance-setup.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run glance-setup Ansible scripts -ConditionPathExists=/etc/openstack/glance.conf -After=local-fs.target network-online.target postgres-server-setup.service openstack-keystone-setup.service -Wants=network-online.target - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/glance.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-horizon-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-horizon-setup.service deleted file mode 100644 index 9ec3197a..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-horizon-setup.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Run horizon-setup Ansible scripts -After=local-fs.target -Before=apache-httpd.service - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/horizon.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-api.service b/install-files/openstack/usr/lib/systemd/system/openstack-ironic-api.service deleted file mode 100644 index 5a286a95..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-api.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Bare Metal Provisioning Service (code-named Ironic) API server -ConditionPathExists=/etc/ironic/ironic.conf -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=ironic -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ironic-api --config-file /etc/ironic/ironic.conf - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-conductor.service b/install-files/openstack/usr/lib/systemd/system/openstack-ironic-conductor.service deleted file mode 100644 index b3b226e0..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-conductor.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Bare Metal Provisioning Service (code-named Ironic) Conductor server -ConditionPathExists=/etc/ironic/ironic.conf -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=ironic -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/ironic-conductor --config-file /etc/ironic/ironic.conf - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-ironic-setup.service deleted file mode 100644 index e3a58eb5..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-ironic-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run ironic-setup Ansible scripts -ConditionPathExists=/etc/openstack/ironic.conf -After=local-fs.target network-online.target postgres-server-setup.service openstack-keystone-setup.service -Wants=network-online.target - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/ironic.yml - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-keystone-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-keystone-setup.service deleted file mode 100644 index db9d0b2b..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-keystone-setup.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Run keystone-setup Ansible scripts -ConditionPathExists=/etc/openstack/keystone.conf -After=local-fs.target network-online.target postgres-server-setup.service -Wants=network-online.target - -[Service] -# Oneshot, since others setup have to wait until this service finishes -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/keystone.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-keystone.service b/install-files/openstack/usr/lib/systemd/system/openstack-keystone.service deleted file mode 100644 index 6f6ff644..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-keystone.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Identity Service (code-named Keystone) -ConditionPathExists=/etc/keystone/keystone.conf -After=network-online.target -Wants=network-online.target - -[Service] -Type=notify -Restart=always -User=keystone -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/keystone-all --config-file /etc/keystone/keystone.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-network-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-network-setup.service deleted file mode 100644 index 021370d9..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-network-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run Ansible scripts to configure internal network for OpenStack -After=openvswitch-setup.service openvswitch.service -Before=systemd-networkd.service - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/network.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-config-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-config-setup.service deleted file mode 100644 index b74f44ab..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-config-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run neutron-config-setup Ansible scripts -ConditionPathExists=/etc/openstack/neutron.conf -After=network-online.target openstack-keystone-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/neutron-config.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-db-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-db-setup.service deleted file mode 100644 index 5d07da2e..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-db-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run neutron-db-setup Ansible scripts -ConditionPathExists=/etc/openstack/neutron.conf -After=network-online.target postgres-server-setup.service openstack-keystone-setup.service openstack-neutron-config-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/neutron-db.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-dhcp-agent.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-dhcp-agent.service deleted file mode 100644 index 9080f3c1..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-dhcp-agent.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron DHCP Agent -ConditionPathExists=/etc/neutron/neutron.conf -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service openstack-neutron-ovs-cleanup.service -Wants=network-online.target - -[Service] -Type=simple -User=neutron -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/neutron-dhcp-agent \ - --config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/dhcp_agent.ini - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-l3-agent.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-l3-agent.service deleted file mode 100644 index 72cd1651..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-l3-agent.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron Layer 3 Agent -ConditionPathExists=/etc/neutron/neutron.conf -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service openstack-neutron-ovs-cleanup.service -Wants=network-online.target - -[Service] -Type=simple -User=neutron -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/neutron-l3-agent \ - --config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/l3_agent.ini - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-metadata-agent.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-metadata-agent.service deleted file mode 100644 index 20540e4c..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-metadata-agent.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron Metadata Plugin Agent -ConditionPathExists=/etc/neutron/neutron.conf -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=neutron -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/neutron-metadata-agent \ - --config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/metadata_agent.ini - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-ovs-cleanup.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-ovs-cleanup.service deleted file mode 100644 index f5709028..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-ovs-cleanup.service +++ /dev/null @@ -1,18 +0,0 @@ -[Unit] -Description=Neutron OVS cleanup -ConditionPathExists=/etc/neutron/neutron.conf -ConditionFileIsExecutable=/usr/bin/neutron-ovs-cleanup -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service openvswitch.service -Before=openstack-neutron-plugin-openvswitch-agent.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -StandardOutput=null -StandardError=null -User=neutron -ExecStart=/usr/bin/neutron-ovs-cleanup --config-file /etc/neutron/neutron.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-plugin-openvswitch-agent.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-plugin-openvswitch-agent.service deleted file mode 100644 index 6c579a62..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-plugin-openvswitch-agent.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron OpenvSwitch Plugin Agent -ConditionPathExists=/etc/neutron/neutron.conf -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=neutron -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/neutron-openvswitch-agent \ - --config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-server.service b/install-files/openstack/usr/lib/systemd/system/openstack-neutron-server.service deleted file mode 100644 index 6376c3d8..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-neutron-server.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron Api Server -ConditionPathExists=/etc/neutron/neutron.conf -After=network-online.target openstack-neutron-config-setup.service openstack-neutron-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=neutron -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/neutron-server \ - --config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-api.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-api.service deleted file mode 100644 index 521353db..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Compute Service (code-named Nova) API server -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-api --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-cert.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-cert.service deleted file mode 100644 index b3733816..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-cert.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Cert -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-cert --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-compute.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-compute.service deleted file mode 100644 index 4f9b8196..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-compute.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Compute Service (code-named Nova) compute server -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service libvirtd.service -Wants=network-online.target -Requires=libvirtd.service - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-compute --config-file /etc/nova/nova.conf --config-file /etc/nova/nova-compute.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-conductor.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-conductor.service deleted file mode 100644 index 4c0d7d43..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-conductor.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Database-access support for Compute nodes (nova-conductor) -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service libvirtd.service -Wants=network-online.target -Requires=libvirtd.service - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-conductor --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service deleted file mode 100644 index df669aa9..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run nova-config-setup Ansible scripts -ConditionPathExists=/etc/openstack/nova.conf - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/nova-config.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service deleted file mode 100644 index e22780a9..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=Openstack Console Auth (nova-consoleauth) -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-consoleauth --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service deleted file mode 100644 index 8e004327..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run nova-db-setup Ansible scripts -ConditionPathExists=/etc/openstack/nova.conf -After=network-online.target postgres-server-setup.service openstack-keystone-setup.service openstack-nova-config-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/nova-db.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service deleted file mode 100644 index 8cbb20fd..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova NoVNC proxy -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-novncproxy --config-file /etc/nova/nova.conf --web /usr/share/novnc - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service deleted file mode 100644 index e89f0d3e..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Scheduler -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-scheduler --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service b/install-files/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service deleted file mode 100644 index 30af8305..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Serial Proxy -ConditionPathExists=/etc/nova/nova.conf -After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service -Wants=network-online.target - -[Service] -Type=simple -User=nova -StandardOutput=null -StandardError=null -ExecStart=/usr/bin/nova-serialproxy --config-file /etc/nova/nova.conf - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openvswitch-db-server.service b/install-files/openstack/usr/lib/systemd/system/openvswitch-db-server.service deleted file mode 100644 index 34a7c812..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openvswitch-db-server.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Open vSwitch Database Server Daemon -After=local-fs.target - -[Service] -Type=forking -ExecStartPre=-/usr/bin/mkdir -p /var/run/openvswitch -ExecStart=/usr/sbin/ovsdb-server --remote=punix:/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --private-key=db:Open_vSwitch,SSL,private_key --certificate=db:Open_vSwitch,SSL,certificate --bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert --pidfile --detach - -[Install] -WantedBy=multi-user.target - diff --git a/install-files/openstack/usr/lib/systemd/system/openvswitch-setup.service b/install-files/openstack/usr/lib/systemd/system/openvswitch-setup.service deleted file mode 100644 index 8393ebbc..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openvswitch-setup.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Run openvswitch-setup Ansible scripts -After=local-fs.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -i /usr/share/openstack/hosts /usr/share/openstack/openvswitch.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/openvswitch.service b/install-files/openstack/usr/lib/systemd/system/openvswitch.service deleted file mode 100644 index 113911f6..00000000 --- a/install-files/openstack/usr/lib/systemd/system/openvswitch.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Open vSwitch Daemon -Before=network-pre.target -Wants=network-pre.target - -[Service] -Type=forking -ExecStartPre=-/usr/bin/mkdir -p /var/run/openvswitch -ExecStart=/usr/sbin/ovs-vswitchd --pidfile --detach - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/postgres-server-setup.service b/install-files/openstack/usr/lib/systemd/system/postgres-server-setup.service deleted file mode 100644 index 202c0636..00000000 --- a/install-files/openstack/usr/lib/systemd/system/postgres-server-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run postgres-setup Ansible scripts -ConditionPathExists=/etc/openstack/postgres.conf -After=local-fs.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -i /usr/share/openstack/hosts /usr/share/openstack/postgres.yml - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/postgres-server.service b/install-files/openstack/usr/lib/systemd/system/postgres-server.service deleted file mode 100644 index 9e11f26d..00000000 --- a/install-files/openstack/usr/lib/systemd/system/postgres-server.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=PostgreSQL database server -After=network-online.target -Wants=network-online.target - -[Service] -Type=forking -TimeoutSec=120 -User=postgres -Group=postgres - -Environment=PGROOT=/var/lib/pgsql - -SyslogIdentifier=postgres -PIDFile=/var/lib/pgsql/data/postmaster.pid - -ExecStart=/usr/bin/pg_ctl -s -D ${PGROOT}/data start -w -t 120 -ExecReload=/usr/bin/pg_ctl -s -D ${PGROOT}/data reload -ExecStop=/usr/bin/pg_ctl -s -D ${PGROOT}/data stop -m fast - -# Due to PostgreSQL's use of shared memory, OOM killer is often overzealous in -# killing Postgres, so adjust it downward -OOMScoreAdjust=-200 - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/rabbitmq-server.service b/install-files/openstack/usr/lib/systemd/system/rabbitmq-server.service deleted file mode 100644 index 1a20f3e4..00000000 --- a/install-files/openstack/usr/lib/systemd/system/rabbitmq-server.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=RabbitMQ broker -After=network-online.target -Wants=network-online.target - -[Service] -Type=notify -User=rabbitmq -Group=rabbitmq -Environment=HOME=/var/lib/rabbitmq -WorkingDirectory=/var/lib/rabbitmq -ExecStart=/usr/sbin/rabbitmq-server -ExecStop=/usr/sbin/rabbitmqctl stop - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/swift-controller-setup.service b/install-files/openstack/usr/lib/systemd/system/swift-controller-setup.service deleted file mode 100644 index ccfbcbe6..00000000 --- a/install-files/openstack/usr/lib/systemd/system/swift-controller-setup.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Run swift-controller-setup (once) -After=local-fs.target network-online.target postgres-server-setup.service openstack-keystone-setup.service -Wants=network-online.target - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/swift-controller.yml -Restart=no - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/lib/systemd/system/swift-proxy.service b/install-files/openstack/usr/lib/systemd/system/swift-proxy.service deleted file mode 100644 index 7b0a2e17..00000000 --- a/install-files/openstack/usr/lib/systemd/system/swift-proxy.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=OpenStack Swift Proxy Server -After=network-online.target swift-controller-setup.service memcached.service -Wants=network-online.target - -[Service] -Type=forking -PIDFile=/var/run/swift/proxy-server.pid -Restart=on-failure -ExecStart=/usr/bin/swift-init proxy-server start -ExecStop=/usr/bin/swift-init proxy-server stop - -[Install] -WantedBy=multi-user.target diff --git a/install-files/openstack/usr/share/openstack/ceilometer-config.yml b/install-files/openstack/usr/share/openstack/ceilometer-config.yml deleted file mode 100644 index 9850d84d..00000000 --- a/install-files/openstack/usr/share/openstack/ceilometer-config.yml +++ /dev/null @@ -1,36 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/ceilometer.conf" - tasks: -# Configure ceilometer - - name: Create the ceilometer user. - user: - name: ceilometer - comment: Openstack Ceilometer Daemons - shell: /sbin/nologin - home: /var/lib/ceilometer - - - name: Create the /var folders for ceilometer - file: - path: "{{ item }}" - state: directory - owner: ceilometer - group: ceilometer - with_items: - - /var/run/ceilometer - - /var/lock/ceilometer - - /var/log/ceilometer - - /var/lib/ceilometer - - - name: Create /etc/ceilometer directory - file: - path: /etc/ceilometer - state: directory - - - name: Add the configuration needed for ceilometer in /etc/ceilometer using templates - template: - src: /usr/share/openstack/ceilometer/{{ item }} - dest: /etc/ceilometer/{{ item }} - with_lines: - - cd /usr/share/openstack/ceilometer && find -type f diff --git a/install-files/openstack/usr/share/openstack/ceilometer-db.yml b/install-files/openstack/usr/share/openstack/ceilometer-db.yml deleted file mode 100644 index 46a929bc..00000000 --- a/install-files/openstack/usr/share/openstack/ceilometer-db.yml +++ /dev/null @@ -1,50 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/ceilometer.conf" - tasks: - - name: Create ceilometer service user in service tenant - keystone_user: - user: "{{ CEILOMETER_SERVICE_USER }}" - password: "{{ CEILOMETER_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Assign admin role to ceilometers service user in the service tenant - keystone_user: - role: admin - user: "{{ CEILOMETER_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add ceilometer endpoint - keystone_service: - name: ceilometer - type: metering - description: Openstack Metering Service - publicurl: http://{{ ansible_hostname }}:8777 - internalurl: http://{{ CONTROLLER_HOST_ADDRESS }}:8777 - adminurl: http://{{ CONTROLLER_HOST_ADDRESS }}:8777 - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for ceilometer - postgresql_user: - name: "{{ CEILOMETER_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - password: "{{ CEILOMETER_DB_PASSWORD }}" - sudo: yes - sudo_user: ceilometer - - - name: Create database for ceilometer services - postgresql_db: - name: ceilometer - owner: "{{ CEILOMETER_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - sudo: yes - sudo_user: ceilometer - - - name: Initiate ceilometer database - command: ceilometer-dbsync - sudo: yes - sudo_user: ceilometer diff --git a/install-files/openstack/usr/share/openstack/ceilometer/ceilometer.conf b/install-files/openstack/usr/share/openstack/ceilometer/ceilometer.conf deleted file mode 100644 index b1ad2f47..00000000 --- a/install-files/openstack/usr/share/openstack/ceilometer/ceilometer.conf +++ /dev/null @@ -1,1330 +0,0 @@ -[DEFAULT] - -# -# From ceilometer -# - -auth_strategy = keystone - -# To reduce large requests at same time to Nova or other components -# from different compute agents, shuffle start time of polling task. -# (integer value) -#shuffle_time_before_polling_task = 0 - -# Configuration file for WSGI definition of API. (string value) -api_paste_config = api_paste.ini - -# Number of workers for Ceilometer API server. (integer value) -#api_workers = 1 - -# Polling namespace(s) to be used while resource polling (unknown -# type) -#polling_namespaces = ['compute', 'central'] - -# List of pollsters (or wildcard templates) to be used while polling -# (unknown type) -#pollster_list = [] - -# Exchange name for Nova notifications. (string value) -nova_control_exchange = nova - -# List of metadata prefixes reserved for metering use. (list value) -reserved_metadata_namespace = metering. - -# Limit on length of reserved metadata values. (integer value) -#reserved_metadata_length = 256 - -# List of metadata keys reserved for metering use. And these keys are -# additional to the ones included in the namespace. (list value) -#reserved_metadata_keys = - -# Inspector to use for inspecting the hypervisor layer. (string value) -hypervisor_inspector = libvirt - -# Libvirt domain type. (string value) -# Allowed values: kvm, lxc, qemu, uml, xen -libvirt_type = {{ NOVA_VIRT_TYPE }} - -# Override the default libvirt URI (which is dependent on -# libvirt_type). (string value) -#libvirt_uri = - -# Exchange name for Data Processing notifications. (string value) -#sahara_control_exchange = sahara - -# Dispatcher to process data. (multi valued) -# Deprecated group/name - [collector]/dispatcher -#dispatcher = database - -# Exchange name for Keystone notifications. (string value) -keystone_control_exchange = keystone - -# Number of items to request in each paginated Glance API request -# (parameter used by glancecelient). If this is less than or equal to -# 0, page size is not specified (default value in glanceclient is -# used). (integer value) -#glance_page_size = 0 - -# Exchange name for Glance notifications. (string value) -glance_control_exchange = glance - -# Exchange name for Ironic notifications. (string value) -ironic_exchange = ironic - -# Exchanges name to listen for notifications. (multi valued) -#http_control_exchanges = nova -#http_control_exchanges = glance -#http_control_exchanges = neutron -#http_control_exchanges = cinder - -# Exchange name for Neutron notifications. (string value) -# Deprecated group/name - [DEFAULT]/quantum_control_exchange -neutron_control_exchange = neutron - -# Allow novaclient's debug log output. (boolean value) -#nova_http_log_debug = false - -# Swift reseller prefix. Must be on par with reseller_prefix in proxy- -# server.conf. (string value) -#reseller_prefix = AUTH_ - -# Enable eventlet backdoor. Acceptable values are 0, , and -# :, where 0 results in listening on a random tcp port -# number; results in listening on the specified port number -# (and not enabling backdoor if that port is in use); and -# : results in listening on the smallest unused port -# number within the specified range of port numbers. The chosen port -# is displayed in the service's log file. (string value) -#backdoor_port = - -# Print debugging output (set logging level to DEBUG instead of -# default WARNING level). (boolean value) -#debug = false - -# Print more verbose output (set logging level to INFO instead of -# default WARNING level). (boolean value) -#verbose = false - -# Log output to standard error. (boolean value) -#use_stderr = true - -# The name of a logging configuration file. This file is appended to -# any existing logging configuration files. For details about logging -# configuration files, see the Python logging module documentation. -# (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may -# use any of the available logging.LogRecord attributes. This option -# is deprecated. Please use logging_context_format_string and -# logging_default_format_string instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s -# . (string value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, -# logging will go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. -# (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during -# I, and will change in J to honor RFC5424. (boolean value) -use_syslog = True - -# (Optional) Enables or disables syslog rfc5424 format for logging. If -# enabled, prefixes the MSG part of the syslog message with APP-NAME -# (RFC5424). The format without the APP-NAME is deprecated in I, and -# will be removed in J. (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string -# value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string -# value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. -# (string value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. -# (string value) -#instance_uuid_format = "[instance: %(uuid)s] " - -# Exchange name for Heat notifications (string value) -#heat_control_exchange = heat - -# Configuration file for pipeline definition. (string value) -pipeline_cfg_file = pipeline.yaml - -# Configuration file for event pipeline definition. (string value) -event_pipeline_cfg_file = event_pipeline.yaml - -# Exchange name for DBaaS notifications. (string value) -#trove_control_exchange = trove - -# Exchange name for Messaging service notifications. (string value) -#zaqar_control_exchange = zaqar - -# Source for samples emitted on this instance. (string value) -# Deprecated group/name - [DEFAULT]/counter_source -#sample_source = openstack - -# Name of this node, which must be valid in an AMQP key. Can be an -# opaque identifier. For ZeroMQ only, must be a valid host name, FQDN, -# or IP address. (string value) -#host = noisecell - -# Number of workers for collector service. A single collector is -# enabled by default. (integer value) -#collector_workers = 1 - -# Number of workers for notification service. A single notification -# agent is enabled by default. (integer value) -#notification_workers = 1 - -# Timeout seconds for HTTP requests. Set it to None to disable -# timeout. (integer value) -#http_timeout = 600 - -# DEPRECATED - Database connection string. (string value) -#database_connection = - -# Path to the rootwrap configuration file touse for running commands -# as root (string value) -rootwrap_config = /etc/ceilometer/rootwrap.conf - -# Exchange name for Cinder notifications. (string value) -cinder_control_exchange = cinder - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet -# interface, or IP. The "host" option should point or resolve to this -# address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker = local - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port = 9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. -# Default is unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. -# Must match "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Seconds to wait before a cast expires (TTL). Only supported by -# impl_zmq. (integer value) -#rpc_cast_timeout = 30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq = 300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl = 600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size = 64 - -# Driver or drivers to handle sending notifications. (multi valued) -#notification_driver = - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics = notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full -# configuration. If not set, we fall back to the rpc_backend option -# and driver specific configuration. (string value) -#transport_url = - -# The messaging driver to use, defaults to rabbit. Other drivers -# include qpid and zmq. (string value) -rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be -# overridden by an exchange name specified in the transport_url -# option. (string value) -#control_exchange = openstack - - -[alarm] - -# -# From ceilometer -# - -# SSL Client certificate for REST notifier. (string value) -#rest_notifier_certificate_file = - -# SSL Client private key for REST notifier. (string value) -#rest_notifier_certificate_key = - -# Whether to verify the SSL Server certificate when calling alarm -# action. (boolean value) -#rest_notifier_ssl_verify = true - -# Number of retries for REST notifier (integer value) -#rest_notifier_max_retries = 0 - -# Period of evaluation cycle, should be >= than configured pipeline -# interval for collection of underlying metrics. (integer value) -# Deprecated group/name - [alarm]/threshold_evaluation_interval -#evaluation_interval = 60 - -# The topic that ceilometer uses for alarm notifier messages. (string -# value) -notifier_rpc_topic = alarm_notifier - -# The topic that ceilometer uses for alarm partition coordination -# messages. DEPRECATED: RPC-based partitionedalarm evaluation service -# will be removed in Kilo in favour of the default alarm evaluation -# service using tooz for partitioning. (string value) -#partition_rpc_topic = alarm_partition_coordination - -# URL to Gnocchi. (string value) -#gnocchi_url = http://localhost:8041 - -# Record alarm change events. (boolean value) -#record_history = true - -# Maximum number of alarms defined for a user. (integer value) -#user_alarm_quota = - -# Maximum number of alarms defined for a project. (integer value) -#project_alarm_quota = - -# Driver to use for alarm evaluation service. DEPRECATED: "singleton" -# and "partitioned" alarm evaluator services will be removed in Kilo -# in favour of the default alarm evaluation service using tooz for -# partitioning. (string value) -#evaluation_service = default - - -[api] - -# -# From ceilometer -# - -# The port for the ceilometer API server. (integer value) -# Deprecated group/name - [DEFAULT]/metering_api_port -port = 8777 - -# The listen IP for the ceilometer API server. (string value) -host = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Toggle Pecan Debug Middleware. (boolean value) -#pecan_debug = false - - -[central] - -# -# From ceilometer -# - -# Work-load partitioning group prefix. Use only if you want to run -# multiple polling agents with different config files. For each sub- -# group of the agent pool with the same partitioning_group_prefix a -# disjoint subset of pollsters should be loaded. (string value) -# Deprecated group/name - [central]/partitioning_group_prefix -#partitioning_group_prefix = - - -[collector] - -# -# From ceilometer -# - -# Address to which the UDP socket is bound. Set to an empty string to -# disable. (string value) -#udp_address = 0.0.0.0 - -# Port to which the UDP socket is bound. (integer value) -#udp_port = 4952 - -# Requeue the sample on the collector sample queue when the collector -# fails to dispatch it. This is only valid if the sample come from the -# notifier publisher. (boolean value) -#requeue_sample_on_dispatcher_error = false - -# Requeue the event on the collector event queue when the collector -# fails to dispatch it. (boolean value) -#requeue_event_on_dispatcher_error = false - - -[compute] - -# -# From ceilometer -# - -# Enable work-load partitioning, allowing multiple compute agents to -# be run simultaneously. (boolean value) -#workload_partitioning = false - - -[coordination] - -# -# From ceilometer -# - -# The backend URL to use for distributed coordination. If left empty, -# per-deployment central agent and per-host compute agent won't do -# workload partitioning and will only function correctly if a single -# instance of that service is running. (string value) -#backend_url = - -# Number of seconds between heartbeats for distributed coordination. -# (floating point value) -#heartbeat = 1.0 - -# Number of seconds between checks to see if group membership has -# changed (floating point value) -#check_watchers = 10.0 - - -[database] - -# -# From ceilometer -# - -# Number of seconds that samples are kept in the database for (<= 0 -# means forever). (integer value) -# Deprecated group/name - [database]/time_to_live -#metering_time_to_live = -1 - -# Number of seconds that events are kept in the database for (<= 0 -# means forever). (integer value) -#event_time_to_live = -1 - -# The connection string used to connect to the metering database. (if -# unset, connection is used) (string value) -#metering_connection = - -# The connection string used to connect to the alarm database. (if -# unset, connection is used) (string value) -#alarm_connection = - -# The connection string used to connect to the event database. (if -# unset, connection is used) (string value) -#event_connection = - -# The name of the replica set which is used to connect to MongoDB -# database. If it is set, MongoReplicaSetClient will be used instead -# of MongoClient. (string value) -#mongodb_replica_set = - -# The max length of resources id in DB2 nosql, the value should be -# larger than len(hostname) * 2 as compute node's resource id is -# _. (integer value) -#db2nosql_resource_id_maxlen = 512 - -# -# From oslo.db -# - -# The file name to use with SQLite. (string value) -# Deprecated group/name - [DEFAULT]/sqlite_db -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -# Deprecated group/name - [DEFAULT]/sqlite_synchronous -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. -# (string value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = -connection=postgresql://{{ CEILOMETER_DB_USER }}:{{ CEILOMETER_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/ceilometer - -# The SQLAlchemy connection string to use to connect to the slave -# database. (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including -# the default, overrides any server-set SQL mode. To use whatever SQL -# mode is set by the server configuration, set this to no value. -# Example: mysql_sql_mode= (string value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum number of database connection retries during startup. Set to -# -1 to specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information: 0=None, 100=Everything. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer -# value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection -# lost. (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database -# operation up to db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries -# of a database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before -# error is raised. Set to -1 to specify an infinite retry count. -# (integer value) -#db_max_retries = 20 - - -[dispatcher_file] - -# -# From ceilometer -# - -# Name and the location of the file to record meters. (string value) -#file_path = - -# The max size of the file. (integer value) -#max_bytes = 0 - -# The max number of the files to keep. (integer value) -#backup_count = 0 - - -[event] - -# -# From ceilometer -# - -# Configuration file for event definitions. (string value) -definitions_cfg_file = event_definitions.yaml - -# Drop notifications if no event definition matches. (Otherwise, we -# convert them with just the default traits) (boolean value) -#drop_unmatched_notifications = false - -# Store the raw notification for select priority levels (info and/or -# error). By default, raw details are not captured. (multi valued) -#store_raw = - - -[hardware] - -# -# From ceilometer -# - -# URL scheme to use for hardware nodes. (string value) -#url_scheme = snmp:// - -# SNMPd user name of all nodes running in the cloud. (string value) -#readonly_user_name = ro_snmp_user - -# SNMPd password of all the nodes running in the cloud. (string value) -#readonly_user_password = password - - -[ipmi] - -# -# From ceilometer -# - -# Number of retries upon Intel Node Manager initialization failure -# (integer value) -#node_manager_init_retry = 3 - -# Tolerance of IPMI/NM polling failures before disable this pollster. -# Negative indicates retrying forever. (integer value) -#polling_retry = 3 - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - -# API version of the admin Identity API endpoint. (string value) -#auth_version = - -# Do not handle authorization requests within the middleware, but -# delegate the authorization decision to downstream WSGI components. -# (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. -# (integer value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with -# Identity API Server. (integer value) -#http_request_max_retries = 3 - -# Env key for the swift cache. (string value) -#cache = - -# Required if identity server requires client certificate (string -# value) -#certfile = - -# Required if identity server requires client certificate (string -# value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs -# connections. Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# Directory used to cache files related to PKI tokens. (string value) -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. -# If left undefined, tokens will instead be cached in-process. (list -# value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the -# middleware caches previously-seen tokens for a configurable duration -# (in seconds). Set to -1 to disable caching completely. (integer -# value) -#token_cache_time = 300 - -# Determines the frequency at which the list of revoked tokens is -# retrieved from the Identity service (in seconds). A high number of -# revocation events combined with a low cache duration may -# significantly reduce performance. (integer value) -#revocation_cache_time = 10 - -# (Optional) If defined, indicate whether token data should be -# authenticated or authenticated and encrypted. Acceptable values are -# MAC or ENCRYPT. If MAC, token data is authenticated (with HMAC) in -# the cache. If ENCRYPT, token data is encrypted and authenticated in -# the cache. If the value is not one of these options or empty, -# auth_token will raise an exception on initialization. (string value) -#memcache_security_strategy = - -# (Optional, mandatory if memcache_security_strategy is defined) This -# string is used for key derivation. (string value) -#memcache_secret_key = - -# (Optional) Number of seconds memcached server is considered dead -# before it is tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (Optional) Maximum total number of open connections to every -# memcached server. (integer value) -#memcache_pool_maxsize = 10 - -# (Optional) Socket timeout in seconds for communicating with a -# memcache server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (Optional) Number of seconds a connection to memcached is held -# unused in the pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (Optional) Number of seconds that an operation will wait to get a -# memcache client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (Optional) Use the advanced (eventlet safe) memcache client pool. -# The advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (Optional) Indicate whether to set the X-Service-Catalog header. If -# False, middleware will not ask for service catalog on token -# validation and will not set the X-Service-Catalog header. (boolean -# value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: -# "disabled" to not check token binding. "permissive" (default) to -# validate binding information if the bind type is of a form known to -# the server and ignore it if not. "strict" like "permissive" but if -# the bind type is unknown the token will be rejected. "required" any -# form of token binding is needed to be allowed. Finally the name of a -# binding method that must be present in tokens. (string value) -#enforce_token_bind = permissive - -# If true, the revocation list will be checked for cached tokens. This -# requires that PKI tokens are configured on the identity server. -# (boolean value) -#check_revocations_for_cached = false - -# Hash algorithms to use for hashing PKI tokens. This may be a single -# algorithm or multiple. The algorithms are those supported by Python -# standard hashlib.new(). The hashes will be tried in the order given, -# so put the preferred one first for performance. The result of the -# first hash will be stored in the cache. This will typically be set -# to multiple values only while migrating from a less secure algorithm -# to a more secure one. Once all the old tokens are expired this -# option should be set to a single value for better performance. (list -# value) -#hash_algorithms = md5 - -# Prefix to prepend at the beginning of the path. Deprecated, use -# identity_uri. (string value) -#auth_admin_prefix = - -# Host providing the admin Identity API endpoint. Deprecated, use -# identity_uri. (string value) -#auth_host = 127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use -# identity_uri. (integer value) -#auth_port = 35357 - -# Protocol of the admin Identity API endpoint (http or https). -# Deprecated, use identity_uri. (string value) -#auth_protocol = https - -# Complete admin Identity API endpoint. This should specify the -# unversioned root endpoint e.g. https://localhost:35357/ (string -# value) -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 - -# This option is deprecated and may be removed in a future release. -# Single shared secret with the Keystone configuration used for -# bootstrapping a Keystone installation, or otherwise bypassing the -# normal authentication process. This option should not be used, use -# `admin_user` and `admin_password` instead. (string value) -#admin_token = - -# Service username. (string value) -admin_user = {{ CEILOMETER_SERVICE_USER }} - -# Service user password. (string value) -admin_password = {{ CEILOMETER_SERVICE_PASSWORD }} - -# Service tenant name. (string value) -admin_tenant_name = service - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# Host to locate redis. (string value) -#host = 127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port = 6379 - -# Password for Redis server (optional). (string value) -#password = - - -[matchmaker_ring] - -# -# From oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile = /etc/oslo/matchmaker_ring.json - - -[notification] - -# -# From ceilometer -# - -# Acknowledge message when event persistence fails. (boolean value) -# Deprecated group/name - [collector]/ack_on_event_error -#ack_on_event_error = true - -# Save event details. (boolean value) -# Deprecated group/name - [collector]/store_events -#store_events = false - -# WARNING: Ceilometer historically offered the ability to store events -# as meters. This usage is NOT advised as it can flood the metering -# database and cause performance degradation. This option disables the -# collection of non-metric meters and will be the default behavior in -# Liberty. (boolean value) -#disable_non_metric_meters = false - -# Enable workload partitioning, allowing multiple notification agents -# to be run simultaneously. (boolean value) -#workload_partitioning = false - -# Messaging URLs to listen for notifications. Example: -# transport://user:pass@host1:port[,hostN:portN]/virtual_host -# (DEFAULT/transport_url is used if empty) (multi valued) -#messaging_urls = - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -#disable_process_locking = false - -# Directory to use for lock files. For security, the specified -# directory should only be writable by the user running the processes -# that need locking. Defaults to environment variable OSLO_LOCK_PATH. -# If external locks are used, a lock path must be set. (string value) -# Deprecated group/name - [DEFAULT]/lock_path -#lock_path = - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -#group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -#trace = false - -# CA certificate PEM file for verifing server certificate (string -# value) -# Deprecated group/name - [amqp1]/ssl_ca_file -#ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string -# value) -# Deprecated group/name - [amqp1]/ssl_cert_file -#ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string -# value) -# Deprecated group/name - [amqp1]/ssl_key_file -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -#ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -#allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -#qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -#qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -#qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -#qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -#qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string -# value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -#qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -#qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -#qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -#qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -#qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally -# used by impl_qpid. Version 2 includes some backwards-incompatible -# changes that allow broker federation to work. Users should update -# to version 2 when they are able to take everything down, as it -# requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -#qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are -# TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be -# available on some distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -#kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -#kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -#kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). -# (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -#kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer -# cancel notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -#kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string -# value) -# Deprecated group/name - [DEFAULT]/rabbit_host -rabbit_host = {{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_port -rabbit_port = {{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -#rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -rabbit_userid = {{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -rabbit_password = {{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -#rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. -# (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -#rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -#rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this -# option, you must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -#rabbit_ha_queues = false - -# Number of seconds after which the Rabbit broker is considered down -# if heartbeat's keep-alive fails (0 disables the heartbeat, >0 -# enables it. Enabling heartbeats requires kombu>=3.0.7 and -# amqp>=1.4.0). EXPERIMENTAL (integer value) -#heartbeat_timeout_threshold = 0 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake -# (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -#fake_rabbit = false - - -[oslo_policy] - -# -# From oslo.policy -# - -# The JSON file that defines policies. (string value) -# Deprecated group/name - [DEFAULT]/policy_file -policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. (string -# value) -# Deprecated group/name - [DEFAULT]/policy_default_rule -policy_default_rule = default - -# Directories where policy configuration files are stored. They can be -# relative to any directory in the search path defined by the -# config_dir option, or absolute paths. The file defined by -# policy_file must exist for these directories to be searched. -# Missing or empty directories are ignored. (multi valued) -# Deprecated group/name - [DEFAULT]/policy_dirs -#policy_dirs = policy.d - - -[polling] - -# -# From ceilometer -# - -# Work-load partitioning group prefix. Use only if you want to run -# multiple polling agents with different config files. For each sub- -# group of the agent pool with the same partitioning_group_prefix a -# disjoint subset of pollsters should be loaded. (string value) -# Deprecated group/name - [central]/partitioning_group_prefix -#partitioning_group_prefix = - - -[publisher] - -# -# From ceilometer -# - -# Secret value for signing messages. Set value empty if signing is not -# required to avoid computational overhead. (string value) -# Deprecated group/name - [DEFAULT]/metering_secret -# Deprecated group/name - [publisher_rpc]/metering_secret -# Deprecated group/name - [publisher]/metering_secret -#telemetry_secret = change this for valid signing - - -[publisher_notifier] - -# -# From ceilometer -# - -# The topic that ceilometer uses for metering notifications. (string -# value) -#metering_topic = metering - -# The topic that ceilometer uses for event notifications. (string -# value) -#event_topic = event - -# The driver that ceilometer uses for metering notifications. (string -# value) -# Deprecated group/name - [DEFAULT]/metering_driver -#telemetry_driver = messagingv2 - - -[publisher_rpc] - -# -# From ceilometer -# - -# The topic that ceilometer uses for metering messages. (string value) -# Deprecated group/name - [DEFAULT]/metering_topic -#metering_topic = metering - - -[rgw_admin_credentials] - -# -# From ceilometer -# - -# Access key for Radosgw Admin. (string value) -#access_key = - -# Secret key for Radosgw Admin. (string value) -#secret_key = - - -[service_credentials] - -# -# From ceilometer -# - -# User name to use for OpenStack service access. (string value) -# Deprecated group/name - [DEFAULT]/os_username -os_username = {{ CEILOMETER_SERVICE_USER }} - -# Password to use for OpenStack service access. (string value) -# Deprecated group/name - [DEFAULT]/os_password -os_password = {{ CEILOMETER_SERVICE_PASSWORD }} - -# Tenant ID to use for OpenStack service access. (string value) -# Deprecated group/name - [DEFAULT]/os_tenant_id -#os_tenant_id = - -# Tenant name to use for OpenStack service access. (string value) -# Deprecated group/name - [DEFAULT]/os_tenant_name -os_tenant_name = service - -# Certificate chain for SSL validation. (string value) -#os_cacert = - -# Auth URL to use for OpenStack service access. (string value) -# Deprecated group/name - [DEFAULT]/os_auth_url -os_auth_url = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - -# Region name to use for OpenStack service endpoints. (string value) -# Deprecated group/name - [DEFAULT]/os_region_name -os_region_name = regionOne - -# Type of endpoint in Identity service catalog to use for -# communication with OpenStack services. (string value) -os_endpoint_type = internalURL - -# Disables X.509 certificate validation when an SSL connection to -# Identity Service is established. (boolean value) -#insecure = false - - -[service_types] - -# -# From ceilometer -# - -# Kwapi service type. (string value) -#kwapi = energy - -# Glance service type. (string value) -glance = image - -# Neutron service type. (string value) -neutron = network - -# Nova service type. (string value) -nova = compute - -# Radosgw service type. (string value) -#radosgw = object-store - -# Swift service type. (string value) -#swift = object-store - - -[vmware] - -# -# From ceilometer -# - -# IP address of the VMware Vsphere host. (string value) -#host_ip = - -# Port of the VMware Vsphere host. (integer value) -#host_port = 443 - -# Username of VMware Vsphere. (string value) -#host_username = - -# Password of VMware Vsphere. (string value) -#host_password = - -# Number of times a VMware Vsphere API may be retried. (integer value) -#api_retry_count = 10 - -# Sleep time in seconds for polling an ongoing async task. (floating -# point value) -#task_poll_interval = 0.5 - -# Optional vim service WSDL location e.g -# http:///vimService.wsdl. Optional over-ride to default -# location for bug work-arounds. (string value) -#wsdl_location = - - -[xenapi] - -# -# From ceilometer -# - -# URL for connection to XenServer/Xen Cloud Platform. (string value) -#connection_url = - -# Username for connection to XenServer/Xen Cloud Platform. (string -# value) -#connection_username = root - -# Password for connection to XenServer/Xen Cloud Platform. (string -# value) -#connection_password = - -# Timeout in seconds for XenAPI login. (integer value) -#login_timeout = 10 diff --git a/install-files/openstack/usr/share/openstack/cinder-config.yml b/install-files/openstack/usr/share/openstack/cinder-config.yml deleted file mode 100644 index fd3e2cd0..00000000 --- a/install-files/openstack/usr/share/openstack/cinder-config.yml +++ /dev/null @@ -1,37 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/cinder.conf" - tasks: -# Configure cinder - - name: Create the cinder user. - user: - name: cinder - comment: Openstack Cinder Daemons - shell: /sbin/nologin - home: /var/lib/cinder - - - name: Create the /var folders for cinder - file: - path: "{{ item }}" - state: directory - owner: cinder - group: cinder - with_items: - - /var/run/cinder - - /var/lock/cinder - - /var/log/cinder - - /var/lib/cinder - - /var/lib/cinder/volumes - - - name: Create /etc/cinder directory - file: - path: /etc/cinder - state: directory - - - name: Add the configuration needed for cinder in /etc/cinder using templates - template: - src: /usr/share/openstack/cinder/{{ item }} - dest: /etc/cinder/{{ item }} - with_lines: - - cd /usr/share/openstack/cinder && find -type f diff --git a/install-files/openstack/usr/share/openstack/cinder-db.yml b/install-files/openstack/usr/share/openstack/cinder-db.yml deleted file mode 100644 index 24e4980f..00000000 --- a/install-files/openstack/usr/share/openstack/cinder-db.yml +++ /dev/null @@ -1,59 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/cinder.conf" - tasks: - - name: Create cinder service user in service tenant - keystone_user: - user: "{{ CINDER_SERVICE_USER }}" - password: "{{ CINDER_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Assign admin role to cinder service user in the service tenant - keystone_user: - role: admin - user: "{{ CINDER_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add cinder endpoint - keystone_service: - name: cinder - type: volume - description: Openstack Block Storage - publicurl: 'http://{{ ansible_hostname }}:8776/v1/%(tenant_id)s' - internalurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8776/v1/%(tenant_id)s' - adminurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8776/v1/%(tenant_id)s' - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add cinderv2 endpoint - keystone_service: - name: cinderv2 - type: volumev2 - description: Openstack Block Storage - publicurl: 'http://{{ ansible_hostname }}:8776/v2/%(tenant_id)s' - internalurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8776/v2/%(tenant_id)s' - adminurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8776/v2/%(tenant_id)s' - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for cinder - postgresql_user: - name: "{{ CINDER_DB_USER }}" - password: "{{ CINDER_DB_PASSWORD }}" - sudo: yes - sudo_user: cinder - - - name: Create database for cinder services - postgresql_db: - name: cinder - owner: "{{ CINDER_DB_USER }}" - sudo: yes - sudo_user: cinder - - - name: Initiate cinder database - command: cinder-manage db sync - sudo: yes - sudo_user: cinder diff --git a/install-files/openstack/usr/share/openstack/cinder-lvs.yml b/install-files/openstack/usr/share/openstack/cinder-lvs.yml deleted file mode 100644 index 7a91a306..00000000 --- a/install-files/openstack/usr/share/openstack/cinder-lvs.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/cinder.conf" - tasks: - - name: Check that CINDER_DEVICE exists - stat: - path: "{{ CINDER_DEVICE }}" - register: cinder_device_stats - failed_when: cinder_device_stats.stat.exists == false - - - name: Configure LVM group for cinder - lvg: - vg: cinder-volumes - pvs: "{{ CINDER_DEVICE }}" - - - lineinfile: - dest: /etc/lvm/lvm.conf - regexp: '# filter = \[ \"a\/\.\*/\" \]' - line: ' filter = [ "a|{{ CINDER_DEVICE }}|", "r/.*/" ]' - backrefs: yes diff --git a/install-files/openstack/usr/share/openstack/cinder/cinder.conf b/install-files/openstack/usr/share/openstack/cinder/cinder.conf deleted file mode 100644 index f3e4f11c..00000000 --- a/install-files/openstack/usr/share/openstack/cinder/cinder.conf +++ /dev/null @@ -1,2991 +0,0 @@ -[DEFAULT] - -use_syslog = True - -# -# Options defined in oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet -# interface, or IP. The "host" option should point or resolve -# to this address. (string value) -#rpc_zmq_bind_address=* - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker=local - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port=9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts=1 - -# Maximum number of ingress messages to locally buffer per -# topic. Default is unlimited. (integer value) -#rpc_zmq_topic_backlog= - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir=/var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP -# address. Must match "host" option, if running Nova. (string -# value) -#rpc_zmq_host=cinder - -# Seconds to wait before a cast expires (TTL). Only supported -# by impl_zmq. (integer value) -#rpc_cast_timeout=30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq=300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl=600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size=64 - -# Driver or drivers to handle sending notifications. (multi -# valued) -notification_driver=messagingv2 - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics=notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout=60 - -# A URL representing the messaging driver to use and its full -# configuration. If not set, we fall back to the rpc_backend -# option and driver specific configuration. (string value) -#transport_url= - -# The messaging driver to use, defaults to rabbit. Other -# drivers include qpid and zmq. (string value) -rpc_backend=rabbit - -# The default exchange under which topics are scoped. May be -# overridden by an exchange name specified in the -# transport_url option. (string value) -control_exchange=cinder - - -# -# Options defined in cinder.exception -# - -# Make exception message format errors fatal. (boolean value) -#fatal_exception_format_errors=false - - -# -# Options defined in cinder.quota -# - -# Number of volumes allowed per project (integer value) -#quota_volumes=10 - -# Number of volume snapshots allowed per project (integer -# value) -#quota_snapshots=10 - -# Number of consistencygroups allowed per project (integer -# value) -#quota_consistencygroups=10 - -# Total amount of storage, in gigabytes, allowed for volumes -# and snapshots per project (integer value) -#quota_gigabytes=1000 - -# Number of volume backups allowed per project (integer value) -#quota_backups=10 - -# Total amount of storage, in gigabytes, allowed for backups -# per project (integer value) -#quota_backup_gigabytes=1000 - -# Number of seconds until a reservation expires (integer -# value) -#reservation_expire=86400 - -# Count of reservations until usage is refreshed (integer -# value) -#until_refresh=0 - -# Number of seconds between subsequent usage refreshes -# (integer value) -#max_age=0 - -# Default driver to use for quota checks (string value) -#quota_driver=cinder.quota.DbQuotaDriver - -# Enables or disables use of default quota class with default -# quota. (boolean value) -#use_default_quota_class=true - - -# -# Options defined in cinder.service -# - -# Interval, in seconds, between nodes reporting state to -# datastore (integer value) -#report_interval=10 - -# Interval, in seconds, between running periodic tasks -# (integer value) -#periodic_interval=60 - -# Range, in seconds, to randomly delay when starting the -# periodic task scheduler to reduce stampeding. (Disable by -# setting to 0) (integer value) -#periodic_fuzzy_delay=60 - -# IP address on which OpenStack Volume API listens (string -# value) -#osapi_volume_listen=0.0.0.0 - -# Port on which OpenStack Volume API listens (integer value) -#osapi_volume_listen_port=8776 - -# Number of workers for OpenStack Volume API service. The -# default is equal to the number of CPUs available. (integer -# value) -#osapi_volume_workers= - - -# -# Options defined in cinder.ssh_utils -# - -# Option to enable strict host key checking. When set to -# "True" Cinder will only connect to systems with a host key -# present in the configured "ssh_hosts_key_file". When set to -# "False" the host key will be saved upon first connection and -# used for subsequent connections. Default=False (boolean -# value) -#strict_ssh_host_key_policy=false - -# File containing SSH host keys for the systems with which -# Cinder needs to communicate. OPTIONAL: -# Default=$state_path/ssh_known_hosts (string value) -#ssh_hosts_key_file=$state_path/ssh_known_hosts - - -# -# Options defined in cinder.test -# - -# File name of clean sqlite db (string value) -#sqlite_clean_db=clean.sqlite - - -# -# Options defined in cinder.wsgi -# - -# Maximum line size of message headers to be accepted. -# max_header_line may need to be increased when using large -# tokens (typically those generated by the Keystone v3 API -# with big service catalogs). (integer value) -#max_header_line=16384 - -# Timeout for client connections' socket operations. If an -# incoming connection is idle for this number of seconds it -# will be closed. A value of '0' means wait forever. (integer -# value) -#client_socket_timeout=900 - -# If False, closes the client socket connection explicitly. -# Setting it to True to maintain backward compatibility. -# Recommended setting is set it to False. (boolean value) -#wsgi_keep_alive=true - -# Sets the value of TCP_KEEPALIVE (True/False) for each server -# socket. (boolean value) -#tcp_keepalive=true - -# Sets the value of TCP_KEEPIDLE in seconds for each server -# socket. Not supported on OS X. (integer value) -#tcp_keepidle=600 - -# Sets the value of TCP_KEEPINTVL in seconds for each server -# socket. Not supported on OS X. (integer value) -#tcp_keepalive_interval= - -# Sets the value of TCP_KEEPCNT for each server socket. Not -# supported on OS X. (integer value) -#tcp_keepalive_count= - -# CA certificate file to use to verify connecting clients -# (string value) -#ssl_ca_file= - -# Certificate file to use when starting the server securely -# (string value) -#ssl_cert_file= - -# Private key file to use when starting the server securely -# (string value) -#ssl_key_file= - - -# -# Options defined in cinder.api.common -# - -# The maximum number of items that a collection resource -# returns in a single response (integer value) -#osapi_max_limit=1000 - -# Base URL that will be presented to users in links to the -# OpenStack Volume API (string value) -# Deprecated group/name - [DEFAULT]/osapi_compute_link_prefix -#osapi_volume_base_URL= - - -# -# Options defined in cinder.api.middleware.auth -# - -# Treat X-Forwarded-For as the canonical remote address. Only -# enable this if you have a sanitizing proxy. (boolean value) -#use_forwarded_for=false - - -# -# Options defined in cinder.api.middleware.sizelimit -# - -# Max size for body of a request (integer value) -#osapi_max_request_body_size=114688 - - -# -# Options defined in cinder.api.views.versions -# - -# Public url to use for versions endpoint. The default is -# None, which will use the request's host_url attribute to -# populate the URL base. If Cinder is operating behind a -# proxy, you will want to change this to represent the proxy's -# URL. (string value) -#public_endpoint= - - -# -# Options defined in cinder.backup.chunkeddriver -# - -# Compression algorithm (None to disable) (string value) -#backup_compression_algorithm=zlib - - -# -# Options defined in cinder.backup.driver -# - -# Backup metadata version to be used when backing up volume -# metadata. If this number is bumped, make sure the service -# doing the restore supports the new version. (integer value) -#backup_metadata_version=2 - -# The number of chunks or objects, for which one Ceilometer -# notification will be sent (integer value) -#backup_object_number_per_notification=10 - -# Interval, in seconds, between two progress notifications -# reporting the backup status (integer value) -#backup_timer_interval=120 - - -# -# Options defined in cinder.backup.drivers.ceph -# - -# Ceph configuration file to use. (string value) -#backup_ceph_conf=/etc/ceph/ceph.conf - -# The Ceph user to connect with. Default here is to use the -# same user as for Cinder volumes. If not using cephx this -# should be set to None. (string value) -#backup_ceph_user=cinder - -# The chunk size, in bytes, that a backup is broken into -# before transfer to the Ceph object store. (integer value) -#backup_ceph_chunk_size=134217728 - -# The Ceph pool where volume backups are stored. (string -# value) -#backup_ceph_pool=backups - -# RBD stripe unit to use when creating a backup image. -# (integer value) -#backup_ceph_stripe_unit=0 - -# RBD stripe count to use when creating a backup image. -# (integer value) -#backup_ceph_stripe_count=0 - -# If True, always discard excess bytes when restoring volumes -# i.e. pad with zeroes. (boolean value) -#restore_discard_excess_bytes=true - - -# -# Options defined in cinder.backup.drivers.nfs -# - -# The maximum size in bytes of the files used to hold backups. -# If the volume being backed up exceeds this size, then it -# will be backed up into multiple files. (integer value) -#backup_file_size=1999994880 - -# The size in bytes that changes are tracked for incremental -# backups. backup_swift_object_size has to be multiple of -# backup_swift_block_size. (integer value) -#backup_sha_block_size_bytes=32768 - -# Enable or Disable the timer to send the periodic progress -# notifications to Ceilometer when backing up the volume to -# the backend storage. The default value is True to enable the -# timer. (boolean value) -#backup_enable_progress_timer=true - -# Base dir containing mount point for NFS share. (string -# value) -#backup_mount_point_base=$state_path/backup_mount - -# NFS share in fqdn:path, ipv4addr:path, or "[ipv6addr]:path" -# format. (string value) -#backup_share= - -# Mount options passed to the NFS client. See NFS man page for -# details. (string value) -#backup_mount_options= - -# Custom container to use for backups. (string value) -#backup_container= - - -# -# Options defined in cinder.backup.drivers.swift -# - -# The URL of the Swift endpoint (string value) -#backup_swift_url= - -# Info to match when looking for swift in the service catalog. -# Format is: separated values of the form: -# :: - Only used if -# backup_swift_url is unset (string value) -#swift_catalog_info=object-store:swift:publicURL - -# Swift authentication mechanism (string value) -#backup_swift_auth=per_user - -# Swift authentication version. Specify "1" for auth 1.0, or -# "2" for auth 2.0 (string value) -#backup_swift_auth_version=1 - -# Swift tenant/account name. Required when connecting to an -# auth 2.0 system (string value) -#backup_swift_tenant= - -# Swift user name (string value) -#backup_swift_user= - -# Swift key for authentication (string value) -#backup_swift_key= - -# The default Swift container to use (string value) -#backup_swift_container=volumebackups - -# The size in bytes of Swift backup objects (integer value) -#backup_swift_object_size=52428800 - -# The size in bytes that changes are tracked for incremental -# backups. backup_swift_object_size has to be multiple of -# backup_swift_block_size. (integer value) -#backup_swift_block_size=32768 - -# The number of retries to make for Swift operations (integer -# value) -#backup_swift_retry_attempts=3 - -# The backoff time in seconds between Swift retries (integer -# value) -#backup_swift_retry_backoff=2 - -# Enable or Disable the timer to send the periodic progress -# notifications to Ceilometer when backing up the volume to -# the Swift backend storage. The default value is True to -# enable the timer. (boolean value) -#backup_swift_enable_progress_timer=true - - -# -# Options defined in cinder.backup.drivers.tsm -# - -# Volume prefix for the backup id when backing up to TSM -# (string value) -#backup_tsm_volume_prefix=backup - -# TSM password for the running username (string value) -#backup_tsm_password=password - -# Enable or Disable compression for backups (boolean value) -#backup_tsm_compression=true - - -# -# Options defined in cinder.backup.manager -# - -# Driver to use for backups. (string value) -# Deprecated group/name - [DEFAULT]/backup_service -#backup_driver=cinder.backup.drivers.swift - - -# -# Options defined in cinder.cmd.volume -# - -# Backend override of host value. (string value) -# Deprecated group/name - [DEFAULT]/host -#backend_host= - - -# -# Options defined in cinder.cmd.volume_usage_audit -# - -# If this option is specified then the start time specified is -# used instead of the start time of the last completed audit -# period. (string value) -#start_time= - -# If this option is specified then the end time specified is -# used instead of the end time of the last completed audit -# period. (string value) -#end_time= - -# Send the volume and snapshot create and delete notifications -# generated in the specified period. (boolean value) -#send_actions=false - - -# -# Options defined in cinder.common.config -# - -# File name for the paste.deploy config for cinder-api (string -# value) -api_paste_config=api-paste.ini - -# Top-level directory for maintaining cinder's state (string -# value) -# Deprecated group/name - [DEFAULT]/pybasedir -state_path=/var/lib/cinder - -# IP address of this host (string value) -my_ip={{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Default glance host name or IP (string value) -glance_host={{ CONTROLLER_HOST_ADDRESS }} - -# Default glance port (integer value) -#glance_port=9292 - -# A list of the glance API servers available to cinder -# ([hostname|ip]:port) (list value) -#glance_api_servers=$glance_host:$glance_port - -# Version of the glance API to use (integer value) -#glance_api_version=1 - -# Number retries when downloading an image from glance -# (integer value) -#glance_num_retries=0 - -# Allow to perform insecure SSL (https) requests to glance -# (boolean value) -#glance_api_insecure=false - -# Enables or disables negotiation of SSL layer compression. In -# some cases disabling compression can improve data -# throughput, such as when high network bandwidth is available -# and you use compressed image formats like qcow2. (boolean -# value) -#glance_api_ssl_compression=false - -# Location of ca certificates file to use for glance client -# requests. (string value) -#glance_ca_certificates_file= - -# http/https timeout value for glance operations. If no value -# (None) is supplied here, the glanceclient default value is -# used. (integer value) -#glance_request_timeout= - -# The topic that scheduler nodes listen on (string value) -#scheduler_topic=cinder-scheduler - -# The topic that volume nodes listen on (string value) -#volume_topic=cinder-volume - -# The topic that volume backup nodes listen on (string value) -#backup_topic=cinder-backup - -# DEPRECATED: Deploy v1 of the Cinder API. (boolean value) -#enable_v1_api=true - -# Deploy v2 of the Cinder API. (boolean value) -#enable_v2_api=true - -# Enables or disables rate limit of the API. (boolean value) -#api_rate_limit=true - -# Specify list of extensions to load when using -# osapi_volume_extension option with -# cinder.api.contrib.select_extensions (list value) -#osapi_volume_ext_list= - -# osapi volume extension to load (multi valued) -#osapi_volume_extension=cinder.api.contrib.standard_extensions - -# Full class name for the Manager for volume (string value) -#volume_manager=cinder.volume.manager.VolumeManager - -# Full class name for the Manager for volume backup (string -# value) -#backup_manager=cinder.backup.manager.BackupManager - -# Full class name for the Manager for scheduler (string value) -#scheduler_manager=cinder.scheduler.manager.SchedulerManager - -# Name of this node. This can be an opaque identifier. It is -# not necessarily a host name, FQDN, or IP address. (string -# value) -#host=cinder - -# Availability zone of this node (string value) -#storage_availability_zone=nova - -# Default availability zone for new volumes. If not set, the -# storage_availability_zone option value is used as the -# default for new volumes. (string value) -#default_availability_zone= - -# Default volume type to use (string value) -#default_volume_type= - -# Time period for which to generate volume usages. The options -# are hour, day, month, or year. (string value) -#volume_usage_audit_period=month - -# Path to the rootwrap configuration file to use for running -# commands as root (string value) -rootwrap_config=/etc/cinder/rootwrap.conf - -# Enable monkey patching (boolean value) -#monkey_patch=false - -# List of modules/decorators to monkey patch (list value) -#monkey_patch_modules= - -# Maximum time since last check-in for a service to be -# considered up (integer value) -#service_down_time=60 - -# The full class name of the volume API class to use (string -# value) -#volume_api_class=cinder.volume.api.API - -# The full class name of the volume backup API class (string -# value) -#backup_api_class=cinder.backup.api.API - -# The strategy to use for auth. Supports noauth, keystone, and -# deprecated. (string value) -auth_strategy=keystone - -# A list of backend names to use. These backend names should -# be backed by a unique [CONFIG] group with its options (list -# value) -#enabled_backends= - -# Whether snapshots count against gigabyte quota (boolean -# value) -#no_snapshot_gb_quota=false - -# The full class name of the volume transfer API class (string -# value) -#transfer_api_class=cinder.transfer.api.API - -# The full class name of the volume replication API class -# (string value) -#replication_api_class=cinder.replication.api.API - -# The full class name of the consistencygroup API class -# (string value) -#consistencygroup_api_class=cinder.consistencygroup.api.API - -# OpenStack privileged account username. Used for requests to -# other services (such as Nova) that require an account with -# special rights. (string value) -#os_privileged_user_name= - -# Password associated with the OpenStack privileged account. -# (string value) -#os_privileged_user_password= - -# Tenant name associated with the OpenStack privileged -# account. (string value) -#os_privileged_user_tenant= - - -# -# Options defined in cinder.compute -# - -# The full class name of the compute API class to use (string -# value) -#compute_api_class=cinder.compute.nova.API - - -# -# Options defined in cinder.compute.nova -# - -# Match this value when searching for nova in the service -# catalog. Format is: separated values of the form: -# :: (string value) -#nova_catalog_info=compute:Compute Service:publicURL - -# Same as nova_catalog_info, but for admin endpoint. (string -# value) -#nova_catalog_admin_info=compute:Compute Service:adminURL - -# Override service catalog lookup with template for nova -# endpoint e.g. http://localhost:8774/v2/%(project_id)s -# (string value) -#nova_endpoint_template= - -# Same as nova_endpoint_template, but for admin endpoint. -# (string value) -#nova_endpoint_admin_template= - -# Region name of this node (string value) -#os_region_name= - -# Location of ca certificates file to use for nova client -# requests. (string value) -#nova_ca_certificates_file= - -# Allow to perform insecure SSL requests to nova (boolean -# value) -#nova_api_insecure=false - - -# -# Options defined in cinder.db.api -# - -# Services to be added to the available pool on create -# (boolean value) -#enable_new_services=true - -# Template string to be used to generate volume names (string -# value) -volume_name_template=volume-%s - -# Template string to be used to generate snapshot names -# (string value) -snapshot_name_template=snapshot-%s - -# Template string to be used to generate backup names (string -# value) -backup_name_template=backup-%s - - -# -# Options defined in cinder.db.base -# - -# Driver to use for database access (string value) -#db_driver=cinder.db - - -# -# Options defined in cinder.image.glance -# - -# Default core properties of image (list value) -#glance_core_properties=checksum,container_format,disk_format,image_name,image_id,min_disk,min_ram,name,size - -# A list of url schemes that can be downloaded directly via -# the direct_url. Currently supported schemes: [file]. (list -# value) -#allowed_direct_url_schemes= - - -# -# Options defined in cinder.image.image_utils -# - -# Directory used for temporary storage during image conversion -# (string value) -#image_conversion_dir=$state_path/conversion - - -# -# Options defined in cinder.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , -# and :, where 0 results in listening on a random -# tcp port number; results in listening on the -# specified port number (and not enabling backdoor if that -# port is in use); and : results in listening on -# the smallest unused port number within the specified range -# of port numbers. The chosen port is displayed in the -# service's log file. (string value) -#backdoor_port= - - -# -# Options defined in cinder.openstack.common.periodic_task -# - -# Some periodic tasks can be run in a separate process. Should -# we run them here? (boolean value) -#run_external_periodic_tasks=true - - -# -# Options defined in cinder.openstack.common.policy -# - -# The JSON file that defines policies. (string value) -#policy_file=policy.json - -# Default rule. Enforced when a requested rule is not found. -# (string value) -#policy_default_rule=default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. The -# file defined by policy_file must exist for these directories -# to be searched. Missing or empty directories are ignored. -# (multi valued) -#policy_dirs=policy.d - - -# -# Options defined in cinder.openstack.common.versionutils -# - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - - -# -# Options defined in cinder.scheduler.driver -# - -# The scheduler host manager class to use (string value) -#scheduler_host_manager=cinder.scheduler.host_manager.HostManager - -# Maximum number of attempts to schedule an volume (integer -# value) -#scheduler_max_attempts=3 - - -# -# Options defined in cinder.scheduler.host_manager -# - -# Which filter class names to use for filtering hosts when not -# specified in the request. (list value) -#scheduler_default_filters=AvailabilityZoneFilter,CapacityFilter,CapabilitiesFilter - -# Which weigher class names to use for weighing hosts. (list -# value) -#scheduler_default_weighers=CapacityWeigher - - -# -# Options defined in cinder.scheduler.manager -# - -# Default scheduler driver to use (string value) -#scheduler_driver=cinder.scheduler.filter_scheduler.FilterScheduler - - -# -# Options defined in cinder.scheduler.scheduler_options -# - -# Absolute path to scheduler configuration JSON file. (string -# value) -#scheduler_json_config_location= - - -# -# Options defined in cinder.scheduler.simple -# - -# This configure option has been deprecated along with the -# SimpleScheduler. New scheduler is able to gather capacity -# information for each host, thus setting the maximum number -# of volume gigabytes for host is no longer needed. It's safe -# to remove this configure from cinder.conf. (integer value) -#max_gigabytes=10000 - - -# -# Options defined in cinder.scheduler.weights.capacity -# - -# Multiplier used for weighing volume capacity. Negative -# numbers mean to stack vs spread. (floating point value) -#capacity_weight_multiplier=1.0 - -# Multiplier used for weighing volume capacity. Negative -# numbers mean to stack vs spread. (floating point value) -#allocated_capacity_weight_multiplier=-1.0 - - -# -# Options defined in cinder.scheduler.weights.volume_number -# - -# Multiplier used for weighing volume number. Negative numbers -# mean to spread vs stack. (floating point value) -#volume_number_multiplier=-1.0 - - -# -# Options defined in cinder.transfer.api -# - -# The number of characters in the salt. (integer value) -#volume_transfer_salt_length=8 - -# The number of characters in the autogenerated auth key. -# (integer value) -#volume_transfer_key_length=16 - - -# -# Options defined in cinder.volume.api -# - -# Cache volume availability zones in memory for the provided -# duration in seconds (integer value) -#az_cache_duration=3600 - -# Create volume from snapshot at the host where snapshot -# resides (boolean value) -#snapshot_same_host=true - -# Ensure that the new volumes are the same AZ as snapshot or -# source volume (boolean value) -#cloned_volume_same_az=true - - -# -# Options defined in cinder.volume.driver -# - -# The maximum number of times to rescan iSER targetto find -# volume (integer value) -#num_iser_scan_tries=3 - -# This option is deprecated and unused. It will be removed in -# the Liberty release. (integer value) -#iser_num_targets= - -# Prefix for iSER volumes (string value) -#iser_target_prefix=iqn.2010-10.org.openstack: - -# The IP address that the iSER daemon is listening on (string -# value) -#iser_ip_address=$my_ip - -# The port that the iSER daemon is listening on (integer -# value) -#iser_port=3260 - -# The name of the iSER target user-land tool to use (string -# value) -#iser_helper=tgtadm - -# Number of times to attempt to run flakey shell commands -# (integer value) -#num_shell_tries=3 - -# The percentage of backend capacity is reserved (integer -# value) -#reserved_percentage=0 - -# This option is deprecated and unused. It will be removed in -# the Liberty release. (integer value) -#iscsi_num_targets= - -# Prefix for iSCSI volumes (string value) -#iscsi_target_prefix=iqn.2010-10.org.openstack: - -# The IP address that the iSCSI daemon is listening on (string -# value) -iscsi_ip_address={{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# The list of secondary IP addresses of the iSCSI daemon (list -# value) -#iscsi_secondary_ip_addresses= - -# The port that the iSCSI daemon is listening on (integer -# value) -iscsi_port=3260 - -# The maximum number of times to rescan targets to find volume -# (integer value) -# Deprecated group/name - [DEFAULT]/num_iscsi_scan_tries -#num_volume_device_scan_tries=3 - -# The backend name for a given driver implementation (string -# value) -volume_backend_name=LVM_iSCSI - -# Do we attach/detach volumes in cinder using multipath for -# volume to image and image to volume transfers? (boolean -# value) -#use_multipath_for_image_xfer=false - -# If this is set to True, attachment of volumes for image -# transfer will be aborted when multipathd is not running. -# Otherwise, it will fallback to single path. (boolean value) -#enforce_multipath_for_image_xfer=false - -# Method used to wipe old volumes (string value) -volume_clear=zero - -# Size in MiB to wipe at start of old volumes. 0 => all -# (integer value) -volume_clear_size=50 - -# The flag to pass to ionice to alter the i/o priority of the -# process used to zero a volume after deletion, for example -# "-c3" for idle only priority. (string value) -#volume_clear_ionice= - -# iSCSI target user-land tool to use. tgtadm is default, use -# lioadm for LIO iSCSI support, scstadmin for SCST target -# support, iseradm for the ISER protocol, ietadm for iSCSI -# Enterprise Target, iscsictl for Chelsio iSCSI Target or fake -# for testing. (string value) -iscsi_helper=lioadm - -# Volume configuration file storage directory (string value) -volumes_dir=$state_path/volumes - -# IET configuration file (string value) -#iet_conf=/etc/iet/ietd.conf - -# Chiscsi (CXT) global defaults configuration file (string -# value) -#chiscsi_conf=/etc/chelsio-iscsi/chiscsi.conf - -# This option is deprecated and unused. It will be removed in -# the next release. (string value) -#lio_initiator_iqns= - -# Sets the behavior of the iSCSI target to either perform -# blockio or fileio optionally, auto can be set and Cinder -# will autodetect type of backing device (string value) -#iscsi_iotype=fileio - -# The default block size used when copying/clearing volumes -# (string value) -#volume_dd_blocksize=1M - -# The blkio cgroup name to be used to limit bandwidth of -# volume copy (string value) -#volume_copy_blkio_cgroup_name=cinder-volume-copy - -# The upper limit of bandwidth of volume copy. 0 => unlimited -# (integer value) -#volume_copy_bps_limit=0 - -# Sets the behavior of the iSCSI target to either perform -# write-back(on) or write-through(off). This parameter is -# valid if iscsi_helper is set to tgtadm or iseradm. (string -# value) -#iscsi_write_cache=on - -# Determines the iSCSI protocol for new iSCSI volumes, created -# with tgtadm or lioadm target helpers. In order to enable -# RDMA, this parameter should be set with the value "iser". -# The supported iSCSI protocol values are "iscsi" and "iser". -# (string value) -#iscsi_protocol=iscsi - -# The path to the client certificate key for verification, if -# the driver supports it. (string value) -#driver_client_cert_key= - -# The path to the client certificate for verification, if the -# driver supports it. (string value) -#driver_client_cert= - -# Tell driver to use SSL for connection to backend storage if -# the driver supports it. (boolean value) -#driver_use_ssl=false - -# Float representation of the over subscription ratio when -# thin provisioning is involved. Default ratio is 20.0, -# meaning provisioned capacity can be 20 times of the total -# physical capacity. If the ratio is 10.5, it means -# provisioned capacity can be 10.5 times of the total physical -# capacity. A ratio of 1.0 means provisioned capacity cannot -# exceed the total physical capacity. A ratio lower than 1.0 -# will be ignored and the default value will be used instead. -# (floating point value) -#max_over_subscription_ratio=20.0 - -# Certain ISCSI targets have predefined target names, SCST -# target driver uses this name. (string value) -#scst_target_iqn_name= - -# SCST target implementation can choose from multiple SCST -# target drivers. (string value) -#scst_target_driver=iscsi - -# Option to enable/disable CHAP authentication for targets. -# (boolean value) -# Deprecated group/name - [DEFAULT]/eqlx_use_chap -#use_chap_auth=false - -# CHAP user name. (string value) -# Deprecated group/name - [DEFAULT]/eqlx_chap_login -#chap_username= - -# Password for specified CHAP account name. (string value) -# Deprecated group/name - [DEFAULT]/eqlx_chap_password -#chap_password= - -# Namespace for driver private data values to be saved in. -# (string value) -#driver_data_namespace= - -# String representation for an equation that will be used to -# filter hosts. Only used when the driver filter is set to be -# used by the Cinder scheduler. (string value) -#filter_function= - -# String representation for an equation that will be used to -# determine the goodness of a host. Only used when using the -# goodness weigher is set to be used by the Cinder scheduler. -# (string value) -#goodness_function= - - -# -# Options defined in cinder.volume.drivers.block_device -# - -# List of all available devices (list value) -#available_devices= - - -# -# Options defined in cinder.volume.drivers.cloudbyte.options -# - -# These values will be used for CloudByte storage's addQos API -# call. (dict value) -#cb_add_qosgroup=latency:15,iops:10,graceallowed:false,iopscontrol:true,memlimit:0,throughput:0,tpcontrol:false,networkspeed:0 - -# Driver will use this API key to authenticate against the -# CloudByte storage's management interface. (string value) -#cb_apikey=None - -# CloudByte storage specific account name. This maps to a -# project name in OpenStack. (string value) -#cb_account_name=None - -# This corresponds to the name of Tenant Storage Machine (TSM) -# in CloudByte storage. A volume will be created in this TSM. -# (string value) -#cb_tsm_name=None - -# A retry value in seconds. Will be used by the driver to -# check if volume creation was successful in CloudByte -# storage. (integer value) -#cb_confirm_volume_create_retry_interval=5 - -# Will confirm a successful volume creation in CloudByte -# storage by making this many number of attempts. (integer -# value) -#cb_confirm_volume_create_retries=3 - -# These values will be used for CloudByte storage's -# createVolume API call. (dict value) -#cb_create_volume=compression:off,deduplication:off,blocklength:512B,sync:always,protocoltype:ISCSI,recordsize:16k - - -# -# Options defined in cinder.volume.drivers.datera -# - -# DEPRECATED: This will be removed in the Liberty release. Use -# san_login and san_password instead. This directly sets the -# Datera API token. (string value) -#datera_api_token= - -# Datera API port. (string value) -#datera_api_port=7717 - -# Datera API version. (string value) -#datera_api_version=1 - -# Number of replicas to create of an inode. (string value) -#datera_num_replicas=3 - - -# -# Options defined in cinder.volume.drivers.dell.dell_storagecenter_common -# - -# Storage Center System Serial Number (integer value) -#dell_sc_ssn=64702 - -# Dell API port (integer value) -#dell_sc_api_port=3033 - -# Name of the server folder to use on the Storage Center -# (string value) -#dell_sc_server_folder=openstack - -# Name of the volume folder to use on the Storage Center -# (string value) -#dell_sc_volume_folder=openstack - - -# -# Options defined in cinder.volume.drivers.emc.emc_vmax_common -# - -# use this file for cinder emc plugin config data (string -# value) -#cinder_emc_config_file=/etc/cinder/cinder_emc_config.xml - - -# -# Options defined in cinder.volume.drivers.emc.emc_vnx_cli -# - -# VNX authentication scope type. (string value) -#storage_vnx_authentication_type=global - -# Directory path that contains the VNX security file. Make -# sure the security file is generated first. (string value) -#storage_vnx_security_file_dir= - -# Naviseccli Path. (string value) -#naviseccli_path= - -# Storage pool name. (string value) -#storage_vnx_pool_name= - -# VNX secondary SP IP Address. (string value) -#san_secondary_ip= - -# Default timeout for CLI operations in minutes. For example, -# LUN migration is a typical long running operation, which -# depends on the LUN size and the load of the array. An upper -# bound in the specific deployment can be set to avoid -# unnecessary long wait. By default, it is 365 days long. -# (integer value) -#default_timeout=525600 - -# Default max number of LUNs in a storage group. By default, -# the value is 255. (integer value) -#max_luns_per_storage_group=255 - -# To destroy storage group when the last LUN is removed from -# it. By default, the value is False. (boolean value) -#destroy_empty_storage_group=false - -# Mapping between hostname and its iSCSI initiator IP -# addresses. (string value) -#iscsi_initiators= - -# Automatically register initiators. By default, the value is -# False. (boolean value) -#initiator_auto_registration=false - -# Automatically deregister initiators after the related -# storage group is destroyed. By default, the value is False. -# (boolean value) -#initiator_auto_deregistration=false - -# Report free_capacity_gb as 0 when the limit to maximum -# number of pool LUNs is reached. By default, the value is -# False. (boolean value) -#check_max_pool_luns_threshold=false - -# Delete a LUN even if it is in Storage Groups. (boolean -# value) -#force_delete_lun_in_storagegroup=false - - -# -# Options defined in cinder.volume.drivers.emc.xtremio -# - -# XMS cluster id in multi-cluster environment (string value) -#xtremio_cluster_name= - - -# -# Options defined in cinder.volume.drivers.eqlx -# - -# Group name to use for creating volumes. Defaults to -# "group-0". (string value) -#eqlx_group_name=group-0 - -# Timeout for the Group Manager cli command execution. Default -# is 30. (integer value) -#eqlx_cli_timeout=30 - -# Maximum retry count for reconnection. Default is 5. (integer -# value) -#eqlx_cli_max_retries=5 - -# Use CHAP authentication for targets. Note that this option -# is deprecated in favour of "use_chap_auth" as specified in -# cinder/volume/driver.py and will be removed in next release. -# (boolean value) -#eqlx_use_chap=false - -# Existing CHAP account name. Note that this option is -# deprecated in favour of "chap_username" as specified in -# cinder/volume/driver.py and will be removed in next release. -# (string value) -#eqlx_chap_login=admin - -# Password for specified CHAP account name. Note that this -# option is deprecated in favour of "chap_password" as -# specified in cinder/volume/driver.py and will be removed in -# the next release (string value) -#eqlx_chap_password=password - -# Pool in which volumes will be created. Defaults to -# "default". (string value) -#eqlx_pool=default - - -# -# Options defined in cinder.volume.drivers.glusterfs -# - -# File with the list of available gluster shares (string -# value) -#glusterfs_shares_config=/etc/cinder/glusterfs_shares - -# Create volumes as sparsed files which take no space.If set -# to False volume is created as regular file.In such case -# volume creation takes a lot of time. (boolean value) -#glusterfs_sparsed_volumes=true - -# Create volumes as QCOW2 files rather than raw files. -# (boolean value) -#glusterfs_qcow2_volumes=false - -# Base dir containing mount points for gluster shares. (string -# value) -#glusterfs_mount_point_base=$state_path/mnt - - -# -# Options defined in cinder.volume.drivers.hds.hds -# - -# The configuration file for the Cinder HDS driver for HUS -# (string value) -#hds_cinder_config_file=/opt/hds/hus/cinder_hus_conf.xml - - -# -# Options defined in cinder.volume.drivers.hds.iscsi -# - -# Configuration file for HDS iSCSI cinder plugin (string -# value) -#hds_hnas_iscsi_config_file=/opt/hds/hnas/cinder_iscsi_conf.xml - - -# -# Options defined in cinder.volume.drivers.hds.nfs -# - -# Configuration file for HDS NFS cinder plugin (string value) -#hds_hnas_nfs_config_file=/opt/hds/hnas/cinder_nfs_conf.xml - - -# -# Options defined in cinder.volume.drivers.hitachi.hbsd_common -# - -# Serial number of storage system (string value) -#hitachi_serial_number= - -# Name of an array unit (string value) -#hitachi_unit_name= - -# Pool ID of storage system (integer value) -#hitachi_pool_id= - -# Thin pool ID of storage system (integer value) -#hitachi_thin_pool_id= - -# Range of logical device of storage system (string value) -#hitachi_ldev_range= - -# Default copy method of storage system (string value) -#hitachi_default_copy_method=FULL - -# Copy speed of storage system (integer value) -#hitachi_copy_speed=3 - -# Interval to check copy (integer value) -#hitachi_copy_check_interval=3 - -# Interval to check copy asynchronously (integer value) -#hitachi_async_copy_check_interval=10 - -# Control port names for HostGroup or iSCSI Target (string -# value) -#hitachi_target_ports= - -# Range of group number (string value) -#hitachi_group_range= - -# Request for creating HostGroup or iSCSI Target (boolean -# value) -#hitachi_group_request=false - - -# -# Options defined in cinder.volume.drivers.hitachi.hbsd_fc -# - -# Request for FC Zone creating HostGroup (boolean value) -#hitachi_zoning_request=false - - -# -# Options defined in cinder.volume.drivers.hitachi.hbsd_horcm -# - -# Instance numbers for HORCM (string value) -#hitachi_horcm_numbers=200,201 - -# Username of storage system for HORCM (string value) -#hitachi_horcm_user= - -# Password of storage system for HORCM (string value) -#hitachi_horcm_password= - -# Add to HORCM configuration (boolean value) -#hitachi_horcm_add_conf=true - - -# -# Options defined in cinder.volume.drivers.hitachi.hbsd_iscsi -# - -# Add CHAP user (boolean value) -#hitachi_add_chap_user=false - -# iSCSI authentication method (string value) -#hitachi_auth_method= - -# iSCSI authentication username (string value) -#hitachi_auth_user=HBSD-CHAP-user - -# iSCSI authentication password (string value) -#hitachi_auth_password=HBSD-CHAP-password - - -# -# Options defined in cinder.volume.drivers.huawei -# - -# The configuration file for the Cinder Huawei driver (string -# value) -#cinder_huawei_conf_file=/etc/cinder/cinder_huawei_conf.xml - - -# -# Options defined in cinder.volume.drivers.ibm.flashsystem -# - -# Connection protocol should be FC. (string value) -#flashsystem_connection_protocol=FC - -# Connect with multipath (FC only). (boolean value) -#flashsystem_multipath_enabled=false - -# Allows vdisk to multi host mapping. (boolean value) -#flashsystem_multihostmap_enabled=true - - -# -# Options defined in cinder.volume.drivers.ibm.gpfs -# - -# Specifies the path of the GPFS directory where Block Storage -# volume and snapshot files are stored. (string value) -#gpfs_mount_point_base= - -# Specifies the path of the Image service repository in GPFS. -# Leave undefined if not storing images in GPFS. (string -# value) -#gpfs_images_dir= - -# Specifies the type of image copy to be used. Set this when -# the Image service repository also uses GPFS so that image -# files can be transferred efficiently from the Image service -# to the Block Storage service. There are two valid values: -# "copy" specifies that a full copy of the image is made; -# "copy_on_write" specifies that copy-on-write optimization -# strategy is used and unmodified blocks of the image file are -# shared efficiently. (string value) -#gpfs_images_share_mode= - -# Specifies an upper limit on the number of indirections -# required to reach a specific block due to snapshots or -# clones. A lengthy chain of copy-on-write snapshots or -# clones can have a negative impact on performance, but -# improves space utilization. 0 indicates unlimited clone -# depth. (integer value) -#gpfs_max_clone_depth=0 - -# Specifies that volumes are created as sparse files which -# initially consume no space. If set to False, the volume is -# created as a fully allocated file, in which case, creation -# may take a significantly longer time. (boolean value) -#gpfs_sparse_volumes=true - -# Specifies the storage pool that volumes are assigned to. By -# default, the system storage pool is used. (string value) -#gpfs_storage_pool=system - - -# -# Options defined in cinder.volume.drivers.ibm.ibmnas -# - -# IBMNAS platform type to be used as backend storage; valid -# values are - v7ku : for using IBM Storwize V7000 Unified, -# sonas : for using IBM Scale Out NAS, gpfs-nas : for using -# NFS based IBM GPFS deployments. (string value) -#ibmnas_platform_type=v7ku - - -# -# Options defined in cinder.volume.drivers.ibm.storwize_svc -# - -# Storage system storage pool for volumes (string value) -#storwize_svc_volpool_name=volpool - -# Storage system space-efficiency parameter for volumes -# (percentage) (integer value) -#storwize_svc_vol_rsize=2 - -# Storage system threshold for volume capacity warnings -# (percentage) (integer value) -#storwize_svc_vol_warning=0 - -# Storage system autoexpand parameter for volumes (True/False) -# (boolean value) -#storwize_svc_vol_autoexpand=true - -# Storage system grain size parameter for volumes -# (32/64/128/256) (integer value) -#storwize_svc_vol_grainsize=256 - -# Storage system compression option for volumes (boolean -# value) -#storwize_svc_vol_compression=false - -# Enable Easy Tier for volumes (boolean value) -#storwize_svc_vol_easytier=true - -# The I/O group in which to allocate volumes (integer value) -#storwize_svc_vol_iogrp=0 - -# Maximum number of seconds to wait for FlashCopy to be -# prepared. Maximum value is 600 seconds (10 minutes) (integer -# value) -#storwize_svc_flashcopy_timeout=120 - -# Connection protocol (iSCSI/FC) (string value) -#storwize_svc_connection_protocol=iSCSI - -# Configure CHAP authentication for iSCSI connections -# (Default: Enabled) (boolean value) -#storwize_svc_iscsi_chap_enabled=true - -# Connect with multipath (FC only; iSCSI multipath is -# controlled by Nova) (boolean value) -#storwize_svc_multipath_enabled=false - -# Allows vdisk to multi host mapping (boolean value) -#storwize_svc_multihostmap_enabled=true - -# Indicate whether svc driver is compatible for NPIV setup. If -# it is compatible, it will allow no wwpns being returned on -# get_conn_fc_wwpns during initialize_connection (boolean -# value) -#storwize_svc_npiv_compatibility_mode=false - -# Allow tenants to specify QOS on create (boolean value) -#storwize_svc_allow_tenant_qos=false - -# If operating in stretched cluster mode, specify the name of -# the pool in which mirrored copies are stored.Example: -# "pool2" (string value) -#storwize_svc_stretched_cluster_partner= - - -# -# Options defined in cinder.volume.drivers.ibm.xiv_ds8k -# - -# Proxy driver that connects to the IBM Storage Array (string -# value) -#xiv_ds8k_proxy=xiv_ds8k_openstack.nova_proxy.XIVDS8KNovaProxy - -# Connection type to the IBM Storage Array (string value) -#xiv_ds8k_connection_type=iscsi - -# CHAP authentication mode, effective only for iscsi -# (disabled|enabled) (string value) -#xiv_chap=disabled - - -# -# Options defined in cinder.volume.drivers.lvm -# - -# Name for the VG that will contain exported volumes (string -# value) -volume_group=cinder-volumes - -# If >0, create LVs with multiple mirrors. Note that this -# requires lvm_mirrors + 2 PVs with available space (integer -# value) -#lvm_mirrors=0 - -# Type of LVM volumes to deploy (string value) -#lvm_type=default - -# LVM conf file to use for the LVM driver in Cinder; this -# setting is ignored if the specified file does not exist (You -# can also specify 'None' to not use a conf file even if one -# exists). (string value) -#lvm_conf_file=/etc/cinder/lvm.conf - - -# -# Options defined in cinder.volume.drivers.netapp.options -# - -# The vFiler unit on which provisioning of block storage -# volumes will be done. This option is only used by the driver -# when connecting to an instance with a storage family of Data -# ONTAP operating in 7-Mode. Only use this option when -# utilizing the MultiStore feature on the NetApp storage -# system. (string value) -#netapp_vfiler= - -# The name of the config.conf stanza for a Data ONTAP (7-mode) -# HA partner. This option is only used by the driver when -# connecting to an instance with a storage family of Data -# ONTAP operating in 7-Mode, and it is required if the storage -# protocol selected is FC. (string value) -#netapp_partner_backend_name= - -# Administrative user account name used to access the storage -# system or proxy server. (string value) -#netapp_login= - -# Password for the administrative user account specified in -# the netapp_login option. (string value) -#netapp_password= - -# This option specifies the virtual storage server (Vserver) -# name on the storage cluster on which provisioning of block -# storage volumes should occur. (string value) -#netapp_vserver= - -# The hostname (or IP address) for the storage system or proxy -# server. (string value) -#netapp_server_hostname= - -# The TCP port to use for communication with the storage -# system or proxy server. If not specified, Data ONTAP drivers -# will use 80 for HTTP and 443 for HTTPS; E-Series will use -# 8080 for HTTP and 8443 for HTTPS. (integer value) -#netapp_server_port= - -# This option is used to specify the path to the E-Series -# proxy application on a proxy server. The value is combined -# with the value of the netapp_transport_type, -# netapp_server_hostname, and netapp_server_port options to -# create the URL used by the driver to connect to the proxy -# application. (string value) -#netapp_webservice_path=/devmgr/v2 - -# This option is only utilized when the storage family is -# configured to eseries. This option is used to restrict -# provisioning to the specified controllers. Specify the value -# of this option to be a comma separated list of controller -# hostnames or IP addresses to be used for provisioning. -# (string value) -#netapp_controller_ips= - -# Password for the NetApp E-Series storage array. (string -# value) -#netapp_sa_password= - -# This option is used to restrict provisioning to the -# specified storage pools. Only dynamic disk pools are -# currently supported. Specify the value of this option to be -# a comma separated list of disk pool names to be used for -# provisioning. (string value) -#netapp_storage_pools= - -# This option is used to define how the controllers in the -# E-Series storage array will work with the particular -# operating system on the hosts that are connected to it. -# (string value) -#netapp_eseries_host_type=linux_dm_mp - -# If the percentage of available space for an NFS share has -# dropped below the value specified by this option, the NFS -# image cache will be cleaned. (integer value) -#thres_avl_size_perc_start=20 - -# When the percentage of available space on an NFS share has -# reached the percentage specified by this option, the driver -# will stop clearing files from the NFS image cache that have -# not been accessed in the last M minutes, where M is the -# value of the expiry_thres_minutes configuration option. -# (integer value) -#thres_avl_size_perc_stop=60 - -# This option specifies the threshold for last access time for -# images in the NFS image cache. When a cache cleaning cycle -# begins, images in the cache that have not been accessed in -# the last M minutes, where M is the value of this parameter, -# will be deleted from the cache to create free space on the -# NFS share. (integer value) -#expiry_thres_minutes=720 - -# This option specifies the path of the NetApp copy offload -# tool binary. Ensure that the binary has execute permissions -# set which allow the effective user of the cinder-volume -# process to execute the file. (string value) -#netapp_copyoffload_tool_path= - -# The quantity to be multiplied by the requested volume size -# to ensure enough space is available on the virtual storage -# server (Vserver) to fulfill the volume creation request. -# (floating point value) -#netapp_size_multiplier=1.2 - -# This option is only utilized when the storage protocol is -# configured to use iSCSI or FC. This option is used to -# restrict provisioning to the specified controller volumes. -# Specify the value of this option to be a comma separated -# list of NetApp controller volume names to be used for -# provisioning. (string value) -#netapp_volume_list= - -# The storage family type used on the storage system; valid -# values are ontap_7mode for using Data ONTAP operating in -# 7-Mode, ontap_cluster for using clustered Data ONTAP, or -# eseries for using E-Series. (string value) -#netapp_storage_family=ontap_cluster - -# The storage protocol to be used on the data path with the -# storage system. (string value) -#netapp_storage_protocol= - -# The transport protocol used when communicating with the -# storage system or proxy server. (string value) -#netapp_transport_type=http - - -# -# Options defined in cinder.volume.drivers.nfs -# - -# File with the list of available nfs shares (string value) -#nfs_shares_config=/etc/cinder/nfs_shares - -# Create volumes as sparsed files which take no space.If set -# to False volume is created as regular file.In such case -# volume creation takes a lot of time. (boolean value) -#nfs_sparsed_volumes=true - -# Percent of ACTUAL usage of the underlying volume before no -# new volumes can be allocated to the volume destination. -# (floating point value) -#nfs_used_ratio=0.95 - -# This will compare the allocated to available space on the -# volume destination. If the ratio exceeds this number, the -# destination will no longer be valid. (floating point value) -#nfs_oversub_ratio=1.0 - -# Base dir containing mount points for nfs shares. (string -# value) -#nfs_mount_point_base=$state_path/mnt - -# Mount options passed to the nfs client. See section of the -# nfs man page for details. (string value) -#nfs_mount_options= - -# The number of attempts to mount nfs shares before raising an -# error. At least one attempt will be made to mount an nfs -# share, regardless of the value specified. (integer value) -#nfs_mount_attempts=3 - - -# -# Options defined in cinder.volume.drivers.nimble -# - -# Nimble Controller pool name (string value) -#nimble_pool_name=default - -# Nimble Subnet Label (string value) -#nimble_subnet_label=* - - -# -# Options defined in cinder.volume.drivers.openvstorage -# - -# Vpool to use for volumes - backend is defined by vpool not -# by us. (string value) -#vpool_name= - - -# -# Options defined in cinder.volume.drivers.prophetstor.options -# - -# DPL pool uuid in which DPL volumes are stored. (string -# value) -#dpl_pool= - -# DPL port number. (integer value) -#dpl_port=8357 - - -# -# Options defined in cinder.volume.drivers.pure -# - -# REST API authorization token. (string value) -#pure_api_token= - - -# -# Options defined in cinder.volume.drivers.quobyte -# - -# URL to the Quobyte volume e.g., quobyte:/// (string value) -#quobyte_volume_url= - -# Path to a Quobyte Client configuration file. (string value) -#quobyte_client_cfg= - -# Create volumes as sparse files which take no space. If set -# to False, volume is created as regular file.In such case -# volume creation takes a lot of time. (boolean value) -#quobyte_sparsed_volumes=true - -# Create volumes as QCOW2 files rather than raw files. -# (boolean value) -#quobyte_qcow2_volumes=true - -# Base dir containing the mount point for the Quobyte volume. -# (string value) -#quobyte_mount_point_base=$state_path/mnt - - -# -# Options defined in cinder.volume.drivers.rbd -# - -# The RADOS pool where rbd volumes are stored (string value) -#rbd_pool=rbd - -# The RADOS client name for accessing rbd volumes - only set -# when using cephx authentication (string value) -#rbd_user= - -# Path to the ceph configuration file (string value) -#rbd_ceph_conf= - -# Flatten volumes created from snapshots to remove dependency -# from volume to snapshot (boolean value) -#rbd_flatten_volume_from_snapshot=false - -# The libvirt uuid of the secret for the rbd_user volumes -# (string value) -#rbd_secret_uuid= - -# Directory where temporary image files are stored when the -# volume driver does not write them directly to the volume. -# Warning: this option is now deprecated, please use -# image_conversion_dir instead. (string value) -#volume_tmp_dir= - -# Maximum number of nested volume clones that are taken before -# a flatten occurs. Set to 0 to disable cloning. (integer -# value) -#rbd_max_clone_depth=5 - -# Volumes will be chunked into objects of this size (in -# megabytes). (integer value) -#rbd_store_chunk_size=4 - -# Timeout value (in seconds) used when connecting to ceph -# cluster. If value < 0, no timeout is set and default -# librados value is used. (integer value) -#rados_connect_timeout=-1 - - -# -# Options defined in cinder.volume.drivers.remotefs -# - -# IP address or Hostname of NAS system. (string value) -#nas_ip= - -# User name to connect to NAS system. (string value) -#nas_login=admin - -# Password to connect to NAS system. (string value) -#nas_password= - -# SSH port to use to connect to NAS system. (integer value) -#nas_ssh_port=22 - -# Filename of private key to use for SSH authentication. -# (string value) -#nas_private_key= - -# Allow network-attached storage systems to operate in a -# secure environment where root level access is not permitted. -# If set to False, access is as the root user and insecure. If -# set to True, access is not as root. If set to auto, a check -# is done to determine if this is a new installation: True is -# used if so, otherwise False. Default is auto. (string value) -#nas_secure_file_operations=auto - -# Set more secure file permissions on network-attached storage -# volume files to restrict broad other/world access. If set to -# False, volumes are created with open permissions. If set to -# True, volumes are created with permissions for the cinder -# user and group (660). If set to auto, a check is done to -# determine if this is a new installation: True is used if so, -# otherwise False. Default is auto. (string value) -#nas_secure_file_permissions=auto - -# Path to the share to use for storing Cinder volumes. For -# example: "/srv/export1" for an NFS server export available -# at 10.0.5.10:/srv/export1 . (string value) -#nas_share_path= - -# Options used to mount the storage backend file system where -# Cinder volumes are stored. (string value) -#nas_mount_options= - - -# -# Options defined in cinder.volume.drivers.san.hp.hp_3par_common -# - -# 3PAR WSAPI Server Url like https://<3par ip>:8080/api/v1 -# (string value) -#hp3par_api_url= - -# 3PAR Super user username (string value) -#hp3par_username= - -# 3PAR Super user password (string value) -#hp3par_password= - -# List of the CPG(s) to use for volume creation (list value) -#hp3par_cpg=OpenStack - -# The CPG to use for Snapshots for volumes. If empty the -# userCPG will be used. (string value) -#hp3par_cpg_snap= - -# The time in hours to retain a snapshot. You can't delete it -# before this expires. (string value) -#hp3par_snapshot_retention= - -# The time in hours when a snapshot expires and is deleted. -# This must be larger than expiration (string value) -#hp3par_snapshot_expiration= - -# Enable HTTP debugging to 3PAR (boolean value) -#hp3par_debug=false - -# List of target iSCSI addresses to use. (list value) -#hp3par_iscsi_ips= - -# Enable CHAP authentication for iSCSI connections. (boolean -# value) -#hp3par_iscsi_chap_enabled=false - - -# -# Options defined in cinder.volume.drivers.san.hp.hp_lefthand_rest_proxy -# - -# HP LeftHand WSAPI Server Url like https://:8081/lhos (string value) -#hplefthand_api_url= - -# HP LeftHand Super user username (string value) -#hplefthand_username= - -# HP LeftHand Super user password (string value) -#hplefthand_password= - -# HP LeftHand cluster name (string value) -#hplefthand_clustername= - -# Configure CHAP authentication for iSCSI connections -# (Default: Disabled) (boolean value) -#hplefthand_iscsi_chap_enabled=false - -# Enable HTTP debugging to LeftHand (boolean value) -#hplefthand_debug=false - - -# -# Options defined in cinder.volume.drivers.san.san -# - -# Use thin provisioning for SAN volumes? (boolean value) -#san_thin_provision=true - -# IP address of SAN controller (string value) -#san_ip= - -# Username for SAN controller (string value) -#san_login=admin - -# Password for SAN controller (string value) -#san_password= - -# Filename of private key to use for SSH authentication -# (string value) -#san_private_key= - -# Cluster name to use for creating volumes (string value) -#san_clustername= - -# SSH port to use with SAN (integer value) -#san_ssh_port=22 - -# Execute commands locally instead of over SSH; use if the -# volume service is running on the SAN device (boolean value) -#san_is_local=false - -# SSH connection timeout in seconds (integer value) -#ssh_conn_timeout=30 - -# Minimum ssh connections in the pool (integer value) -#ssh_min_pool_conn=1 - -# Maximum ssh connections in the pool (integer value) -#ssh_max_pool_conn=5 - - -# -# Options defined in cinder.volume.drivers.scality -# - -# Path or URL to Scality SOFS configuration file (string -# value) -#scality_sofs_config= - -# Base dir where Scality SOFS shall be mounted (string value) -#scality_sofs_mount_point=$state_path/scality - -# Path from Scality SOFS root to volume dir (string value) -#scality_sofs_volume_dir=cinder/volumes - - -# -# Options defined in cinder.volume.drivers.smbfs -# - -# File with the list of available smbfs shares. (string value) -#smbfs_shares_config=/etc/cinder/smbfs_shares - -# Default format that will be used when creating volumes if no -# volume format is specified. (string value) -#smbfs_default_volume_format=qcow2 - -# Create volumes as sparsed files which take no space rather -# than regular files when using raw format, in which case -# volume creation takes lot of time. (boolean value) -#smbfs_sparsed_volumes=true - -# Percent of ACTUAL usage of the underlying volume before no -# new volumes can be allocated to the volume destination. -# (floating point value) -#smbfs_used_ratio=0.95 - -# This will compare the allocated to available space on the -# volume destination. If the ratio exceeds this number, the -# destination will no longer be valid. (floating point value) -#smbfs_oversub_ratio=1.0 - -# Base dir containing mount points for smbfs shares. (string -# value) -#smbfs_mount_point_base=$state_path/mnt - -# Mount options passed to the smbfs client. See mount.cifs man -# page for details. (string value) -#smbfs_mount_options=noperm,file_mode=0775,dir_mode=0775 - - -# -# Options defined in cinder.volume.drivers.solidfire -# - -# Set 512 byte emulation on volume creation; (boolean value) -#sf_emulate_512=true - -# Allow tenants to specify QOS on create (boolean value) -#sf_allow_tenant_qos=false - -# Create SolidFire accounts with this prefix. Any string can -# be used here, but the string "hostname" is special and will -# create a prefix using the cinder node hostsname (previous -# default behavior). The default is NO prefix. (string value) -#sf_account_prefix= - -# Account name on the SolidFire Cluster to use as owner of -# template/cache volumes (created if does not exist). (string -# value) -#sf_template_account_name=openstack-vtemplate - -# Create an internal cache of copy of images when a bootable -# volume is created to eliminate fetch from glance and qemu- -# conversion on subsequent calls. (boolean value) -#sf_allow_template_caching=true - -# SolidFire API port. Useful if the device api is behind a -# proxy on a different port. (integer value) -#sf_api_port=443 - - -# -# Options defined in cinder.volume.drivers.srb -# - -# Comma-separated list of REST servers IP to connect to. (eg -# http://IP1/,http://IP2:81/path (string value) -#srb_base_urls= - - -# -# Options defined in cinder.volume.drivers.violin.v6000_common -# - -# IP address or hostname of mg-a (string value) -#gateway_mga= - -# IP address or hostname of mg-b (string value) -#gateway_mgb= - -# Use igroups to manage targets and initiators (boolean value) -#use_igroups=false - -# Global backend request timeout, in seconds (integer value) -#request_timeout=300 - - -# -# Options defined in cinder.volume.drivers.vmware.vmdk -# - -# IP address for connecting to VMware ESX/VC server. (string -# value) -#vmware_host_ip= - -# Username for authenticating with VMware ESX/VC server. -# (string value) -#vmware_host_username= - -# Password for authenticating with VMware ESX/VC server. -# (string value) -#vmware_host_password= - -# Optional VIM service WSDL Location e.g -# http:///vimService.wsdl. Optional over-ride to -# default location for bug work-arounds. (string value) -#vmware_wsdl_location= - -# Number of times VMware ESX/VC server API must be retried -# upon connection related issues. (integer value) -#vmware_api_retry_count=10 - -# The interval (in seconds) for polling remote tasks invoked -# on VMware ESX/VC server. (floating point value) -#vmware_task_poll_interval=0.5 - -# Name for the folder in the VC datacenter that will contain -# cinder volumes. (string value) -#vmware_volume_folder=cinder-volumes - -# Timeout in seconds for VMDK volume transfer between Cinder -# and Glance. (integer value) -#vmware_image_transfer_timeout_secs=7200 - -# Max number of objects to be retrieved per batch. Query -# results will be obtained in batches from the server and not -# in one shot. Server may still limit the count to something -# less than the configured value. (integer value) -#vmware_max_objects_retrieval=100 - -# Optional string specifying the VMware VC server version. The -# driver attempts to retrieve the version from VMware VC -# server. Set this configuration only if you want to override -# the VC server version. (string value) -#vmware_host_version= - -# Directory where virtual disks are stored during volume -# backup and restore. (string value) -#vmware_tmp_dir=/tmp - - -# -# Options defined in cinder.volume.drivers.windows.windows -# - -# Path to store VHD backed volumes (string value) -#windows_iscsi_lun_path=C:\iSCSIVirtualDisks - - -# -# Options defined in cinder.volume.drivers.xio -# - -# Default storage pool for volumes. (integer value) -#ise_storage_pool=1 - -# Raid level for ISE volumes. (integer value) -#ise_raid=1 - -# Number of retries (per port) when establishing connection to -# ISE management port. (integer value) -#ise_connection_retries=5 - -# Interval (secs) between retries. (integer value) -#ise_retry_interval=1 - -# Number on retries to get completion status after issuing a -# command to ISE. (integer value) -#ise_completion_retries=30 - - -# -# Options defined in cinder.volume.drivers.zfssa.zfssanfs -# - -# Data path IP address (string value) -#zfssa_data_ip= - -# HTTPS port number (string value) -#zfssa_https_port=443 - -# Options to be passed while mounting share over nfs (string -# value) -#zfssa_nfs_mount_options= - -# Storage pool name. (string value) -#zfssa_nfs_pool= - -# Project name. (string value) -#zfssa_nfs_project=NFSProject - -# Share name. (string value) -#zfssa_nfs_share=nfs_share - -# Data compression. (string value) -#zfssa_nfs_share_compression=off - -# Synchronous write bias-latency, throughput. (string value) -#zfssa_nfs_share_logbias=latency - -# REST connection timeout. (seconds) (integer value) -#zfssa_rest_timeout= - - -# -# Options defined in cinder.volume.manager -# - -# Driver to use for volume creation (string value) -volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver - -# Timeout for creating the volume to migrate to when -# performing volume migration (seconds) (integer value) -#migration_create_volume_timeout_secs=300 - -# Offload pending volume delete during volume service startup -# (boolean value) -#volume_service_inithost_offload=false - -# FC Zoning mode configured (string value) -#zoning_mode=none - -# User defined capabilities, a JSON formatted string -# specifying key/value pairs. The key/value pairs can be used -# by the CapabilitiesFilter to select between backends when -# requests specify volume types. For example, specifying a -# service level or the geographical location of a backend, -# then creating a volume type to allow the user to select by -# these different properties. (string value) -#extra_capabilities={} - - -[BRCD_FABRIC_EXAMPLE] - -# -# Options defined in cinder.zonemanager.drivers.brocade.brcd_fabric_opts -# - -# Management IP of fabric (string value) -#fc_fabric_address= - -# Fabric user ID (string value) -#fc_fabric_user= - -# Password for user (string value) -#fc_fabric_password= - -# Connecting port (integer value) -#fc_fabric_port=22 - -# overridden zoning policy (string value) -#zoning_policy=initiator-target - -# overridden zoning activation state (boolean value) -#zone_activate=true - -# overridden zone name prefix (string value) -#zone_name_prefix= - -# Principal switch WWN of the fabric (string value) -#principal_switch_wwn= - - -[CISCO_FABRIC_EXAMPLE] - -# -# Options defined in cinder.zonemanager.drivers.cisco.cisco_fabric_opts -# - -# Management IP of fabric (string value) -#cisco_fc_fabric_address= - -# Fabric user ID (string value) -#cisco_fc_fabric_user= - -# Password for user (string value) -#cisco_fc_fabric_password= - -# Connecting port (integer value) -#cisco_fc_fabric_port=22 - -# overridden zoning policy (string value) -#cisco_zoning_policy=initiator-target - -# overridden zoning activation state (boolean value) -#cisco_zone_activate=true - -# overridden zone name prefix (string value) -#cisco_zone_name_prefix= - -# VSAN of the Fabric (string value) -#cisco_zoning_vsan= - - -[database] - -# -# Options defined in oslo.db.concurrency -# - -# Enable the experimental use of thread pooling for all DB API -# calls (boolean value) -# Deprecated group/name - [DEFAULT]/dbapi_use_tpool -#use_tpool=false - -# The SQLAlchemy connection string to use to connect to the -# database. (string value) -connection=postgresql://{{ CINDER_DB_USER }}:{{ CINDER_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/cinder - - -[fc-zone-manager] - -# -# Options defined in cinder.zonemanager.drivers.brocade.brcd_fc_zone_driver -# - -# Southbound connector for zoning operation (string value) -#brcd_sb_connector=cinder.zonemanager.drivers.brocade.brcd_fc_zone_client_cli.BrcdFCZoneClientCLI - - -# -# Options defined in cinder.zonemanager.drivers.cisco.cisco_fc_zone_driver -# - -# Southbound connector for zoning operation (string value) -#cisco_sb_connector=cinder.zonemanager.drivers.cisco.cisco_fc_zone_client_cli.CiscoFCZoneClientCLI - - -# -# Options defined in cinder.zonemanager.fc_zone_manager -# - -# FC Zone Driver responsible for zone management (string -# value) -#zone_driver=cinder.zonemanager.drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver - -# Zoning policy configured by user; valid values include -# "initiator-target" or "initiator" (string value) -#zoning_policy=initiator-target - -# Comma separated list of Fibre Channel fabric names. This -# list of names is used to retrieve other SAN credentials for -# connecting to each SAN fabric (string value) -#fc_fabric_names= - -# FC SAN Lookup Service (string value) -#fc_san_lookup_service=cinder.zonemanager.drivers.brocade.brcd_fc_san_lookup_service.BrcdFCSanLookupService - - -[keymgr] - -# -# Options defined in cinder.keymgr -# - -# The full class name of the key manager API class (string -# value) -#api_class=cinder.keymgr.conf_key_mgr.ConfKeyManager - - -# -# Options defined in cinder.keymgr.conf_key_mgr -# - -# Fixed key returned by key manager, specified in hex (string -# value) -#fixed_key= - - -# -# Options defined in cinder.keymgr.key_mgr -# - -# Authentication url for encryption service. (string value) -#encryption_auth_url=http://localhost:5000/v3 - -# Url for encryption service. (string value) -#encryption_api_url=http://localhost:9311/v1 - - -[oslo_concurrency] - -lock_path = /var/lock/cinder - -[keystone_authtoken] - -# -# Options defined in keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -auth_uri=http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - -# API version of the admin Identity API endpoint. (string -# value) -#auth_version= - -# Do not handle authorization requests within the middleware, -# but delegate the authorization decision to downstream WSGI -# components. (boolean value) -#delay_auth_decision=false - -# Request timeout value for communicating with Identity API -# server. (integer value) -#http_connect_timeout= - -# How many times are we trying to reconnect when communicating -# with Identity API Server. (integer value) -#http_request_max_retries=3 - -# Env key for the swift cache. (string value) -#cache= - -# Required if identity server requires client certificate -# (string value) -#certfile= - -# Required if identity server requires client certificate -# (string value) -#keyfile= - -# A PEM encoded Certificate Authority to use when verifying -# HTTPs connections. Defaults to system CAs. (string value) -#cafile= - -# Verify HTTPS connections. (boolean value) -#insecure=false - -# Directory used to cache files related to PKI tokens. (string -# value) -#signing_dir= - -# Optionally specify a list of memcached server(s) to use for -# caching. If left undefined, tokens will instead be cached -# in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers= - -# In order to prevent excessive effort spent validating -# tokens, the middleware caches previously-seen tokens for a -# configurable duration (in seconds). Set to -1 to disable -# caching completely. (integer value) -#token_cache_time=300 - -# Determines the frequency at which the list of revoked tokens -# is retrieved from the Identity service (in seconds). A high -# number of revocation events combined with a low cache -# duration may significantly reduce performance. (integer -# value) -#revocation_cache_time=10 - -# (Optional) If defined, indicate whether token data should be -# authenticated or authenticated and encrypted. Acceptable -# values are MAC or ENCRYPT. If MAC, token data is -# authenticated (with HMAC) in the cache. If ENCRYPT, token -# data is encrypted and authenticated in the cache. If the -# value is not one of these options or empty, auth_token will -# raise an exception on initialization. (string value) -#memcache_security_strategy= - -# (Optional, mandatory if memcache_security_strategy is -# defined) This string is used for key derivation. (string -# value) -#memcache_secret_key= - -# (Optional) Number of seconds memcached server is considered -# dead before it is tried again. (integer value) -#memcache_pool_dead_retry=300 - -# (Optional) Maximum total number of open connections to every -# memcached server. (integer value) -#memcache_pool_maxsize=10 - -# (Optional) Socket timeout in seconds for communicating with -# a memcache server. (integer value) -#memcache_pool_socket_timeout=3 - -# (Optional) Number of seconds a connection to memcached is -# held unused in the pool before it is closed. (integer value) -#memcache_pool_unused_timeout=60 - -# (Optional) Number of seconds that an operation will wait to -# get a memcache client connection from the pool. (integer -# value) -#memcache_pool_conn_get_timeout=10 - -# (Optional) Use the advanced (eventlet safe) memcache client -# pool. The advanced pool will only work under python 2.x. -# (boolean value) -#memcache_use_advanced_pool=false - -# (Optional) Indicate whether to set the X-Service-Catalog -# header. If False, middleware will not ask for service -# catalog on token validation and will not set the X-Service- -# Catalog header. (boolean value) -#include_service_catalog=true - -# Used to control the use and type of token binding. Can be -# set to: "disabled" to not check token binding. "permissive" -# (default) to validate binding information if the bind type -# is of a form known to the server and ignore it if not. -# "strict" like "permissive" but if the bind type is unknown -# the token will be rejected. "required" any form of token -# binding is needed to be allowed. Finally the name of a -# binding method that must be present in tokens. (string -# value) -#enforce_token_bind=permissive - -# If true, the revocation list will be checked for cached -# tokens. This requires that PKI tokens are configured on the -# identity server. (boolean value) -#check_revocations_for_cached=false - -# Hash algorithms to use for hashing PKI tokens. This may be a -# single algorithm or multiple. The algorithms are those -# supported by Python standard hashlib.new(). The hashes will -# be tried in the order given, so put the preferred one first -# for performance. The result of the first hash will be stored -# in the cache. This will typically be set to multiple values -# only while migrating from a less secure algorithm to a more -# secure one. Once all the old tokens are expired this option -# should be set to a single value for better performance. -# (list value) -#hash_algorithms=md5 - - -[matchmaker_redis] - -# -# Options defined in oslo.messaging -# - -# Host to locate redis. (string value) -#host=127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port=6379 - -# Password for Redis server (optional). (string value) -#password= - - -[matchmaker_ring] - -# -# Options defined in oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile=/etc/oslo/matchmaker_ring.json - - -[oslo_messaging_amqp] - -# -# Options defined in oslo.messaging -# - -# address prefix used when sending to a specific server -# (string value) -#server_request_prefix=exclusive - -# address prefix used when broadcasting to all servers (string -# value) -#broadcast_prefix=broadcast - -# address prefix when sending to any server in group (string -# value) -#group_request_prefix=unicast - -# Name for the AMQP container (string value) -#container_name= - -# Timeout for inactive connections (in seconds) (integer -# value) -#idle_timeout=0 - -# Debug: dump AMQP frames to stdout (boolean value) -#trace=false - -# CA certificate PEM file for verifing server certificate -# (string value) -#ssl_ca_file= - -# Identifying certificate PEM file to present to clients -# (string value) -#ssl_cert_file= - -# Private key PEM file used to sign cert_file certificate -# (string value) -#ssl_key_file= - -# Password for decrypting ssl_key_file (if encrypted) (string -# value) -#ssl_key_password= - -# Accept clients using either SSL or plain TCP (boolean value) -#allow_insecure_clients=false - - -[oslo_messaging_qpid] - -# -# Options defined in oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues=false - -# Auto-delete queues in AMQP. (boolean value) -#amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size=30 - -# Qpid broker hostname. (string value) -#qpid_hostname=localhost - -# Qpid broker port. (integer value) -#qpid_port=5672 - -# Qpid HA cluster host:port pairs. (list value) -#qpid_hosts=$qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -#qpid_username= - -# Password for Qpid connection. (string value) -#qpid_password= - -# Space separated list of SASL mechanisms to use for auth. -# (string value) -#qpid_sasl_mechanisms= - -# Seconds between connection keepalive heartbeats. (integer -# value) -#qpid_heartbeat=60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -#qpid_protocol=tcp - -# Whether to disable the Nagle algorithm. (boolean value) -#qpid_tcp_nodelay=true - -# The number of prefetched messages held by receiver. (integer -# value) -#qpid_receiver_capacity=1 - -# The qpid topology version to use. Version 1 is what was -# originally used by impl_qpid. Version 2 includes some -# backwards-incompatible changes that allow broker federation -# to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. -# (integer value) -#qpid_topology_version=1 - - -[oslo_messaging_rabbit] - -# -# Options defined in oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues=false - -# Auto-delete queues in AMQP. (boolean value) -#amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size=30 - -# SSL version to use (valid only if SSL enabled). Valid values -# are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may -# be available on some distributions. (string value) -#kombu_ssl_version= - -# SSL key file (valid only if SSL enabled). (string value) -#kombu_ssl_keyfile= - -# SSL cert file (valid only if SSL enabled). (string value) -#kombu_ssl_certfile= - -# SSL certification authority file (valid only if SSL -# enabled). (string value) -#kombu_ssl_ca_certs= - -# How long to wait before reconnecting in response to an AMQP -# consumer cancel notification. (floating point value) -#kombu_reconnect_delay=1.0 - -# The RabbitMQ broker address where a single node is used. -# (string value) -rabbit_host={{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. -# (integer value) -rabbit_port={{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -rabbit_hosts=$rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -#rabbit_use_ssl=false - -# The RabbitMQ userid. (string value) -rabbit_userid={{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -rabbit_password={{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -#rabbit_login_method=AMQPLAIN - -# The RabbitMQ virtual host. (string value) -#rabbit_virtual_host=/ - -# How frequently to retry connecting with RabbitMQ. (integer -# value) -#rabbit_retry_interval=1 - -# How long to backoff for between retries when connecting to -# RabbitMQ. (integer value) -#rabbit_retry_backoff=2 - -# Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -#rabbit_max_retries=0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change -# this option, you must wipe the RabbitMQ database. (boolean -# value) -#rabbit_ha_queues=false - -# Number of seconds after which the Rabbit broker is -# considered down if heartbeat's keep-alive fails (0 disables -# the heartbeat, >0 enables it. Enabling heartbeats requires -# kombu>=3.0.7 and amqp>=1.4.0). EXPERIMENTAL (integer value) -#heartbeat_timeout_threshold=0 - -# How often times during the heartbeat_timeout_threshold we -# check the heartbeat. (integer value) -#heartbeat_rate=2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake -# (boolean value) -#fake_rabbit=false - - -[profiler] - -# -# Options defined in cinder.service -# - -# If False fully disable profiling feature. (boolean value) -#profiler_enabled=false - -# If False doesn't trace SQL requests. (boolean value) -#trace_sqlalchemy=false - - -[DEFAULT] - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -#auth_uri = - -# API version of the admin Identity API endpoint. (string value) -#auth_version = - -# Do not handle authorization requests within the middleware, but -# delegate the authorization decision to downstream WSGI components. -# (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. -# (integer value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with -# Identity API Server. (integer value) -#http_request_max_retries = 3 - -# Env key for the swift cache. (string value) -#cache = - -# Required if identity server requires client certificate (string -# value) -#certfile = - -# Required if identity server requires client certificate (string -# value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs -# connections. Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# Directory used to cache files related to PKI tokens. (string value) -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. -# If left undefined, tokens will instead be cached in-process. (list -# value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the -# middleware caches previously-seen tokens for a configurable duration -# (in seconds). Set to -1 to disable caching completely. (integer -# value) -#token_cache_time = 300 - -# Determines the frequency at which the list of revoked tokens is -# retrieved from the Identity service (in seconds). A high number of -# revocation events combined with a low cache duration may -# significantly reduce performance. (integer value) -#revocation_cache_time = 10 - -# (Optional) If defined, indicate whether token data should be -# authenticated or authenticated and encrypted. Acceptable values are -# MAC or ENCRYPT. If MAC, token data is authenticated (with HMAC) in -# the cache. If ENCRYPT, token data is encrypted and authenticated in -# the cache. If the value is not one of these options or empty, -# auth_token will raise an exception on initialization. (string value) -#memcache_security_strategy = - -# (Optional, mandatory if memcache_security_strategy is defined) This -# string is used for key derivation. (string value) -#memcache_secret_key = - -# (Optional) Number of seconds memcached server is considered dead -# before it is tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (Optional) Maximum total number of open connections to every -# memcached server. (integer value) -#memcache_pool_maxsize = 10 - -# (Optional) Socket timeout in seconds for communicating with a -# memcache server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (Optional) Number of seconds a connection to memcached is held -# unused in the pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (Optional) Number of seconds that an operation will wait to get a -# memcache client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (Optional) Use the advanced (eventlet safe) memcache client pool. -# The advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (Optional) Indicate whether to set the X-Service-Catalog header. If -# False, middleware will not ask for service catalog on token -# validation and will not set the X-Service-Catalog header. (boolean -# value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: -# "disabled" to not check token binding. "permissive" (default) to -# validate binding information if the bind type is of a form known to -# the server and ignore it if not. "strict" like "permissive" but if -# the bind type is unknown the token will be rejected. "required" any -# form of token binding is needed to be allowed. Finally the name of a -# binding method that must be present in tokens. (string value) -#enforce_token_bind = permissive - -# If true, the revocation list will be checked for cached tokens. This -# requires that PKI tokens are configured on the identity server. -# (boolean value) -#check_revocations_for_cached = false - -# Hash algorithms to use for hashing PKI tokens. This may be a single -# algorithm or multiple. The algorithms are those supported by Python -# standard hashlib.new(). The hashes will be tried in the order given, -# so put the preferred one first for performance. The result of the -# first hash will be stored in the cache. This will typically be set -# to multiple values only while migrating from a less secure algorithm -# to a more secure one. Once all the old tokens are expired this -# option should be set to a single value for better performance. (list -# value) -#hash_algorithms = md5 - -# Prefix to prepend at the beginning of the path. Deprecated, use -# identity_uri. (string value) -#auth_admin_prefix = - -# Host providing the admin Identity API endpoint. Deprecated, use -# identity_uri. (string value) -#auth_host = 127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use -# identity_uri. (integer value) -#auth_port = 35357 - -# Protocol of the admin Identity API endpoint (http or https). -# Deprecated, use identity_uri. (string value) -#auth_protocol = https - -# Complete admin Identity API endpoint. This should specify the -# unversioned root endpoint e.g. https://localhost:35357/ (string -# value) -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 - -# This option is deprecated and may be removed in a future release. -# Single shared secret with the Keystone configuration used for -# bootstrapping a Keystone installation, or otherwise bypassing the -# normal authentication process. This option should not be used, use -# `admin_user` and `admin_password` instead. (string value) -#admin_token = - -# Service username. (string value) -admin_user = {{ CINDER_SERVICE_USER }} - -# Service user password. (string value) -admin_password = {{ CINDER_SERVICE_PASSWORD }} - -# Service tenant name. (string value) -admin_tenant_name = service diff --git a/install-files/openstack/usr/share/openstack/extras/00-disable-device.network b/install-files/openstack/usr/share/openstack/extras/00-disable-device.network deleted file mode 100644 index 8e2532d0..00000000 --- a/install-files/openstack/usr/share/openstack/extras/00-disable-device.network +++ /dev/null @@ -1,2 +0,0 @@ -[Match] -Name={{ item }} diff --git a/install-files/openstack/usr/share/openstack/extras/60-device-dhcp.network b/install-files/openstack/usr/share/openstack/extras/60-device-dhcp.network deleted file mode 100644 index 6fdbfd8d..00000000 --- a/install-files/openstack/usr/share/openstack/extras/60-device-dhcp.network +++ /dev/null @@ -1,5 +0,0 @@ -[Match] -Name={{ item }} - -[Network] -DHCP=yes diff --git a/install-files/openstack/usr/share/openstack/glance.yml b/install-files/openstack/usr/share/openstack/glance.yml deleted file mode 100644 index 4d642b6c..00000000 --- a/install-files/openstack/usr/share/openstack/glance.yml +++ /dev/null @@ -1,92 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/glance.conf" - tasks: - - name: Create the glance user. - user: - name: glance - comment: Openstack Glance Daemons - shell: /sbin/nologin - home: /var/lib/glance - - - name: Create the /var folders for glance - file: - path: "{{ item }}" - state: directory - owner: glance - group: glance - with_items: - - /var/run/glance - - /var/lock/glance - - /var/log/glance - - /var/lib/glance - - /var/lib/glance/images - - /var/lib/glance/image-cache - - - name: Create /etc/glance directory - file: - path: /etc/glance - state: directory - - - name: Add the configuration needed for glance in /etc/glance using templates - template: - src: /usr/share/openstack/glance/{{ item }} - dest: /etc/glance/{{ item }} - with_lines: - - cd /usr/share/openstack/glance && find -type f - - - name: Create glance service user in service tenant - keystone_user: - user: "{{ GLANCE_SERVICE_USER }}" - password: "{{ GLANCE_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Assign admin role to glances service user in the service tenant - keystone_user: - role: admin - user: "{{ GLANCE_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add glance endpoint - keystone_service: - name: glance - type: image - description: Openstack Image Service - publicurl: http://{{ ansible_hostname }}:9292 - internalurl: http://{{ CONTROLLER_HOST_ADDRESS }}:9292 - adminurl: http://{{ CONTROLLER_HOST_ADDRESS }}:9292 - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for glance - postgresql_user: - name: "{{ GLANCE_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - password: "{{ GLANCE_DB_PASSWORD }}" - sudo: yes - sudo_user: glance - - - name: Create database for glance services - postgresql_db: - name: glance - owner: "{{ GLANCE_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - sudo: yes - sudo_user: glance - - - name: Initiate glance database - command: glance-manage db_sync - sudo: yes - sudo_user: glance - - - name: Enable and start openstack-glance services - service: - name: "{{ item }}" - enabled: yes - state: started - with_items: - - openstack-glance-api.service - - openstack-glance-registry.service diff --git a/install-files/openstack/usr/share/openstack/glance/glance-api.conf b/install-files/openstack/usr/share/openstack/glance/glance-api.conf deleted file mode 100644 index b6a4723d..00000000 --- a/install-files/openstack/usr/share/openstack/glance/glance-api.conf +++ /dev/null @@ -1,813 +0,0 @@ -[DEFAULT] -# Show more verbose log output (sets INFO log level output) -#verbose = False - -# Show debugging output in logs (sets DEBUG log level output) -#debug = False - -# Maximum image size (in bytes) that may be uploaded through the -# Glance API server. Defaults to 1 TB. -# WARNING: this value should only be increased after careful consideration -# and must be set to a value under 8 EB (9223372036854775808). -#image_size_cap = 1099511627776 - -# Address to bind the API server -bind_host = 0.0.0.0 - -# Port the bind the API server to -bind_port = 9292 - -# Log to this file. Make sure you do not set the same log file for both the API -# and registry servers! -# -# If `log_file` is omitted and `use_syslog` is false, then log messages are -# sent to stdout as a fallback. -# log_file = /var/log/glance/api.log - -# Backlog requests when creating socket -backlog = 4096 - -# TCP_KEEPIDLE value in seconds when creating socket. -# Not supported on OS X. -#tcp_keepidle = 600 - -# API to use for accessing data. Default value points to sqlalchemy -# package, it is also possible to use: glance.db.registry.api -# data_api = glance.db.sqlalchemy.api - -# The number of child process workers that will be -# created to service API requests. The default will be -# equal to the number of CPUs available. (integer value) -#workers = 4 - -# Maximum line size of message headers to be accepted. -# max_header_line may need to be increased when using large tokens -# (typically those generated by the Keystone v3 API with big service -# catalogs) -# max_header_line = 16384 - -# Role used to identify an authenticated user as administrator -#admin_role = admin - -# Allow unauthenticated users to access the API with read-only -# privileges. This only applies when using ContextMiddleware. -#allow_anonymous_access = False - -# Allow access to version 1 of glance api -#enable_v1_api = True - -# Allow access to version 2 of glance api -#enable_v2_api = True - -# Return the URL that references where the data is stored on -# the backend storage system. For example, if using the -# file system store a URL of 'file:///path/to/image' will -# be returned to the user in the 'direct_url' meta-data field. -# The default value is false. -#show_image_direct_url = False - -# Send headers containing user and tenant information when making requests to -# the v1 glance registry. This allows the registry to function as if a user is -# authenticated without the need to authenticate a user itself using the -# auth_token middleware. -# The default value is false. -#send_identity_headers = False - -# Supported values for the 'container_format' image attribute -#container_formats=ami,ari,aki,bare,ovf,ova - -# Supported values for the 'disk_format' image attribute -#disk_formats=ami,ari,aki,vhd,vmdk,raw,qcow2,vdi,iso - -# Property Protections config file -# This file contains the rules for property protections and the roles/policies -# associated with it. -# If this config value is not specified, by default, property protections -# won't be enforced. -# If a value is specified and the file is not found, then the glance-api -# service will not start. -#property_protection_file = - -# Specify whether 'roles' or 'policies' are used in the -# property_protection_file. -# The default value for property_protection_rule_format is 'roles'. -#property_protection_rule_format = roles - -# This value sets what strategy will be used to determine the image location -# order. Currently two strategies are packaged with Glance 'location_order' -# and 'store_type'. -#location_strategy = location_order - - -# Public url to use for versions endpoint. The default is None, -# which will use the request's host_url attribute to populate the URL base. -# If Glance is operating behind a proxy, you will want to change this to -# represent the proxy's URL. -#public_endpoint= - -# http_keepalive option. If False, server will return the header -# "Connection: close", If True, server will return "Connection: Keep-Alive" -# in its responses. In order to close the client socket connection -# explicitly after the response is sent and read successfully by the client, -# you simply have to set this option to False when you create a wsgi server. -#http_keepalive = True - -# ================= Syslog Options ============================ - -# Send logs to syslog (/dev/log) instead of to file specified -# by `log_file` -use_syslog = True - -# Facility to use. If unset defaults to LOG_USER. -#syslog_log_facility = LOG_LOCAL0 - -# ================= SSL Options =============================== - -# Certificate file to use when starting API server securely -#cert_file = /path/to/certfile - -# Private key file to use when starting API server securely -#key_file = /path/to/keyfile - -# CA certificate file to use to verify connecting clients -#ca_file = /path/to/cafile - -# ================= Security Options ========================== - -# AES key for encrypting store 'location' metadata, including -# -- if used -- Swift or S3 credentials -# Should be set to a random string of length 16, 24 or 32 bytes -#metadata_encryption_key = <16, 24 or 32 char registry metadata key> - - -# Digest algorithm which will be used for digital signature, the default is -# sha1 in Kilo for a smooth upgrade process, and it will be updated with -# sha256 in next release(L). Use command -# "openssl list-message-digest-algorithms" to get the available algorithms -# supported by the version of OpenSSL on the platform. Examples are 'sha1', -# 'sha256', 'sha512', etc. -#digest_algorithm = sha1 - -# ============ Registry Options =============================== - -# Address to find the registry server -registry_host = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Port the registry server is listening on -registry_port = 9191 - -# What protocol to use when connecting to the registry server? -# Set to https for secure HTTP communication -registry_client_protocol = http - -# The path to the key file to use in SSL connections to the -# registry server, if any. Alternately, you may set the -# GLANCE_CLIENT_KEY_FILE environ variable to a filepath of the key file -#registry_client_key_file = /path/to/key/file - -# The path to the cert file to use in SSL connections to the -# registry server, if any. Alternately, you may set the -# GLANCE_CLIENT_CERT_FILE environ variable to a filepath of the cert file -#registry_client_cert_file = /path/to/cert/file - -# The path to the certifying authority cert file to use in SSL connections -# to the registry server, if any. Alternately, you may set the -# GLANCE_CLIENT_CA_FILE environ variable to a filepath of the CA cert file -#registry_client_ca_file = /path/to/ca/file - -# When using SSL in connections to the registry server, do not require -# validation via a certifying authority. This is the registry's equivalent of -# specifying --insecure on the command line using glanceclient for the API -# Default: False -#registry_client_insecure = False - -# The period of time, in seconds, that the API server will wait for a registry -# request to complete. A value of '0' implies no timeout. -# Default: 600 -#registry_client_timeout = 600 - -# Enable DEBUG log messages from sqlalchemy which prints every database -# query and response. -# Default: False -#sqlalchemy_debug = True - -# Pass the user's token through for API requests to the registry. -# Default: True -#use_user_token = True - -# If 'use_user_token' is not in effect then admin credentials -# can be specified. Requests to the registry on behalf of -# the API will use these credentials. -# Admin user name -#admin_user = None -# Admin password -#admin_password = None -# Admin tenant name -#admin_tenant_name = None -# Keystone endpoint -#auth_url = None -# Keystone region -#auth_region = None -# Auth strategy -#auth_strategy = keystone - -# ============ Notification System Options ===================== - -# Driver or drivers to handle sending notifications. Set to -# 'messaging' to send notifications to a message queue. -notification_driver = messagingv2 - -# Default publisher_id for outgoing notifications. -# default_publisher_id = image.localhost - -# List of disabled notifications. A notification can be given either as a -# notification type to disable a single event, or as a notification group -# prefix to disable all events within a group. -# Example: if this config option is set to -# ["image.create", "metadef_namespace"], then "image.create" notification will -# not be sent after image is created and none of the notifications for -# metadefinition namespaces will be sent. -# disabled_notifications = [] - -# Messaging driver used for 'messaging' notifications driver -rpc_backend = 'rabbit' - -# Configuration options if sending notifications via rabbitmq (these are -# the defaults) -rabbit_host = {{ RABBITMQ_HOST }} -rabbit_port = {{ RABBITMQ_PORT }} -rabbit_use_ssl = false -rabbit_userid = {{ RABBITMQ_USER }} -rabbit_password = {{ RABBITMQ_PASSWORD }} -rabbit_virtual_host = / -rabbit_notification_exchange = glance -rabbit_notification_topic = notifications -rabbit_durable_queues = False - -# Configuration options if sending notifications via Qpid (these are -# the defaults) -#qpid_notification_exchange = glance -#qpid_notification_topic = notifications -#qpid_hostname = localhost -#qpid_port = 5672 -#qpid_username = -#qpid_password = -#qpid_sasl_mechanisms = -#qpid_reconnect_timeout = 0 -#qpid_reconnect_limit = 0 -#qpid_reconnect_interval_min = 0 -#qpid_reconnect_interval_max = 0 -#qpid_reconnect_interval = 0 -#qpid_heartbeat = 5 -# Set to 'ssl' to enable SSL -#qpid_protocol = tcp -#qpid_tcp_nodelay = True - -# ============ Delayed Delete Options ============================= - -# Turn on/off delayed delete -delayed_delete = False - -# Delayed delete time in seconds -scrub_time = 43200 - -# Directory that the scrubber will use to remind itself of what to delete -# Make sure this is also set in glance-scrubber.conf -scrubber_datadir = /var/lib/glance/scrubber - -# =============== Quota Options ================================== - -# The maximum number of image members allowed per image -#image_member_quota = 128 - -# The maximum number of image properties allowed per image -#image_property_quota = 128 - -# The maximum number of tags allowed per image -#image_tag_quota = 128 - -# The maximum number of locations allowed per image -#image_location_quota = 10 - -# Set a system wide quota for every user. This value is the total number -# of bytes that a user can use across all storage systems. A value of -# 0 means unlimited. -#user_storage_quota = 0 - -# =============== Image Cache Options ============================= - -# Base directory that the Image Cache uses -image_cache_dir = /var/lib/glance/image-cache/ - -# =============== Policy Options ================================== - -[oslo_policy] -# The JSON file that defines policies. -# Deprecated group/name - [DEFAULT]/policy_file -#policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. -# Deprecated group/name - [DEFAULT]/policy_default_rule -#policy_default_rule = default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. -# The file defined by policy_file must exist for these -# directories to be searched. -# Deprecated group/name - [DEFAULT]/policy_dirs -#policy_dirs = policy.d - -# =============== Database Options ================================= - -[database] -# The file name to use with SQLite (string value) -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode (boolean value) -#sqlite_synchronous = True - -# The backend to use for db (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string used to connect to the -# database (string value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = -connection=postgresql://{{ GLANCE_DB_USER }}:{{ GLANCE_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/glance - -# The SQL mode to be used for MySQL sessions. This option, -# including the default, overrides any server-set SQL mode. To -# use whatever SQL mode is set by the server configuration, -# set this to no value. Example: mysql_sql_mode= (string -# value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle sql connections are reaped (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum db connection retries during startup. (setting -1 -# implies an infinite retry count) (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a sql connection -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with sqlalchemy -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information. 0=None, -# 100=Everything (integer value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add python stack traces to SQL as comment strings (boolean -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = False - -# If set, use this value for pool_timeout with sqlalchemy -# (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on -# connection lost (boolean value) -#use_db_reconnect = False - -# seconds between db connection retries (integer value) -#db_retry_interval = 1 - -# Whether to increase interval between db connection retries, -# up to db_max_retry_interval (boolean value) -#db_inc_retry_interval = True - -# max seconds between db connection retries, if -# db_inc_retry_interval is enabled (integer value) -#db_max_retry_interval = 10 - -# maximum db connection retries before error is raised. -# (setting -1 implies an infinite retry count) (integer value) -#db_max_retries = 20 - -[oslo_concurrency] - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -#disable_process_locking = false - -# Directory to use for lock files. For security, the specified -# directory should only be writable by the user running the processes -# that need locking. It could be read from environment variable -# OSLO_LOCK_PATH. This setting needs to be the same for both -# glance-scrubber and glance-api service. Default to a temp directory. -# Deprecated group/name - [DEFAULT]/lock_path (string value) -#lock_path = /tmp - -[keystone_authtoken] -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 -admin_tenant_name = service -admin_user = {{ GLANCE_SERVICE_USER }} -admin_password = {{ GLANCE_SERVICE_PASSWORD }} -revocation_cache_time = 10 - -[paste_deploy] -# Name of the paste configuration file that defines the available pipelines -#config_file = glance-api-paste.ini - -# Partial name of a pipeline in your paste configuration file with the -# service name removed. For example, if your paste section name is -# [pipeline:glance-api-keystone], you would configure the flavor below -# as 'keystone'. -flavor=keystone - -[store_type_location_strategy] -# The scheme list to use to get store preference order. The scheme must be -# registered by one of the stores defined by the 'stores' config option. -# This option will be applied when you using 'store_type' option as image -# location strategy defined by the 'location_strategy' config option. -#store_type_preference = - -[profiler] -# If False fully disable profiling feature. -#enabled = False - -# If False doesn't trace SQL requests. -#trace_sqlalchemy = False - -[task] -# ================= Glance Tasks Options ============================ - -# Specifies how long (in hours) a task is supposed to live in the tasks DB -# after succeeding or failing before getting soft-deleted. -# The default value for task_time_to_live is 48 hours. -# task_time_to_live = 48 - -# Specifies which task executor to be used to run the task scripts. -# The default value for task_executor is taskflow. -# task_executor = taskflow - -# Work dir for asynchronous task operations. The directory set here -# will be used to operate over images - normally before they are -# imported in the destination store. When providing work dir, make sure -# enough space is provided for concurrent tasks to run efficiently -# without running out of space. A rough estimation can be done by -# multiplying the number of `max_workers` - or the N of workers running -# - by an average image size (e.g 500MB). The image size estimation -# should be done based on the average size in your deployment. Note that -# depending on the tasks running you may need to multiply this number by -# some factor depending on what the task does. For example, you may want -# to double the available size if image conversion is enabled. All this -# being said, remember these are just estimations and you should do them -# based on the worst case scenario and be prepared to act in case they -# were wrong. -# work_dir=None - -# Specifies the maximum number of eventlet threads which can be spun up by -# the eventlet based task executor to perform execution of Glance tasks. -# DEPRECATED: Use [taskflow_executor]/max_workers instead. -# eventlet_executor_pool_size = 1000 - -[taskflow_executor] -# The mode in which the engine will run. Can be 'default', 'serial', -# 'parallel' or 'worker-based' -#engine_mode = serial - -# The number of parallel activities executed at the same time by -# the engine. The value can be greater than one when the engine mode is -# 'parallel' or 'worker-based', otherwise this value will be ignored. -#max_workers = 10 - -[glance_store] -# List of which store classes and store class locations are -# currently known to glance at startup. -# Deprecated group/name - [DEFAULT]/known_stores -# Existing but disabled stores: -# glance.store.rbd.Store, -# glance.store.s3.Store, -# glance.store.swift.Store, -# glance.store.sheepdog.Store, -# glance.store.cinder.Store, -# glance.store.gridfs.Store, -# glance.store.vmware_datastore.Store, -#stores = glance.store.filesystem.Store, -# glance.store.http.Store - -# Which backend scheme should Glance use by default is not specified -# in a request to add a new image to Glance? Known schemes are determined -# by the stores option. -# Deprecated group/name - [DEFAULT]/default_store -# Default: 'file' -default_store = file - -# ============ Filesystem Store Options ======================== - -# Directory that the Filesystem backend store -# writes image data to -filesystem_store_datadir = /var/lib/glance/images/ - -# A list of directories where image data can be stored. -# This option may be specified multiple times for specifying multiple store -# directories. Either one of filesystem_store_datadirs or -# filesystem_store_datadir option is required. A priority number may be given -# after each directory entry, separated by a ":". -# When adding an image, the highest priority directory will be selected, unless -# there is not enough space available in cases where the image size is already -# known. If no priority is given, it is assumed to be zero and the directory -# will be considered for selection last. If multiple directories have the same -# priority, then the one with the most free space available is selected. -# If same store is specified multiple times then BadStoreConfiguration -# exception will be raised. -#filesystem_store_datadirs = /var/lib/glance/images/:1 - -# A path to a JSON file that contains metadata describing the storage -# system. When show_multiple_locations is True the information in this -# file will be returned with any location that is contained in this -# store. -#filesystem_store_metadata_file = None - -# ============ Swift Store Options ============================= - -# Version of the authentication service to use -# Valid versions are '2' for keystone and '1' for swauth and rackspace -swift_store_auth_version = 2 - -# Address where the Swift authentication service lives -# Valid schemes are 'http://' and 'https://' -# If no scheme specified, default to 'https://' -# For swauth, use something like '127.0.0.1:8080/v1.0/' -swift_store_auth_address = 127.0.0.1:5000/v2.0/ - -# User to authenticate against the Swift authentication service -# If you use Swift authentication service, set it to 'account':'user' -# where 'account' is a Swift storage account and 'user' -# is a user in that account -swift_store_user = jdoe:jdoe - -# Auth key for the user authenticating against the -# Swift authentication service -swift_store_key = a86850deb2742ec3cb41518e26aa2d89 - -# Container within the account that the account should use -# for storing images in Swift -swift_store_container = glance - -# Do we create the container if it does not exist? -swift_store_create_container_on_put = False - -# What size, in MB, should Glance start chunking image files -# and do a large object manifest in Swift? By default, this is -# the maximum object size in Swift, which is 5GB -swift_store_large_object_size = 5120 - -# swift_store_config_file = glance-swift.conf -# This file contains references for each of the configured -# Swift accounts/backing stores. If used, this option can prevent -# credentials being stored in the database. Using Swift references -# is disabled if this config is left blank. - -# The reference to the default Swift parameters to use for adding new images. -# default_swift_reference = 'ref1' - -# When doing a large object manifest, what size, in MB, should -# Glance write chunks to Swift? This amount of data is written -# to a temporary disk buffer during the process of chunking -# the image file, and the default is 200MB -swift_store_large_object_chunk_size = 200 - -# If set, the configured endpoint will be used. If None, the storage URL -# from the auth response will be used. The location of an object is -# obtained by appending the container and object to the configured URL. -# -# swift_store_endpoint = https://www.example.com/v1/not_a_container -#swift_store_endpoint = - -# If set to True enables multi-tenant storage mode which causes Glance images -# to be stored in tenant specific Swift accounts. -#swift_store_multi_tenant = False - -# If set to an integer value between 1 and 32, a single-tenant store will -# use multiple containers to store images. If set to the default value of 0, -# only a single container will be used. Multi-tenant stores are not affected -# by this option. The max number of containers that will be used to store -# images is approximately 16^N where N is the value of this option. Discuss -# the impact of this with your swift deployment team, as this option is only -# beneficial in the largest of deployments where swift rate limiting can lead -# to unwanted throttling on a single container. -#swift_store_multiple_containers_seed = 0 - -# A list of swift ACL strings that will be applied as both read and -# write ACLs to the containers created by Glance in multi-tenant -# mode. This grants the specified tenants/users read and write access -# to all newly created image objects. The standard swift ACL string -# formats are allowed, including: -# : -# : -# *: -# Multiple ACLs can be combined using a comma separated list, for -# example: swift_store_admin_tenants = service:glance,*:admin -#swift_store_admin_tenants = - -# The region of the swift endpoint to be used for single tenant. This setting -# is only necessary if the tenant has multiple swift endpoints. -#swift_store_region = - -# If set to False, disables SSL layer compression of https swift requests. -# Setting to 'False' may improve performance for images which are already -# in a compressed format, eg qcow2. If set to True, enables SSL layer -# compression (provided it is supported by the target swift proxy). -#swift_store_ssl_compression = True - -# The number of times a Swift download will be retried before the -# request fails -#swift_store_retry_get_count = 0 - -# Bypass SSL verification for Swift -#swift_store_auth_insecure = False - -# The path to a CA certificate bundle file to use for SSL verification when -# communicating with Swift. -#swift_store_cacert = - -# ============ S3 Store Options ============================= - -# Address where the S3 authentication service lives -# Valid schemes are 'http://' and 'https://' -# If no scheme specified, default to 'http://' -s3_store_host = s3.amazonaws.com - -# User to authenticate against the S3 authentication service -s3_store_access_key = <20-char AWS access key> - -# Auth key for the user authenticating against the -# S3 authentication service -s3_store_secret_key = <40-char AWS secret key> - -# Container within the account that the account should use -# for storing images in S3. Note that S3 has a flat namespace, -# so you need a unique bucket name for your glance images. An -# easy way to do this is append your AWS access key to "glance". -# S3 buckets in AWS *must* be lowercased, so remember to lowercase -# your AWS access key if you use it in your bucket name below! -s3_store_bucket = glance - -# Do we create the bucket if it does not exist? -s3_store_create_bucket_on_put = False - -# When sending images to S3, the data will first be written to a -# temporary buffer on disk. By default the platform's temporary directory -# will be used. If required, an alternative directory can be specified here. -#s3_store_object_buffer_dir = /path/to/dir - -# When forming a bucket url, boto will either set the bucket name as the -# subdomain or as the first token of the path. Amazon's S3 service will -# accept it as the subdomain, but Swift's S3 middleware requires it be -# in the path. Set this to 'path' or 'subdomain' - defaults to 'subdomain'. -#s3_store_bucket_url_format = subdomain - -# Size, in MB, should S3 start chunking image files -# and do a multipart upload in S3. The default is 100MB. -#s3_store_large_object_size = 100 - -# Multipart upload part size, in MB, should S3 use when uploading -# parts. The size must be greater than or equal to -# 5MB. The default is 10MB. -#s3_store_large_object_chunk_size = 10 - -# The number of thread pools to perform a multipart upload -# in S3. The default is 10. -#s3_store_thread_pools = 10 - -# ============ RBD Store Options ============================= - -# Ceph configuration file path -# If using cephx authentication, this file should -# include a reference to the right keyring -# in a client. section -#rbd_store_ceph_conf = /etc/ceph/ceph.conf - -# RADOS user to authenticate as (only applicable if using cephx) -# If , a default will be chosen based on the client. section -# in rbd_store_ceph_conf -#rbd_store_user = - -# RADOS pool in which images are stored -#rbd_store_pool = images - -# RADOS images will be chunked into objects of this size (in megabytes). -# For best performance, this should be a power of two -#rbd_store_chunk_size = 8 - -# ============ Sheepdog Store Options ============================= - -sheepdog_store_address = localhost - -sheepdog_store_port = 7000 - -# Images will be chunked into objects of this size (in megabytes). -# For best performance, this should be a power of two -sheepdog_store_chunk_size = 64 - -# ============ Cinder Store Options =============================== - -# Info to match when looking for cinder in the service catalog -# Format is : separated values of the form: -# :: (string value) -#cinder_catalog_info = volume:cinder:publicURL - -# Override service catalog lookup with template for cinder endpoint -# e.g. http://localhost:8776/v1/%(project_id)s (string value) -#cinder_endpoint_template = - -# Region name of this node (string value) -#os_region_name = - -# Location of ca certicates file to use for cinder client requests -# (string value) -#cinder_ca_certificates_file = - -# Number of cinderclient retries on failed http calls (integer value) -#cinder_http_retries = 3 - -# Allow to perform insecure SSL requests to cinder (boolean value) -#cinder_api_insecure = False - -# ============ VMware Datastore Store Options ===================== - -# ESX/ESXi or vCenter Server target system. -# The server value can be an IP address or a DNS name -# e.g. 127.0.0.1, 127.0.0.1:443, www.vmware-infra.com -#vmware_server_host = - -# Server username (string value) -#vmware_server_username = - -# Server password (string value) -#vmware_server_password = - -# Inventory path to a datacenter (string value) -# Value optional when vmware_server_ip is an ESX/ESXi host: if specified -# should be `ha-datacenter`. -# Deprecated in favor of vmware_datastores. -#vmware_datacenter_path = - -# Datastore associated with the datacenter (string value) -# Deprecated in favor of vmware_datastores. -#vmware_datastore_name = - -# A list of datastores where the image can be stored. -# This option may be specified multiple times for specifying multiple -# datastores. Either one of vmware_datastore_name or vmware_datastores is -# required. The datastore name should be specified after its datacenter -# path, separated by ":". An optional weight may be given after the datastore -# name, separated again by ":". Thus, the required format becomes -# ::. -# When adding an image, the datastore with highest weight will be selected, -# unless there is not enough free space available in cases where the image size -# is already known. If no weight is given, it is assumed to be zero and the -# directory will be considered for selection last. If multiple datastores have -# the same weight, then the one with the most free space available is selected. -#vmware_datastores = - -# The number of times we retry on failures -# e.g., socket error, etc (integer value) -#vmware_api_retry_count = 10 - -# The interval used for polling remote tasks -# invoked on VMware ESX/VC server in seconds (integer value) -#vmware_task_poll_interval = 5 - -# Absolute path of the folder containing the images in the datastore -# (string value) -#vmware_store_image_dir = /openstack_glance - -# Allow to perform insecure SSL requests to the target system (boolean value) -#vmware_api_insecure = False diff --git a/install-files/openstack/usr/share/openstack/glance/glance-registry.conf b/install-files/openstack/usr/share/openstack/glance/glance-registry.conf deleted file mode 100644 index 40993d8d..00000000 --- a/install-files/openstack/usr/share/openstack/glance/glance-registry.conf +++ /dev/null @@ -1,268 +0,0 @@ -[DEFAULT] -# Show more verbose log output (sets INFO log level output) -#verbose = False - -# Show debugging output in logs (sets DEBUG log level output) -#debug = False - -# Address to bind the registry server -bind_host = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Port the bind the registry server to -bind_port = 9191 - -# Log to this file. Make sure you do not set the same log file for both the API -# and registry servers! -# -# If `log_file` is omitted and `use_syslog` is false, then log messages are -# sent to stdout as a fallback. -# log_file = /var/log/glance/registry.log - -# Backlog requests when creating socket -backlog = 4096 - -# TCP_KEEPIDLE value in seconds when creating socket. -# Not supported on OS X. -#tcp_keepidle = 600 - -# API to use for accessing data. Default value points to sqlalchemy -# package. -#data_api = glance.db.sqlalchemy.api - -# The number of child process workers that will be -# created to service Registry requests. The default will be -# equal to the number of CPUs available. (integer value) -#workers = None - -# Enable Registry API versions individually or simultaneously -#enable_v1_registry = True -#enable_v2_registry = True - -# Limit the api to return `param_limit_max` items in a call to a container. If -# a larger `limit` query param is provided, it will be reduced to this value. -api_limit_max = 1000 - -# If a `limit` query param is not provided in an api request, it will -# default to `limit_param_default` -limit_param_default = 25 - -# Role used to identify an authenticated user as administrator -#admin_role = admin - -# Enable DEBUG log messages from sqlalchemy which prints every database -# query and response. -# Default: False -#sqlalchemy_debug = True - -# http_keepalive option. If False, server will return the header -# "Connection: close", If True, server will return "Connection: Keep-Alive" -# in its responses. In order to close the client socket connection -# explicitly after the response is sent and read successfully by the client, -# you simply have to set this option to False when you create a wsgi server. -#http_keepalive = True - -# ================= Syslog Options ============================ - -# Send logs to syslog (/dev/log) instead of to file specified -# by `log_file` -use_syslog = True - -# Facility to use. If unset defaults to LOG_USER. -#syslog_log_facility = LOG_LOCAL1 - -# ================= SSL Options =============================== - -# Certificate file to use when starting registry server securely -#cert_file = /path/to/certfile - -# Private key file to use when starting registry server securely -#key_file = /path/to/keyfile - -# CA certificate file to use to verify connecting clients -#ca_file = /path/to/cafile - -# ============ Notification System Options ===================== - -# Driver or drivers to handle sending notifications. Set to -# 'messaging' to send notifications to a message queue. -notification_driver = messagingv2 - -# Default publisher_id for outgoing notifications. -# default_publisher_id = image.localhost - -# Messaging driver used for 'messaging' notifications driver -rpc_backend = 'rabbit' - -# Configuration options if sending notifications via rabbitmq (these are -# the defaults) -rabbit_host = {{ RABBITMQ_HOST }} -rabbit_port = {{ RABBITMQ_PORT }} -rabbit_use_ssl = false -rabbit_userid = {{ RABBITMQ_USER }} -rabbit_password = {{ RABBITMQ_PASSWORD }} -rabbit_virtual_host = / -rabbit_notification_exchange = glance -rabbit_notification_topic = notifications -rabbit_durable_queues = False - -# Configuration options if sending notifications via Qpid (these are -# the defaults) -#qpid_notification_exchange = glance -#qpid_notification_topic = notifications -#qpid_hostname = localhost -#qpid_port = 5672 -#qpid_username = -#qpid_password = -#qpid_sasl_mechanisms = -#qpid_reconnect_timeout = 0 -#qpid_reconnect_limit = 0 -#qpid_reconnect_interval_min = 0 -#qpid_reconnect_interval_max = 0 -#qpid_reconnect_interval = 0 -#qpid_heartbeat = 5 -# Set to 'ssl' to enable SSL -#qpid_protocol = tcp -#qpid_tcp_nodelay = True - - -# =============== Policy Options ============================== - -[oslo_policy] -# The JSON file that defines policies. -# Deprecated group/name - [DEFAULT]/policy_file -#policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. -# Deprecated group/name - [DEFAULT]/policy_default_rule -#policy_default_rule = default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. -# The file defined by policy_file must exist for these -# directories to be searched. -# Deprecated group/name - [DEFAULT]/policy_dirs -#policy_dirs = policy.d - -# ================= Database Options ========================== - -[database] -# The file name to use with SQLite (string value) -#sqlite_db = glance.sqlite - -# If True, SQLite uses synchronous mode (boolean value) -#sqlite_synchronous = True - -# The backend to use for db (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string used to connect to the -# database (string value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = -connection=postgresql://{{ GLANCE_DB_USER }}:{{ GLANCE_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/glance - -# The SQL mode to be used for MySQL sessions. This option, -# including the default, overrides any server-set SQL mode. To -# use whatever SQL mode is set by the server configuration, -# set this to no value. Example: mysql_sql_mode= (string -# value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle sql connections are reaped (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum db connection retries during startup. (setting -1 -# implies an infinite retry count) (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a sql connection -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with sqlalchemy -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information. 0=None, -# 100=Everything (integer value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add python stack traces to SQL as comment strings (boolean -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = False - -# If set, use this value for pool_timeout with sqlalchemy -# (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on -# connection lost (boolean value) -#use_db_reconnect = False - -# seconds between db connection retries (integer value) -#db_retry_interval = 1 - -# Whether to increase interval between db connection retries, -# up to db_max_retry_interval (boolean value) -#db_inc_retry_interval = True - -# max seconds between db connection retries, if -# db_inc_retry_interval is enabled (integer value) -#db_max_retry_interval = 10 - -# maximum db connection retries before error is raised. -# (setting -1 implies an infinite retry count) (integer value) -#db_max_retries = 20 - -[keystone_authtoken] -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 -admin_tenant_name = service -admin_user = {{ GLANCE_SERVICE_USER }} -admin_password = {{ GLANCE_SERVICE_PASSWORD }} - -[paste_deploy] -# Name of the paste configuration file that defines the available pipelines -#config_file = glance-registry-paste.ini - -# Partial name of a pipeline in your paste configuration file with the -# service name removed. For example, if your paste section name is -# [pipeline:glance-registry-keystone], you would configure the flavor below -# as 'keystone'. -flavor=keystone - -[profiler] -# If False fully disable profiling feature. -#enabled = False - -# If False doesn't trace SQL requests. -#trace_sqlalchemy = False diff --git a/install-files/openstack/usr/share/openstack/horizon.yml b/install-files/openstack/usr/share/openstack/horizon.yml deleted file mode 100644 index 1fec4ab0..00000000 --- a/install-files/openstack/usr/share/openstack/horizon.yml +++ /dev/null @@ -1,46 +0,0 @@ ---- -- hosts: localhost - tasks: - -# Setup apache, this may end up in apache.yml - - name: Create the apache user. - user: - name: apache - comment: Apache Server - shell: /sbin/nologin - home: /var/www - - - file: - path: /usr/sbin/suexec - group: apache - mode: 4750 - -# Setup horizon - - name: Create the horizon user. - user: - name: horizon - comment: Openstack Horizon User - shell: /sbin/nologin - home: /var/lib/horizon - - - name: Fix permissions in /var/lib/horizon - file: - path: /var/lib/horizon - state: directory - owner: horizon - group: horizon - recurse: yes - - - name: Link horizon apache configuration - file: - src: /etc/horizon/apache-horizon.conf - dest: /etc/httpd/conf.d/apache-horizon.conf - state: link - - - name: Enable and start apache services needed by horizon - service: - name: "{{ item }}" - enabled: yes - state: started - with_items: - - apache-httpd.service diff --git a/install-files/openstack/usr/share/openstack/hosts b/install-files/openstack/usr/share/openstack/hosts deleted file mode 100644 index 5b97818d..00000000 --- a/install-files/openstack/usr/share/openstack/hosts +++ /dev/null @@ -1 +0,0 @@ -localhost ansible_connection=local diff --git a/install-files/openstack/usr/share/openstack/ironic.yml b/install-files/openstack/usr/share/openstack/ironic.yml deleted file mode 100644 index 19906b04..00000000 --- a/install-files/openstack/usr/share/openstack/ironic.yml +++ /dev/null @@ -1,104 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/ironic.conf" - tasks: - - name: Create the ironic user - user: - name: ironic - comment: Openstack Ironic Daemons - shell: /sbin/nologin - home: /var/lib/ironic - - - name: Create the /var folders for Ironic - file: - path: "{{ item }}" - state: directory - owner: ironic - group: ironic - with_items: - - /var/run/ironic - - /var/lock/ironic - - /var/log/ironic - - /var/lib/ironic - - - file: path=/etc/ironic state=directory - - name: Add the configuration needed for ironic in /etc/ironic using templates - template: - src: /usr/share/openstack/ironic/{{ item }} - dest: /etc/ironic/{{ item }} - with_lines: - - cd /usr/share/openstack/ironic && find -type f - - - name: Create Ironic service user in service tenant - keystone_user: - user: "{{ IRONIC_SERVICE_USER }}" - password: "{{ IRONIC_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Assign admin role to Ironic service user in the service tenant - keystone_user: - role: admin - user: "{{ IRONIC_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add Ironic endpoint - keystone_service: - name: ironic - type: baremetal - description: Openstack Ironic Service - publicurl: 'http://{{ ansible_hostname }}:6385' - internalurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:6385' - adminurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:6385' - region: 'regionOne' - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for Ironic - postgresql_user: - name: "{{ IRONIC_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - password: "{{ IRONIC_DB_PASSWORD }}" - sudo: yes - sudo_user: ironic - - - name: Create database for Ironic services - postgresql_db: - name: ironic - owner: "{{ IRONIC_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - sudo: yes - sudo_user: ironic - - - name: Initiate Ironic database - # Use 'upgrade' instead of 'create_schema' to make the operation - # idempotent - shell: | - ironic-dbsync \ - --config-file /etc/ironic/ironic.conf upgrade - sudo: yes - sudo_user: ironic - - - name: Enable and start openstack-ironic services - service: - name: "{{ item }}" - enabled: yes - state: started - with_items: - - openstack-ironic-conductor.service - - openstack-ironic-api.service - - - name: Set owner and group for the tftp root directory - file: - path: "/srv/tftp_root/" - state: directory - owner: ironic - group: ironic - recurse: yes - - - name: Enable and start tftp-hpa - service: - name: tftp-hpa.socket - enabled: yes - state: started diff --git a/install-files/openstack/usr/share/openstack/ironic/ironic.conf b/install-files/openstack/usr/share/openstack/ironic/ironic.conf deleted file mode 100644 index a5b5d2e3..00000000 --- a/install-files/openstack/usr/share/openstack/ironic/ironic.conf +++ /dev/null @@ -1,1568 +0,0 @@ -[DEFAULT] - -# -# Options defined in oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet -# interface, or IP. The "host" option should point or resolve -# to this address. (string value) -#rpc_zmq_bind_address=* - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker=oslo_messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port=9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts=1 - -# Maximum number of ingress messages to locally buffer per -# topic. Default is unlimited. (integer value) -#rpc_zmq_topic_backlog= - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir=/var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP -# address. Must match "host" option, if running Nova. (string -# value) -#rpc_zmq_host=ironic - -# Seconds to wait before a cast expires (TTL). Only supported -# by impl_zmq. (integer value) -#rpc_cast_timeout=30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq=300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl=600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size=64 - -# Driver or drivers to handle sending notifications. (multi -# valued) -#notification_driver= - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics=notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout=60 - -# A URL representing the messaging driver to use and its full -# configuration. If not set, we fall back to the rpc_backend -# option and driver specific configuration. (string value) -#transport_url= - -# The messaging driver to use, defaults to rabbit. Other -# drivers include qpid and zmq. (string value) -#rpc_backend=rabbit - -# The default exchange under which topics are scoped. May be -# overridden by an exchange name specified in the -# transport_url option. (string value) -#control_exchange=openstack - - -# -# Options defined in ironic.netconf -# - -# IP address of this host. (string value) -my_ip = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - - -# -# Options defined in ironic.api.app -# - -# Method to use for authentication: noauth or keystone. -# (string value) -#auth_strategy=keystone - -# Enable pecan debug mode. WARNING: this is insecure and -# should not be used in production. (boolean value) -#pecan_debug=false - - -# -# Options defined in ironic.common.driver_factory -# - -# Specify the list of drivers to load during service -# initialization. Missing drivers, or drivers which fail to -# initialize, will prevent the conductor service from -# starting. The option default is a recommended set of -# production-oriented drivers. A complete list of drivers -# present on your system may be found by enumerating the -# "ironic.drivers" entrypoint. An example may be found in the -# developer documentation online. (list value) -enabled_drivers=pxe_ipmitool,pxe_ssh - - -# -# Options defined in ironic.common.exception -# - -# Make exception message format errors fatal. (boolean value) -#fatal_exception_format_errors=false - - -# -# Options defined in ironic.common.hash_ring -# - -# Exponent to determine number of hash partitions to use when -# distributing load across conductors. Larger values will -# result in more even distribution of load and less load when -# rebalancing the ring, but more memory usage. Number of -# partitions per conductor is (2^hash_partition_exponent). -# This determines the granularity of rebalancing: given 10 -# hosts, and an exponent of the 2, there are 40 partitions in -# the ring.A few thousand partitions should make rebalancing -# smooth in most cases. The default is suitable for up to a -# few hundred conductors. Too many partitions has a CPU -# impact. (integer value) -#hash_partition_exponent=5 - -# [Experimental Feature] Number of hosts to map onto each hash -# partition. Setting this to more than one will cause -# additional conductor services to prepare deployment -# environments and potentially allow the Ironic cluster to -# recover more quickly if a conductor instance is terminated. -# (integer value) -#hash_distribution_replicas=1 - - -# -# Options defined in ironic.common.images -# - -# Force backing images to raw format. (boolean value) -#force_raw_images=true - -# Path to isolinux binary file. (string value) -#isolinux_bin=/usr/lib/syslinux/isolinux.bin - -# Template file for isolinux configuration file. (string -# value) -#isolinux_config_template=$pybasedir/common/isolinux_config.template - -# Template file for grub configuration file. (string value) -#grub_config_template=$pybasedir/common/grub_conf.template - - -# -# Options defined in ironic.common.paths -# - -# Directory where the ironic python module is installed. -# (string value) -#pybasedir=/usr/lib/python/site-packages/ironic - -# Directory where ironic binaries are installed. (string -# value) -#bindir=$pybasedir/bin - -# Top-level directory for maintaining ironic's state. (string -# value) -#state_path=$pybasedir - - -# -# Options defined in ironic.common.service -# - -# Seconds between running periodic tasks. (integer value) -#periodic_interval=60 - -# Name of this node. This can be an opaque identifier. It is -# not necessarily a hostname, FQDN, or IP address. However, -# the node name must be valid within an AMQP key, and if using -# ZeroMQ, a valid hostname, FQDN, or IP address. (string -# value) -#host=ironic - - -# -# Options defined in ironic.common.utils -# - -# Path to the rootwrap configuration file to use for running -# commands as root. (string value) -#rootwrap_config=/etc/ironic/rootwrap.conf - -# Explicitly specify the temporary working directory. (string -# value) -#tempdir= - - -# -# Options defined in ironic.drivers.modules.image_cache -# - -# Run image downloads and raw format conversions in parallel. -# (boolean value) -#parallel_image_downloads=false - - -# -# Options defined in ironic.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , -# and :, where 0 results in listening on a random -# tcp port number; results in listening on the -# specified port number (and not enabling backdoor if that -# port is in use); and : results in listening on -# the smallest unused port number within the specified range -# of port numbers. The chosen port is displayed in the -# service's log file. (string value) -#backdoor_port= - - -# -# Options defined in ironic.openstack.common.log -# - -# Print debugging output (set logging level to DEBUG instead -# of default WARNING level). (boolean value) -#debug=false - -# Print more verbose output (set logging level to INFO instead -# of default WARNING level). (boolean value) -#verbose=false - -# Log output to standard error. (boolean value) -#use_stderr=true - -# Format string to use for log messages with context. (string -# value) -#logging_context_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. -# (string value) -#logging_default_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string -# value) -#logging_debug_format_suffix=%(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. -# (string value) -#logging_exception_prefix=%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean -# value) -#publish_errors=false - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - -# The format for an instance that is passed with the log -# message. (string value) -#instance_format="[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log -# message. (string value) -#instance_uuid_format="[instance: %(uuid)s] " - -# The name of a logging configuration file. This file is -# appended to any existing logging configuration files. For -# details about logging configuration files, see the Python -# logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append= - -# DEPRECATED. A logging.Formatter log message format string -# which may use any of the available logging.LogRecord -# attributes. This option is deprecated. Please use -# logging_context_format_string and -# logging_default_format_string instead. (string value) -#log_format= - -# Format string for %%(asctime)s in log records. Default: -# %(default)s . (string value) -#log_date_format=%Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is -# set, logging will go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file= - -# (Optional) The base directory used for relative --log-file -# paths. (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir= - -# Use syslog for logging. Existing syslog format is DEPRECATED -# during I, and will change in J to honor RFC5424. (boolean -# value) -use_syslog=true - -# (Optional) Enables or disables syslog rfc5424 format for -# logging. If enabled, prefixes the MSG part of the syslog -# message with APP-NAME (RFC5424). The format without the APP- -# NAME is deprecated in I, and will be removed in J. (boolean -# value) -#use_syslog_rfc_format=false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility=LOG_USER - - -# -# Options defined in ironic.openstack.common.periodic_task -# - -# Some periodic tasks can be run in a separate process. Should -# we run them here? (boolean value) -#run_external_periodic_tasks=true - - -# -# Options defined in ironic.openstack.common.versionutils -# - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - - -[agent] - -# -# Options defined in ironic.drivers.modules.agent -# - -# Additional append parameters for baremetal PXE boot. (string -# value) -#agent_pxe_append_params=nofb nomodeset vga=normal - -# Template file for PXE configuration. (string value) -#agent_pxe_config_template=$pybasedir/drivers/modules/agent_config.template - -# Neutron bootfile DHCP parameter. (string value) -#agent_pxe_bootfile_name=pxelinux.0 - -# Priority to run in-band erase devices via the Ironic Python -# Agent ramdisk. If unset, will use the priority set in the -# ramdisk (defaults to 10 for the GenericHardwareManager). If -# set to 0, will not run during cleaning. (integer value) -#agent_erase_devices_priority= - -# Whether Ironic will manage TFTP files for the deploy -# ramdisks. If set to False, you will need to configure your -# own TFTP server that allows booting the deploy ramdisks. -# (boolean value) -#manage_tftp=true - -# -# Options defined in ironic.drivers.modules.agent_base_vendor -# - -# Maximum interval (in seconds) for agent heartbeats. (integer -# value) -#heartbeat_timeout=300 - - -# -# Options defined in ironic.drivers.modules.agent_client -# - -# API version to use for communicating with the ramdisk agent. -# (string value) -#agent_api_version=v1 - - -[amt] - -# -# Options defined in ironic.drivers.modules.amt.common -# - -# Protocol used for AMT endpoint, support http/https (string -# value) -#protocol=http - - -# -# Options defined in ironic.drivers.modules.amt.power -# - -# Maximum number of times to attempt an AMT operation, before -# failing (integer value) -#max_attempts=3 - -# Amount of time (in seconds) to wait, before retrying an AMT -# operation (integer value) -#action_wait=10 - - -[api] - -# -# Options defined in ironic.api -# - -# The listen IP for the Ironic API server. (string value) -#host_ip=0.0.0.0 - -# The port for the Ironic API server. (integer value) -#port=6385 - -# The maximum number of items returned in a single response -# from a collection resource. (integer value) -#max_limit=1000 - - -[conductor] - -# -# Options defined in ironic.conductor.manager -# - -# URL of Ironic API service. If not set ironic can get the -# current value from the keystone service catalog. (string -# value) -api_url = http://{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}:6385 - -# Seconds between conductor heart beats. (integer value) -#heartbeat_interval=10 - -# Maximum time (in seconds) since the last check-in of a -# conductor. (integer value) -#heartbeat_timeout=60 - -# Interval between syncing the node power state to the -# database, in seconds. (integer value) -#sync_power_state_interval=60 - -# Interval between checks of provision timeouts, in seconds. -# (integer value) -#check_provision_state_interval=60 - -# Timeout (seconds) for waiting callback from deploy ramdisk. -# 0 - unlimited. (integer value) -#deploy_callback_timeout=1800 - -# During sync_power_state, should the hardware power state be -# set to the state recorded in the database (True) or should -# the database be updated based on the hardware state (False). -# (boolean value) -#force_power_state_during_sync=true - -# During sync_power_state failures, limit the number of times -# Ironic should try syncing the hardware node power state with -# the node power state in DB (integer value) -#power_state_sync_max_retries=3 - -# Maximum number of worker threads that can be started -# simultaneously by a periodic task. Should be less than RPC -# thread pool size. (integer value) -#periodic_max_workers=8 - -# The size of the workers greenthread pool. (integer value) -#workers_pool_size=100 - -# Number of attempts to grab a node lock. (integer value) -#node_locked_retry_attempts=3 - -# Seconds to sleep between node lock attempts. (integer value) -#node_locked_retry_interval=1 - -# Enable sending sensor data message via the notification bus -# (boolean value) -#send_sensor_data=false - -# Seconds between conductor sending sensor data message to -# ceilometer via the notification bus. (integer value) -#send_sensor_data_interval=600 - -# List of comma separated metric types which need to be sent -# to Ceilometer. The default value, "ALL", is a special value -# meaning send all the sensor data. (list value) -#send_sensor_data_types=ALL - -# When conductors join or leave the cluster, existing -# conductors may need to update any persistent local state as -# nodes are moved around the cluster. This option controls how -# often, in seconds, each conductor will check for nodes that -# it should "take over". Set it to a negative value to disable -# the check entirely. (integer value) -#sync_local_state_interval=180 - -# Whether to upload the config drive to Swift. (boolean value) -#configdrive_use_swift=false - -# Name of the Swift container to store config drive data. Used -# when configdrive_use_swift is True. (string value) -#configdrive_swift_container=ironic_configdrive_container - -# Timeout (seconds) for waiting for node inspection. 0 - -# unlimited. (integer value) -#inspect_timeout=1800 - -# Cleaning is a configurable set of steps, such as erasing -# disk drives, that are performed on the node to ensure it is -# in a baseline state and ready to be deployed to. This is -# done after instance deletion, and during the transition from -# a "managed" to "available" state. When enabled, the -# particular steps performed to clean a node depend on which -# driver that node is managed by; see the individual driver's -# documentation for details. NOTE: The introduction of the -# cleaning operation causes instance deletion to take -# significantly longer. In an environment where all tenants -# are trusted (eg, because there is only one tenant), this -# option could be safely disabled. (boolean value) -#clean_nodes=true - - -[console] - -# -# Options defined in ironic.drivers.modules.console_utils -# - -# Path to serial console terminal program (string value) -#terminal=shellinaboxd - -# Directory containing the terminal SSL cert(PEM) for serial -# console access (string value) -#terminal_cert_dir= - -# Directory for holding terminal pid files. If not specified, -# the temporary directory will be used. (string value) -#terminal_pid_dir= - -# Time interval (in seconds) for checking the status of -# console subprocess. (integer value) -#subprocess_checking_interval=1 - -# Time (in seconds) to wait for the console subprocess to -# start. (integer value) -#subprocess_timeout=10 - - -[database] - -# -# Options defined in oslo.db -# - -# The file name to use with SQLite. (string value) -#sqlite_db=oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -#sqlite_synchronous=true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend=sqlalchemy - -# The SQLAlchemy connection string to use to connect to the -# database. (string value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -connection = postgresql://{{ IRONIC_DB_USER}}:{{ IRONIC_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/ironic - -# The SQLAlchemy connection string to use to connect to the -# slave database. (string value) -#slave_connection= - -# The SQL mode to be used for MySQL sessions. This option, -# including the default, overrides any server-set SQL mode. To -# use whatever SQL mode is set by the server configuration, -# set this to no value. Example: mysql_sql_mode= (string -# value) -#mysql_sql_mode=TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout=3600 - -# Minimum number of SQL connections to keep open in a pool. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size=1 - -# Maximum number of SQL connections to keep open in a pool. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size= - -# Maximum number of database connection retries during -# startup. Set to -1 to specify an infinite retry count. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries=10 - -# Interval between retries of opening a SQL connection. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval=10 - -# If set, use this value for max_overflow with SQLAlchemy. -# (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow= - -# Verbosity of SQL debugging information: 0=None, -# 100=Everything. (integer value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug=0 - -# Add Python stack traces to SQL as comment strings. (boolean -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace=false - -# If set, use this value for pool_timeout with SQLAlchemy. -# (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout= - -# Enable the experimental use of database reconnect on -# connection lost. (boolean value) -#use_db_reconnect=false - -# Seconds between retries of a database transaction. (integer -# value) -#db_retry_interval=1 - -# If True, increases the interval between retries of a -# database operation up to db_max_retry_interval. (boolean -# value) -#db_inc_retry_interval=true - -# If db_inc_retry_interval is set, the maximum seconds between -# retries of a database operation. (integer value) -#db_max_retry_interval=10 - -# Maximum retries in case of connection error or deadlock -# error before error is raised. Set to -1 to specify an -# infinite retry count. (integer value) -#db_max_retries=20 - - -# -# Options defined in ironic.db.sqlalchemy.models -# - -# MySQL engine to use. (string value) -#mysql_engine=InnoDB - - -[deploy] - -# -# Options defined in ironic.drivers.modules.deploy_utils -# - -# Size of EFI system partition in MiB when configuring UEFI -# systems for local boot. (integer value) -#efi_system_partition_size=200 - -# Block size to use when writing to the nodes disk. (string -# value) -#dd_block_size=1M - -# Maximum attempts to verify an iSCSI connection is active, -# sleeping 1 second between attempts. (integer value) -#iscsi_verify_attempts=3 - - -[dhcp] - -# -# Options defined in ironic.common.dhcp_factory -# - -# DHCP provider to use. "neutron" uses Neutron, and "none" -# uses a no-op provider. (string value) -#dhcp_provider=neutron - - -[discoverd] - -# -# Options defined in ironic.drivers.modules.discoverd -# - -# whether to enable inspection using ironic-discoverd (boolean -# value) -#enabled=false - -# ironic-discoverd HTTP endpoint. If this is not set, the -# ironic-discoverd client default (http://127.0.0.1:5050) will -# be used. (string value) -#service_url= - -# period (in seconds) to check status of nodes on inspection -# (integer value) -#status_check_period=60 - - -[disk_partitioner] - -# -# Options defined in ironic.common.disk_partitioner -# - -# After Ironic has completed creating the partition table, it -# continues to check for activity on the attached iSCSI device -# status at this interval prior to copying the image to the -# node, in seconds (integer value) -#check_device_interval=1 - -# The maximum number of times to check that the device is not -# accessed by another process. If the device is still busy -# after that, the disk partitioning will be treated as having -# failed. (integer value) -#check_device_max_retries=20 - - -[glance] - -# -# Options defined in ironic.common.glance_service.v2.image_service -# - -# A list of URL schemes that can be downloaded directly via -# the direct_url. Currently supported schemes: [file]. (list -# value) -#allowed_direct_url_schemes= - -# The secret token given to Swift to allow temporary URL -# downloads. Required for temporary URLs. (string value) -#swift_temp_url_key= - -# The length of time in seconds that the temporary URL will be -# valid for. Defaults to 20 minutes. If some deploys get a 401 -# response code when trying to download from the temporary -# URL, try raising this duration. (integer value) -#swift_temp_url_duration=1200 - -# The "endpoint" (scheme, hostname, optional port) for the -# Swift URL of the form -# "endpoint_url/api_version/account/container/object_id". Do -# not include trailing "/". For example, use -# "https://swift.example.com". Required for temporary URLs. -# (string value) -#swift_endpoint_url= - -# The Swift API version to create a temporary URL for. -# Defaults to "v1". Swift temporary URL format: -# "endpoint_url/api_version/account/container/object_id" -# (string value) -#swift_api_version=v1 - -# The account that Glance uses to communicate with Swift. The -# format is "AUTH_uuid". "uuid" is the UUID for the account -# configured in the glance-api.conf. Required for temporary -# URLs. For example: -# "AUTH_a422b2-91f3-2f46-74b7-d7c9e8958f5d30". Swift temporary -# URL format: -# "endpoint_url/api_version/account/container/object_id" -# (string value) -#swift_account= - -# The Swift container Glance is configured to store its images -# in. Defaults to "glance", which is the default in glance- -# api.conf. Swift temporary URL format: -# "endpoint_url/api_version/account/container/object_id" -# (string value) -#swift_container=glance - -# This should match a config by the same name in the Glance -# configuration file. When set to 0, a single-tenant store -# will only use one container to store all images. When set to -# an integer value between 1 and 32, a single-tenant store -# will use multiple containers to store images, and this value -# will determine how many containers are created. (integer -# value) -#swift_store_multiple_containers_seed=0 - - -# -# Options defined in ironic.common.image_service -# - -# Default glance hostname or IP address. (string value) -glance_host = {{ CONTROLLER_HOST_ADDRESS }} - -# Default glance port. (integer value) -#glance_port=9292 - -# Default protocol to use when connecting to glance. Set to -# https for SSL. (string value) -#glance_protocol=http - -# A list of the glance api servers available to ironic. Prefix -# with https:// for SSL-based glance API servers. Format is -# [hostname|IP]:port. (list value) -#glance_api_servers= - -# Allow to perform insecure SSL (https) requests to glance. -# (boolean value) -#glance_api_insecure=false - -# Number of retries when downloading an image from glance. -# (integer value) -#glance_num_retries=0 - -# Authentication strategy to use when connecting to glance. -# Only "keystone" and "noauth" are currently supported by -# ironic. (string value) -#auth_strategy=keystone - - -[ilo] - -# -# Options defined in ironic.drivers.modules.ilo.common -# - -# Timeout (in seconds) for iLO operations (integer value) -#client_timeout=60 - -# Port to be used for iLO operations (integer value) -#client_port=443 - -# The Swift iLO container to store data. (string value) -#swift_ilo_container=ironic_ilo_container - -# Amount of time in seconds for Swift objects to auto-expire. -# (integer value) -#swift_object_expiry_timeout=900 - - -# -# Options defined in ironic.drivers.modules.ilo.deploy -# - -# Priority for erase devices clean step. If unset, it defaults -# to 10. If set to 0, the step will be disabled and will not -# run during cleaning. (integer value) -#clean_priority_erase_devices= - - -# -# Options defined in ironic.drivers.modules.ilo.management -# - -# Priority for reset_ilo clean step. (integer value) -#clean_priority_reset_ilo=1 - -# Priority for reset_bios_to_default clean step. (integer -# value) -#clean_priority_reset_bios_to_default=10 - -# Priority for reset_secure_boot_keys clean step. This step -# will reset the secure boot keys to manufacturing defaults. -# (integer value) -#clean_priority_reset_secure_boot_keys_to_default=20 - -# Priority for clear_secure_boot_keys clean step. This step is -# not enabled by default. It can be enabled to to clear all -# secure boot keys enrolled with iLO. (integer value) -#clean_priority_clear_secure_boot_keys=0 - -# Priority for reset_ilo_credential clean step. This step -# requires "ilo_change_password" parameter to be updated in -# nodes's driver_info with the new password. (integer value) -#clean_priority_reset_ilo_credential=30 - - -# -# Options defined in ironic.drivers.modules.ilo.power -# - -# Number of times a power operation needs to be retried -# (integer value) -#power_retry=6 - -# Amount of time in seconds to wait in between power -# operations (integer value) -#power_wait=2 - - -[ipmi] - -# -# Options defined in ironic.drivers.modules.ipminative -# - -# Maximum time in seconds to retry IPMI operations. There is a -# tradeoff when setting this value. Setting this too low may -# cause older BMCs to crash and require a hard reset. However, -# setting too high can cause the sync power state periodic -# task to hang when there are slow or unresponsive BMCs. -# (integer value) -#retry_timeout=60 - -# Minimum time, in seconds, between IPMI operations sent to a -# server. There is a risk with some hardware that setting this -# too low may cause the BMC to crash. Recommended setting is 5 -# seconds. (integer value) -#min_command_interval=5 - - -[irmc] - -# -# Options defined in ironic.drivers.modules.irmc.common -# - -# Port to be used for iRMC operations, either 80 or 443 -# (integer value) -#port=443 - -# Authentication method to be used for iRMC operations, either -# "basic" or "digest" (string value) -#auth_method=basic - -# Timeout (in seconds) for iRMC operations (integer value) -#client_timeout=60 - -# Sensor data retrieval method, either "ipmitool" or "scci" -# (string value) -#sensor_method=ipmitool - - -[keystone] - -# -# Options defined in ironic.common.keystone -# - -# The region used for getting endpoints of OpenStackservices. -# (string value) -#region_name= - - -[keystone_authtoken] - -# -# Options defined in keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - -# API version of the admin Identity API endpoint. (string -# value) -#auth_version= - -# Do not handle authorization requests within the middleware, -# but delegate the authorization decision to downstream WSGI -# components. (boolean value) -#delay_auth_decision=false - -# Request timeout value for communicating with Identity API -# server. (integer value) -#http_connect_timeout= - -# How many times are we trying to reconnect when communicating -# with Identity API Server. (integer value) -#http_request_max_retries=3 - -# Env key for the swift cache. (string value) -#cache= - -# Required if identity server requires client certificate -# (string value) -#certfile= - -# Required if identity server requires client certificate -# (string value) -#keyfile= - -# A PEM encoded Certificate Authority to use when verifying -# HTTPs connections. Defaults to system CAs. (string value) -#cafile= - -# Verify HTTPS connections. (boolean value) -#insecure=false - -# Directory used to cache files related to PKI tokens. (string -# value) -#signing_dir= - -# Optionally specify a list of memcached server(s) to use for -# caching. If left undefined, tokens will instead be cached -# in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers= - -# In order to prevent excessive effort spent validating -# tokens, the middleware caches previously-seen tokens for a -# configurable duration (in seconds). Set to -1 to disable -# caching completely. (integer value) -#token_cache_time=300 - -# Determines the frequency at which the list of revoked tokens -# is retrieved from the Identity service (in seconds). A high -# number of revocation events combined with a low cache -# duration may significantly reduce performance. (integer -# value) -#revocation_cache_time=10 - -# (Optional) If defined, indicate whether token data should be -# authenticated or authenticated and encrypted. Acceptable -# values are MAC or ENCRYPT. If MAC, token data is -# authenticated (with HMAC) in the cache. If ENCRYPT, token -# data is encrypted and authenticated in the cache. If the -# value is not one of these options or empty, auth_token will -# raise an exception on initialization. (string value) -#memcache_security_strategy= - -# (Optional, mandatory if memcache_security_strategy is -# defined) This string is used for key derivation. (string -# value) -#memcache_secret_key= - -# (Optional) Number of seconds memcached server is considered -# dead before it is tried again. (integer value) -#memcache_pool_dead_retry=300 - -# (Optional) Maximum total number of open connections to every -# memcached server. (integer value) -#memcache_pool_maxsize=10 - -# (Optional) Socket timeout in seconds for communicating with -# a memcache server. (integer value) -#memcache_pool_socket_timeout=3 - -# (Optional) Number of seconds a connection to memcached is -# held unused in the pool before it is closed. (integer value) -#memcache_pool_unused_timeout=60 - -# (Optional) Number of seconds that an operation will wait to -# get a memcache client connection from the pool. (integer -# value) -#memcache_pool_conn_get_timeout=10 - -# (Optional) Use the advanced (eventlet safe) memcache client -# pool. The advanced pool will only work under python 2.x. -# (boolean value) -#memcache_use_advanced_pool=false - -# (Optional) Indicate whether to set the X-Service-Catalog -# header. If False, middleware will not ask for service -# catalog on token validation and will not set the X-Service- -# Catalog header. (boolean value) -#include_service_catalog=true - -# Used to control the use and type of token binding. Can be -# set to: "disabled" to not check token binding. "permissive" -# (default) to validate binding information if the bind type -# is of a form known to the server and ignore it if not. -# "strict" like "permissive" but if the bind type is unknown -# the token will be rejected. "required" any form of token -# binding is needed to be allowed. Finally the name of a -# binding method that must be present in tokens. (string -# value) -#enforce_token_bind=permissive - -# If true, the revocation list will be checked for cached -# tokens. This requires that PKI tokens are configured on the -# identity server. (boolean value) -#check_revocations_for_cached=false - -# Hash algorithms to use for hashing PKI tokens. This may be a -# single algorithm or multiple. The algorithms are those -# supported by Python standard hashlib.new(). The hashes will -# be tried in the order given, so put the preferred one first -# for performance. The result of the first hash will be stored -# in the cache. This will typically be set to multiple values -# only while migrating from a less secure algorithm to a more -# secure one. Once all the old tokens are expired this option -# should be set to a single value for better performance. -# (list value) -#hash_algorithms=md5 - -# Prefix to prepend at the beginning of the path. Deprecated, -# use identity_uri. (string value) -#auth_admin_prefix= - -# Host providing the admin Identity API endpoint. Deprecated, -# use identity_uri. (string value) -#auth_host=127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use -# identity_uri. (integer value) -#auth_port=35357 - -# Protocol of the admin Identity API endpoint (http or https). -# Deprecated, use identity_uri. (string value) -#auth_protocol=https - -# Complete admin Identity API endpoint. This should specify -# the unversioned root endpoint e.g. https://localhost:35357/ -# (string value) -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 - -# This option is deprecated and may be removed in a future -# release. Single shared secret with the Keystone -# configuration used for bootstrapping a Keystone -# installation, or otherwise bypassing the normal -# authentication process. This option should not be used, use -# `admin_user` and `admin_password` instead. (string value) -#admin_token= - -# Service username. (string value) -admin_user = {{ IRONIC_SERVICE_USER }} - -# Service user password. (string value) -admin_password = {{ IRONIC_SERVICE_PASSWORD }} - -# Service tenant name. (string value) -admin_tenant_name=service - - -[matchmaker_redis] - -# -# Options defined in oslo.messaging -# - -# Host to locate redis. (string value) -#host=127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port=6379 - -# Password for Redis server (optional). (string value) -#password= - - -[matchmaker_ring] - -# -# Options defined in oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile=/etc/oslo/matchmaker_ring.json - - -[neutron] - -# -# Options defined in ironic.dhcp.neutron -# - -# URL for connecting to neutron. (string value) -url = http://{{ CONTROLLER_HOST_ADDRESS }}:9696 - -# Timeout value for connecting to neutron in seconds. (integer -# value) -#url_timeout=30 - -# Client retries in the case of a failed request. (integer -# value) -#retries=3 - -# Default authentication strategy to use when connecting to -# neutron. Can be either "keystone" or "noauth". Running -# neutron in noauth mode (related to but not affected by this -# setting) is insecure and should only be used for testing. -# (string value) -#auth_strategy=keystone - -# UUID of the network to create Neutron ports on when booting -# to a ramdisk for cleaning/zapping using Neutron DHCP (string -# value) -#cleaning_network_uuid= - - -[oslo_concurrency] - -# -# Options defined in oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -#disable_process_locking=false - -# Directory to use for lock files. For security, the -# specified directory should only be writable by the user -# running the processes that need locking. Defaults to -# environment variable OSLO_LOCK_PATH. If external locks are -# used, a lock path must be set. (string value) -#lock_path= - - -[oslo_messaging_amqp] - -# -# Options defined in oslo.messaging -# - -# address prefix used when sending to a specific server -# (string value) -#server_request_prefix=exclusive - -# address prefix used when broadcasting to all servers (string -# value) -#broadcast_prefix=broadcast - -# address prefix when sending to any server in group (string -# value) -#group_request_prefix=unicast - -# Name for the AMQP container (string value) -#container_name= - -# Timeout for inactive connections (in seconds) (integer -# value) -#idle_timeout=0 - -# Debug: dump AMQP frames to stdout (boolean value) -#trace=false - -# CA certificate PEM file for verifing server certificate -# (string value) -#ssl_ca_file= - -# Identifying certificate PEM file to present to clients -# (string value) -#ssl_cert_file= - -# Private key PEM file used to sign cert_file certificate -# (string value) -#ssl_key_file= - -# Password for decrypting ssl_key_file (if encrypted) (string -# value) -#ssl_key_password= - -# Accept clients using either SSL or plain TCP (boolean value) -#allow_insecure_clients=false - - -[oslo_messaging_qpid] - -# -# Options defined in oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues=false - -# Auto-delete queues in AMQP. (boolean value) -#amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size=30 - -# Qpid broker hostname. (string value) -#qpid_hostname=localhost - -# Qpid broker port. (integer value) -#qpid_port=5672 - -# Qpid HA cluster host:port pairs. (list value) -#qpid_hosts=$qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -#qpid_username= - -# Password for Qpid connection. (string value) -#qpid_password= - -# Space separated list of SASL mechanisms to use for auth. -# (string value) -#qpid_sasl_mechanisms= - -# Seconds between connection keepalive heartbeats. (integer -# value) -#qpid_heartbeat=60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -#qpid_protocol=tcp - -# Whether to disable the Nagle algorithm. (boolean value) -#qpid_tcp_nodelay=true - -# The number of prefetched messages held by receiver. (integer -# value) -#qpid_receiver_capacity=1 - -# The qpid topology version to use. Version 1 is what was -# originally used by impl_qpid. Version 2 includes some -# backwards-incompatible changes that allow broker federation -# to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. -# (integer value) -#qpid_topology_version=1 - - -[oslo_messaging_rabbit] - -# -# Options defined in oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues=false - -# Auto-delete queues in AMQP. (boolean value) -#amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size=30 - -# SSL version to use (valid only if SSL enabled). Valid values -# are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may -# be available on some distributions. (string value) -#kombu_ssl_version= - -# SSL key file (valid only if SSL enabled). (string value) -#kombu_ssl_keyfile= - -# SSL cert file (valid only if SSL enabled). (string value) -#kombu_ssl_certfile= - -# SSL certification authority file (valid only if SSL -# enabled). (string value) -#kombu_ssl_ca_certs= - -# How long to wait before reconnecting in response to an AMQP -# consumer cancel notification. (floating point value) -#kombu_reconnect_delay=1.0 - -# The RabbitMQ broker address where a single node is used. -# (string value) -rabbit_host = {{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. -# (integer value) -rabbit_port = {{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -#rabbit_hosts=$rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -#rabbit_use_ssl=false - -# The RabbitMQ userid. (string value) -rabbit_userid = {{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -rabbit_password = {{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -#rabbit_login_method=AMQPLAIN - -# The RabbitMQ virtual host. (string value) -#rabbit_virtual_host=/ - -# How frequently to retry connecting with RabbitMQ. (integer -# value) -#rabbit_retry_interval=1 - -# How long to backoff for between retries when connecting to -# RabbitMQ. (integer value) -#rabbit_retry_backoff=2 - -# Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -#rabbit_max_retries=0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change -# this option, you must wipe the RabbitMQ database. (boolean -# value) -#rabbit_ha_queues=false - -# Number of seconds after which the Rabbit broker is -# considered down if heartbeat's keep-alive fails (0 disable -# the heartbeat). (integer value) -#heartbeat_timeout_threshold=60 - -# How often times during the heartbeat_timeout_threshold we -# check the heartbeat. (integer value) -#heartbeat_rate=2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake -# (boolean value) -#fake_rabbit=false - - -[oslo_policy] - -# -# Options defined in oslo.policy -# - -# The JSON file that defines policies. (string value) -#policy_file=policy.json - -# Default rule. Enforced when a requested rule is not found. -# (string value) -#policy_default_rule=default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. The -# file defined by policy_file must exist for these directories -# to be searched. Missing or empty directories are ignored. -# (multi valued) -#policy_dirs=policy.d - - -[pxe] - -# -# Options defined in ironic.drivers.modules.iscsi_deploy -# - -# Additional append parameters for baremetal PXE boot. (string -# value) -#pxe_append_params=nofb nomodeset vga=normal - -# Default file system format for ephemeral partition, if one -# is created. (string value) -#default_ephemeral_format=ext4 - -# Directory where images are stored on disk. (string value) -#images_path=/var/lib/ironic/images/ - -# Directory where master instance images are stored on disk. -# (string value) -#instance_master_path=/var/lib/ironic/master_images - -# Maximum size (in MiB) of cache for master images, including -# those in use. (integer value) -#image_cache_size=20480 - -# Maximum TTL (in minutes) for old master images in cache. -# (integer value) -#image_cache_ttl=10080 - -# The disk devices to scan while doing the deploy. (string -# value) -#disk_devices=cciss/c0d0,sda,hda,vda - - -# -# Options defined in ironic.drivers.modules.pxe -# - -# Template file for PXE configuration. (string value) -#pxe_config_template=$pybasedir/drivers/modules/pxe_config.template - -# Template file for PXE configuration for UEFI boot loader. -# (string value) -#uefi_pxe_config_template=$pybasedir/drivers/modules/elilo_efi_pxe_config.template - -# IP address of Ironic compute node's tftp server. (string -# value) -#tftp_server=$my_ip - -# Ironic compute node's tftp root path. (string value) -tftp_root=/srv/tftp_root/ - -# Directory where master tftp images are stored on disk. -# (string value) -tftp_master_path=/srv/tftp_root/master_images - -# Bootfile DHCP parameter. (string value) -#pxe_bootfile_name=pxelinux.0 - -# Bootfile DHCP parameter for UEFI boot mode. (string value) -#uefi_pxe_bootfile_name=elilo.efi - -# Ironic compute node's HTTP server URL. Example: -# http://192.1.2.3:8080 (string value) -#http_url= - -# Ironic compute node's HTTP root path. (string value) -#http_root=/httpboot - -# Enable iPXE boot. (boolean value) -#ipxe_enabled=false - -# The path to the main iPXE script file. (string value) -#ipxe_boot_script=$pybasedir/drivers/modules/boot.ipxe - - -[seamicro] - -# -# Options defined in ironic.drivers.modules.seamicro -# - -# Maximum retries for SeaMicro operations (integer value) -#max_retry=3 - -# Seconds to wait for power action to be completed (integer -# value) -#action_timeout=10 - - -[snmp] - -# -# Options defined in ironic.drivers.modules.snmp -# - -# Seconds to wait for power action to be completed (integer -# value) -#power_timeout=10 - - -[ssh] - -# -# Options defined in ironic.drivers.modules.ssh -# - -# libvirt uri (string value) -#libvirt_uri=qemu:///system - - -[swift] - -# -# Options defined in ironic.common.swift -# - -# Maximum number of times to retry a Swift request, before -# failing. (integer value) -#swift_max_retries=2 - - -[virtualbox] - -# -# Options defined in ironic.drivers.modules.virtualbox -# - -# Port on which VirtualBox web service is listening. (integer -# value) -#port=18083 - - diff --git a/install-files/openstack/usr/share/openstack/iscsi.yml b/install-files/openstack/usr/share/openstack/iscsi.yml deleted file mode 100644 index b80377ae..00000000 --- a/install-files/openstack/usr/share/openstack/iscsi.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- -- hosts: localhost - tasks: - - name: Update kernel module dependencies - command: depmod -a - - - name: generate InitiatorName for iscsi - shell: iscsi-iname - register: initiator_name - - - lineinfile: - dest: /etc/iscsi/initiatorname.iscsi - regexp: '^InitiatorName=$' - line: 'InitiatorName={{ initiator_name.stdout }}' - backrefs: yes diff --git a/install-files/openstack/usr/share/openstack/keystone.yml b/install-files/openstack/usr/share/openstack/keystone.yml deleted file mode 100644 index 2fae4e98..00000000 --- a/install-files/openstack/usr/share/openstack/keystone.yml +++ /dev/null @@ -1,142 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/keystone.conf" - tasks: - - # RabbitMQ configuration, this may end up in a different playbook - - name: Create rabbitmq user - user: - name: rabbitmq - comment: Rabbitmq server daemon - shell: /sbin/nologin - home: /var/lib/rabbitmq - - - name: Create the rabbitmq directories - file: - path: "{{ item }}" - state: directory - owner: rabbitmq - group: rabbitmq - with_items: - - /var/run/rabbitmq - - /var/log/rabbitmq - - /etc/rabbitmq - - - name: Add the configuration needed for rabbitmq in /etc/rabbitmq using templates - template: - src: /usr/share/openstack/rabbitmq/{{ item }} - dest: /etc/rabbitmq/{{ item }} - owner: rabbitmq - group: rabbitmq - mode: 0644 - with_items: - - rabbitmq.config - - rabbitmq-env.conf - - - name: Enable and start rabbitmq services - service: - name: "{{ item }}" - enabled: yes - state: started - with_items: - - rabbitmq-server - - # Keystone configuration - - name: Create the keystone user. - user: - name: keystone - comment: Openstack Keystone Daemons - shell: /sbin/nologin - home: /var/lib/keystone - - - name: Create the /var folders for keystone - file: - path: "{{ item }}" - state: directory - owner: keystone - group: keystone - with_items: - - /var/run/keystone - - /var/lock/keystone - - /var/log/keystone - - /var/lib/keystone - - - name: Create /etc/keystone directory - file: - path: /etc/keystone - state: directory - - - name: Add the configuration needed for keystone in /etc using templates - template: - src: /usr/share/openstack/keystone/{{ item }} - dest: /etc/keystone/{{ item }} - with_lines: - - cd /usr/share/openstack/keystone && find -type f - - - name: Create postgresql user for keystone - postgresql_user: - name: "{{ KEYSTONE_DB_USER }}" - password: "{{ KEYSTONE_DB_PASSWORD }}" - sudo: yes - sudo_user: keystone - - - name: Create database for keystone services - postgresql_db: - name: keystone - owner: "{{ KEYSTONE_DB_USER }}" - sudo: yes - sudo_user: keystone - - - name: Initiate keystone database - command: keystone-manage db_sync - sudo: yes - sudo_user: keystone - - - name: Enable and start openstack-keystone service - service: - name: openstack-keystone.service - enabled: yes - state: started - - - name: Create admin tenant - keystone_user: - tenant: admin - tenant_description: Admin Tenant - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - endpoint: http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - - - name: Create admin user for the admin tenant - keystone_user: - user: admin - tenant: admin - password: "{{ KEYSTONE_ADMIN_PASSWORD }}" - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - endpoint: http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - - - name: Create admin role for admin user in the admin tenant - keystone_user: - role: admin - user: admin - tenant: admin - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - endpoint: http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - - - name: Create service tenant - keystone_user: - tenant: service - tenant_description: Service Tenant - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - endpoint: http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - - - name: Add keystone endpoint - keystone_service: - name: keystone - type: identity - description: Keystone Identity Service - publicurl: http://{{ ansible_hostname }}:5000/v2.0 - internalurl: http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - adminurl: http://{{ ansible_hostname }}:35357/v2.0 - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - endpoint: http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 diff --git a/install-files/openstack/usr/share/openstack/keystone/keystone.conf b/install-files/openstack/usr/share/openstack/keystone/keystone.conf deleted file mode 100644 index 1a082601..00000000 --- a/install-files/openstack/usr/share/openstack/keystone/keystone.conf +++ /dev/null @@ -1,1733 +0,0 @@ -[DEFAULT] - -# -# From keystone -# - -# A "shared secret" that can be used to bootstrap Keystone. This "token" does -# not represent a user, and carries no explicit authorization. To disable in -# production (highly recommended), remove AdminTokenAuthMiddleware from your -# paste application pipelines (for example, in keystone-paste.ini). (string -# value) -admin_token = {{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }} - -# (Deprecated) The port which the OpenStack Compute service listens on. This -# option was only used for string replacement in the templated catalog backend. -# Templated catalogs should replace the "$(compute_port)s" substitution with -# the static port of the compute service. As of Juno, this option is deprecated -# and will be removed in the L release. (integer value) -#compute_port = 8774 - -# The base public endpoint URL for Keystone that is advertised to clients -# (NOTE: this does NOT affect how Keystone listens for connections). Defaults -# to the base host URL of the request. E.g. a request to -# http://server:5000/v3/users will default to http://server:5000. You should -# only need to set this value if the base URL contains a path (e.g. /prefix/v3) -# or the endpoint should be found on a different server. (string value) -#public_endpoint = - -# The base admin endpoint URL for Keystone that is advertised to clients (NOTE: -# this does NOT affect how Keystone listens for connections). Defaults to the -# base host URL of the request. E.g. a request to http://server:35357/v3/users -# will default to http://server:35357. You should only need to set this value -# if the base URL contains a path (e.g. /prefix/v3) or the endpoint should be -# found on a different server. (string value) -#admin_endpoint = - -# Maximum depth of the project hierarchy. WARNING: setting it to a large value -# may adversely impact performance. (integer value) -#max_project_tree_depth = 5 - -# Limit the sizes of user & project ID/names. (integer value) -#max_param_size = 64 - -# Similar to max_param_size, but provides an exception for token values. -# (integer value) -#max_token_size = 8192 - -# Similar to the member_role_name option, this represents the default role ID -# used to associate users with their default projects in the v2 API. This will -# be used as the explicit role where one is not specified by the v2 API. -# (string value) -#member_role_id = 9fe2ff9ee4384b1894a90878d3e92bab - -# This is the role name used in combination with the member_role_id option; see -# that option for more detail. (string value) -#member_role_name = _member_ - -# The value passed as the keyword "rounds" to passlib's encrypt method. -# (integer value) -#crypt_strength = 40000 - -# The maximum number of entities that will be returned in a collection, with no -# limit set by default. This global limit may be then overridden for a specific -# driver, by specifying a list_limit in the appropriate section (e.g. -# [assignment]). (integer value) -#list_limit = - -# Set this to false if you want to enable the ability for user, group and -# project entities to be moved between domains by updating their domain_id. -# Allowing such movement is not recommended if the scope of a domain admin is -# being restricted by use of an appropriate policy file (see -# policy.v3cloudsample as an example). (boolean value) -#domain_id_immutable = true - -# If set to true, strict password length checking is performed for password -# manipulation. If a password exceeds the maximum length, the operation will -# fail with an HTTP 403 Forbidden error. If set to false, passwords are -# automatically truncated to the maximum length. (boolean value) -#strict_password_check = false - -# The HTTP header used to determine the scheme for the original request, even -# if it was removed by an SSL terminating proxy. Typical value is -# "HTTP_X_FORWARDED_PROTO". (string value) -#secure_proxy_ssl_header = - -# -# From keystone.notifications -# - -# Default publisher_id for outgoing notifications (string value) -#default_publisher_id = - -# Define the notification format for Identity Service events. A "basic" -# notification has information about the resource being operated on. A "cadf" -# notification has the same information, as well as information about the -# initiator of the event. Valid options are: basic and cadf (string value) -#notification_format = basic - -# -# From keystone.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , and -# :, where 0 results in listening on a random tcp port number; -# results in listening on the specified port number (and not enabling -# backdoor if that port is in use); and : results in listening on -# the smallest unused port number within the specified range of port numbers. -# The chosen port is displayed in the service's log file. (string value) -#backdoor_port = - -# -# From oslo.log -# - -# Print debugging output (set logging level to DEBUG instead of default WARNING -# level). (boolean value) -#debug = false - -# Print more verbose output (set logging level to INFO instead of default -# WARNING level). (boolean value) -#verbose = false - -# The name of a logging configuration file. This file is appended to any -# existing logging configuration files. For details about logging configuration -# files, see the Python logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may use any -# of the available logging.LogRecord attributes. This option is deprecated. -# Please use logging_context_format_string and logging_default_format_string -# instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s . (string -# value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, logging will -# go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. (string -# value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during I, and -# will change in J to honor RFC5424. (boolean value) -#use_syslog = false - -# (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, -# prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The -# format without the APP-NAME is deprecated in I, and will be removed in J. -# (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. (string -# value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. (string -# value) -#instance_uuid_format = "[instance: %(uuid)s] " - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker = oslo_messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port = 9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Seconds to wait before a cast expires (TTL). Only supported by impl_zmq. -# (integer value) -#rpc_cast_timeout = 30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq = 300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl = 600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size = 64 - -# Driver or drivers to handle sending notifications. (multi valued) -#notification_driver = - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics = notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full configuration. If -# not set, we fall back to the rpc_backend option and driver specific -# configuration. (string value) -#transport_url = - -# The messaging driver to use, defaults to rabbit. Other drivers include qpid -# and zmq. (string value) -rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be overridden by an -# exchange name specified in the transport_url option. (string value) -#control_exchange = keystone - - -[assignment] - -# -# From keystone -# - -# Assignment backend driver. (string value) -#driver = - - -[auth] - -# -# From keystone -# - -# Default auth methods. (list value) -#methods = external,password,token,oauth1 - -# The password auth plugin module. (string value) -#password = keystone.auth.plugins.password.Password - -# The token auth plugin module. (string value) -#token = keystone.auth.plugins.token.Token - -# The external (REMOTE_USER) auth plugin module. (string value) -#external = keystone.auth.plugins.external.DefaultDomain - -# The oAuth1.0 auth plugin module. (string value) -#oauth1 = keystone.auth.plugins.oauth1.OAuth - - -[cache] - -# -# From keystone -# - -# Prefix for building the configuration dictionary for the cache region. This -# should not need to be changed unless there is another dogpile.cache region -# with the same configuration name. (string value) -#config_prefix = cache.keystone - -# Default TTL, in seconds, for any cached item in the dogpile.cache region. -# This applies to any cached method that doesn't have an explicit cache -# expiration time defined for it. (integer value) -#expiration_time = 600 - -# Dogpile.cache backend module. It is recommended that Memcache with pooling -# (keystone.cache.memcache_pool) or Redis (dogpile.cache.redis) be used in -# production deployments. Small workloads (single process) like devstack can -# use the dogpile.cache.memory backend. (string value) -#backend = keystone.common.cache.noop - -# Arguments supplied to the backend module. Specify this option once per -# argument to be passed to the dogpile.cache backend. Example format: -# ":". (multi valued) -#backend_argument = - -# Proxy classes to import that will affect the way the dogpile.cache backend -# functions. See the dogpile.cache documentation on changing-backend-behavior. -# (list value) -#proxies = - -# Global toggle for all caching using the should_cache_fn mechanism. (boolean -# value) -#enabled = false - -# Extra debugging from the cache backend (cache keys, get/set/delete/etc -# calls). This is only really useful if you need to see the specific cache- -# backend get/set/delete calls with the keys/values. Typically this should be -# left set to false. (boolean value) -#debug_cache_backend = false - -# Memcache servers in the format of "host:port". (dogpile.cache.memcache and -# keystone.cache.memcache_pool backends only). (list value) -#memcache_servers = localhost:11211 - -# Number of seconds memcached server is considered dead before it is tried -# again. (dogpile.cache.memcache and keystone.cache.memcache_pool backends -# only). (integer value) -#memcache_dead_retry = 300 - -# Timeout in seconds for every call to a server. (dogpile.cache.memcache and -# keystone.cache.memcache_pool backends only). (integer value) -#memcache_socket_timeout = 3 - -# Max total number of open connections to every memcached server. -# (keystone.cache.memcache_pool backend only). (integer value) -#memcache_pool_maxsize = 10 - -# Number of seconds a connection to memcached is held unused in the pool before -# it is closed. (keystone.cache.memcache_pool backend only). (integer value) -#memcache_pool_unused_timeout = 60 - -# Number of seconds that an operation will wait to get a memcache client -# connection. (integer value) -#memcache_pool_connection_get_timeout = 10 - - -[catalog] - -# -# From keystone -# - -# Catalog template file name for use with the template catalog backend. (string -# value) -#template_file = default_catalog.templates - -# Catalog backend driver. (string value) -#driver = keystone.catalog.backends.sql.Catalog - -# Toggle for catalog caching. This has no effect unless global caching is -# enabled. (boolean value) -#caching = true - -# Time to cache catalog data (in seconds). This has no effect unless global and -# catalog caching are enabled. (integer value) -#cache_time = - -# Maximum number of entities that will be returned in a catalog collection. -# (integer value) -#list_limit = - - -[credential] - -# -# From keystone -# - -# Credential backend driver. (string value) -#driver = keystone.credential.backends.sql.Credential - - -[database] - -# -# From oslo.db -# - -# The file name to use with SQLite. (string value) -# Deprecated group/name - [DEFAULT]/sqlite_db -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -# Deprecated group/name - [DEFAULT]/sqlite_synchronous -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. (string -# value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -connection=postgresql://{{ KEYSTONE_DB_USER }}:{{ KEYSTONE_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/keystone - -# The SQLAlchemy connection string to use to connect to the slave database. -# (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including the -# default, overrides any server-set SQL mode. To use whatever SQL mode is set -# by the server configuration, set this to no value. Example: mysql_sql_mode= -# (string value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum number of database connection retries during startup. Set to -1 to -# specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection lost. -# (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database operation up to -# db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries of a -# database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before error is -# raised. Set to -1 to specify an infinite retry count. (integer value) -#db_max_retries = 20 - - -[domain_config] - -# -# From keystone -# - -# Domain config backend driver. (string value) -#driver = keystone.resource.config_backends.sql.DomainConfig - -# Toggle for domain config caching. This has no effect unless global caching is -# enabled. (boolean value) -#caching = true - -# TTL (in seconds) to cache domain config data. This has no effect unless -# domain config caching is enabled. (integer value) -#cache_time = 300 - - -[endpoint_filter] - -# -# From keystone -# - -# Endpoint Filter backend driver (string value) -#driver = keystone.contrib.endpoint_filter.backends.sql.EndpointFilter - -# Toggle to return all active endpoints if no filter exists. (boolean value) -#return_all_endpoints_if_no_filter = true - - -[endpoint_policy] - -# -# From keystone -# - -# Endpoint policy backend driver (string value) -#driver = keystone.contrib.endpoint_policy.backends.sql.EndpointPolicy - - -[eventlet_server] - -# -# From keystone -# - -# The number of worker processes to serve the public eventlet application. -# Defaults to number of CPUs (minimum of 2). (integer value) -# Deprecated group/name - [DEFAULT]/public_workers -#public_workers = - -# The number of worker processes to serve the admin eventlet application. -# Defaults to number of CPUs (minimum of 2). (integer value) -# Deprecated group/name - [DEFAULT]/admin_workers -#admin_workers = - -# The IP address of the network interface for the public service to listen on. -# (string value) -# Deprecated group/name - [DEFAULT]/bind_host -# Deprecated group/name - [DEFAULT]/public_bind_host -#public_bind_host = 0.0.0.0 - -# The port number which the public service listens on. (integer value) -# Deprecated group/name - [DEFAULT]/public_port -public_port = 5000 - -# The IP address of the network interface for the admin service to listen on. -# (string value) -# Deprecated group/name - [DEFAULT]/bind_host -# Deprecated group/name - [DEFAULT]/admin_bind_host -#admin_bind_host = 0.0.0.0 - -# The port number which the admin service listens on. (integer value) -# Deprecated group/name - [DEFAULT]/admin_port -admin_port = 35357 - -# Set this to true if you want to enable TCP_KEEPALIVE on server sockets, i.e. -# sockets used by the Keystone wsgi server for client connections. (boolean -# value) -# Deprecated group/name - [DEFAULT]/tcp_keepalive -#tcp_keepalive = false - -# Sets the value of TCP_KEEPIDLE in seconds for each server socket. Only -# applies if tcp_keepalive is true. (integer value) -# Deprecated group/name - [DEFAULT]/tcp_keepidle -#tcp_keepidle = 600 - - -[eventlet_server_ssl] - -# -# From keystone -# - -# Toggle for SSL support on the Keystone eventlet servers. (boolean value) -# Deprecated group/name - [ssl]/enable -#enable = false - -# Path of the certfile for SSL. For non-production environments, you may be -# interested in using `keystone-manage ssl_setup` to generate self-signed -# certificates. (string value) -# Deprecated group/name - [ssl]/certfile -#certfile = /etc/keystone/ssl/certs/keystone.pem - -# Path of the keyfile for SSL. (string value) -# Deprecated group/name - [ssl]/keyfile -#keyfile = /etc/keystone/ssl/private/keystonekey.pem - -# Path of the CA cert file for SSL. (string value) -# Deprecated group/name - [ssl]/ca_certs -#ca_certs = /etc/keystone/ssl/certs/ca.pem - -# Require client certificate. (boolean value) -# Deprecated group/name - [ssl]/cert_required -#cert_required = false - - -[federation] - -# -# From keystone -# - -# Federation backend driver. (string value) -#driver = keystone.contrib.federation.backends.sql.Federation - -# Value to be used when filtering assertion parameters from the environment. -# (string value) -#assertion_prefix = - -# Value to be used to obtain the entity ID of the Identity Provider from the -# environment (e.g. if using the mod_shib plugin this value is `Shib-Identity- -# Provider`). (string value) -#remote_id_attribute = - -# A domain name that is reserved to allow federated ephemeral users to have a -# domain concept. Note that an admin will not be able to create a domain with -# this name or update an existing domain to this name. You are not advised to -# change this value unless you really have to. Changing this option to empty -# string or None will not have any impact and default name will be used. -# (string value) -#federated_domain_name = Federated - -# A list of trusted dashboard hosts. Before accepting a Single Sign-On request -# to return a token, the origin host must be a member of the trusted_dashboard -# list. This configuration option may be repeated for multiple values. For -# example: trusted_dashboard=http://acme.com trusted_dashboard=http://beta.com -# (multi valued) -#trusted_dashboard = - -# Location of Single Sign-On callback handler, will return a token to a trusted -# dashboard host. (string value) -#sso_callback_template = /etc/keystone/sso_callback_template.html - - -[fernet_tokens] - -# -# From keystone -# - -# Directory containing Fernet token keys. (string value) -#key_repository = /etc/keystone/fernet-keys/ - -# This controls how many keys are held in rotation by keystone-manage -# fernet_rotate before they are discarded. The default value of 3 means that -# keystone will maintain one staged key, one primary key, and one secondary -# key. Increasing this value means that additional secondary keys will be kept -# in the rotation. (integer value) -#max_active_keys = 3 - - -[identity] - -# -# From keystone -# - -# This references the domain to use for all Identity API v2 requests (which are -# not aware of domains). A domain with this ID will be created for you by -# keystone-manage db_sync in migration 008. The domain referenced by this ID -# cannot be deleted on the v3 API, to prevent accidentally breaking the v2 API. -# There is nothing special about this domain, other than the fact that it must -# exist to order to maintain support for your v2 clients. (string value) -#default_domain_id = default - -# A subset (or all) of domains can have their own identity driver, each with -# their own partial configuration options, stored in either the resource -# backend or in a file in a domain configuration directory (depending on the -# setting of domain_configurations_from_database). Only values specific to the -# domain need to be specified in this manner. This feature is disabled by -# default; set to true to enable. (boolean value) -#domain_specific_drivers_enabled = false - -# Extract the domain specific configuration options from the resource backend -# where they have been stored with the domain data. This feature is disabled by -# default (in which case the domain specific options will be loaded from files -# in the domain configuration directory); set to true to enable. (boolean -# value) -#domain_configurations_from_database = false - -# Path for Keystone to locate the domain specific identity configuration files -# if domain_specific_drivers_enabled is set to true. (string value) -#domain_config_dir = /etc/keystone/domains - -# Identity backend driver. (string value) -#driver = keystone.identity.backends.sql.Identity - -# Toggle for identity caching. This has no effect unless global caching is -# enabled. (boolean value) -#caching = true - -# Time to cache identity data (in seconds). This has no effect unless global -# and identity caching are enabled. (integer value) -#cache_time = 600 - -# Maximum supported length for user passwords; decrease to improve performance. -# (integer value) -#max_password_length = 4096 - -# Maximum number of entities that will be returned in an identity collection. -# (integer value) -#list_limit = - - -[identity_mapping] - -# -# From keystone -# - -# Keystone Identity Mapping backend driver. (string value) -#driver = keystone.identity.mapping_backends.sql.Mapping - -# Public ID generator for user and group entities. The Keystone identity mapper -# only supports generators that produce no more than 64 characters. (string -# value) -#generator = keystone.identity.id_generators.sha256.Generator - -# The format of user and group IDs changed in Juno for backends that do not -# generate UUIDs (e.g. LDAP), with keystone providing a hash mapping to the -# underlying attribute in LDAP. By default this mapping is disabled, which -# ensures that existing IDs will not change. Even when the mapping is enabled -# by using domain specific drivers, any users and groups from the default -# domain being handled by LDAP will still not be mapped to ensure their IDs -# remain backward compatible. Setting this value to False will enable the -# mapping for even the default LDAP driver. It is only safe to do this if you -# do not already have assignments for users and groups from the default LDAP -# domain, and it is acceptable for Keystone to provide the different IDs to -# clients than it did previously. Typically this means that the only time you -# can set this value to False is when configuring a fresh installation. -# (boolean value) -#backward_compatible_ids = true - - -[kvs] - -# -# From keystone -# - -# Extra dogpile.cache backend modules to register with the dogpile.cache -# library. (list value) -#backends = - -# Prefix for building the configuration dictionary for the KVS region. This -# should not need to be changed unless there is another dogpile.cache region -# with the same configuration name. (string value) -#config_prefix = keystone.kvs - -# Toggle to disable using a key-mangling function to ensure fixed length keys. -# This is toggle-able for debugging purposes, it is highly recommended to -# always leave this set to true. (boolean value) -#enable_key_mangler = true - -# Default lock timeout (in seconds) for distributed locking. (integer value) -#default_lock_timeout = 5 - - -[ldap] - -# -# From keystone -# - -# URL for connecting to the LDAP server. (string value) -#url = ldap://localhost - -# User BindDN to query the LDAP server. (string value) -#user = - -# Password for the BindDN to query the LDAP server. (string value) -#password = - -# LDAP server suffix (string value) -#suffix = cn=example,cn=com - -# If true, will add a dummy member to groups. This is required if the -# objectclass for groups requires the "member" attribute. (boolean value) -#use_dumb_member = false - -# DN of the "dummy member" to use when "use_dumb_member" is enabled. (string -# value) -#dumb_member = cn=dumb,dc=nonexistent - -# Delete subtrees using the subtree delete control. Only enable this option if -# your LDAP server supports subtree deletion. (boolean value) -#allow_subtree_delete = false - -# The LDAP scope for queries, this can be either "one" (onelevel/singleLevel) -# or "sub" (subtree/wholeSubtree). (string value) -#query_scope = one - -# Maximum results per page; a value of zero ("0") disables paging. (integer -# value) -#page_size = 0 - -# The LDAP dereferencing option for queries. This can be either "never", -# "searching", "always", "finding" or "default". The "default" option falls -# back to using default dereferencing configured by your ldap.conf. (string -# value) -#alias_dereferencing = default - -# Sets the LDAP debugging level for LDAP calls. A value of 0 means that -# debugging is not enabled. This value is a bitmask, consult your LDAP -# documentation for possible values. (integer value) -#debug_level = - -# Override the system's default referral chasing behavior for queries. (boolean -# value) -#chase_referrals = - -# Search base for users. (string value) -#user_tree_dn = - -# LDAP search filter for users. (string value) -#user_filter = - -# LDAP objectclass for users. (string value) -#user_objectclass = inetOrgPerson - -# LDAP attribute mapped to user id. WARNING: must not be a multivalued -# attribute. (string value) -#user_id_attribute = cn - -# LDAP attribute mapped to user name. (string value) -#user_name_attribute = sn - -# LDAP attribute mapped to user email. (string value) -#user_mail_attribute = mail - -# LDAP attribute mapped to password. (string value) -#user_pass_attribute = userPassword - -# LDAP attribute mapped to user enabled flag. (string value) -#user_enabled_attribute = enabled - -# Invert the meaning of the boolean enabled values. Some LDAP servers use a -# boolean lock attribute where "true" means an account is disabled. Setting -# "user_enabled_invert = true" will allow these lock attributes to be used. -# This setting will have no effect if "user_enabled_mask" or -# "user_enabled_emulation" settings are in use. (boolean value) -#user_enabled_invert = false - -# Bitmask integer to indicate the bit that the enabled value is stored in if -# the LDAP server represents "enabled" as a bit on an integer rather than a -# boolean. A value of "0" indicates the mask is not used. If this is not set to -# "0" the typical value is "2". This is typically used when -# "user_enabled_attribute = userAccountControl". (integer value) -#user_enabled_mask = 0 - -# Default value to enable users. This should match an appropriate int value if -# the LDAP server uses non-boolean (bitmask) values to indicate if a user is -# enabled or disabled. If this is not set to "True" the typical value is "512". -# This is typically used when "user_enabled_attribute = userAccountControl". -# (string value) -#user_enabled_default = True - -# List of attributes stripped off the user on update. (list value) -#user_attribute_ignore = default_project_id,tenants - -# LDAP attribute mapped to default_project_id for users. (string value) -#user_default_project_id_attribute = - -# Allow user creation in LDAP backend. (boolean value) -#user_allow_create = true - -# Allow user updates in LDAP backend. (boolean value) -#user_allow_update = true - -# Allow user deletion in LDAP backend. (boolean value) -#user_allow_delete = true - -# If true, Keystone uses an alternative method to determine if a user is -# enabled or not by checking if they are a member of the -# "user_enabled_emulation_dn" group. (boolean value) -#user_enabled_emulation = false - -# DN of the group entry to hold enabled users when using enabled emulation. -# (string value) -#user_enabled_emulation_dn = - -# List of additional LDAP attributes used for mapping additional attribute -# mappings for users. Attribute mapping format is :, -# where ldap_attr is the attribute in the LDAP entry and user_attr is the -# Identity API attribute. (list value) -#user_additional_attribute_mapping = - -# Search base for projects (string value) -# Deprecated group/name - [ldap]/tenant_tree_dn -#project_tree_dn = - -# LDAP search filter for projects. (string value) -# Deprecated group/name - [ldap]/tenant_filter -#project_filter = - -# LDAP objectclass for projects. (string value) -# Deprecated group/name - [ldap]/tenant_objectclass -#project_objectclass = groupOfNames - -# LDAP attribute mapped to project id. (string value) -# Deprecated group/name - [ldap]/tenant_id_attribute -#project_id_attribute = cn - -# LDAP attribute mapped to project membership for user. (string value) -# Deprecated group/name - [ldap]/tenant_member_attribute -#project_member_attribute = member - -# LDAP attribute mapped to project name. (string value) -# Deprecated group/name - [ldap]/tenant_name_attribute -#project_name_attribute = ou - -# LDAP attribute mapped to project description. (string value) -# Deprecated group/name - [ldap]/tenant_desc_attribute -#project_desc_attribute = description - -# LDAP attribute mapped to project enabled. (string value) -# Deprecated group/name - [ldap]/tenant_enabled_attribute -#project_enabled_attribute = enabled - -# LDAP attribute mapped to project domain_id. (string value) -# Deprecated group/name - [ldap]/tenant_domain_id_attribute -#project_domain_id_attribute = businessCategory - -# List of attributes stripped off the project on update. (list value) -# Deprecated group/name - [ldap]/tenant_attribute_ignore -#project_attribute_ignore = - -# Allow project creation in LDAP backend. (boolean value) -# Deprecated group/name - [ldap]/tenant_allow_create -#project_allow_create = true - -# Allow project update in LDAP backend. (boolean value) -# Deprecated group/name - [ldap]/tenant_allow_update -#project_allow_update = true - -# Allow project deletion in LDAP backend. (boolean value) -# Deprecated group/name - [ldap]/tenant_allow_delete -#project_allow_delete = true - -# If true, Keystone uses an alternative method to determine if a project is -# enabled or not by checking if they are a member of the -# "project_enabled_emulation_dn" group. (boolean value) -# Deprecated group/name - [ldap]/tenant_enabled_emulation -#project_enabled_emulation = false - -# DN of the group entry to hold enabled projects when using enabled emulation. -# (string value) -# Deprecated group/name - [ldap]/tenant_enabled_emulation_dn -#project_enabled_emulation_dn = - -# Additional attribute mappings for projects. Attribute mapping format is -# :, where ldap_attr is the attribute in the LDAP entry -# and user_attr is the Identity API attribute. (list value) -# Deprecated group/name - [ldap]/tenant_additional_attribute_mapping -#project_additional_attribute_mapping = - -# Search base for roles. (string value) -#role_tree_dn = - -# LDAP search filter for roles. (string value) -#role_filter = - -# LDAP objectclass for roles. (string value) -#role_objectclass = organizationalRole - -# LDAP attribute mapped to role id. (string value) -#role_id_attribute = cn - -# LDAP attribute mapped to role name. (string value) -#role_name_attribute = ou - -# LDAP attribute mapped to role membership. (string value) -#role_member_attribute = roleOccupant - -# List of attributes stripped off the role on update. (list value) -#role_attribute_ignore = - -# Allow role creation in LDAP backend. (boolean value) -#role_allow_create = true - -# Allow role update in LDAP backend. (boolean value) -#role_allow_update = true - -# Allow role deletion in LDAP backend. (boolean value) -#role_allow_delete = true - -# Additional attribute mappings for roles. Attribute mapping format is -# :, where ldap_attr is the attribute in the LDAP entry -# and user_attr is the Identity API attribute. (list value) -#role_additional_attribute_mapping = - -# Search base for groups. (string value) -#group_tree_dn = - -# LDAP search filter for groups. (string value) -#group_filter = - -# LDAP objectclass for groups. (string value) -#group_objectclass = groupOfNames - -# LDAP attribute mapped to group id. (string value) -#group_id_attribute = cn - -# LDAP attribute mapped to group name. (string value) -#group_name_attribute = ou - -# LDAP attribute mapped to show group membership. (string value) -#group_member_attribute = member - -# LDAP attribute mapped to group description. (string value) -#group_desc_attribute = description - -# List of attributes stripped off the group on update. (list value) -#group_attribute_ignore = - -# Allow group creation in LDAP backend. (boolean value) -#group_allow_create = true - -# Allow group update in LDAP backend. (boolean value) -#group_allow_update = true - -# Allow group deletion in LDAP backend. (boolean value) -#group_allow_delete = true - -# Additional attribute mappings for groups. Attribute mapping format is -# :, where ldap_attr is the attribute in the LDAP entry -# and user_attr is the Identity API attribute. (list value) -#group_additional_attribute_mapping = - -# CA certificate file path for communicating with LDAP servers. (string value) -#tls_cacertfile = - -# CA certificate directory path for communicating with LDAP servers. (string -# value) -#tls_cacertdir = - -# Enable TLS for communicating with LDAP servers. (boolean value) -#use_tls = false - -# Valid options for tls_req_cert are demand, never, and allow. (string value) -#tls_req_cert = demand - -# Enable LDAP connection pooling. (boolean value) -#use_pool = false - -# Connection pool size. (integer value) -#pool_size = 10 - -# Maximum count of reconnect trials. (integer value) -#pool_retry_max = 3 - -# Time span in seconds to wait between two reconnect trials. (floating point -# value) -#pool_retry_delay = 0.1 - -# Connector timeout in seconds. Value -1 indicates indefinite wait for -# response. (integer value) -#pool_connection_timeout = -1 - -# Connection lifetime in seconds. (integer value) -#pool_connection_lifetime = 600 - -# Enable LDAP connection pooling for end user authentication. If use_pool is -# disabled, then this setting is meaningless and is not used at all. (boolean -# value) -#use_auth_pool = false - -# End user auth connection pool size. (integer value) -#auth_pool_size = 100 - -# End user auth connection lifetime in seconds. (integer value) -#auth_pool_connection_lifetime = 60 - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# Host to locate redis. (string value) -#host = 127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port = 6379 - -# Password for Redis server (optional). (string value) -#password = - - -[matchmaker_ring] - -# -# From oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile = /etc/oslo/matchmaker_ring.json - - -[memcache] - -# -# From keystone -# - -# Memcache servers in the format of "host:port". (list value) -#servers = localhost:11211 - -# Number of seconds memcached server is considered dead before it is tried -# again. This is used by the key value store system (e.g. token pooled -# memcached persistence backend). (integer value) -#dead_retry = 300 - -# Timeout in seconds for every call to a server. This is used by the key value -# store system (e.g. token pooled memcached persistence backend). (integer -# value) -#socket_timeout = 3 - -# Max total number of open connections to every memcached server. This is used -# by the key value store system (e.g. token pooled memcached persistence -# backend). (integer value) -#pool_maxsize = 10 - -# Number of seconds a connection to memcached is held unused in the pool before -# it is closed. This is used by the key value store system (e.g. token pooled -# memcached persistence backend). (integer value) -#pool_unused_timeout = 60 - -# Number of seconds that an operation will wait to get a memcache client -# connection. This is used by the key value store system (e.g. token pooled -# memcached persistence backend). (integer value) -#pool_connection_get_timeout = 10 - - -[oauth1] - -# -# From keystone -# - -# Credential backend driver. (string value) -#driver = keystone.contrib.oauth1.backends.sql.OAuth1 - -# Duration (in seconds) for the OAuth Request Token. (integer value) -#request_token_duration = 28800 - -# Duration (in seconds) for the OAuth Access Token. (integer value) -#access_token_duration = 86400 - - -[os_inherit] - -# -# From keystone -# - -# role-assignment inheritance to projects from owning domain or from projects -# higher in the hierarchy can be optionally enabled. (boolean value) -#enabled = false - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -#group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -#trace = false - -# CA certificate PEM file for verifing server certificate (string value) -# Deprecated group/name - [amqp1]/ssl_ca_file -#ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string value) -# Deprecated group/name - [amqp1]/ssl_cert_file -#ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string value) -# Deprecated group/name - [amqp1]/ssl_key_file -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -#ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -#allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -#qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -#qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -#qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -#qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -#qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -#qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -#qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -#qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -#qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -#qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally used by -# impl_qpid. Version 2 includes some backwards-incompatible changes that allow -# broker federation to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -#qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -#kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -#kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -#kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -#kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -#kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_host -rabbit_host = {{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_port -rabbit_port = {{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -rabbit_userid = {{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -rabbit_password = {{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -#rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -#rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -#rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry -# count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -#rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you -# must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -#rabbit_ha_queues = false - -# Number of seconds after which the Rabbit broker is considered down if -# heartbeat's keep-alive fails (0 disable the heartbeat). (integer value) -#heartbeat_timeout_threshold = 60 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -#fake_rabbit = false - - -[oslo_middleware] - -# -# From oslo.middleware -# - -# The maximum body size for each request, in bytes. (integer value) -# Deprecated group/name - [DEFAULT]/osapi_max_request_body_size -# Deprecated group/name - [DEFAULT]/max_request_body_size -#max_request_body_size = 114688 - - -[oslo_policy] - -# -# From oslo.policy -# - -# The JSON file that defines policies. (string value) -# Deprecated group/name - [DEFAULT]/policy_file -#policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. (string value) -# Deprecated group/name - [DEFAULT]/policy_default_rule -#policy_default_rule = default - -# Directories where policy configuration files are stored. They can be relative -# to any directory in the search path defined by the config_dir option, or -# absolute paths. The file defined by policy_file must exist for these -# directories to be searched. Missing or empty directories are ignored. (multi -# valued) -# Deprecated group/name - [DEFAULT]/policy_dirs -#policy_dirs = policy.d - - -[paste_deploy] - -# -# From keystone -# - -# Name of the paste configuration file that defines the available pipelines. -# (string value) -#config_file = keystone-paste.ini - - -[policy] - -# -# From keystone -# - -# Policy backend driver. (string value) -#driver = keystone.policy.backends.sql.Policy - -# Maximum number of entities that will be returned in a policy collection. -# (integer value) -#list_limit = - - -[resource] - -# -# From keystone -# - -# Resource backend driver. If a resource driver is not specified, the -# assignment driver will choose the resource driver. (string value) -#driver = - -# Toggle for resource caching. This has no effect unless global caching is -# enabled. (boolean value) -# Deprecated group/name - [assignment]/caching -#caching = true - -# TTL (in seconds) to cache resource data. This has no effect unless global -# caching is enabled. (integer value) -# Deprecated group/name - [assignment]/cache_time -#cache_time = - -# Maximum number of entities that will be returned in a resource collection. -# (integer value) -# Deprecated group/name - [assignment]/list_limit -#list_limit = - - -[revoke] - -# -# From keystone -# - -# An implementation of the backend for persisting revocation events. (string -# value) -#driver = keystone.contrib.revoke.backends.sql.Revoke - -# This value (calculated in seconds) is added to token expiration before a -# revocation event may be removed from the backend. (integer value) -#expiration_buffer = 1800 - -# Toggle for revocation event caching. This has no effect unless global caching -# is enabled. (boolean value) -#caching = true - -# Time to cache the revocation list and the revocation events (in seconds). -# This has no effect unless global and token caching are enabled. (integer -# value) -# Deprecated group/name - [token]/revocation_cache_time -#cache_time = 3600 - - -[role] - -# -# From keystone -# - -# Role backend driver. (string value) -#driver = - -# Toggle for role caching. This has no effect unless global caching is enabled. -# (boolean value) -#caching = true - -# TTL (in seconds) to cache role data. This has no effect unless global caching -# is enabled. (integer value) -#cache_time = - -# Maximum number of entities that will be returned in a role collection. -# (integer value) -#list_limit = - - -[saml] - -# -# From keystone -# - -# Default TTL, in seconds, for any generated SAML assertion created by -# Keystone. (integer value) -#assertion_expiration_time = 3600 - -# Binary to be called for XML signing. Install the appropriate package, specify -# absolute path or adjust your PATH environment variable if the binary cannot -# be found. (string value) -#xmlsec1_binary = xmlsec1 - -# Path of the certfile for SAML signing. For non-production environments, you -# may be interested in using `keystone-manage pki_setup` to generate self- -# signed certificates. Note, the path cannot contain a comma. (string value) -#certfile = /etc/keystone/ssl/certs/signing_cert.pem - -# Path of the keyfile for SAML signing. Note, the path cannot contain a comma. -# (string value) -#keyfile = /etc/keystone/ssl/private/signing_key.pem - -# Entity ID value for unique Identity Provider identification. Usually FQDN is -# set with a suffix. A value is required to generate IDP Metadata. For example: -# https://keystone.example.com/v3/OS-FEDERATION/saml2/idp (string value) -#idp_entity_id = - -# Identity Provider Single-Sign-On service value, required in the Identity -# Provider's metadata. A value is required to generate IDP Metadata. For -# example: https://keystone.example.com/v3/OS-FEDERATION/saml2/sso (string -# value) -#idp_sso_endpoint = - -# Language used by the organization. (string value) -#idp_lang = en - -# Organization name the installation belongs to. (string value) -#idp_organization_name = - -# Organization name to be displayed. (string value) -#idp_organization_display_name = - -# URL of the organization. (string value) -#idp_organization_url = - -# Company of contact person. (string value) -#idp_contact_company = - -# Given name of contact person (string value) -#idp_contact_name = - -# Surname of contact person. (string value) -#idp_contact_surname = - -# Email address of contact person. (string value) -#idp_contact_email = - -# Telephone number of contact person. (string value) -#idp_contact_telephone = - -# Contact type. Allowed values are: technical, support, administrative billing, -# and other (string value) -#idp_contact_type = other - -# Path to the Identity Provider Metadata file. This file should be generated -# with the keystone-manage saml_idp_metadata command. (string value) -#idp_metadata_path = /etc/keystone/saml2_idp_metadata.xml - -# The prefix to use for the RelayState SAML attribute, used when generating ECP -# wrapped assertions. (string value) -#relay_state_prefix = ss:mem: - - -[signing] - -# -# From keystone -# - -# Path of the certfile for token signing. For non-production environments, you -# may be interested in using `keystone-manage pki_setup` to generate self- -# signed certificates. (string value) -#certfile = /etc/keystone/ssl/certs/signing_cert.pem - -# Path of the keyfile for token signing. (string value) -#keyfile = /etc/keystone/ssl/private/signing_key.pem - -# Path of the CA for token signing. (string value) -#ca_certs = /etc/keystone/ssl/certs/ca.pem - -# Path of the CA key for token signing. (string value) -#ca_key = /etc/keystone/ssl/private/cakey.pem - -# Key size (in bits) for token signing cert (auto generated certificate). -# (integer value) -#key_size = 2048 - -# Days the token signing cert is valid for (auto generated certificate). -# (integer value) -#valid_days = 3650 - -# Certificate subject (auto generated certificate) for token signing. (string -# value) -#cert_subject = /C=US/ST=Unset/L=Unset/O=Unset/CN=www.example.com - - -[ssl] - -# -# From keystone -# - -# Path of the CA key file for SSL. (string value) -#ca_key = /etc/keystone/ssl/private/cakey.pem - -# SSL key length (in bits) (auto generated certificate). (integer value) -#key_size = 1024 - -# Days the certificate is valid for once signed (auto generated certificate). -# (integer value) -#valid_days = 3650 - -# SSL certificate subject (auto generated certificate). (string value) -#cert_subject = /C=US/ST=Unset/L=Unset/O=Unset/CN=localhost - - -[token] - -# -# From keystone -# - -# External auth mechanisms that should add bind information to token, e.g., -# kerberos,x509. (list value) -#bind = - -# Enforcement policy on tokens presented to Keystone with bind information. One -# of disabled, permissive, strict, required or a specifically required bind -# mode, e.g., kerberos or x509 to require binding to that authentication. -# (string value) -#enforce_token_bind = permissive - -# Amount of time a token should remain valid (in seconds). (integer value) -#expiration = 3600 - -# Controls the token construction, validation, and revocation operations. Core -# providers are "keystone.token.providers.[fernet|pkiz|pki|uuid].Provider". -# (string value) -provider = keystone.token.providers.uuid.Provider - -# Token persistence backend driver. (string value) -driver = keystone.token.persistence.backends.sql.Token - -# Toggle for token system caching. This has no effect unless global caching is -# enabled. (boolean value) -#caching = true - -# Time to cache tokens (in seconds). This has no effect unless global and token -# caching are enabled. (integer value) -#cache_time = - -# Revoke token by token identifier. Setting revoke_by_id to true enables -# various forms of enumerating tokens, e.g. `list tokens for user`. These -# enumerations are processed to determine the list of tokens to revoke. Only -# disable if you are switching to using the Revoke extension with a backend -# other than KVS, which stores events in memory. (boolean value) -#revoke_by_id = true - -# Allow rescoping of scoped token. Setting allow_rescoped_scoped_token to false -# prevents a user from exchanging a scoped token for any other token. (boolean -# value) -#allow_rescope_scoped_token = true - -# The hash algorithm to use for PKI tokens. This can be set to any algorithm -# that hashlib supports. WARNING: Before changing this value, the auth_token -# middleware must be configured with the hash_algorithms, otherwise token -# revocation will not be processed correctly. (string value) -#hash_algorithm = md5 - - -[trust] - -# -# From keystone -# - -# Delegation and impersonation features can be optionally disabled. (boolean -# value) -#enabled = true - -# Enable redelegation feature. (boolean value) -#allow_redelegation = false - -# Maximum depth of trust redelegation. (integer value) -#max_redelegation_count = 3 - -# Trust backend driver. (string value) -#driver = keystone.trust.backends.sql.Trust diff --git a/install-files/openstack/usr/share/openstack/network.yml b/install-files/openstack/usr/share/openstack/network.yml deleted file mode 100644 index f99f7f1a..00000000 --- a/install-files/openstack/usr/share/openstack/network.yml +++ /dev/null @@ -1,67 +0,0 @@ ---- -- hosts: localhost - vars_files: - - /etc/openstack/network.conf - tasks: -# Create the bridges to use the External network mapped - -# Count number of network interfaces (interfaces starting with 'e') - - shell: ls /sys/class/net | grep ^e.* | wc -l - register: number_interfaces - -# Abort if there number of interfaces != 1 - - fail: - msg: More than one, or none network interfaces found. - when: EXTERNAL_INTERFACE is not defined and number_interfaces.stdout != "1" - - - shell: ls /sys/class/net | grep ^e.* - register: interface_name - when: EXTERNAL_INTERFACE is not defined - - - set_fact: - ETH_INTERFACE: "{{ interface_name.stdout }}" - when: EXTERNAL_INTERFACE is not defined - - - set_fact: - ETH_INTERFACE: "{{ EXTERNAL_INTERFACE }}" - when: EXTERNAL_INTERFACE is defined - - - set_fact: - ETH_MAC_ADDRESS: "{{ hostvars['localhost']['ansible_' + ETH_INTERFACE]['macaddress'] }}" - - - name: Create the /run/systemd/network - file: - path: /run/systemd/network - state: directory - - - name: Disable dhcp on the bound physical interface - template: - src: /usr/share/openstack/extras/00-disable-device.network - dest: /run/systemd/network/00-disable-{{ item }}-config.network - with_items: - - "{{ ETH_INTERFACE }}" - - - name: Disable dhcp on all the internal interfaces - template: - src: /usr/share/openstack/extras/00-disable-device.network - dest: /run/systemd/network/00-disable-{{ item }}-config.network - with_items: - - ovs-system - - - openvswitch_bridge: - bridge: br-ex - state: present - - - openvswitch_port: - bridge: br-ex - port: "{{ ETH_INTERFACE }}" - state: present - - - shell: ovs-vsctl set bridge br-ex other-config:hwaddr={{ ETH_MAC_ADDRESS }} - - - name: Enable dhcp on the Open vSwitch device that replaces our external interface - template: - src: /usr/share/openstack/extras/60-device-dhcp.network - dest: /run/systemd/network/60-{{ item }}-dhcp.network - with_items: - - br-ex diff --git a/install-files/openstack/usr/share/openstack/neutron-config.yml b/install-files/openstack/usr/share/openstack/neutron-config.yml deleted file mode 100644 index 5d594353..00000000 --- a/install-files/openstack/usr/share/openstack/neutron-config.yml +++ /dev/null @@ -1,37 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/neutron.conf" - tasks: - - - name: Create the neutron user. - user: - name: neutron - comment: Openstack Neutron Daemons - shell: /sbin/nologin - home: /var/lib/neutron - - - name: Create the /var folders for neutron - file: - path: "{{ item }}" - state: directory - owner: neutron - group: neutron - with_items: - - /var/run/neutron - - /var/lock/neutron - - /var/log/neutron - - - name: Create the directories needed for Neutron configuration files. - file: - path: /etc/{{ item }} - state: directory - with_lines: - - cd /usr/share/openstack && find neutron -type d - - - name: Add configuration needed for neutron using templates - template: - src: /usr/share/openstack/{{ item }} - dest: /etc/{{ item }} - with_lines: - - cd /usr/share/openstack && find neutron -type f diff --git a/install-files/openstack/usr/share/openstack/neutron-db.yml b/install-files/openstack/usr/share/openstack/neutron-db.yml deleted file mode 100644 index fee53315..00000000 --- a/install-files/openstack/usr/share/openstack/neutron-db.yml +++ /dev/null @@ -1,51 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/neutron.conf" - tasks: - - name: Create neutron service user in service tenant - keystone_user: - user: "{{ NEUTRON_SERVICE_USER }}" - password: "{{ NEUTRON_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add admin role to neutron service user in service tenant - keystone_user: - role: admin - user: "{{ NEUTRON_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - keystone_service: - name: neutron - type: network - description: Openstack Compute Networking - publicurl: http://{{ ansible_hostname }}:9696 - internalurl: http://{{ CONTROLLER_HOST_ADDRESS }}:9696 - adminurl: http://{{ CONTROLLER_HOST_ADDRESS }}:9696 - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for neutron - postgresql_user: - name: "{{ NEUTRON_DB_USER }}" - password: "{{ NEUTRON_DB_PASSWORD }}" - sudo: yes - sudo_user: neutron - - - name: Create database for neutron services - postgresql_db: - name: neutron - owner: "{{ NEUTRON_DB_USER }}" - sudo: yes - sudo_user: neutron - - - name: Initiate neutron database - shell: | - neutron-db-manage \ - --config-file /etc/neutron/neutron.conf \ - --config-file /etc/neutron/plugins/ml2/ml2_conf.ini \ - upgrade head - sudo: yes - sudo_user: neutron diff --git a/install-files/openstack/usr/share/openstack/neutron/dhcp_agent.ini b/install-files/openstack/usr/share/openstack/neutron/dhcp_agent.ini deleted file mode 100644 index 1ab4c806..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/dhcp_agent.ini +++ /dev/null @@ -1,89 +0,0 @@ -[DEFAULT] -# Show debugging output in log (sets DEBUG log level output) -# debug = False - -# The DHCP agent will resync its state with Neutron to recover from any -# transient notification or rpc errors. The interval is number of -# seconds between attempts. -# resync_interval = 5 - -# The DHCP agent requires an interface driver be set. Choose the one that best -# matches your plugin. -# interface_driver = - -# Example of interface_driver option for OVS based plugins(OVS, Ryu, NEC, NVP, -# BigSwitch/Floodlight) -interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver - -# Name of Open vSwitch bridge to use -# ovs_integration_bridge = br-int - -# Use veth for an OVS interface or not. -# Support kernels with limited namespace support -# (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. -# ovs_use_veth = False - -# Example of interface_driver option for LinuxBridge -# interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver - -# The agent can use other DHCP drivers. Dnsmasq is the simplest and requires -# no additional setup of the DHCP server. -dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq - -# Allow overlapping IP (Must have kernel build with CONFIG_NET_NS=y and -# iproute2 package that supports namespaces). This option is deprecated and -# will be removed in a future release, at which point the old behavior of -# use_namespaces = True will be enforced. -# use_namespaces = True - -# The DHCP server can assist with providing metadata support on isolated -# networks. Setting this value to True will cause the DHCP server to append -# specific host routes to the DHCP request. The metadata service will only -# be activated when the subnet does not contain any router port. The guest -# instance must be configured to request host routes via DHCP (Option 121). -enable_isolated_metadata = True - -# Allows for serving metadata requests coming from a dedicated metadata -# access network whose cidr is 169.254.169.254/16 (or larger prefix), and -# is connected to a Neutron router from which the VMs send metadata -# request. In this case DHCP Option 121 will not be injected in VMs, as -# they will be able to reach 169.254.169.254 through a router. -# This option requires enable_isolated_metadata = True -# enable_metadata_network = False - -# Number of threads to use during sync process. Should not exceed connection -# pool size configured on server. -# num_sync_threads = 4 - -# Location to store DHCP server config files -# dhcp_confs = $state_path/dhcp - -# Domain to use for building the hostnames -# dhcp_domain = openstacklocal - -# Override the default dnsmasq settings with this file -dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf - -# Comma-separated list of DNS servers which will be used by dnsmasq -# as forwarders. -# dnsmasq_dns_servers = - -# Limit number of leases to prevent a denial-of-service. -# dnsmasq_lease_max = 16777216 - -# Location to DHCP lease relay UNIX domain socket -# dhcp_lease_relay_socket = $state_path/dhcp/lease_relay - -# Use broadcast in DHCP replies -# dhcp_broadcast_reply = False - -# dhcp_delete_namespaces, which is True by default, can be set to False if -# namespaces can't be deleted cleanly on the host running the DHCP agent. -# Disable this if you hit the issue in -# https://bugs.launchpad.net/neutron/+bug/1052535 or if -# you are sure that your version of iproute suffers from the problem. -# dhcp_delete_namespaces = True - -# Timeout for ovs-vsctl commands. -# If the timeout expires, ovs commands will fail with ALARMCLOCK error. -# ovs_vsctl_timeout = 10 diff --git a/install-files/openstack/usr/share/openstack/neutron/l3_agent.ini b/install-files/openstack/usr/share/openstack/neutron/l3_agent.ini deleted file mode 100644 index bc1321e4..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/l3_agent.ini +++ /dev/null @@ -1,121 +0,0 @@ -[DEFAULT] -# Show debugging output in log (sets DEBUG log level output) -# debug = False - -# L3 requires that an interface driver be set. Choose the one that best -# matches your plugin. -interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver - -# Example of interface_driver option for OVS based plugins (OVS, Ryu, NEC) -# that supports L3 agent -# interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver - -# Use veth for an OVS interface or not. -# Support kernels with limited namespace support -# (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. -# ovs_use_veth = False - -# Example of interface_driver option for LinuxBridge -# interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver - -# Allow overlapping IP (Must have kernel build with CONFIG_NET_NS=y and -# iproute2 package that supports namespaces). This option is deprecated and -# will be removed in a future release, at which point the old behavior of -# use_namespaces = True will be enforced. -# use_namespaces = True - -# If use_namespaces is set as False then the agent can only configure one router. - -# This is done by setting the specific router_id. -# router_id = - -# When external_network_bridge is set, each L3 agent can be associated -# with no more than one external network. This value should be set to the UUID -# of that external network. To allow L3 agent support multiple external -# networks, both the external_network_bridge and gateway_external_network_id -# must be left empty. -# gateway_external_network_id = - -# With IPv6, the network used for the external gateway does not need -# to have an associated subnet, since the automatically assigned -# link-local address (LLA) can be used. However, an IPv6 gateway address -# is needed for use as the next-hop for the default route. If no IPv6 -# gateway address is configured here, (and only then) the neutron router -# will be configured to get its default route from router advertisements (RAs) -# from the upstream router; in which case the upstream router must also be -# configured to send these RAs. -# The ipv6_gateway, when configured, should be the LLA of the interface -# on the upstream router. If a next-hop using a global unique address (GUA) -# is desired, it needs to be done via a subnet allocated to the network -# and not through this parameter. -# ipv6_gateway = - -# Indicates that this L3 agent should also handle routers that do not have -# an external network gateway configured. This option should be True only -# for a single agent in a Neutron deployment, and may be False for all agents -# if all routers must have an external network gateway -# handle_internal_only_routers = True - -# Name of bridge used for external network traffic. This should be set to -# empty value for the linux bridge. when this parameter is set, each L3 agent -# can be associated with no more than one external network. -external_network_bridge = br-ex - -# TCP Port used by Neutron metadata server -# metadata_port = 9697 - -# Send this many gratuitous ARPs for HA setup. Set it below or equal to 0 -# to disable this feature. -# send_arp_for_ha = 3 - -# seconds between re-sync routers' data if needed -# periodic_interval = 40 - -# seconds to start to sync routers' data after -# starting agent -# periodic_fuzzy_delay = 5 - -# enable_metadata_proxy, which is true by default, can be set to False -# if the Nova metadata server is not available -# enable_metadata_proxy = True - -# Iptables mangle mark used to mark metadata valid requests -# metadata_access_mark = 0x1 - -# Iptables mangle mark used to mark ingress from external network -# external_ingress_mark = 0x2 - -# router_delete_namespaces, which is True by default, can be set to False if -# namespaces can't be deleted cleanly on the host running the L3 agent. -# Disable this if you hit the issue in -# https://bugs.launchpad.net/neutron/+bug/1052535 or if -# you are sure that your version of iproute suffers from the problem. -# If True, namespaces will be deleted when a router is destroyed. -# router_delete_namespaces = True - -# Timeout for ovs-vsctl commands. -# If the timeout expires, ovs commands will fail with ALARMCLOCK error. -# ovs_vsctl_timeout = 10 - -# The working mode for the agent. Allowed values are: -# - legacy: this preserves the existing behavior where the L3 agent is -# deployed on a centralized networking node to provide L3 services -# like DNAT, and SNAT. Use this mode if you do not want to adopt DVR. -# - dvr: this mode enables DVR functionality, and must be used for an L3 -# agent that runs on a compute host. -# - dvr_snat: this enables centralized SNAT support in conjunction with -# DVR. This mode must be used for an L3 agent running on a centralized -# node (or in single-host deployments, e.g. devstack). -# agent_mode = legacy - -# Location to store keepalived and all HA configurations -# ha_confs_path = $state_path/ha_confs - -# VRRP authentication type AH/PASS -# ha_vrrp_auth_type = PASS - -# VRRP authentication password -# ha_vrrp_auth_password = - -# The advertisement interval in seconds -# ha_vrrp_advert_int = 2 diff --git a/install-files/openstack/usr/share/openstack/neutron/metadata_agent.ini b/install-files/openstack/usr/share/openstack/neutron/metadata_agent.ini deleted file mode 100644 index ee89c943..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/metadata_agent.ini +++ /dev/null @@ -1,68 +0,0 @@ -[DEFAULT] -# Show debugging output in log (sets DEBUG log level output) -# debug = True - -# The Neutron user information for accessing the Neutron API. -auth_url = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 -auth_region = regionOne -# Turn off verification of the certificate for ssl -# auth_insecure = False -# Certificate Authority public key (CA cert) file for ssl -# auth_ca_cert = -admin_tenant_name = service -admin_user = {{ NEUTRON_SERVICE_USER }} -admin_password = {{ NEUTRON_SERVICE_PASSWORD }} - -# Network service endpoint type to pull from the keystone catalog -# endpoint_type = adminURL - -# IP address used by Nova metadata server -nova_metadata_ip = {{ CONTROLLER_HOST_ADDRESS }} - -# TCP Port used by Nova metadata server -# nova_metadata_port = 8775 - -# Which protocol to use for requests to Nova metadata server, http or https -# nova_metadata_protocol = http - -# Whether insecure SSL connection should be accepted for Nova metadata server -# requests -# nova_metadata_insecure = False - -# Client certificate for nova api, needed when nova api requires client -# certificates -# nova_client_cert = - -# Private key for nova client certificate -# nova_client_priv_key = - -# When proxying metadata requests, Neutron signs the Instance-ID header with a -# shared secret to prevent spoofing. You may select any string for a secret, -# but it must match here and in the configuration used by the Nova Metadata -# Server. NOTE: Nova uses the same config key, but in [neutron] section. -metadata_proxy_shared_secret = {{ METADATA_PROXY_SHARED_SECRET }} - -# Location of Metadata Proxy UNIX domain socket -# metadata_proxy_socket = $state_path/metadata_proxy - -# Metadata Proxy UNIX domain socket mode, 3 values allowed: -# 'deduce': deduce mode from metadata_proxy_user/group values, -# 'user': set metadata proxy socket mode to 0o644, to use when -# metadata_proxy_user is agent effective user or root, -# 'group': set metadata proxy socket mode to 0o664, to use when -# metadata_proxy_group is agent effective group, -# 'all': set metadata proxy socket mode to 0o666, to use otherwise. -# metadata_proxy_socket_mode = deduce - -# Number of separate worker processes for metadata server. Defaults to -# half the number of CPU cores -# metadata_workers = - -# Number of backlog requests to configure the metadata server socket with -# metadata_backlog = 4096 - -# URL to connect to the cache backend. -# default_ttl=0 parameter will cause cache entries to never expire. -# Otherwise default_ttl specifies time in seconds a cache entry is valid for. -# No cache is used in case no value is passed. -# cache_url = memory://?default_ttl=5 diff --git a/install-files/openstack/usr/share/openstack/neutron/neutron.conf b/install-files/openstack/usr/share/openstack/neutron/neutron.conf deleted file mode 100644 index 33c6398a..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/neutron.conf +++ /dev/null @@ -1,1027 +0,0 @@ -[DEFAULT] -# Print more verbose output (set logging level to INFO instead of default WARNING level). -# verbose = False - -# =========Start Global Config Option for Distributed L3 Router=============== -# Setting the "router_distributed" flag to "True" will default to the creation -# of distributed tenant routers. The admin can override this flag by specifying -# the type of the router on the create request (admin-only attribute). Default -# value is "False" to support legacy mode (centralized) routers. -# -# router_distributed = False -# -# ===========End Global Config Option for Distributed L3 Router=============== - -# Print debugging output (set logging level to DEBUG instead of default WARNING level). -# debug = False - -# Where to store Neutron state files. This directory must be writable by the -# user executing the agent. -# state_path = /var/lib/neutron - -# log_format = %(asctime)s %(levelname)8s [%(name)s] %(message)s -# log_date_format = %Y-%m-%d %H:%M:%S - -# use_syslog -> syslog -# log_file and log_dir -> log_dir/log_file -# (not log_file) and log_dir -> log_dir/{binary_name}.log -# use_stderr -> stderr -# (not user_stderr) and (not log_file) -> stdout -# publish_errors -> notification system - -use_syslog = True -# syslog_log_facility = LOG_USER - -# use_stderr = True -# log_file = -# log_dir = - -# publish_errors = False - -# Address to bind the API server to -# bind_host = 0.0.0.0 - -# Port the bind the API server to -# bind_port = 9696 - -# Path to the extensions. Note that this can be a colon-separated list of -# paths. For example: -# api_extensions_path = extensions:/path/to/more/extensions:/even/more/extensions -# The __path__ of neutron.extensions is appended to this, so if your -# extensions are in there you don't need to specify them here -# api_extensions_path = - -# (StrOpt) Neutron core plugin entrypoint to be loaded from the -# neutron.core_plugins namespace. See setup.cfg for the entrypoint names of the -# plugins included in the neutron source distribution. For compatibility with -# previous versions, the class name of a plugin can be specified instead of its -# entrypoint name. -# -core_plugin = ml2 -# Example: core_plugin = ml2 - -# (ListOpt) List of service plugin entrypoints to be loaded from the -# neutron.service_plugins namespace. See setup.cfg for the entrypoint names of -# the plugins included in the neutron source distribution. For compatibility -# with previous versions, the class name of a plugin can be specified instead -# of its entrypoint name. -# -service_plugins = router -# Example: service_plugins = router,firewall,lbaas,vpnaas,metering - -# Paste configuration file -# api_paste_config = api-paste.ini - -# (StrOpt) Hostname to be used by the neutron server, agents and services -# running on this machine. All the agents and services running on this machine -# must use the same host value. -# The default value is hostname of the machine. -# -# host = - -# The strategy to be used for auth. -# Supported values are 'keystone'(default), 'noauth'. -auth_strategy = keystone - -# Base MAC address. The first 3 octets will remain unchanged. If the -# 4h octet is not 00, it will also be used. The others will be -# randomly generated. -# 3 octet -# base_mac = fa:16:3e:00:00:00 -# 4 octet -# base_mac = fa:16:3e:4f:00:00 - -# DVR Base MAC address. The first 3 octets will remain unchanged. If the -# 4th octet is not 00, it will also be used. The others will be randomly -# generated. The 'dvr_base_mac' *must* be different from 'base_mac' to -# avoid mixing them up with MAC's allocated for tenant ports. -# A 4 octet example would be dvr_base_mac = fa:16:3f:4f:00:00 -# The default is 3 octet -# dvr_base_mac = fa:16:3f:00:00:00 - -# Maximum amount of retries to generate a unique MAC address -# mac_generation_retries = 16 - -# DHCP Lease duration (in seconds). Use -1 to -# tell dnsmasq to use infinite lease times. -# dhcp_lease_duration = 86400 - -# Allow sending resource operation notification to DHCP agent -# dhcp_agent_notification = True - -# Enable or disable bulk create/update/delete operations -# allow_bulk = True -# Enable or disable pagination -# allow_pagination = False -# Enable or disable sorting -# allow_sorting = False -# Enable or disable overlapping IPs for subnets -# Attention: the following parameter MUST be set to False if Neutron is -# being used in conjunction with nova security groups -allow_overlapping_ips = True -# Ensure that configured gateway is on subnet. For IPv6, validate only if -# gateway is not a link local address. Deprecated, to be removed during the -# K release, at which point the check will be mandatory. -# force_gateway_on_subnet = True - -# Default maximum number of items returned in a single response, -# value == infinite and value < 0 means no max limit, and value must -# be greater than 0. If the number of items requested is greater than -# pagination_max_limit, server will just return pagination_max_limit -# of number of items. -# pagination_max_limit = -1 - -# Maximum number of DNS nameservers per subnet -# max_dns_nameservers = 5 - -# Maximum number of host routes per subnet -# max_subnet_host_routes = 20 - -# Maximum number of fixed ips per port -# max_fixed_ips_per_port = 5 - -# Maximum number of routes per router -# max_routes = 30 - -# Default Subnet Pool to be used for IPv4 subnet-allocation. -# Specifies by UUID the pool to be used in case of subnet-create being called -# without a subnet-pool ID. The default of None means that no pool will be -# used unless passed explicitly to subnet create. If no pool is used, then a -# CIDR must be passed to create a subnet and that subnet will not be allocated -# from any pool; it will be considered part of the tenant's private address -# space. -# default_ipv4_subnet_pool = - -# Default Subnet Pool to be used for IPv6 subnet-allocation. -# Specifies by UUID the pool to be used in case of subnet-create being -# called without a subnet-pool ID. Set to "prefix_delegation" -# to enable IPv6 Prefix Delegation in a PD-capable environment. -# See the description for default_ipv4_subnet_pool for more information. -# default_ipv6_subnet_pool = - -# =========== items for MTU selection and advertisement ============= -# Advertise MTU. If True, effort is made to advertise MTU -# settings to VMs via network methods (ie. DHCP and RA MTU options) -# when the network's preferred MTU is known. -# advertise_mtu = False -# ======== end of items for MTU selection and advertisement ========= - -# =========== items for agent management extension ============= -# Seconds to regard the agent as down; should be at least twice -# report_interval, to be sure the agent is down for good -# agent_down_time = 75 -# =========== end of items for agent management extension ===== - -# =========== items for agent scheduler extension ============= -# Driver to use for scheduling network to DHCP agent -# network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.ChanceScheduler -# Driver to use for scheduling router to a default L3 agent -# router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.ChanceScheduler -# Driver to use for scheduling a loadbalancer pool to an lbaas agent -# loadbalancer_pool_scheduler_driver = neutron.services.loadbalancer.agent_scheduler.ChanceScheduler - -# (StrOpt) Representing the resource type whose load is being reported by -# the agent. -# This can be 'networks','subnets' or 'ports'. When specified (Default is networks), -# the server will extract particular load sent as part of its agent configuration object -# from the agent report state, which is the number of resources being consumed, at -# every report_interval. -# dhcp_load_type can be used in combination with network_scheduler_driver = -# neutron.scheduler.dhcp_agent_scheduler.WeightScheduler -# When the network_scheduler_driver is WeightScheduler, dhcp_load_type can -# be configured to represent the choice for the resource being balanced. -# Example: dhcp_load_type = networks -# Values: -# networks - number of networks hosted on the agent -# subnets - number of subnets associated with the networks hosted on the agent -# ports - number of ports associated with the networks hosted on the agent -# dhcp_load_type = networks - -# Allow auto scheduling networks to DHCP agent. It will schedule non-hosted -# networks to first DHCP agent which sends get_active_networks message to -# neutron server -# network_auto_schedule = True - -# Allow auto scheduling routers to L3 agent. It will schedule non-hosted -# routers to first L3 agent which sends sync_routers message to neutron server -# router_auto_schedule = True - -# Allow automatic rescheduling of routers from dead L3 agents with -# admin_state_up set to True to alive agents. -# allow_automatic_l3agent_failover = False - -# Allow automatic removal of networks from dead DHCP agents with -# admin_state_up set to True. -# Networks could then be rescheduled if network_auto_schedule is True -# allow_automatic_dhcp_failover = True - -# Number of DHCP agents scheduled to host a tenant network. -# If this number is greater than 1, the scheduler automatically -# assigns multiple DHCP agents for a given tenant network, -# providing high availability for DHCP service. -# dhcp_agents_per_network = 1 - -# Enable services on agents with admin_state_up False. -# If this option is False, when admin_state_up of an agent is turned to -# False, services on it will be disabled. If this option is True, services -# on agents with admin_state_up False keep available and manual scheduling -# to such agents is available. Agents with admin_state_up False are not -# selected for automatic scheduling regardless of this option. -# enable_services_on_agents_with_admin_state_down = False - -# =========== end of items for agent scheduler extension ===== - -# =========== items for l3 extension ============== -# Enable high availability for virtual routers. -# l3_ha = False -# -# Maximum number of l3 agents which a HA router will be scheduled on. If it -# is set to 0 the router will be scheduled on every agent. -# max_l3_agents_per_router = 3 -# -# Minimum number of l3 agents which a HA router will be scheduled on. The -# default value is 2. -# min_l3_agents_per_router = 2 -# -# CIDR of the administrative network if HA mode is enabled -# l3_ha_net_cidr = 169.254.192.0/18 -# -# Enable snat by default on external gateway when available -# enable_snat_by_default = True -# =========== end of items for l3 extension ======= - -# =========== items for metadata proxy configuration ============== -# User (uid or name) running metadata proxy after its initialization -# (if empty: agent effective user) -# metadata_proxy_user = - -# Group (gid or name) running metadata proxy after its initialization -# (if empty: agent effective group) -# metadata_proxy_group = - -# Enable/Disable log watch by metadata proxy, it should be disabled when -# metadata_proxy_user/group is not allowed to read/write its log file and -# 'copytruncate' logrotate option must be used if logrotate is enabled on -# metadata proxy log files. Option default value is deduced from -# metadata_proxy_user: watch log is enabled if metadata_proxy_user is agent -# effective user id/name. -# metadata_proxy_watch_log = - -# Location of Metadata Proxy UNIX domain socket -# metadata_proxy_socket = $state_path/metadata_proxy -# =========== end of items for metadata proxy configuration ============== - -# ========== items for VLAN trunking networks ========== -# Setting this flag to True will allow plugins that support it to -# create VLAN transparent networks. This flag has no effect for -# plugins that do not support VLAN transparent networks. -# vlan_transparent = False -# ========== end of items for VLAN trunking networks ========== - -# =========== WSGI parameters related to the API server ============== -# Number of separate worker processes to spawn. The default, 0, runs the -# worker thread in the current process. Greater than 0 launches that number of -# child processes as workers. The parent process manages them. -# api_workers = 0 - -# Number of separate RPC worker processes to spawn. The default, 0, runs the -# worker thread in the current process. Greater than 0 launches that number of -# child processes as RPC workers. The parent process manages them. -# This feature is experimental until issues are addressed and testing has been -# enabled for various plugins for compatibility. -# rpc_workers = 0 - -# Timeout for client connections socket operations. If an -# incoming connection is idle for this number of seconds it -# will be closed. A value of '0' means wait forever. (integer -# value) -# client_socket_timeout = 900 - -# wsgi keepalive option. Determines if connections are allowed to be held open -# by clients after a request is fulfilled. A value of False will ensure that -# the socket connection will be explicitly closed once a response has been -# sent to the client. -# wsgi_keep_alive = True - -# Sets the value of TCP_KEEPIDLE in seconds to use for each server socket when -# starting API server. Not supported on OS X. -# tcp_keepidle = 600 - -# Number of seconds to keep retrying to listen -# retry_until_window = 30 - -# Number of backlog requests to configure the socket with. -# backlog = 4096 - -# Max header line to accommodate large tokens -# max_header_line = 16384 - -# Enable SSL on the API server -# use_ssl = False - -# Certificate file to use when starting API server securely -# ssl_cert_file = /path/to/certfile - -# Private key file to use when starting API server securely -# ssl_key_file = /path/to/keyfile - -# CA certificate file to use when starting API server securely to -# verify connecting clients. This is an optional parameter only required if -# API clients need to authenticate to the API server using SSL certificates -# signed by a trusted CA -# ssl_ca_file = /path/to/cafile -# ======== end of WSGI parameters related to the API server ========== - -# ======== neutron nova interactions ========== -# Send notification to nova when port status is active. -notify_nova_on_port_status_changes = True - -# Send notifications to nova when port data (fixed_ips/floatingips) change -# so nova can update it's cache. -notify_nova_on_port_data_changes = True - -# URL for connection to nova (Only supports one nova region currently). -nova_url = http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2 - -# Name of nova region to use. Useful if keystone manages more than one region -# nova_region_name = - -# Username for connection to nova in admin context -# nova_admin_username = - -# The uuid of the admin nova tenant -# nova_admin_tenant_id = - -# The name of the admin nova tenant. If the uuid of the admin nova tenant -# is set, this is optional. Useful for cases where the uuid of the admin -# nova tenant is not available when configuration is being done. -# nova_admin_tenant_name = - -# Password for connection to nova in admin context. -# nova_admin_password = - -# Authorization URL for connection to nova in admin context. -# nova_admin_auth_url = - -# CA file for novaclient to verify server certificates -# nova_ca_certificates_file = - -# Boolean to control ignoring SSL errors on the nova url -# nova_api_insecure = False - -# Number of seconds between sending events to nova if there are any events to send -# send_events_interval = 2 - -# ======== end of neutron nova interactions ========== - -# -# Options defined in oslo.messaging -# - -# Use durable queues in amqp. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -# amqp_durable_queues=false - -# Auto-delete queues in amqp. (boolean value) -# amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -# rpc_conn_pool_size=30 - -# Qpid broker hostname. (string value) -# qpid_hostname=localhost - -# Qpid broker port. (integer value) -# qpid_port=5672 - -# Qpid HA cluster host:port pairs. (list value) -# qpid_hosts=$qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# qpid_username= - -# Password for Qpid connection. (string value) -# qpid_password= - -# Space separated list of SASL mechanisms to use for auth. -# (string value) -# qpid_sasl_mechanisms= - -# Seconds between connection keepalive heartbeats. (integer -# value) -# qpid_heartbeat=60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# qpid_protocol=tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# qpid_tcp_nodelay=true - -# The qpid topology version to use. Version 1 is what was -# originally used by impl_qpid. Version 2 includes some -# backwards-incompatible changes that allow broker federation -# to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. -# (integer value) -# qpid_topology_version=1 - -# SSL version to use (valid only if SSL enabled). valid values -# are TLSv1, SSLv23 and SSLv3. SSLv2 may be available on some -# distributions. (string value) -# kombu_ssl_version= - -# SSL key file (valid only if SSL enabled). (string value) -# kombu_ssl_keyfile= - -# SSL cert file (valid only if SSL enabled). (string value) -# kombu_ssl_certfile= - -# SSL certification authority file (valid only if SSL -# enabled). (string value) -# kombu_ssl_ca_certs= - -# How long to wait before reconnecting in response to an AMQP -# consumer cancel notification. (floating point value) -# kombu_reconnect_delay=1.0 - -# The RabbitMQ broker address where a single node is used. -# (string value) -# rabbit_host=localhost - -# The RabbitMQ broker port where a single node is used. -# (integer value) -# rabbit_port =5672 - -# RabbitMQ HA cluster host:port pairs. (list value) -# rabbit_hosts=$rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# rabbit_use_ssl=false - -# The RabbitMQ userid. (string value) -# rabbit_userid=guest - -# The RabbitMQ password. (string value) -# rabbit_password=guest - -# the RabbitMQ login method (string value) -# rabbit_login_method=AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# rabbit_virtual_host=/ - -# How frequently to retry connecting with RabbitMQ. (integer -# value) -# rabbit_retry_interval=1 - -# How long to backoff for between retries when connecting to -# RabbitMQ. (integer value) -# rabbit_retry_backoff=2 - -# Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -# rabbit_max_retries=0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change -# this option, you must wipe the RabbitMQ database. (boolean -# value) -# rabbit_ha_queues=false - -# If passed, use a fake RabbitMQ provider. (boolean value) -# fake_rabbit=false - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet -# interface, or IP. The "host" option should point or resolve -# to this address. (string value) -# rpc_zmq_bind_address=* - -# MatchMaker driver. (string value) -# rpc_zmq_matchmaker=oslo.messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -# rpc_zmq_port=9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -# rpc_zmq_contexts=1 - -# Maximum number of ingress messages to locally buffer per -# topic. Default is unlimited. (integer value) -# rpc_zmq_topic_backlog= - -# Directory for holding IPC sockets. (string value) -# rpc_zmq_ipc_dir=/var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP -# address. Must match "host" option, if running Nova. (string -# value) -# rpc_zmq_host=oslo - -# Seconds to wait before a cast expires (TTL). Only supported -# by impl_zmq. (integer value) -# rpc_cast_timeout=30 - -# Heartbeat frequency. (integer value) -# matchmaker_heartbeat_freq=300 - -# Heartbeat time-to-live. (integer value) -# matchmaker_heartbeat_ttl=600 - -# Size of RPC greenthread pool. (integer value) -# rpc_thread_pool_size=64 - -# Driver or drivers to handle sending notifications. (multi -# valued) -notification_driver = neutron.openstack.common.notifier.rpc_notifier - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -# notification_topics=notifications - -# Seconds to wait for a response from a call. (integer value) -# rpc_response_timeout=60 - -# A URL representing the messaging driver to use and its full -# configuration. If not set, we fall back to the rpc_backend -# option and driver specific configuration. (string value) -# transport_url= - -# The messaging driver to use, defaults to rabbit. Other -# drivers include qpid and zmq. (string value) -rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be -# overridden by an exchange name specified in the -# transport_url option. (string value) -# control_exchange=openstack - - -[matchmaker_redis] - -# -# Options defined in oslo.messaging -# - -# Host to locate redis. (string value) -# host=127.0.0.1 - -# Use this port to connect to redis host. (integer value) -# port=6379 - -# Password for Redis server (optional). (string value) -# password= - - -[matchmaker_ring] - -# -# Options defined in oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -# ringfile=/etc/oslo/matchmaker_ring.json - -[quotas] -# Default driver to use for quota checks -# quota_driver = neutron.db.quota_db.DbQuotaDriver - -# Resource name(s) that are supported in quota features -# This option is deprecated for removal in the M release, please refrain from using it -# quota_items = network,subnet,port - -# Default number of resource allowed per tenant. A negative value means -# unlimited. -# default_quota = -1 - -# Number of networks allowed per tenant. A negative value means unlimited. -# quota_network = 10 - -# Number of subnets allowed per tenant. A negative value means unlimited. -# quota_subnet = 10 - -# Number of ports allowed per tenant. A negative value means unlimited. -# quota_port = 50 - -# Number of security groups allowed per tenant. A negative value means -# unlimited. -# quota_security_group = 10 - -# Number of security group rules allowed per tenant. A negative value means -# unlimited. -# quota_security_group_rule = 100 - -# Number of vips allowed per tenant. A negative value means unlimited. -# quota_vip = 10 - -# Number of pools allowed per tenant. A negative value means unlimited. -# quota_pool = 10 - -# Number of pool members allowed per tenant. A negative value means unlimited. -# The default is unlimited because a member is not a real resource consumer -# on Openstack. However, on back-end, a member is a resource consumer -# and that is the reason why quota is possible. -# quota_member = -1 - -# Number of health monitors allowed per tenant. A negative value means -# unlimited. -# The default is unlimited because a health monitor is not a real resource -# consumer on Openstack. However, on back-end, a member is a resource consumer -# and that is the reason why quota is possible. -# quota_health_monitor = -1 - -# Number of loadbalancers allowed per tenant. A negative value means unlimited. -# quota_loadbalancer = 10 - -# Number of listeners allowed per tenant. A negative value means unlimited. -# quota_listener = -1 - -# Number of v2 health monitors allowed per tenant. A negative value means -# unlimited. These health monitors exist under the lbaas v2 API -# quota_healthmonitor = -1 - -# Number of routers allowed per tenant. A negative value means unlimited. -# quota_router = 10 - -# Number of floating IPs allowed per tenant. A negative value means unlimited. -# quota_floatingip = 50 - -# Number of firewalls allowed per tenant. A negative value means unlimited. -# quota_firewall = 1 - -# Number of firewall policies allowed per tenant. A negative value means -# unlimited. -# quota_firewall_policy = 1 - -# Number of firewall rules allowed per tenant. A negative value means -# unlimited. -# quota_firewall_rule = 100 - -[agent] -# Use "sudo neutron-rootwrap /etc/neutron/rootwrap.conf" to use the real -# root filter facility. -# Change to "sudo" to skip the filtering and just run the command directly -root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf - -# Set to true to add comments to generated iptables rules that describe -# each rule's purpose. (System must support the iptables comments module.) -# comment_iptables_rules = True - -# Root helper daemon application to use when possible. -# root_helper_daemon = - -# Use the root helper when listing the namespaces on a system. This may not -# be required depending on the security configuration. If the root helper is -# not required, set this to False for a performance improvement. -# use_helper_for_ns_read = True - -# The interval to check external processes for failure in seconds (0=disabled) -# check_child_processes_interval = 60 - -# Action to take when an external process spawned by an agent dies -# Values: -# respawn - Respawns the external process -# exit - Exits the agent -# check_child_processes_action = respawn - -# =========== items for agent management extension ============= -# seconds between nodes reporting state to server; should be less than -# agent_down_time, best if it is half or less than agent_down_time -# report_interval = 30 - -# =========== end of items for agent management extension ===== - -[keystone_authtoken] -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 -admin_tenant_name = service -admin_user = {{ NEUTRON_SERVICE_USER }} -admin_password = {{ NEUTRON_SERVICE_PASSWORD }} - -[database] -# This line MUST be changed to actually run the plugin. -# Example: -# connection = mysql://root:pass@127.0.0.1:3306/neutron -# Replace 127.0.0.1 above with the IP address of the database used by the -# main neutron server. (Leave it as is if the database runs on this host.) -connection=postgresql://{{ NEUTRON_DB_USER }}:{{ NEUTRON_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/neutron - -# NOTE: In deployment the [database] section and its connection attribute may -# be set in the corresponding core plugin '.ini' file. However, it is suggested -# to put the [database] section and its connection attribute in this -# configuration file. - -# Database engine for which script will be generated when using offline -# migration -# engine = - -# The SQLAlchemy connection string used to connect to the slave database -# slave_connection = - -# Database reconnection retry times - in event connectivity is lost -# set to -1 implies an infinite retry count -# max_retries = 10 - -# Database reconnection interval in seconds - if the initial connection to the -# database fails -# retry_interval = 10 - -# Minimum number of SQL connections to keep open in a pool -# min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool -# max_pool_size = 10 - -# Timeout in seconds before idle sql connections are reaped -# idle_timeout = 3600 - -# If set, use this value for max_overflow with sqlalchemy -# max_overflow = 20 - -# Verbosity of SQL debugging information. 0=None, 100=Everything -# connection_debug = 0 - -# Add python stack traces to SQL as comment strings -# connection_trace = False - -# If set, use this value for pool_timeout with sqlalchemy -# pool_timeout = 10 - -[nova] -# Name of the plugin to load -auth_plugin = password - -# Config Section from which to load plugin specific options -# auth_section = - -# PEM encoded Certificate Authority to use when verifying HTTPs connections. -# cafile = - -# PEM encoded client certificate cert file -# certfile = - -# Verify HTTPS connections. -# insecure = False - -# PEM encoded client certificate key file -# keyfile = - -# Name of nova region to use. Useful if keystone manages more than one region. -region_name = regionOne - -# Timeout value for http requests -# timeout = - -# Authorization URL for connection to nova in admin context. -auth_url = http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - -# Username for connection to nova in admin context -username = {{ NOVA_SERVICE_USER }} - -# Password for connection to nova in admin context. -password = {{ NOVA_SERVICE_PASSWORD }} - -# The uuid of the admin nova tenant -# tenant_id = - -# The name of the admin nova tenant. If the uuid of the admin nova tenant -# is set, this is optional. Useful for cases where the uuid of the admin -# nova tenant is not available when configuration is being done. -tenant_name = service - -[oslo_concurrency] - -# Directory to use for lock files. For security, the specified directory should -# only be writable by the user running the processes that need locking. -# Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, -# a lock path must be set. -lock_path = $state_path/lock - -# Enables or disables inter-process locks. -# disable_process_locking = False - -[oslo_policy] - -# The JSON file that defines policies. -# policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. -# policy_default_rule = default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path defined by the -# config_dir option, or absolute paths. The file defined by policy_file -# must exist for these directories to be searched. Missing or empty -# directories are ignored. -# policy_dirs = policy.d - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# Address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -# server_request_prefix = exclusive - -# Address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -# broadcast_prefix = broadcast - -# Address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -# group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -# container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -# idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -# trace = false - -# CA certificate PEM file for verifing server certificate (string value) -# Deprecated group/name - [amqp1]/ssl_ca_file -# ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string value) -# Deprecated group/name - [amqp1]/ssl_cert_file -# ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string value) -# Deprecated group/name - [amqp1]/ssl_key_file -# ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -# ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -# allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -# amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -# amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -# rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -# qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -# qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -# qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -# qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -# qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -# qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -# qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -# qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -# qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -# qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally used by -# impl_qpid. Version 2 includes some backwards-incompatible changes that allow -# broker federation to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -# qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -# amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -# amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -# rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -# kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -# kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -# kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -# kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -# kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_host -rabbit_host = {{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_port -rabbit_port = {{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -# rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -# rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -rabbit_userid = {{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -rabbit_password = {{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -# rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -# rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -# rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -# rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry -# count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -# rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you -# must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -# rabbit_ha_queues = false - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -# fake_rabbit = false diff --git a/install-files/openstack/usr/share/openstack/neutron/plugins/ml2/ml2_conf.ini b/install-files/openstack/usr/share/openstack/neutron/plugins/ml2/ml2_conf.ini deleted file mode 100644 index 3258a40f..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/plugins/ml2/ml2_conf.ini +++ /dev/null @@ -1,113 +0,0 @@ -[ml2] -# (ListOpt) List of network type driver entrypoints to be loaded from -# the neutron.ml2.type_drivers namespace. -# -type_drivers = flat,gre -# Example: type_drivers = flat,vlan,gre,vxlan - -# (ListOpt) Ordered list of network_types to allocate as tenant -# networks. The default value 'local' is useful for single-box testing -# but provides no connectivity between hosts. -# -tenant_network_types = gre -# Example: tenant_network_types = vlan,gre,vxlan - -# (ListOpt) Ordered list of networking mechanism driver entrypoints -# to be loaded from the neutron.ml2.mechanism_drivers namespace. -mechanism_drivers = openvswitch -# Example: mechanism_drivers = openvswitch,mlnx -# Example: mechanism_drivers = arista -# Example: mechanism_drivers = cisco,logger -# Example: mechanism_drivers = openvswitch,brocade -# Example: mechanism_drivers = linuxbridge,brocade - -# (ListOpt) Ordered list of extension driver entrypoints -# to be loaded from the neutron.ml2.extension_drivers namespace. -# extension_drivers = -# Example: extension_drivers = anewextensiondriver - -# =========== items for MTU selection and advertisement ============= -# (IntOpt) Path MTU. The maximum permissible size of an unfragmented -# packet travelling from and to addresses where encapsulated Neutron -# traffic is sent. Drivers calculate maximum viable MTU for -# validating tenant requests based on this value (typically, -# path_mtu - max encap header size). If <=0, the path MTU is -# indeterminate and no calculation takes place. -# path_mtu = 0 - -# (IntOpt) Segment MTU. The maximum permissible size of an -# unfragmented packet travelling a L2 network segment. If <=0, -# the segment MTU is indeterminate and no calculation takes place. -# segment_mtu = 0 - -# (ListOpt) Physical network MTUs. List of mappings of physical -# network to MTU value. The format of the mapping is -# :. This mapping allows specifying a -# physical network MTU value that differs from the default -# segment_mtu value. -# physical_network_mtus = -# Example: physical_network_mtus = physnet1:1550, physnet2:1500 -# ======== end of items for MTU selection and advertisement ========= - -# (StrOpt) Default network type for external networks when no provider -# attributes are specified. By default it is None, which means that if -# provider attributes are not specified while creating external networks -# then they will have the same type as tenant networks. -# Allowed values for external_network_type config option depend on the -# network type values configured in type_drivers config option. -# external_network_type = -# Example: external_network_type = local - -[ml2_type_flat] -# (ListOpt) List of physical_network names with which flat networks -# can be created. Use * to allow flat networks with arbitrary -# physical_network names. -# -flat_networks = External -# Example:flat_networks = physnet1,physnet2 -# Example:flat_networks = * - -[ml2_type_vlan] -# (ListOpt) List of [::] tuples -# specifying physical_network names usable for VLAN provider and -# tenant networks, as well as ranges of VLAN tags on each -# physical_network available for allocation as tenant networks. -# -# network_vlan_ranges = -# Example: network_vlan_ranges = physnet1:1000:2999,physnet2 - -[ml2_type_gre] -# (ListOpt) Comma-separated list of : tuples enumerating ranges of GRE tunnel IDs that are available for tenant network allocation -tunnel_id_ranges = 1:1000 - -[ml2_type_vxlan] -# (ListOpt) Comma-separated list of : tuples enumerating -# ranges of VXLAN VNI IDs that are available for tenant network allocation. -# -# vni_ranges = - -# (StrOpt) Multicast group for the VXLAN interface. When configured, will -# enable sending all broadcast traffic to this multicast group. When left -# unconfigured, will disable multicast VXLAN mode. -# -# vxlan_group = -# Example: vxlan_group = 239.1.1.1 - -[securitygroup] -# Controls if neutron security group is enabled or not. -# It should be false when you use nova security group. -enable_security_group = True - -# Use ipset to speed-up the iptables security groups. Enabling ipset support -# requires that ipset is installed on L2 agent node. -enable_ipset = True - -firewall_driver=neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver - -[ovs] -local_ip = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} -enable_tunneling = True -bridge_mappings=External:br-ex - -[agent] -tunnel_types = gre diff --git a/install-files/openstack/usr/share/openstack/neutron/plugins/ryu/ryu.ini b/install-files/openstack/usr/share/openstack/neutron/plugins/ryu/ryu.ini deleted file mode 100644 index 9d9cfa25..00000000 --- a/install-files/openstack/usr/share/openstack/neutron/plugins/ryu/ryu.ini +++ /dev/null @@ -1,44 +0,0 @@ -[ovs] -# integration_bridge = br-int - -# openflow_rest_api = : -# openflow_rest_api = 127.0.0.1:8080 - -# tunnel key range: 0 < tunnel_key_min < tunnel_key_max -# VLAN: 12bits, GRE, VXLAN: 24bits -# tunnel_key_min = 1 -# tunnel_key_max = 0xffffff - -# tunnel_ip = -# tunnel_interface = interface for tunneling -# when tunnel_ip is NOT specified, ip address is read -# from this interface -# tunnel_ip = -# tunnel_interface = -tunnel_interface = eth0 - -# ovsdb_port = port number on which ovsdb is listening -# ryu-agent uses this parameter to setup ovsdb. -# ovs-vsctl set-manager ptcp: -# See set-manager section of man ovs-vsctl for details. -# currently ptcp is only supported. -# ovsdb_ip = -# ovsdb_interface = interface for ovsdb -# when ovsdb_addr NOT specifiied, ip address is gotten -# from this interface -# ovsdb_port = 6634 -# ovsdb_ip = -# ovsdb_interface = -ovsdb_interface = eth0 - -[securitygroup] -# Firewall driver for realizing neutron security group function -# firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver - -# Controls if neutron security group is enabled or not. -# It should be false when you use nova security group. -# enable_security_group = True - -[agent] -# Agent's polling interval in seconds -# polling_interval = 2 diff --git a/install-files/openstack/usr/share/openstack/nova-config.yml b/install-files/openstack/usr/share/openstack/nova-config.yml deleted file mode 100644 index 4f43db39..00000000 --- a/install-files/openstack/usr/share/openstack/nova-config.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/nova.conf" - tasks: - - name: Create the nova user. - user: - name: nova - comment: Openstack Nova Daemons - shell: /sbin/nologin - home: /var/lib/nova - groups: libvirt - append: yes - - - name: Create the /var folders for nova - file: - path: "{{ item }}" - state: directory - owner: nova - group: nova - with_items: - - /var/run/nova - - /var/lock/nova - - /var/log/nova - - /var/lib/nova - - /var/lib/nova/instances - - - file: path=/etc/nova state=directory - - name: Add the configuration needed for nova in /etc/nova using templates - template: - src: /usr/share/openstack/nova/{{ item }} - dest: /etc/nova/{{ item }} - with_lines: - - cd /usr/share/openstack/nova && find -type f diff --git a/install-files/openstack/usr/share/openstack/nova-db.yml b/install-files/openstack/usr/share/openstack/nova-db.yml deleted file mode 100644 index 0e933ba8..00000000 --- a/install-files/openstack/usr/share/openstack/nova-db.yml +++ /dev/null @@ -1,50 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/nova.conf" - tasks: - - name: Create nova service user in service tenant - keystone_user: - user: "{{ NOVA_SERVICE_USER }}" - password: "{{ NOVA_SERVICE_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Assign admin role to nova service user in the service tenant - keystone_user: - role: admin - user: "{{ NOVA_SERVICE_USER }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Add nova endpoint - keystone_service: - name: nova - type: compute - description: Openstack Compute Service - publicurl: 'http://{{ ansible_hostname }}:8774/v2/%(tenant_id)s' - internalurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2/%(tenant_id)s' - adminurl: 'http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2/%(tenant_id)s' - region: 'regionOne' - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - name: Create postgresql user for nova - postgresql_user: - name: "{{ NOVA_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - password: "{{ NOVA_DB_PASSWORD }}" - sudo: yes - sudo_user: nova - - - name: Create database for nova services - postgresql_db: - name: nova - owner: "{{ NOVA_DB_USER }}" - login_host: "{{ CONTROLLER_HOST_ADDRESS }}" - sudo: yes - sudo_user: nova - - - name: Initiate nova database - command: nova-manage db sync - sudo: yes - sudo_user: nova diff --git a/install-files/openstack/usr/share/openstack/nova/nova-compute.conf b/install-files/openstack/usr/share/openstack/nova/nova-compute.conf deleted file mode 100644 index 8d186211..00000000 --- a/install-files/openstack/usr/share/openstack/nova/nova-compute.conf +++ /dev/null @@ -1,4 +0,0 @@ -[DEFAULT] -compute_driver={{ COMPUTE_DRIVER }} -[libvirt] -virt_type={{ NOVA_VIRT_TYPE }} diff --git a/install-files/openstack/usr/share/openstack/nova/nova.conf b/install-files/openstack/usr/share/openstack/nova/nova.conf deleted file mode 100644 index f2db93fc..00000000 --- a/install-files/openstack/usr/share/openstack/nova/nova.conf +++ /dev/null @@ -1,4008 +0,0 @@ -[DEFAULT] - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker = oslo_messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port = 9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Seconds to wait before a cast expires (TTL). Only supported by impl_zmq. -# (integer value) -#rpc_cast_timeout = 30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq = 300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl = 600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size = 64 - -# Driver or drivers to handle sending notifications. (multi valued) -notification_driver = messagingv2 - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics = notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full configuration. If -# not set, we fall back to the rpc_backend option and driver specific -# configuration. (string value) -#transport_url = - -# The messaging driver to use, defaults to rabbit. Other drivers include qpid -# and zmq. (string value) -rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be overridden by an -# exchange name specified in the transport_url option. (string value) -#control_exchange = openstack - - -# -# Options defined in nova.availability_zones -# - -# The availability_zone to show internal services under -# (string value) -#internal_service_availability_zone=internal - -# Default compute node availability_zone (string value) -#default_availability_zone=nova - - -# -# Options defined in nova.crypto -# - -# Filename of root CA (string value) -#ca_file=cacert.pem - -# Filename of private key (string value) -#key_file=private/cakey.pem - -# Filename of root Certificate Revocation List (string value) -#crl_file=crl.pem - -# Where we keep our keys (string value) -#keys_path=$state_path/keys - -# Where we keep our root CA (string value) -#ca_path=$state_path/CA - -# Should we use a CA for each project? (boolean value) -#use_project_ca=false - -# Subject for certificate for users, %s for project, user, -# timestamp (string value) -#user_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=%.16s-%.16s-%s - -# Subject for certificate for projects, %s for project, -# timestamp (string value) -#project_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=project-ca-%.16s-%s - - -# -# Options defined in nova.exception -# - -# Make exception message format errors fatal (boolean value) -#fatal_exception_format_errors=false - - -# -# Options defined in nova.netconf -# - -# IP address of this host (string value) -my_ip={{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Block storage IP address of this host (string value) -#my_block_storage_ip=$my_ip - -# Name of this node. This can be an opaque identifier. It is -# not necessarily a hostname, FQDN, or IP address. However, -# the node name must be valid within an AMQP key, and if using -# ZeroMQ, a valid hostname, FQDN, or IP address (string value) -#host=nova - -# Use IPv6 (boolean value) -#use_ipv6=false - - -# -# Options defined in nova.notifications -# - -# If set, send compute.instance.update notifications on -# instance state changes. Valid values are None for no -# notifications, "vm_state" for notifications on VM state -# changes, or "vm_and_task_state" for notifications on VM and -# task state changes. (string value) -notify_on_state_change=vm_and_task_state - -# If set, send api.fault notifications on caught exceptions in -# the API service. (boolean value) -#notify_api_faults=false - -# Default notification level for outgoing notifications -# (string value) -#default_notification_level=INFO - -# Default publisher_id for outgoing notifications (string -# value) -#default_publisher_id= - - -# -# Options defined in nova.paths -# - -# Directory where the nova python module is installed (string -# value) -#pybasedir=/usr/lib/python/site-packages - -# Directory where nova binaries are installed (string value) -#bindir=/usr/local/bin - -# Top-level directory for maintaining nova's state (string -# value) -state_path=/var/lib/nova - - -# -# Options defined in nova.quota -# - -# Number of instances allowed per project (integer value) -#quota_instances=10 - -# Number of instance cores allowed per project (integer value) -#quota_cores=20 - -# Megabytes of instance RAM allowed per project (integer -# value) -#quota_ram=51200 - -# Number of floating IPs allowed per project (integer value) -#quota_floating_ips=10 - -# Number of fixed IPs allowed per project (this should be at -# least the number of instances allowed) (integer value) -#quota_fixed_ips=-1 - -# Number of metadata items allowed per instance (integer -# value) -#quota_metadata_items=128 - -# Number of injected files allowed (integer value) -#quota_injected_files=5 - -# Number of bytes allowed per injected file (integer value) -#quota_injected_file_content_bytes=10240 - -# Length of injected file path (integer value) -#quota_injected_file_path_length=255 - -# Number of security groups per project (integer value) -#quota_security_groups=10 - -# Number of security rules per security group (integer value) -#quota_security_group_rules=20 - -# Number of key pairs per user (integer value) -#quota_key_pairs=100 - -# Number of server groups per project (integer value) -#quota_server_groups=10 - -# Number of servers per server group (integer value) -#quota_server_group_members=10 - -# Number of seconds until a reservation expires (integer -# value) -#reservation_expire=86400 - -# Count of reservations until usage is refreshed. This -# defaults to 0(off) to avoid additional load but it is useful -# to turn on to help keep quota usage up to date and reduce -# the impact of out of sync usage issues. (integer value) -#until_refresh=0 - -# Number of seconds between subsequent usage refreshes. This -# defaults to 0(off) to avoid additional load but it is useful -# to turn on to help keep quota usage up to date and reduce -# the impact of out of sync usage issues. Note that quotas are -# not updated on a periodic task, they will update on a new -# reservation if max_age has passed since the last reservation -# (integer value) -#max_age=0 - -# Default driver to use for quota checks (string value) -#quota_driver=nova.quota.DbQuotaDriver - - -# -# Options defined in nova.service -# - -# Seconds between nodes reporting state to datastore (integer -# value) -#report_interval=10 - -# Enable periodic tasks (boolean value) -#periodic_enable=true - -# Range of seconds to randomly delay when starting the -# periodic task scheduler to reduce stampeding. (Disable by -# setting to 0) (integer value) -#periodic_fuzzy_delay=60 - -# A list of APIs to enable by default (list value) -enabled_apis=ec2,osapi_compute,metadata - -# A list of APIs with enabled SSL (list value) -#enabled_ssl_apis= - -# The IP address on which the EC2 API will listen. (string -# value) -#ec2_listen=0.0.0.0 - -# The port on which the EC2 API will listen. (integer value) -#ec2_listen_port=8773 - -# Number of workers for EC2 API service. The default will be -# equal to the number of CPUs available. (integer value) -#ec2_workers= - -# The IP address on which the OpenStack API will listen. -# (string value) -#osapi_compute_listen=0.0.0.0 - -# The port on which the OpenStack API will listen. (integer -# value) -#osapi_compute_listen_port=8774 - -# Number of workers for OpenStack API service. The default -# will be the number of CPUs available. (integer value) -#osapi_compute_workers= - -# OpenStack metadata service manager (string value) -#metadata_manager=nova.api.manager.MetadataManager - -# The IP address on which the metadata API will listen. -# (string value) -#metadata_listen=0.0.0.0 - -# The port on which the metadata API will listen. (integer -# value) -#metadata_listen_port=8775 - -# Number of workers for metadata service. The default will be -# the number of CPUs available. (integer value) -#metadata_workers= - -# Full class name for the Manager for compute (string value) -compute_manager={{ COMPUTE_MANAGER }} - -# Full class name for the Manager for console proxy (string -# value) -#console_manager=nova.console.manager.ConsoleProxyManager - -# Manager for console auth (string value) -#consoleauth_manager=nova.consoleauth.manager.ConsoleAuthManager - -# Full class name for the Manager for cert (string value) -#cert_manager=nova.cert.manager.CertManager - -# Full class name for the Manager for network (string value) -#network_manager=nova.network.manager.VlanManager - -# Full class name for the Manager for scheduler (string value) -#scheduler_manager=nova.scheduler.manager.SchedulerManager - -# Maximum time since last check-in for up service (integer -# value) -#service_down_time=60 - - -# -# Options defined in nova.utils -# - -# Whether to log monkey patching (boolean value) -#monkey_patch=false - -# List of modules/decorators to monkey patch (list value) -#monkey_patch_modules=nova.api.ec2.cloud:nova.notifications.notify_decorator,nova.compute.api:nova.notifications.notify_decorator - -# Length of generated instance admin passwords (integer value) -#password_length=12 - -# Time period to generate instance usages for. Time period -# must be hour, day, month or year (string value) -instance_usage_audit_period=hour - -# Path to the rootwrap configuration file to use for running -# commands as root (string value) -rootwrap_config=/etc/nova/rootwrap.conf - -# Explicitly specify the temporary working directory (string -# value) -#tempdir= - - -# -# Options defined in nova.wsgi -# - -# File name for the paste.deploy config for nova-api (string -# value) -api_paste_config=api-paste.ini - -# A python format string that is used as the template to -# generate log lines. The following values can be formatted -# into it: client_ip, date_time, request_line, status_code, -# body_length, wall_seconds. (string value) -#wsgi_log_format=%(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f - -# CA certificate file to use to verify connecting clients -# (string value) -#ssl_ca_file= - -# SSL certificate of API server (string value) -#ssl_cert_file= - -# SSL private key of API server (string value) -#ssl_key_file= - -# Sets the value of TCP_KEEPIDLE in seconds for each server -# socket. Not supported on OS X. (integer value) -#tcp_keepidle=600 - -# Size of the pool of greenthreads used by wsgi (integer -# value) -#wsgi_default_pool_size=1000 - -# Maximum line size of message headers to be accepted. -# max_header_line may need to be increased when using large -# tokens (typically those generated by the Keystone v3 API -# with big service catalogs). (integer value) -#max_header_line=16384 - -# If False, closes the client socket connection explicitly. -# (boolean value) -#wsgi_keep_alive=true - -# Timeout for client connections' socket operations. If an -# incoming connection is idle for this number of seconds it -# will be closed. A value of '0' means wait forever. (integer -# value) -#client_socket_timeout=900 - - -# -# Options defined in nova.api.auth -# - -# Whether to use per-user rate limiting for the api. This -# option is only used by v2 api. Rate limiting is removed from -# v3 api. (boolean value) -#api_rate_limit=false - -# The strategy to use for auth: keystone, noauth -# (deprecated), or noauth2. Both noauth and noauth2 are -# designed for testing only, as they do no actual credential -# checking. noauth provides administrative credentials -# regardless of the passed in user, noauth2 only does if -# 'admin' is specified as the username. (string value) -auth_strategy=keystone - -# Treat X-Forwarded-For as the canonical remote address. Only -# enable this if you have a sanitizing proxy. (boolean value) -#use_forwarded_for=false - - -# -# Options defined in nova.api.ec2 -# - -# Number of failed auths before lockout. (integer value) -#lockout_attempts=5 - -# Number of minutes to lockout if triggered. (integer value) -#lockout_minutes=15 - -# Number of minutes for lockout window. (integer value) -#lockout_window=15 - -# URL to get token from ec2 request. (string value) -#keystone_ec2_url=http://localhost:5000/v2.0/ec2tokens - -# Return the IP address as private dns hostname in describe -# instances (boolean value) -#ec2_private_dns_show_ip=false - -# Validate security group names according to EC2 specification -# (boolean value) -#ec2_strict_validation=true - -# Time in seconds before ec2 timestamp expires (integer value) -#ec2_timestamp_expiry=300 - -# Disable SSL certificate verification. (boolean value) -#keystone_ec2_insecure=false - - -# -# Options defined in nova.api.ec2.cloud -# - -# The IP address of the EC2 API server (string value) -#ec2_host=$my_ip - -# The internal IP address of the EC2 API server (string value) -#ec2_dmz_host=$my_ip - -# The port of the EC2 API server (integer value) -#ec2_port=8773 - -# The protocol to use when connecting to the EC2 API server -# (http, https) (string value) -#ec2_scheme=http - -# The path prefix used to call the ec2 API server (string -# value) -#ec2_path=/ - -# List of region=fqdn pairs separated by commas (list value) -#region_list= - - -# -# Options defined in nova.api.metadata.base -# - -# List of metadata versions to skip placing into the config -# drive (string value) -#config_drive_skip_versions=1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01 - -# Driver to use for vendor data (string value) -#vendordata_driver=nova.api.metadata.vendordata_json.JsonFileVendorData - - -# -# Options defined in nova.api.metadata.handler -# - -# Time in seconds to cache metadata; 0 to disable metadata -# caching entirely (not recommended). Increasingthis should -# improve response times of the metadata API when under heavy -# load. Higher values may increase memoryusage and result in -# longer times for host metadata changes to take effect. -# (integer value) -#metadata_cache_expiration=15 - - -# -# Options defined in nova.api.metadata.vendordata_json -# - -# File to load JSON formatted vendor data from (string value) -#vendordata_jsonfile_path= - - -# -# Options defined in nova.api.openstack.common -# - -# The maximum number of items returned in a single response -# from a collection resource (integer value) -#osapi_max_limit=1000 - -# Base URL that will be presented to users in links to the -# OpenStack Compute API (string value) -#osapi_compute_link_prefix= - -# Base URL that will be presented to users in links to glance -# resources (string value) -#osapi_glance_link_prefix= - - -# -# Options defined in nova.api.openstack.compute -# - -# Permit instance snapshot operations. (boolean value) -#allow_instance_snapshots=true - - -# -# Options defined in nova.api.openstack.compute.contrib -# - -# Specify list of extensions to load when using -# osapi_compute_extension option with -# nova.api.openstack.compute.contrib.select_extensions (list -# value) -#osapi_compute_ext_list= - - -# -# Options defined in nova.api.openstack.compute.contrib.fping -# - -# Full path to fping. (string value) -#fping_path=/usr/sbin/fping - - -# -# Options defined in nova.api.openstack.compute.contrib.os_tenant_networks -# - -# Enables or disables quota checking for tenant networks -# (boolean value) -#enable_network_quota=false - -# Control for checking for default networks (string value) -#use_neutron_default_nets=False - -# Default tenant id when creating neutron networks (string -# value) -#neutron_default_tenant_id=default - -# Number of private networks allowed per project (integer -# value) -#quota_networks=3 - - -# -# Options defined in nova.api.openstack.compute.extensions -# - -# osapi compute extension to load (multi valued) -osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions - - -# -# Options defined in nova.api.openstack.compute.plugins.v3.hide_server_addresses -# - -# List of instance states that should hide network info (list -# value) -#osapi_hide_server_address_states=building - - -# -# Options defined in nova.api.openstack.compute.servers -# - -# Enables returning of the instance password by the relevant -# server API calls such as create, rebuild or rescue, If the -# hypervisor does not support password injection then the -# password returned will not be correct (boolean value) -#enable_instance_password=true - - -# -# Options defined in nova.cert.rpcapi -# - -# The topic cert nodes listen on (string value) -#cert_topic=cert - - -# -# Options defined in nova.cloudpipe.pipelib -# - -# Image ID used when starting up a cloudpipe vpn server -# (string value) -#vpn_image_id=0 - -# Flavor for vpn instances (string value) -#vpn_flavor=m1.tiny - -# Template for cloudpipe instance boot script (string value) -#boot_script_template=$pybasedir/nova/cloudpipe/bootscript.template - -# Network to push into openvpn config (string value) -#dmz_net=10.0.0.0 - -# Netmask to push into openvpn config (string value) -#dmz_mask=255.255.255.0 - -# Suffix to add to project name for vpn key and secgroups -# (string value) -#vpn_key_suffix=-vpn - - -# -# Options defined in nova.cmd.novnc -# - -# Record sessions to FILE.[session_number] (boolean value) -#record=false - -# Become a daemon (background process) (boolean value) -#daemon=false - -# Disallow non-encrypted connections (boolean value) -#ssl_only=false - -# Source is ipv6 (boolean value) -#source_is_ipv6=false - -# SSL certificate file (string value) -#cert=self.pem - -# SSL key file (if separate from cert) (string value) -#key= - -# Run webserver on same port. Serve files from DIR. (string -# value) -#web=/usr/share/spice-html5 - - -# -# Options defined in nova.cmd.novncproxy -# - -# Host on which to listen for incoming requests (string value) -#novncproxy_host=0.0.0.0 - -# Port on which to listen for incoming requests (integer -# value) -#novncproxy_port=6080 - - -# -# Options defined in nova.compute.api -# - -# Allow destination machine to match source for resize. Useful -# when testing in single-host environments. (boolean value) -#allow_resize_to_same_host=false - -# Allow migrate machine to the same host. Useful when testing -# in single-host environments. (boolean value) -#allow_migrate_to_same_host=false - -# Availability zone to use when user doesn't specify one -# (string value) -#default_schedule_zone= - -# These are image properties which a snapshot should not -# inherit from an instance (list value) -#non_inheritable_image_properties=cache_in_nova,bittorrent - -# Kernel image that indicates not to use a kernel, but to use -# a raw disk image instead (string value) -#null_kernel=nokernel - -# When creating multiple instances with a single request using -# the os-multiple-create API extension, this template will be -# used to build the display name for each instance. The -# benefit is that the instances end up with different -# hostnames. To restore legacy behavior of every instance -# having the same name, set this option to "%(name)s". Valid -# keys for the template are: name, uuid, count. (string value) -#multi_instance_display_name_template=%(name)s-%(count)d - -# Maximum number of devices that will result in a local image -# being created on the hypervisor node. Setting this to 0 -# means nova will allow only boot from volume. A negative -# number means unlimited. (integer value) -#max_local_block_devices=3 - - -# -# Options defined in nova.compute.flavors -# - -# Default flavor to use for the EC2 API only. The Nova API -# does not support a default flavor. (string value) -#default_flavor=m1.small - - -# -# Options defined in nova.compute.manager -# - -# Console proxy host to use to connect to instances on this -# host. (string value) -#console_host=nova - -# Name of network to use to set access IPs for instances -# (string value) -#default_access_ip_network_name= - -# Whether to batch up the application of IPTables rules during -# a host restart and apply all at the end of the init phase -# (boolean value) -#defer_iptables_apply=false - -# Where instances are stored on disk (string value) -#instances_path=$state_path/instances - -# Generate periodic compute.instance.exists notifications -# (boolean value) -instance_usage_audit= True - -# Number of 1 second retries needed in live_migration (integer -# value) -#live_migration_retry_count=30 - -# Whether to start guests that were running before the host -# rebooted (boolean value) -#resume_guests_state_on_host_boot=false - -# Number of times to retry network allocation on failures -# (integer value) -#network_allocate_retries=0 - -# Maximum number of instance builds to run concurrently -# (integer value) -#max_concurrent_builds=10 - -# Number of times to retry block device allocation on failures -# (integer value) -#block_device_allocate_retries=60 - -# The number of times to attempt to reap an instance's files. -# (integer value) -#maximum_instance_delete_attempts=5 - -# Interval to pull network bandwidth usage info. Not supported -# on all hypervisors. Set to -1 to disable. Setting this to 0 -# will run at the default rate. (integer value) -#bandwidth_poll_interval=600 - -# Interval to sync power states between the database and the -# hypervisor. Set to -1 to disable. Setting this to 0 will run -# at the default rate. (integer value) -#sync_power_state_interval=600 - -# Number of seconds between instance network information cache -# updates (integer value) -#heal_instance_info_cache_interval=60 - -# Interval in seconds for reclaiming deleted instances -# (integer value) -#reclaim_instance_interval=0 - -# Interval in seconds for gathering volume usages (integer -# value) -#volume_usage_poll_interval=0 - -# Interval in seconds for polling shelved instances to -# offload. Set to -1 to disable.Setting this to 0 will run at -# the default rate. (integer value) -#shelved_poll_interval=3600 - -# Time in seconds before a shelved instance is eligible for -# removing from a host. -1 never offload, 0 offload when -# shelved (integer value) -#shelved_offload_time=0 - -# Interval in seconds for retrying failed instance file -# deletes. Set to -1 to disable. Setting this to 0 will run at -# the default rate. (integer value) -#instance_delete_interval=300 - -# Waiting time interval (seconds) between block device -# allocation retries on failures (integer value) -#block_device_allocate_retries_interval=3 - -# Waiting time interval (seconds) between sending the -# scheduler a list of current instance UUIDs to verify that -# its view of instances is in sync with nova. If the CONF -# option `scheduler_tracks_instance_changes` is False, -# changing this option will have no effect. (integer value) -#scheduler_instance_sync_interval=120 - -# Action to take if a running deleted instance is detected. -# Valid options are 'noop', 'log', 'shutdown', or 'reap'. Set -# to 'noop' to take no action. (string value) -#running_deleted_instance_action=reap - -# Number of seconds to wait between runs of the cleanup task. -# (integer value) -#running_deleted_instance_poll_interval=1800 - -# Number of seconds after being deleted when a running -# instance should be considered eligible for cleanup. (integer -# value) -#running_deleted_instance_timeout=0 - -# Automatically hard reboot an instance if it has been stuck -# in a rebooting state longer than N seconds. Set to 0 to -# disable. (integer value) -#reboot_timeout=0 - -# Amount of time in seconds an instance can be in BUILD before -# going into ERROR status. Set to 0 to disable. (integer -# value) -#instance_build_timeout=0 - -# Automatically unrescue an instance after N seconds. Set to 0 -# to disable. (integer value) -#rescue_timeout=0 - -# Automatically confirm resizes after N seconds. Set to 0 to -# disable. (integer value) -#resize_confirm_window=0 - -# Total amount of time to wait in seconds for an instance to -# perform a clean shutdown. (integer value) -#shutdown_timeout=60 - - -# -# Options defined in nova.compute.monitors -# - -# Monitor classes available to the compute which may be -# specified more than once. (multi valued) -#compute_available_monitors=nova.compute.monitors.all_monitors - -# A list of monitors that can be used for getting compute -# metrics. (list value) -#compute_monitors= - - -# -# Options defined in nova.compute.resource_tracker -# - -# Amount of disk in MB to reserve for the host (integer value) -#reserved_host_disk_mb=0 - -# Amount of memory in MB to reserve for the host (integer -# value) -reserved_host_memory_mb={{ RESERVED_HOST_MEMORY_MB }} - -# Class that will manage stats for the local compute host -# (string value) -#compute_stats_class=nova.compute.stats.Stats - -# The names of the extra resources to track. (list value) -#compute_resources=vcpu - - -# -# Options defined in nova.compute.rpcapi -# - -# The topic compute nodes listen on (string value) -#compute_topic=compute - - -# -# Options defined in nova.conductor.tasks.live_migrate -# - -# Number of times to retry live-migration before failing. If -# == -1, try until out of hosts. If == 0, only try once, no -# retries. (integer value) -#migrate_max_retries=-1 - - -# -# Options defined in nova.console.manager -# - -# Driver to use for the console proxy (string value) -#console_driver=nova.console.xvp.XVPConsoleProxy - -# Stub calls to compute worker for tests (boolean value) -#stub_compute=false - -# Publicly visible name for this console host (string value) -#console_public_hostname=nova - - -# -# Options defined in nova.console.rpcapi -# - -# The topic console proxy nodes listen on (string value) -#console_topic=console - - -# -# Options defined in nova.console.xvp -# - -# XVP conf template (string value) -#console_xvp_conf_template=$pybasedir/nova/console/xvp.conf.template - -# Generated XVP conf file (string value) -#console_xvp_conf=/etc/xvp.conf - -# XVP master process pid file (string value) -#console_xvp_pid=/var/run/xvp.pid - -# XVP log file (string value) -#console_xvp_log=/var/log/xvp.log - -# Port for XVP to multiplex VNC connections on (integer value) -#console_xvp_multiplex_port=5900 - - -# -# Options defined in nova.consoleauth -# - -# The topic console auth proxy nodes listen on (string value) -#consoleauth_topic=consoleauth - - -# -# Options defined in nova.consoleauth.manager -# - -# How many seconds before deleting tokens (integer value) -#console_token_ttl=600 - - -# -# Options defined in nova.db.api -# - -# Services to be added to the available pool on create -# (boolean value) -#enable_new_services=true - -# Template string to be used to generate instance names -# (string value) -instance_name_template=instance-%08x - -# Template string to be used to generate snapshot names -# (string value) -snapshot_name_template=snapshot-%s - - -# -# Options defined in nova.db.base -# - -# The driver to use for database access (string value) -#db_driver=nova.db - - -# -# Options defined in nova.db.sqlalchemy.api -# - -# When set, compute API will consider duplicate hostnames -# invalid within the specified scope, regardless of case. -# Should be empty, "project" or "global". (string value) -#osapi_compute_unique_server_name_scope= - - -# -# Options defined in nova.image.s3 -# - -# Parent directory for tempdir used for image decryption -# (string value) -#image_decryption_dir=/tmp - -# Hostname or IP for OpenStack to use when accessing the S3 -# api (string value) -#s3_host=$my_ip - -# Port used when accessing the S3 api (integer value) -#s3_port=3333 - -# Access key to use for S3 server for images (string value) -#s3_access_key=notchecked - -# Secret key to use for S3 server for images (string value) -#s3_secret_key=notchecked - -# Whether to use SSL when talking to S3 (boolean value) -#s3_use_ssl=false - -# Whether to affix the tenant id to the access key when -# downloading from S3 (boolean value) -#s3_affix_tenant=false - - -# -# Options defined in nova.ipv6.api -# - -# Backend to use for IPv6 generation (string value) -#ipv6_backend=rfc2462 - - -# -# Options defined in nova.network -# - -# The full class name of the network API class to use (string -# value) -network_api_class=nova.network.neutronv2.api.API - - -# -# Options defined in nova.network.driver -# - -# Driver to use for network creation (string value) -#network_driver=nova.network.linux_net - - -# -# Options defined in nova.network.floating_ips -# - -# Default pool for floating IPs (string value) -#default_floating_pool=nova - -# Autoassigning floating IP to VM (boolean value) -#auto_assign_floating_ip=false - -# Full class name for the DNS Manager for floating IPs (string -# value) -#floating_ip_dns_manager=nova.network.noop_dns_driver.NoopDNSDriver - -# Full class name for the DNS Manager for instance IPs (string -# value) -#instance_dns_manager=nova.network.noop_dns_driver.NoopDNSDriver - -# Full class name for the DNS Zone for instance IPs (string -# value) -#instance_dns_domain= - - -# -# Options defined in nova.network.ldapdns -# - -# URL for LDAP server which will store DNS entries (string -# value) -#ldap_dns_url=ldap://ldap.example.com:389 - -# User for LDAP DNS (string value) -#ldap_dns_user=uid=admin,ou=people,dc=example,dc=org - -# Password for LDAP DNS (string value) -#ldap_dns_password=password - -# Hostmaster for LDAP DNS driver Statement of Authority -# (string value) -#ldap_dns_soa_hostmaster=hostmaster@example.org - -# DNS Servers for LDAP DNS driver (multi valued) -#ldap_dns_servers=dns.example.org - -# Base DN for DNS entries in LDAP (string value) -#ldap_dns_base_dn=ou=hosts,dc=example,dc=org - -# Refresh interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_refresh=1800 - -# Retry interval (in seconds) for LDAP DNS driver Statement of -# Authority (string value) -#ldap_dns_soa_retry=3600 - -# Expiry interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_expiry=86400 - -# Minimum interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_minimum=7200 - - -# -# Options defined in nova.network.linux_net -# - -# Location of flagfiles for dhcpbridge (multi valued) -#dhcpbridge_flagfile=/etc/nova/nova-dhcpbridge.conf - -# Location to keep network config files (string value) -#networks_path=$state_path/networks - -# Interface for public IP addresses (string value) -#public_interface=eth0 - -# Location of nova-dhcpbridge (string value) -#dhcpbridge=$bindir/nova-dhcpbridge - -# Public IP of network host (string value) -#routing_source_ip=$my_ip - -# Lifetime of a DHCP lease in seconds (integer value) -#dhcp_lease_time=86400 - -# If set, uses specific DNS server for dnsmasq. Can be -# specified multiple times. (multi valued) -#dns_server= - -# If set, uses the dns1 and dns2 from the network ref. as dns -# servers. (boolean value) -#use_network_dns_servers=false - -# A list of dmz ranges that should be accepted (list value) -#dmz_cidr= - -# Traffic to this range will always be snatted to the fallback -# ip, even if it would normally be bridged out of the node. -# Can be specified multiple times. (multi valued) -#force_snat_range= - -# Override the default dnsmasq settings with this file (string -# value) -#dnsmasq_config_file= - -# Driver used to create ethernet devices. (string value) -linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver - -# Name of Open vSwitch bridge used with linuxnet (string -# value) -#linuxnet_ovs_integration_bridge=br-int - -# Send gratuitous ARPs for HA setup (boolean value) -#send_arp_for_ha=false - -# Send this many gratuitous ARPs for HA setup (integer value) -#send_arp_for_ha_count=3 - -# Use single default gateway. Only first nic of vm will get -# default gateway from dhcp server (boolean value) -#use_single_default_gateway=false - -# An interface that bridges can forward to. If this is set to -# all then all traffic will be forwarded. Can be specified -# multiple times. (multi valued) -#forward_bridge_interface=all - -# The IP address for the metadata API server (string value) -#metadata_host=$my_ip - -# The port for the metadata API port (integer value) -#metadata_port=8775 - -# Regular expression to match the iptables rule that should -# always be on the top. (string value) -#iptables_top_regex= - -# Regular expression to match the iptables rule that should -# always be on the bottom. (string value) -#iptables_bottom_regex= - -# The table that iptables to jump to when a packet is to be -# dropped. (string value) -#iptables_drop_action=DROP - -# Amount of time, in seconds, that ovs_vsctl should wait for a -# response from the database. 0 is to wait forever. (integer -# value) -#ovs_vsctl_timeout=120 - -# If passed, use fake network devices and addresses (boolean -# value) -#fake_network=false - -# Number of times to retry ebtables commands on failure. -# (integer value) -#ebtables_exec_attempts=3 - -# Number of seconds to wait between ebtables retries. -# (floating point value) -#ebtables_retry_interval=1.0 - - -# -# Options defined in nova.network.manager -# - -# Bridge for simple network instances (string value) -#flat_network_bridge= - -# DNS server for simple network (string value) -#flat_network_dns=8.8.4.4 - -# Whether to attempt to inject network setup into guest -# (boolean value) -#flat_injected=false - -# FlatDhcp will bridge into this interface if set (string -# value) -#flat_interface= - -# First VLAN for private networks (integer value) -#vlan_start=100 - -# VLANs will bridge into this interface if set (string value) -#vlan_interface= - -# Number of networks to support (integer value) -#num_networks=1 - -# Public IP for the cloudpipe VPN servers (string value) -#vpn_ip=$my_ip - -# First Vpn port for private networks (integer value) -#vpn_start=1000 - -# Number of addresses in each private subnet (integer value) -#network_size=256 - -# Fixed IPv6 address block (string value) -#fixed_range_v6=fd00::/48 - -# Default IPv4 gateway (string value) -#gateway= - -# Default IPv6 gateway (string value) -#gateway_v6= - -# Number of addresses reserved for vpn clients (integer value) -#cnt_vpn_clients=0 - -# Seconds after which a deallocated IP is disassociated -# (integer value) -#fixed_ip_disassociate_timeout=600 - -# Number of attempts to create unique mac address (integer -# value) -#create_unique_mac_address_attempts=5 - -# If True, skip using the queue and make local calls (boolean -# value) -#fake_call=false - -# If True, unused gateway devices (VLAN and bridge) are -# deleted in VLAN network mode with multi hosted networks -# (boolean value) -#teardown_unused_network_gateway=false - -# If True, send a dhcp release on instance termination -# (boolean value) -#force_dhcp_release=true - -# If True, when a DNS entry must be updated, it sends a fanout -# cast to all network hosts to update their DNS entries in -# multi host mode (boolean value) -#update_dns_entries=false - -# Number of seconds to wait between runs of updates to DNS -# entries. (integer value) -#dns_update_periodic_interval=-1 - -# Domain to use for building the hostnames (string value) -#dhcp_domain=novalocal - -# Indicates underlying L3 management library (string value) -#l3_lib=nova.network.l3.LinuxNetL3 - - -# -# Options defined in nova.network.rpcapi -# - -# The topic network nodes listen on (string value) -#network_topic=network - -# Default value for multi_host in networks. Also, if set, some -# rpc network calls will be sent directly to host. (boolean -# value) -#multi_host=false - - -# -# Options defined in nova.network.security_group.openstack_driver -# - -# The full class name of the security API class (string value) -security_group_api=neutron - - -# -# Options defined in nova.objects.network -# - -# DEPRECATED: THIS VALUE SHOULD BE SET WHEN CREATING THE -# NETWORK. If True in multi_host mode, all compute hosts share -# the same dhcp address. The same IP address used for DHCP -# will be added on each nova-network node which is only -# visible to the vms on the same host. (boolean value) -#share_dhcp_address=false - -# DEPRECATED: THIS VALUE SHOULD BE SET WHEN CREATING THE -# NETWORK. MTU setting for network interface. (integer value) -#network_device_mtu= - - -# -# Options defined in nova.objectstore.s3server -# - -# Path to S3 buckets (string value) -#buckets_path=$state_path/buckets - -# IP address for S3 API to listen (string value) -#s3_listen=0.0.0.0 - -# Port for S3 API to listen (integer value) -#s3_listen_port=3333 - - -# -# From oslo.log -# - -# Print debugging output (set logging level to DEBUG instead of default WARNING -# level). (boolean value) -#debug = false - -# Print more verbose output (set logging level to INFO instead of default -# WARNING level). (boolean value) -#verbose = false - -# The name of a logging configuration file. This file is appended to any -# existing logging configuration files. For details about logging configuration -# files, see the Python logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may use any -# of the available logging.LogRecord attributes. This option is deprecated. -# Please use logging_context_format_string and logging_default_format_string -# instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s . (string -# value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, logging will -# go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. (string -# value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during I, and -# will change in J to honor RFC5424. (boolean value) -use_syslog = True - -# (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, -# prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The -# format without the APP-NAME is deprecated in I, and will be removed in J. -# (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. (string -# value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. (string -# value) -#instance_uuid_format = "[instance: %(uuid)s] " - - -# -# Options defined in nova.pci.request -# - -# An alias for a PCI passthrough device requirement. This -# allows users to specify the alias in the extra_spec for a -# flavor, without needing to repeat all the PCI property -# requirements. For example: pci_alias = { "name": -# "QuicAssist", "product_id": "0443", "vendor_id": "8086", -# "device_type": "ACCEL" } defines an alias for the Intel -# QuickAssist card. (multi valued) (multi valued) -#pci_alias= - - -# -# Options defined in nova.pci.whitelist -# - -# White list of PCI devices available to VMs. For example: -# pci_passthrough_whitelist = [{"vendor_id": "8086", -# "product_id": "0443"}] (multi valued) -#pci_passthrough_whitelist= - - -# -# Options defined in nova.scheduler.driver -# - -# The scheduler host manager class to use (string value) -scheduler_host_manager={{ SCHEDULER_HOST_MANAGER }} - - -# -# Options defined in nova.scheduler.filter_scheduler -# - -# New instances will be scheduled on a host chosen randomly -# from a subset of the N best hosts. This property defines the -# subset size that a host is chosen from. A value of 1 chooses -# the first host returned by the weighing functions. This -# value must be at least 1. Any value less than 1 will be -# ignored, and 1 will be used instead (integer value) -#scheduler_host_subset_size=1 - - -# -# Options defined in nova.scheduler.filters.aggregate_image_properties_isolation -# - -# Force the filter to consider only keys matching the given -# namespace. (string value) -#aggregate_image_properties_isolation_namespace= - -# The separator used between the namespace and keys (string -# value) -#aggregate_image_properties_isolation_separator=. - - -# -# Options defined in nova.scheduler.filters.core_filter -# - -# Virtual CPU to physical CPU allocation ratio which affects -# all CPU filters. This configuration specifies a global ratio -# for CoreFilter. For AggregateCoreFilter, it will fall back -# to this configuration value if no per-aggregate setting -# found. (floating point value) -#cpu_allocation_ratio=16.0 - - -# -# Options defined in nova.scheduler.filters.disk_filter -# - -# Virtual disk to physical disk allocation ratio (floating -# point value) -#disk_allocation_ratio=1.0 - - -# -# Options defined in nova.scheduler.filters.io_ops_filter -# - -# Tells filters to ignore hosts that have this many or more -# instances currently in build, resize, snapshot, migrate, -# rescue or unshelve task states (integer value) -#max_io_ops_per_host=8 - - -# -# Options defined in nova.scheduler.filters.isolated_hosts_filter -# - -# Images to run on isolated host (list value) -#isolated_images= - -# Host reserved for specific images (list value) -#isolated_hosts= - -# Whether to force isolated hosts to run only isolated images -# (boolean value) -#restrict_isolated_hosts_to_isolated_images=true - - -# -# Options defined in nova.scheduler.filters.num_instances_filter -# - -# Ignore hosts that have too many instances (integer value) -#max_instances_per_host=50 - - -# -# Options defined in nova.scheduler.filters.ram_filter -# - -# Virtual ram to physical ram allocation ratio which affects -# all ram filters. This configuration specifies a global ratio -# for RamFilter. For AggregateRamFilter, it will fall back to -# this configuration value if no per-aggregate setting found. -# (floating point value) -ram_allocation_ratio={{ RAM_ALLOCATION_RATIO }} - - -# -# Options defined in nova.scheduler.host_manager -# - -# Filter classes available to the scheduler which may be -# specified more than once. An entry of -# "nova.scheduler.filters.all_filters" maps to all filters -# included with nova. (multi valued) -#scheduler_available_filters=nova.scheduler.filters.all_filters - -# Which filter class names to use for filtering hosts when not -# specified in the request. (list value) -scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter - -# Which weight class names to use for weighing hosts (list -# value) -#scheduler_weight_classes=nova.scheduler.weights.all_weighers - -# Determines if the Scheduler tracks changes to instances to -# help with its filtering decisions. (boolean value) -#scheduler_tracks_instance_changes=true - - -# -# Options defined in nova.scheduler.ironic_host_manager -# - -# Which filter class names to use for filtering baremetal -# hosts when not specified in the request. (list value) -#baremetal_scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ExactRamFilter,ExactDiskFilter,ExactCoreFilter - -# Flag to decide whether to use -# baremetal_scheduler_default_filters or not. (boolean value) -scheduler_use_baremetal_filters={{ SCHEDULER_USE_BAREMETAL_FILTERS }} - - -# -# Options defined in nova.scheduler.manager -# - -# Default driver to use for the scheduler (string value) -scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler - -# How often (in seconds) to run periodic tasks in the -# scheduler driver of your choice. Please note this is likely -# to interact with the value of service_down_time, but exactly -# how they interact will depend on your choice of scheduler -# driver. (integer value) -#scheduler_driver_task_period=60 - - -# -# Options defined in nova.scheduler.rpcapi -# - -# The topic scheduler nodes listen on (string value) -#scheduler_topic=scheduler - - -# -# Options defined in nova.scheduler.scheduler_options -# - -# Absolute path to scheduler configuration JSON file. (string -# value) -#scheduler_json_config_location= - - -# -# Options defined in nova.scheduler.utils -# - -# Maximum number of attempts to schedule an instance (integer -# value) -#scheduler_max_attempts=3 - - -# -# Options defined in nova.scheduler.weights.io_ops -# - -# Multiplier used for weighing host io ops. Negative numbers -# mean a preference to choose light workload compute hosts. -# (floating point value) -#io_ops_weight_multiplier=-1.0 - - -# -# Options defined in nova.scheduler.weights.ram -# - -# Multiplier used for weighing ram. Negative numbers mean to -# stack vs spread. (floating point value) -#ram_weight_multiplier=1.0 - - -# -# Options defined in nova.servicegroup.api -# - -# The driver for servicegroup service (valid options are: db, -# zk, mc) (string value) -#servicegroup_driver=db - - -# -# Options defined in nova.virt.configdrive -# - -# Config drive format. One of iso9660 (default) or vfat -# (string value) -#config_drive_format=iso9660 - -# Set to "always" to force injection to take place on a config -# drive. NOTE: The "always" will be deprecated in the Liberty -# release cycle. (string value) -#force_config_drive= - -# Name and optionally path of the tool used for ISO image -# creation (string value) -#mkisofs_cmd=genisoimage - - -# -# Options defined in nova.virt.disk.api -# - -# Name of the mkfs commands for ephemeral device. The format -# is = (multi valued) -#virt_mkfs= - -# Attempt to resize the filesystem by accessing the image over -# a block device. This is done by the host and may not be -# necessary if the image contains a recent version of cloud- -# init. Possible mechanisms require the nbd driver (for qcow -# and raw), or loop (for raw). (boolean value) -#resize_fs_using_block_device=false - - -# -# Options defined in nova.virt.disk.mount.nbd -# - -# Amount of time, in seconds, to wait for NBD device start up. -# (integer value) -#timeout_nbd=10 - - -# -# Options defined in nova.virt.driver -# - -# Driver to use for controlling virtualization. Options -# include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, -# fake.FakeDriver, baremetal.BareMetalDriver, -# vmwareapi.VMwareVCDriver, hyperv.HyperVDriver (string value) -compute_driver={{ COMPUTE_DRIVER }} - -# The default format an ephemeral_volume will be formatted -# with on creation. (string value) -#default_ephemeral_format= - -# VM image preallocation mode: "none" => no storage -# provisioning is done up front, "space" => storage is fully -# allocated at instance start (string value) -#preallocate_images=none - -# Whether to use cow images (boolean value) -#use_cow_images=true - -# Fail instance boot if vif plugging fails (boolean value) -#vif_plugging_is_fatal=true - -# Number of seconds to wait for neutron vif plugging events to -# arrive before continuing or failing (see -# vif_plugging_is_fatal). If this is set to zero and -# vif_plugging_is_fatal is False, events should not be -# expected to arrive at all. (integer value) -#vif_plugging_timeout=300 - - -# -# Options defined in nova.virt.firewall -# - -# Firewall driver (defaults to hypervisor specific iptables -# driver) (string value) -firewall_driver=nova.virt.firewall.NoopFirewallDriver - -# Whether to allow network traffic from same network (boolean -# value) -#allow_same_net_traffic=true - - -# -# Options defined in nova.virt.hardware -# - -# Defines which pcpus that instance vcpus can use. For -# example, "4-12,^8,15" (string value) -#vcpu_pin_set= - - -# -# Options defined in nova.virt.imagecache -# - -# Number of seconds to wait between runs of the image cache -# manager. Set to -1 to disable. Setting this to 0 will run at -# the default rate. (integer value) -#image_cache_manager_interval=2400 - -# Where cached images are stored under $instances_path. This -# is NOT the full path - just a folder name. For per-compute- -# host cached images, set to _base_$my_ip (string value) -#image_cache_subdirectory_name=_base - -# Should unused base images be removed? (boolean value) -#remove_unused_base_images=true - -# Unused unresized base images younger than this will not be -# removed (integer value) -#remove_unused_original_minimum_age_seconds=86400 - - -# -# Options defined in nova.virt.images -# - -# Force backing images to raw format (boolean value) -#force_raw_images=true - - -# -# Options defined in nova.virt.netutils -# - -# Template file for injected network (string value) -#injected_network_template=$pybasedir/nova/virt/interfaces.template - - -# -# Options defined in nova.vnc -# - -# Location of VNC console proxy, in the form -# "http://127.0.0.1:6080/vnc_auto.html" (string value) -novncproxy_base_url=http://{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}:6080/vnc_auto.html - -# Location of nova xvp VNC console proxy, in the form -# "http://127.0.0.1:6081/console" (string value) -#xvpvncproxy_base_url=http://127.0.0.1:6081/console - -# IP address on which instance vncservers should listen -# (string value) -vncserver_listen=0.0.0.0 - -# The address to which proxy clients (like nova-xvpvncproxy) -# should connect (string value) -vncserver_proxyclient_address={{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -# Enable VNC related features (boolean value) -vnc_enabled=true - -# Keymap for VNC (string value) -vnc_keymap=en-us - - -# -# Options defined in nova.vnc.xvp_proxy -# - -# Port that the XCP VNC proxy should bind to (integer value) -#xvpvncproxy_port=6081 - -# Address that the XCP VNC proxy should bind to (string value) -#xvpvncproxy_host=0.0.0.0 - - -# -# Options defined in nova.volume -# - -# The full class name of the volume API class to use (string -# value) -#volume_api_class=nova.volume.cinder.API - - -# -# Options defined in nova.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , -# and :, where 0 results in listening on a random -# tcp port number; results in listening on the -# specified port number (and not enabling backdoor if that -# port is in use); and : results in listening on -# the smallest unused port number within the specified range -# of port numbers. The chosen port is displayed in the -# service's log file. (string value) -#backdoor_port= - - -# -# Options defined in nova.openstack.common.memorycache -# - -# Memcached servers or None for in process cache. (list value) -#memcached_servers= - - -# -# Options defined in nova.openstack.common.periodic_task -# - -# Some periodic tasks can be run in a separate process. Should -# we run them here? (boolean value) -#run_external_periodic_tasks=true - - -# -# Options defined in nova.openstack.common.policy -# - -# The JSON file that defines policies. (string value) -#policy_file=policy.json - -# Default rule. Enforced when a requested rule is not found. -# (string value) -#policy_default_rule=default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. The -# file defined by policy_file must exist for these directories -# to be searched. Missing or empty directories are ignored. -# (multi valued) -#policy_dirs=policy.d - - -# -# Options defined in nova.openstack.common.versionutils -# - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - - -[api_database] - -# -# Options defined in nova.db.sqlalchemy.api -# - -# The SQLAlchemy connection string to use to connect to the -# Nova API database. (string value) -#connection=postgresql://{{ NOVA_DB_USER }}:{{ NOVA_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/nova - -# If True, SQLite uses synchronous mode. (boolean value) -#sqlite_synchronous=true - -# Timeout before idle SQL connections are reaped. (integer -# value) -#idle_timeout=3600 - -# Maximum number of SQL connections to keep open in a pool. -# (integer value) -#max_pool_size= - -# Maximum number of database connection retries during -# startup. Set to -1 to specify an infinite retry count. -# (integer value) -#max_retries=10 - -# Interval between retries of opening a SQL connection. -# (integer value) -#retry_interval=10 - -# If set, use this value for max_overflow with SQLAlchemy. -# (integer value) -#max_overflow= - -# Verbosity of SQL debugging information: 0=None, -# 100=Everything. (integer value) -#connection_debug=0 - -# Add Python stack traces to SQL as comment strings. (boolean -# value) -#connection_trace=false - -# If set, use this value for pool_timeout with SQLAlchemy. -# (integer value) -#pool_timeout= - - -[barbican] - -# -# Options defined in nova.keymgr.barbican -# - -# Info to match when looking for barbican in the service -# catalog. Format is: separated values of the form: -# :: (string value) -#catalog_info=key-manager:barbican:public - -# Override service catalog lookup with template for barbican -# endpoint e.g. http://localhost:9311/v1/%(project_id)s -# (string value) -#endpoint_template= - -# Region name of this node (string value) -#os_region_name= - - -# -# Options defined in nova.volume.cinder -# - -# Region name of this node (string value) -#os_region_name= - - -[cells] - -# -# Options defined in nova.cells.manager -# - -# Cells communication driver to use (string value) -#driver=nova.cells.rpc_driver.CellsRPCDriver - -# Number of seconds after an instance was updated or deleted -# to continue to update cells (integer value) -#instance_updated_at_threshold=3600 - -# Number of instances to update per periodic task run (integer -# value) -#instance_update_num_instances=1 - - -# -# Options defined in nova.cells.messaging -# - -# Maximum number of hops for cells routing. (integer value) -#max_hop_count=10 - -# Cells scheduler to use (string value) -#scheduler=nova.cells.scheduler.CellsScheduler - - -# -# Options defined in nova.cells.opts -# - -# Enable cell functionality (boolean value) -#enable=false - -# The topic cells nodes listen on (string value) -#topic=cells - -# Manager for cells (string value) -#manager=nova.cells.manager.CellsManager - -# Name of this cell (string value) -#name=nova - -# Key/Multi-value list with the capabilities of the cell (list -# value) -#capabilities=hypervisor=xenserver;kvm,os=linux;windows - -# Seconds to wait for response from a call to a cell. (integer -# value) -#call_timeout=60 - -# Percentage of cell capacity to hold in reserve. Affects both -# memory and disk utilization (floating point value) -#reserve_percent=10.0 - -# Type of cell: api or compute (string value) -#cell_type=compute - -# Number of seconds after which a lack of capability and -# capacity updates signals the child cell is to be treated as -# a mute. (integer value) -#mute_child_interval=300 - -# Seconds between bandwidth updates for cells. (integer value) -#bandwidth_update_interval=600 - - -# -# Options defined in nova.cells.rpc_driver -# - -# Base queue name to use when communicating between cells. -# Various topics by message type will be appended to this. -# (string value) -#rpc_driver_queue_base=cells.intercell - - -# -# Options defined in nova.cells.scheduler -# - -# Filter classes the cells scheduler should use. An entry of -# "nova.cells.filters.all_filters" maps to all cells filters -# included with nova. (list value) -#scheduler_filter_classes=nova.cells.filters.all_filters - -# Weigher classes the cells scheduler should use. An entry of -# "nova.cells.weights.all_weighers" maps to all cell weighers -# included with nova. (list value) -#scheduler_weight_classes=nova.cells.weights.all_weighers - -# How many retries when no cells are available. (integer -# value) -#scheduler_retries=10 - -# How often to retry in seconds when no cells are available. -# (integer value) -#scheduler_retry_delay=2 - - -# -# Options defined in nova.cells.state -# - -# Interval, in seconds, for getting fresh cell information -# from the database. (integer value) -#db_check_interval=60 - -# Configuration file from which to read cells configuration. -# If given, overrides reading cells from the database. (string -# value) -#cells_config= - - -# -# Options defined in nova.cells.weights.mute_child -# - -# Multiplier used to weigh mute children. (The value should be -# negative.) (floating point value) -#mute_weight_multiplier=-10.0 - -# Weight value assigned to mute children. (The value should be -# positive.) (floating point value) -#mute_weight_value=1000.0 - - -# -# Options defined in nova.cells.weights.ram_by_instance_type -# - -# Multiplier used for weighing ram. Negative numbers mean to -# stack vs spread. (floating point value) -#ram_weight_multiplier=10.0 - - -# -# Options defined in nova.cells.weights.weight_offset -# - -# Multiplier used to weigh offset weigher. (floating point -# value) -#offset_weight_multiplier=1.0 - - -[cinder] - -# -# Options defined in nova.volume.cinder -# - -# Info to match when looking for cinder in the service -# catalog. Format is: separated values of the form: -# :: (string value) -#catalog_info=volumev2:cinderv2:publicURL - -# Override service catalog lookup with template for cinder -# endpoint e.g. http://localhost:8776/v1/%(project_id)s -# (string value) -#endpoint_template= - -# Number of cinderclient retries on failed http calls (integer -# value) -#http_retries=3 - -# Allow attach between instance and volume in different -# availability zones. (boolean value) -#cross_az_attach=true - - -[conductor] - -# -# Options defined in nova.conductor.api -# - -# Perform nova-conductor operations locally (boolean value) -use_local=true - -# The topic on which conductor nodes listen (string value) -#topic=conductor - -# Full class name for the Manager for conductor (string value) -#manager=nova.conductor.manager.ConductorManager - -# Number of workers for OpenStack Conductor service. The -# default will be the number of CPUs available. (integer -# value) -#workers= - - -[database] - -# -# From oslo.db -# - -# The file name to use with SQLite. (string value) -# Deprecated group/name - [DEFAULT]/sqlite_db -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -# Deprecated group/name - [DEFAULT]/sqlite_synchronous -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. (string -# value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = -connection=postgresql://{{ NOVA_DB_USER }}:{{ NOVA_DB_PASSWORD }}@{{ CONTROLLER_HOST_ADDRESS }}/nova - -# The SQLAlchemy connection string to use to connect to the slave database. -# (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including the -# default, overrides any server-set SQL mode. To use whatever SQL mode is set -# by the server configuration, set this to no value. Example: mysql_sql_mode= -# (string value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum number of database connection retries during startup. Set to -1 to -# specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection lost. -# (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database operation up to -# db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries of a -# database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before error is -# raised. Set to -1 to specify an infinite retry count. (integer value) -#db_max_retries = 20 - - -# -# Options defined in nova.db.sqlalchemy.api -# - -# The SQLAlchemy connection string to use to connect to the -# slave database. (string value) -#slave_connection= - -# The SQL mode to be used for MySQL sessions. This option, -# including the default, overrides any server-set SQL mode. To -# use whatever SQL mode is set by the server configuration, -# set this to no value. Example: mysql_sql_mode= (string -# value) -#mysql_sql_mode=TRADITIONAL - - -[ephemeral_storage_encryption] - -# -# Options defined in nova.compute.api -# - -# Whether to encrypt ephemeral storage (boolean value) -#enabled=false - -# The cipher and mode to be used to encrypt ephemeral storage. -# Which ciphers are available ciphers depends on kernel -# support. See /proc/crypto for the list of available options. -# (string value) -#cipher=aes-xts-plain64 - -# The bit length of the encryption key to be used to encrypt -# ephemeral storage (in XTS mode only half of the bits are -# used for encryption key) (integer value) -#key_size=512 - - -[glance] - -# -# Options defined in nova.image.glance -# - -# Default glance hostname or IP address (string value) -host={{ CONTROLLER_HOST_ADDRESS }} - -# Default glance port (integer value) -port=9292 - -# Default protocol to use when connecting to glance. Set to -# https for SSL. (string value) -protocol=http - -# A list of the glance api servers available to nova. Prefix -# with https:// for ssl-based glance api servers. -# ([hostname|ip]:port) (list value) -api_servers=$host:$port - -# Allow to perform insecure SSL (https) requests to glance -# (boolean value) -#api_insecure=false - -# Number of retries when uploading / downloading an image to / -# from glance. (integer value) -#num_retries=0 - -# A list of url scheme that can be downloaded directly via the -# direct_url. Currently supported schemes: [file]. (list -# value) -#allowed_direct_url_schemes= - - -[guestfs] - -# -# Options defined in nova.virt.disk.vfs.guestfs -# - -# Enable guestfs debug (boolean value) -#debug=false - - -[hyperv] - -# -# Options defined in nova.virt.hyperv.pathutils -# - -# The name of a Windows share name mapped to the -# "instances_path" dir and used by the resize feature to copy -# files to the target host. If left blank, an administrative -# share will be used, looking for the same "instances_path" -# used locally (string value) -#instances_path_share= - - -# -# Options defined in nova.virt.hyperv.utilsfactory -# - -# Force V1 WMI utility classes (boolean value) -#force_hyperv_utils_v1=false - -# Force V1 volume utility class (boolean value) -#force_volumeutils_v1=false - - -# -# Options defined in nova.virt.hyperv.vif -# - -# External virtual switch Name, if not provided, the first -# external virtual switch is used (string value) -#vswitch_name= - - -# -# Options defined in nova.virt.hyperv.vmops -# - -# Required for live migration among hosts with different CPU -# features (boolean value) -#limit_cpu_features=false - -# Sets the admin password in the config drive image (boolean -# value) -#config_drive_inject_password=false - -# Path of qemu-img command which is used to convert between -# different image types (string value) -#qemu_img_cmd=qemu-img.exe - -# Attaches the Config Drive image as a cdrom drive instead of -# a disk drive (boolean value) -#config_drive_cdrom=false - -# Enables metrics collections for an instance by using -# Hyper-V's metric APIs. Collected data can by retrieved by -# other apps and services, e.g.: Ceilometer. Requires Hyper-V -# / Windows Server 2012 and above (boolean value) -#enable_instance_metrics_collection=false - -# Enables dynamic memory allocation (ballooning) when set to a -# value greater than 1. The value expresses the ratio between -# the total RAM assigned to an instance and its startup RAM -# amount. For example a ratio of 2.0 for an instance with -# 1024MB of RAM implies 512MB of RAM allocated at startup -# (floating point value) -#dynamic_memory_ratio=1.0 - -# Number of seconds to wait for instance to shut down after -# soft reboot request is made. We fall back to hard reboot if -# instance does not shutdown within this window. (integer -# value) -#wait_soft_reboot_seconds=60 - - -# -# Options defined in nova.virt.hyperv.volumeops -# - -# The number of times to retry to attach a volume (integer -# value) -#volume_attach_retry_count=10 - -# Interval between volume attachment attempts, in seconds -# (integer value) -#volume_attach_retry_interval=5 - -# The number of times to retry checking for a disk mounted via -# iSCSI. (integer value) -#mounted_disk_query_retry_count=10 - -# Interval between checks for a mounted iSCSI disk, in -# seconds. (integer value) -#mounted_disk_query_retry_interval=5 - - -[image_file_url] - -# -# Options defined in nova.image.download.file -# - -# List of file systems that are configured in this file in the -# image_file_url: sections (list value) -#filesystems= - - -[ironic] - -# -# Options defined in nova.virt.ironic.driver -# - -# Version of Ironic API service endpoint. (integer value) -#api_version=1 - -# URL for Ironic API endpoint. (string value) -api_endpoint=http://{{ CONTROLLER_HOST_ADDRESS }}:6385/v1 - -# Ironic keystone admin name (string value) -admin_username={{ IRONIC_SERVICE_USER }} - -# Ironic keystone admin password. (string value) -admin_password={{ IRONIC_SERVICE_PASSWORD }} - -# Ironic keystone auth token. (string value) -#admin_auth_token= - -# Keystone public API endpoint. (string value) -admin_url=http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - -# Log level override for ironicclient. Set this in order to -# override the global "default_log_levels", "verbose", and -# "debug" settings. DEPRECATED: use standard logging -# configuration. (string value) -#client_log_level= - -# Ironic keystone tenant name. (string value) -admin_tenant_name=service - -# How many retries when a request does conflict. (integer -# value) -#api_max_retries=60 - -# How often to retry in seconds when a request does conflict -# (integer value) -#api_retry_interval=2 - - -[keymgr] - -# -# Options defined in nova.keymgr -# - -# The full class name of the key manager API class (string -# value) -#api_class=nova.keymgr.conf_key_mgr.ConfKeyManager - - -# -# Options defined in nova.keymgr.conf_key_mgr -# - -# Fixed key returned by key manager, specified in hex (string -# value) -#fixed_key= - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -auth_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:5000/v2.0 - -# API version of the admin Identity API endpoint. (string value) -auth_version = v2.0 - -# Do not handle authorization requests within the middleware, but delegate the -# authorization decision to downstream WSGI components. (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. (integer -# value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with Identity -# API Server. (integer value) -#http_request_max_retries = 3 - -# Env key for the swift cache. (string value) -#cache = - -# Required if identity server requires client certificate (string value) -#certfile = - -# Required if identity server requires client certificate (string value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs connections. -# Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# Directory used to cache files related to PKI tokens. (string value) -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. If left -# undefined, tokens will instead be cached in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the middleware -# caches previously-seen tokens for a configurable duration (in seconds). Set -# to -1 to disable caching completely. (integer value) -#token_cache_time = 300 - -# Determines the frequency at which the list of revoked tokens is retrieved -# from the Identity service (in seconds). A high number of revocation events -# combined with a low cache duration may significantly reduce performance. -# (integer value) -#revocation_cache_time = 10 - -# (Optional) If defined, indicate whether token data should be authenticated or -# authenticated and encrypted. Acceptable values are MAC or ENCRYPT. If MAC, -# token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data -# is encrypted and authenticated in the cache. If the value is not one of these -# options or empty, auth_token will raise an exception on initialization. -# (string value) -#memcache_security_strategy = - -# (Optional, mandatory if memcache_security_strategy is defined) This string is -# used for key derivation. (string value) -#memcache_secret_key = - -# (Optional) Number of seconds memcached server is considered dead before it is -# tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (Optional) Maximum total number of open connections to every memcached -# server. (integer value) -#memcache_pool_maxsize = 10 - -# (Optional) Socket timeout in seconds for communicating with a memcache -# server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (Optional) Number of seconds a connection to memcached is held unused in the -# pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (Optional) Number of seconds that an operation will wait to get a memcache -# client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (Optional) Use the advanced (eventlet safe) memcache client pool. The -# advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (Optional) Indicate whether to set the X-Service-Catalog header. If False, -# middleware will not ask for service catalog on token validation and will not -# set the X-Service-Catalog header. (boolean value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: "disabled" -# to not check token binding. "permissive" (default) to validate binding -# information if the bind type is of a form known to the server and ignore it -# if not. "strict" like "permissive" but if the bind type is unknown the token -# will be rejected. "required" any form of token binding is needed to be -# allowed. Finally the name of a binding method that must be present in tokens. -# (string value) -#enforce_token_bind = permissive - -# If true, the revocation list will be checked for cached tokens. This requires -# that PKI tokens are configured on the identity server. (boolean value) -#check_revocations_for_cached = false - -# Hash algorithms to use for hashing PKI tokens. This may be a single algorithm -# or multiple. The algorithms are those supported by Python standard -# hashlib.new(). The hashes will be tried in the order given, so put the -# preferred one first for performance. The result of the first hash will be -# stored in the cache. This will typically be set to multiple values only while -# migrating from a less secure algorithm to a more secure one. Once all the old -# tokens are expired this option should be set to a single value for better -# performance. (list value) -#hash_algorithms = md5 - -# Prefix to prepend at the beginning of the path. Deprecated, use identity_uri. -# (string value) -#auth_admin_prefix = - -# Host providing the admin Identity API endpoint. Deprecated, use identity_uri. -# (string value) -#auth_host = 127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use identity_uri. -# (integer value) -#auth_port = 35357 - -# Protocol of the admin Identity API endpoint (http or https). Deprecated, use -# identity_uri. (string value) -#auth_protocol = https - -# Complete admin Identity API endpoint. This should specify the unversioned -# root endpoint e.g. https://localhost:35357/ (string value) -identity_uri = http://{{ CONTROLLER_HOST_ADDRESS }}:35357 - -# This option is deprecated and may be removed in a future release. Single -# shared secret with the Keystone configuration used for bootstrapping a -# Keystone installation, or otherwise bypassing the normal authentication -# process. This option should not be used, use `admin_user` and -# `admin_password` instead. (string value) -#admin_token = - -# Service username. (string value) -admin_user = {{ NOVA_SERVICE_USER }} - -# Service user password. (string value) -admin_password = {{ NOVA_SERVICE_PASSWORD }} - -# Service tenant name. (string value) -admin_tenant_name = service - - -[libvirt] - -# -# Options defined in nova.virt.libvirt.driver -# - -# Rescue ami image. This will not be used if an image id is -# provided by the user. (string value) -#rescue_image_id= - -# Rescue aki image (string value) -#rescue_kernel_id= - -# Rescue ari image (string value) -#rescue_ramdisk_id= - -# Libvirt domain type (valid options are: kvm, lxc, qemu, uml, -# xen and parallels) (string value) -virt_type={{ NOVA_VIRT_TYPE }} - -# Override the default libvirt URI (which is dependent on -# virt_type) (string value) -#connection_uri= - -# Inject the admin password at boot time, without an agent. -# (boolean value) -#inject_password=false - -# Inject the ssh public key at boot time (boolean value) -#inject_key=false - -# The partition to inject to : -2 => disable, -1 => inspect -# (libguestfs only), 0 => not partitioned, >0 => partition -# number (integer value) -#inject_partition=-2 - -# Sync virtual and real mouse cursors in Windows VMs (boolean -# value) -#use_usb_tablet=true - -# Migration target URI (any included "%s" is replaced with the -# migration target hostname) (string value) -#live_migration_uri=qemu+tcp://%s/system - -# Migration flags to be set for live migration (string value) -#live_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED - -# Migration flags to be set for block migration (string value) -#block_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED, VIR_MIGRATE_NON_SHARED_INC - -# Maximum bandwidth to be used during migration, in Mbps -# (integer value) -#live_migration_bandwidth=0 - -# Snapshot image format (valid options are : raw, qcow2, vmdk, -# vdi). Defaults to same as source image (string value) -#snapshot_image_format= - -# Override the default disk prefix for the devices attached to -# a server, which is dependent on virt_type. (valid options -# are: sd, xvd, uvd, vd) (string value) -#disk_prefix= - -# Number of seconds to wait for instance to shut down after -# soft reboot request is made. We fall back to hard reboot if -# instance does not shutdown within this window. (integer -# value) -#wait_soft_reboot_seconds=120 - -# Set to "host-model" to clone the host CPU feature flags; to -# "host-passthrough" to use the host CPU model exactly; to -# "custom" to use a named CPU model; to "none" to not set any -# CPU model. If virt_type="kvm|qemu", it will default to -# "host-model", otherwise it will default to "none" (string -# value) -#cpu_mode= - -# Set to a named libvirt CPU model (see names listed in -# /usr/share/libvirt/cpu_map.xml). Only has effect if -# cpu_mode="custom" and virt_type="kvm|qemu" (string value) -#cpu_model= - -# Location where libvirt driver will store snapshots before -# uploading them to image service (string value) -#snapshots_directory=$instances_path/snapshots - -# Location where the Xen hvmloader is kept (string value) -#xen_hvmloader_path=/usr/lib/xen/boot/hvmloader - -# Specific cachemodes to use for different disk types e.g: -# file=directsync,block=none (list value) -#disk_cachemodes= - -# A path to a device that will be used as source of entropy on -# the host. Permitted options are: /dev/random or /dev/hwrng -# (string value) -#rng_dev_path= - -# For qemu or KVM guests, set this option to specify a default -# machine type per host architecture. You can find a list of -# supported machine types in your environment by checking the -# output of the "virsh capabilities"command. The format of the -# value for this config option is host-arch=machine-type. For -# example: x86_64=machinetype1,armv7l=machinetype2 (list -# value) -#hw_machine_type= - -# The data source used to the populate the host "serial" UUID -# exposed to guest in the virtual BIOS. Permitted options are -# "hardware", "os", "none" or "auto" (default). (string value) -#sysinfo_serial=auto - -# A number of seconds to memory usage statistics period. Zero -# or negative value mean to disable memory usage statistics. -# (integer value) -#mem_stats_period_seconds=10 - -# List of uid targets and ranges.Syntax is guest-uid:host- -# uid:countMaximum of 5 allowed. (list value) -#uid_maps= - -# List of guid targets and ranges.Syntax is guest-gid:host- -# gid:countMaximum of 5 allowed. (list value) -#gid_maps= - - -# -# Options defined in nova.virt.libvirt.imagebackend -# - -# VM Images format. Acceptable values are: raw, qcow2, lvm, -# rbd, default. If default is specified, then use_cow_images -# flag is used instead of this one. (string value) -#images_type=default - -# LVM Volume Group that is used for VM images, when you -# specify images_type=lvm. (string value) -#images_volume_group= - -# Create sparse logical volumes (with virtualsize) if this -# flag is set to True. (boolean value) -#sparse_logical_volumes=false - -# The RADOS pool in which rbd volumes are stored (string -# value) -#images_rbd_pool=rbd - -# Path to the ceph configuration file to use (string value) -#images_rbd_ceph_conf= - -# Discard option for nova managed disks (valid options are: -# ignore, unmap). Need Libvirt(1.0.6) Qemu1.5 (raw format) -# Qemu1.6(qcow2 format) (string value) -#hw_disk_discard= - - -# -# Options defined in nova.virt.libvirt.imagecache -# - -# Allows image information files to be stored in non-standard -# locations (string value) -#image_info_filename_pattern=$instances_path/$image_cache_subdirectory_name/%(image)s.info - -# Should unused kernel images be removed? This is only safe to -# enable if all compute nodes have been updated to support -# this option. This will be enabled by default in future. -# (boolean value) -#remove_unused_kernels=false - -# Unused resized base images younger than this will not be -# removed (integer value) -#remove_unused_resized_minimum_age_seconds=3600 - -# Write a checksum for files in _base to disk (boolean value) -#checksum_base_images=false - -# How frequently to checksum base images (integer value) -#checksum_interval_seconds=3600 - - -# -# Options defined in nova.virt.libvirt.lvm -# - -# Method used to wipe old volumes (valid options are: none, -# zero, shred) (string value) -#volume_clear=zero - -# Size in MiB to wipe at start of old volumes. 0 => all -# (integer value) -#volume_clear_size=0 - - -# -# Options defined in nova.virt.libvirt.utils -# - -# Compress snapshot images when possible. This currently -# applies exclusively to qcow2 images (boolean value) -#snapshot_compression=false - - -# -# Options defined in nova.virt.libvirt.vif -# - -# Use virtio for bridge interfaces with KVM/QEMU (boolean -# value) -#use_virtio_for_bridges=true - - -# -# Options defined in nova.virt.libvirt.volume -# - -# Number of times to rescan iSCSI target to find volume -# (integer value) -#num_iscsi_scan_tries=5 - -# Number of times to rescan iSER target to find volume -# (integer value) -#num_iser_scan_tries=5 - -# The RADOS client name for accessing rbd volumes (string -# value) -#rbd_user= - -# The libvirt UUID of the secret for the rbd_uservolumes -# (string value) -#rbd_secret_uuid= - -# Directory where the NFS volume is mounted on the compute -# node (string value) -#nfs_mount_point_base=$state_path/mnt - -# Mount options passed to the NFS client. See section of the -# nfs man page for details (string value) -#nfs_mount_options= - -# Directory where the SMBFS shares are mounted on the compute -# node (string value) -#smbfs_mount_point_base=$state_path/mnt - -# Mount options passed to the SMBFS client. See mount.cifs man -# page for details. Note that the libvirt-qemu uid and gid -# must be specified. (string value) -#smbfs_mount_options= - -# Number of times to rediscover AoE target to find volume -# (integer value) -#num_aoe_discover_tries=3 - -# Directory where the glusterfs volume is mounted on the -# compute node (string value) -#glusterfs_mount_point_base=$state_path/mnt - -# Use multipath connection of the iSCSI volume (boolean value) -#iscsi_use_multipath=false - -# Use multipath connection of the iSER volume (boolean value) -#iser_use_multipath=false - -# Path or URL to Scality SOFS configuration file (string -# value) -#scality_sofs_config= - -# Base dir where Scality SOFS shall be mounted (string value) -#scality_sofs_mount_point=$state_path/scality - -# Protocols listed here will be accessed directly from QEMU. -# Currently supported protocols: [gluster] (list value) -#qemu_allowed_storage_drivers= - -# Directory where the Quobyte volume is mounted on the compute -# node (string value) -#quobyte_mount_point_base=$state_path/mnt - -# Path to a Quobyte Client configuration file. (string value) -#quobyte_client_cfg= - -# The iSCSI transport iface to use to connect to target in -# case offload support is desired. Supported transports are -# be2iscsi, bnx2i, cxgb3i, cxgb4i, qla4xxx and ocs. Default -# format is transport_name.hwaddress and can be generated -# manually or via iscsiadm -m iface (string value) -# Deprecated group/name - [DEFAULT]/iscsi_transport -#iscsi_iface= - - -[metrics] - -# -# Options defined in nova.scheduler.weights.metrics -# - -# Multiplier used for weighing metrics. (floating point value) -#weight_multiplier=1.0 - -# How the metrics are going to be weighed. This should be in -# the form of "=, =, ...", where -# is one of the metrics to be weighed, and is -# the corresponding ratio. So for "name1=1.0, name2=-1.0" The -# final weight would be name1.value * 1.0 + name2.value * -# -1.0. (list value) -#weight_setting= - -# How to treat the unavailable metrics. When a metric is NOT -# available for a host, if it is set to be True, it would -# raise an exception, so it is recommended to use the -# scheduler filter MetricFilter to filter out those hosts. If -# it is set to be False, the unavailable metric would be -# treated as a negative factor in weighing process, the -# returned value would be set by the option -# weight_of_unavailable. (boolean value) -#required=true - -# The final weight value to be returned if required is set to -# False and any one of the metrics set by weight_setting is -# unavailable. (floating point value) -#weight_of_unavailable=-10000.0 - - -[neutron] - -# -# Options defined in nova.api.metadata.handler -# - -# Set flag to indicate Neutron will proxy metadata requests -# and resolve instance ids. (boolean value) -service_metadata_proxy=True - -# Shared secret to validate proxies Neutron metadata requests -# (string value) -metadata_proxy_shared_secret={{ METADATA_PROXY_SHARED_SECRET }} - - -# -# Options defined in nova.network.neutronv2.api -# - -# URL for connecting to neutron (string value) -url=http://{{ CONTROLLER_HOST_ADDRESS }}:9696 - -# User id for connecting to neutron in admin context. -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_user_id= - -# Username for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -admin_username={{ NEUTRON_SERVICE_USER }} - -# Password for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -admin_password={{ NEUTRON_SERVICE_PASSWORD }} - -# Tenant id for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_tenant_id= - -# Tenant name for connecting to neutron in admin context. This -# option will be ignored if neutron_admin_tenant_id is set. -# Note that with Keystone V3 tenant names are only unique -# within a domain. DEPRECATED: specify an auth_plugin and -# appropriate credentials instead. (string value) -admin_tenant_name=service - -# Region name for connecting to neutron in admin context -# (string value) -#region_name= - -# Authorization URL for connecting to neutron in admin -# context. DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -admin_auth_url=http://{{ CONTROLLER_HOST_ADDRESS }}:35357/v2.0 - -# Authorization strategy for connecting to neutron in admin -# context. DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. If an auth_plugin is specified strategy -# will be ignored. (string value) -auth_strategy=keystone - -# Name of Integration Bridge used by Open vSwitch (string -# value) -#ovs_bridge=br-int - -# Number of seconds before querying neutron for extensions -# (integer value) -#extension_sync_interval=600 - -# DEPRECATED: Allow an instance to have multiple vNICs -# attached to the same Neutron network. This option is -# deprecated in the 2015.1 release and will be removed in the -# 2015.2 release where the default behavior will be to always -# allow multiple ports from the same network to be attached to -# an instance. (boolean value) -#allow_duplicate_networks=false - - -[osapi_v3] - -# -# Options defined in nova.api.openstack -# - -# Whether the V3 API is enabled or not (boolean value) -#enabled=false - -# A list of v3 API extensions to never load. Specify the -# extension aliases here. (list value) -#extensions_blacklist= - -# If the list is not empty then a v3 API extension will only -# be loaded if it exists in this list. Specify the extension -# aliases here. (list value) -#extensions_whitelist= - - -[rdp] - -# -# Options defined in nova.rdp -# - -# Location of RDP html5 console proxy, in the form -# "http://127.0.0.1:6083/" (string value) -#html5_proxy_base_url=http://127.0.0.1:6083/ - -# Enable RDP related features (boolean value) -#enabled=false - - -[serial_console] - -# -# Options defined in nova.cmd.serialproxy -# - -# Host on which to listen for incoming requests (string value) -serialproxy_host=127.0.0.1 - -# Port on which to listen for incoming requests (integer -# value) -#serialproxy_port=6083 - - -# -# Options defined in nova.console.serial -# - -# Enable serial console related features (boolean value) -enabled=false - -# Range of TCP ports to use for serial ports on compute hosts -# (string value) -#port_range=10000:20000 - -# Location of serial console proxy. (string value) -#base_url=ws://127.0.0.1:6083/ - -# IP address on which instance serial console should listen -# (string value) -#listen=127.0.0.1 - -# The address to which proxy clients (like nova-serialproxy) -# should connect (string value) -#proxyclient_address=127.0.0.1 - - -[spice] - -# -# Options defined in nova.cmd.spicehtml5proxy -# - -# Host on which to listen for incoming requests (string value) -#html5proxy_host=0.0.0.0 - -# Port on which to listen for incoming requests (integer -# value) -#html5proxy_port=6082 - - -# -# Options defined in nova.spice -# - -# Location of spice HTML5 console proxy, in the form -# "http://127.0.0.1:6082/spice_auto.html" (string value) -#html5proxy_base_url=http://127.0.0.1:6082/spice_auto.html - -# IP address on which instance spice server should listen -# (string value) -#server_listen=127.0.0.1 - -# The address to which proxy clients (like nova- -# spicehtml5proxy) should connect (string value) -#server_proxyclient_address=127.0.0.1 - -# Enable spice related features (boolean value) -enabled=false - -# Enable spice guest agent support (boolean value) -#agent_enabled=true - -# Keymap for spice (string value) -#keymap=en-us - - -[ssl] - -# -# Options defined in nova.openstack.common.sslutils -# - -# CA certificate file to use to verify connecting clients. -# (string value) -#ca_file= - -# Certificate file to use when starting the server securely. -# (string value) -#cert_file= - -# Private key file to use when starting the server securely. -# (string value) -#key_file= - - -[trusted_computing] - -# -# Options defined in nova.scheduler.filters.trusted_filter -# - -# Attestation server HTTP (string value) -#attestation_server= - -# Attestation server Cert file for Identity verification -# (string value) -#attestation_server_ca_file= - -# Attestation server port (string value) -#attestation_port=8443 - -# Attestation web API URL (string value) -#attestation_api_url=/OpenAttestationWebServices/V1.0 - -# Attestation authorization blob - must change (string value) -#attestation_auth_blob= - -# Attestation status cache valid period length (integer value) -#attestation_auth_timeout=60 - -# Disable SSL cert verification for Attestation service -# (boolean value) -#attestation_insecure_ssl=false - - -[upgrade_levels] - -# -# Options defined in nova.baserpc -# - -# Set a version cap for messages sent to the base api in any -# service (string value) -#baseapi= - - -# -# Options defined in nova.cells.rpc_driver -# - -# Set a version cap for messages sent between cells services -# (string value) -#intercell= - - -# -# Options defined in nova.cells.rpcapi -# - -# Set a version cap for messages sent to local cells services -# (string value) -#cells= - - -# -# Options defined in nova.cert.rpcapi -# - -# Set a version cap for messages sent to cert services (string -# value) -#cert= - - -# -# Options defined in nova.compute.rpcapi -# - -# Set a version cap for messages sent to compute services. If -# you plan to do a live upgrade from havana to icehouse, you -# should set this option to "icehouse-compat" before beginning -# the live upgrade procedure. (string value) -#compute= - - -# -# Options defined in nova.conductor.rpcapi -# - -# Set a version cap for messages sent to conductor services -# (string value) -#conductor= - - -# -# Options defined in nova.console.rpcapi -# - -# Set a version cap for messages sent to console services -# (string value) -#console= - - -# -# Options defined in nova.consoleauth.rpcapi -# - -# Set a version cap for messages sent to consoleauth services -# (string value) -#consoleauth= - - -# -# Options defined in nova.network.rpcapi -# - -# Set a version cap for messages sent to network services -# (string value) -#network= - - -# -# Options defined in nova.scheduler.rpcapi -# - -# Set a version cap for messages sent to scheduler services -# (string value) -#scheduler= - - -[vmware] - -# -# Options defined in nova.virt.vmwareapi.driver -# - -# The PBM status. (boolean value) -#pbm_enabled=false - -# PBM service WSDL file location URL. e.g. -# file:///opt/SDK/spbm/wsdl/pbmService.wsdl Not setting this -# will disable storage policy based placement of instances. -# (string value) -#pbm_wsdl_location= - -# The PBM default policy. If pbm_wsdl_location is set and -# there is no defined storage policy for the specific request -# then this policy will be used. (string value) -#pbm_default_policy= - -# Hostname or IP address for connection to VMware VC host. -# (string value) -#host_ip= - -# Port for connection to VMware VC host. (integer value) -#host_port=443 - -# Username for connection to VMware VC host. (string value) -#host_username= - -# Password for connection to VMware VC host. (string value) -#host_password= - -# Name of a VMware Cluster ComputeResource. (multi valued) -#cluster_name= - -# Regex to match the name of a datastore. (string value) -#datastore_regex= - -# The interval used for polling of remote tasks. (floating -# point value) -#task_poll_interval=0.5 - -# The number of times we retry on failures, e.g., socket -# error, etc. (integer value) -#api_retry_count=10 - -# VNC starting port (integer value) -#vnc_port=5900 - -# Total number of VNC ports (integer value) -#vnc_port_total=10000 - -# Whether to use linked clone (boolean value) -#use_linked_clone=true - -# Optional VIM Service WSDL Location e.g -# http:///vimService.wsdl. Optional over-ride to -# default location for bug work-arounds (string value) -#wsdl_location= - - -# -# Options defined in nova.virt.vmwareapi.vif -# - -# Physical ethernet adapter name for vlan networking (string -# value) -#vlan_interface=vmnic0 - -# Name of Integration Bridge (string value) -#integration_bridge=br-int - - -# -# Options defined in nova.virt.vmwareapi.vim_util -# - -# The maximum number of ObjectContent data objects that should -# be returned in a single result. A positive value will cause -# the operation to suspend the retrieval when the count of -# objects reaches the specified maximum. The server may still -# limit the count to something less than the configured value. -# Any remaining objects may be retrieved with additional -# requests. (integer value) -#maximum_objects=100 - - -# -# Options defined in nova.virt.vmwareapi.vmops -# - -# The prefix for Where cached images are stored. This is NOT -# the full path - just a folder prefix. This should only be -# used when a datastore cache should be shared between compute -# nodes. Note: this should only be used when the compute nodes -# have a shared file system. (string value) -#cache_prefix= - - -[workarounds] - -# -# Options defined in nova.utils -# - -# This option allows a fallback to sudo for performance -# reasons. For example see -# https://bugs.launchpad.net/nova/+bug/1415106 (boolean value) -#disable_rootwrap=false - -# When using libvirt 1.2.2 fails live snapshots intermittently -# under load. This config option provides mechanism to -# disable livesnapshot while this is resolved. See -# https://bugs.launchpad.net/nova/+bug/1334398 (boolean value) -#disable_libvirt_livesnapshot=true - -# Whether to destroy instances on startup when we suspect they -# have previously been evacuated. This can result in data loss -# if undesired. See https://launchpad.net/bugs/1419785 -# (boolean value) -#destroy_after_evacuate=true - - -[xenserver] - -# -# Options defined in nova.virt.xenapi.agent -# - -# Number of seconds to wait for agent reply (integer value) -#agent_timeout=30 - -# Number of seconds to wait for agent to be fully operational -# (integer value) -#agent_version_timeout=300 - -# Number of seconds to wait for agent reply to resetnetwork -# request (integer value) -#agent_resetnetwork_timeout=60 - -# Specifies the path in which the XenAPI guest agent should be -# located. If the agent is present, network configuration is -# not injected into the image. Used if -# compute_driver=xenapi.XenAPIDriver and flat_injected=True -# (string value) -#agent_path=usr/sbin/xe-update-networking - -# Disables the use of the XenAPI agent in any image regardless -# of what image properties are present. (boolean value) -#disable_agent=false - -# Determines if the XenAPI agent should be used when the image -# used does not contain a hint to declare if the agent is -# present or not. The hint is a glance property -# "xenapi_use_agent" that has the value "True" or "False". -# Note that waiting for the agent when it is not present will -# significantly increase server boot times. (boolean value) -#use_agent_default=false - - -# -# Options defined in nova.virt.xenapi.client.session -# - -# Timeout in seconds for XenAPI login. (integer value) -#login_timeout=10 - -# Maximum number of concurrent XenAPI connections. Used only -# if compute_driver=xenapi.XenAPIDriver (integer value) -#connection_concurrent=5 - - -# -# Options defined in nova.virt.xenapi.driver -# - -# URL for connection to XenServer/Xen Cloud Platform. A -# special value of unix://local can be used to connect to the -# local unix socket. Required if -# compute_driver=xenapi.XenAPIDriver (string value) -#connection_url= - -# Username for connection to XenServer/Xen Cloud Platform. -# Used only if compute_driver=xenapi.XenAPIDriver (string -# value) -#connection_username=root - -# Password for connection to XenServer/Xen Cloud Platform. -# Used only if compute_driver=xenapi.XenAPIDriver (string -# value) -#connection_password= - -# The interval used for polling of coalescing vhds. Used only -# if compute_driver=xenapi.XenAPIDriver (floating point value) -#vhd_coalesce_poll_interval=5.0 - -# Ensure compute service is running on host XenAPI connects -# to. (boolean value) -#check_host=true - -# Max number of times to poll for VHD to coalesce. Used only -# if compute_driver=xenapi.XenAPIDriver (integer value) -#vhd_coalesce_max_attempts=20 - -# Base path to the storage repository (string value) -#sr_base_path=/var/run/sr-mount - -# The iSCSI Target Host (string value) -#target_host= - -# The iSCSI Target Port, default is port 3260 (string value) -#target_port=3260 - -# IQN Prefix (string value) -#iqn_prefix=iqn.2010-10.org.openstack - -# Used to enable the remapping of VBD dev (Works around an -# issue in Ubuntu Maverick) (boolean value) -#remap_vbd_dev=false - -# Specify prefix to remap VBD dev to (ex. /dev/xvdb -> -# /dev/sdb) (string value) -#remap_vbd_dev_prefix=sd - - -# -# Options defined in nova.virt.xenapi.image.bittorrent -# - -# Base URL for torrent files. (string value) -#torrent_base_url= - -# Probability that peer will become a seeder. (1.0 = 100%) -# (floating point value) -#torrent_seed_chance=1.0 - -# Number of seconds after downloading an image via BitTorrent -# that it should be seeded for other peers. (integer value) -#torrent_seed_duration=3600 - -# Cached torrent files not accessed within this number of -# seconds can be reaped (integer value) -#torrent_max_last_accessed=86400 - -# Beginning of port range to listen on (integer value) -#torrent_listen_port_start=6881 - -# End of port range to listen on (integer value) -#torrent_listen_port_end=6891 - -# Number of seconds a download can remain at the same progress -# percentage w/o being considered a stall (integer value) -#torrent_download_stall_cutoff=600 - -# Maximum number of seeder processes to run concurrently -# within a given dom0. (-1 = no limit) (integer value) -#torrent_max_seeder_processes_per_host=1 - - -# -# Options defined in nova.virt.xenapi.pool -# - -# To use for hosts with different CPUs (boolean value) -#use_join_force=true - - -# -# Options defined in nova.virt.xenapi.vif -# - -# Name of Integration Bridge used by Open vSwitch (string -# value) -#ovs_integration_bridge=xapi1 - - -# -# Options defined in nova.virt.xenapi.vm_utils -# - -# Cache glance images locally. `all` will cache all images, -# `some` will only cache images that have the image_property -# `cache_in_nova=True`, and `none` turns off caching entirely -# (string value) -#cache_images=all - -# Compression level for images, e.g., 9 for gzip -9. Range is -# 1-9, 9 being most compressed but most CPU intensive on dom0. -# (integer value) -#image_compression_level= - -# Default OS type (string value) -#default_os_type=linux - -# Time to wait for a block device to be created (integer -# value) -#block_device_creation_timeout=10 - -# Maximum size in bytes of kernel or ramdisk images (integer -# value) -#max_kernel_ramdisk_size=16777216 - -# Filter for finding the SR to be used to install guest -# instances on. To use the Local Storage in default -# XenServer/XCP installations set this flag to other-config -# :i18n-key=local-storage. To select an SR with a different -# matching criteria, you could set it to other- -# config:my_favorite_sr=true. On the other hand, to fall back -# on the Default SR, as displayed by XenCenter, set this flag -# to: default-sr:true (string value) -#sr_matching_filter=default-sr:true - -# Whether to use sparse_copy for copying data on a resize down -# (False will use standard dd). This speeds up resizes down -# considerably since large runs of zeros won't have to be -# rsynced (boolean value) -#sparse_copy=true - -# Maximum number of retries to unplug VBD. if <=0, should try -# once and no retry (integer value) -#num_vbd_unplug_retries=10 - -# Whether or not to download images via Bit Torrent -# (all|some|none). (string value) -#torrent_images=none - -# Name of network to use for booting iPXE ISOs (string value) -#ipxe_network_name= - -# URL to the iPXE boot menu (string value) -#ipxe_boot_menu_url= - -# Name and optionally path of the tool used for ISO image -# creation (string value) -#ipxe_mkisofs_cmd=mkisofs - - -# -# Options defined in nova.virt.xenapi.vmops -# - -# Number of seconds to wait for instance to go to running -# state (integer value) -#running_timeout=60 - -# The XenAPI VIF driver using XenServer Network APIs. (string -# value) -#vif_driver=nova.virt.xenapi.vif.XenAPIBridgeDriver - -# Dom0 plugin driver used to handle image uploads. (string -# value) -#image_upload_handler=nova.virt.xenapi.image.glance.GlanceStore - - -# -# Options defined in nova.virt.xenapi.volume_utils -# - -# Number of seconds to wait for an SR to settle if the VDI -# does not exist when first introduced (integer value) -#introduce_vdi_retry_wait=20 - - -[zookeeper] - -# -# Options defined in nova.servicegroup.drivers.zk -# - -# The ZooKeeper addresses for servicegroup service in the -# format of host1:port,host2:port,host3:port (string value) -#address= - -# The recv_timeout parameter for the zk session (integer -# value) -#recv_timeout=4000 - -# The prefix used in ZooKeeper to store ephemeral nodes -# (string value) -#sg_prefix=/servicegroups - -# Number of seconds to wait until retrying to join the session -# (integer value) -#sg_retry_interval=5 - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# Host to locate redis. (string value) -#host = 127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port = 6379 - -# Password for Redis server (optional). (string value) -#password = - - -[matchmaker_ring] - -# -# From oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile = /etc/oslo/matchmaker_ring.json - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -#disable_process_locking = false - -# Directory to use for lock files. For security, the specified directory -# should only be writable by the user running the processes that need locking. -# Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, -# a lock path must be set. (string value) -# Deprecated group/name - [DEFAULT]/lock_path -lock_path = /var/lock/nova - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -#group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -#trace = false - -# CA certificate PEM file for verifing server certificate (string value) -# Deprecated group/name - [amqp1]/ssl_ca_file -#ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string value) -# Deprecated group/name - [amqp1]/ssl_cert_file -#ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string value) -# Deprecated group/name - [amqp1]/ssl_key_file -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -#ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -#allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -#qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -#qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -#qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -#qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -#qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -#qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -#qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -#qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -#qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -#qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally used by -# impl_qpid. Version 2 includes some backwards-incompatible changes that allow -# broker federation to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -#qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -#kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -#kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -#kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -#kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -#kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_host -rabbit_host = {{ RABBITMQ_HOST }} - -# The RabbitMQ broker port where a single node is used. (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_port -rabbit_port = {{ RABBITMQ_PORT }} - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -#rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -rabbit_userid = {{ RABBITMQ_USER }} - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -rabbit_password = {{ RABBITMQ_PASSWORD }} - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -#rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -#rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -#rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry -# count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -#rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you -# must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -#rabbit_ha_queues = false - -# Number of seconds after which the Rabbit broker is considered down if -# heartbeat's keep-alive fails (0 disable the heartbeat). (integer value) -#heartbeat_timeout_threshold = 60 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -#fake_rabbit = false diff --git a/install-files/openstack/usr/share/openstack/openvswitch.yml b/install-files/openstack/usr/share/openstack/openvswitch.yml deleted file mode 100644 index 47257f7f..00000000 --- a/install-files/openstack/usr/share/openstack/openvswitch.yml +++ /dev/null @@ -1,38 +0,0 @@ ---- -- hosts: localhost - tasks: - - - name: Create openvswitch directories - file: path={{ item }} state=directory - with_items: - - /etc/openvswitch - - /var/run/openvswitch - - - shell: > - ovsdb-tool create /etc/openvswitch/conf.db /usr/share/openvswitch/vswitch.ovsschema - creates=/etc/openvswitch/conf.db - - # We enable the openvswitch-db-server in a different task to identify - # the first time we run this script by identifying when we enable the - # unit. - # - # We need to identify this to initialise the database. - - name: Enable openvswitch database service - service: name={{ item }} enabled=yes - with_items: - - openvswitch-db-server.service - register: openvswitch_db_enable - - - name: Start openvswitch database service - service: name={{ item }} state=started - with_items: - - openvswitch-db-server.service - - - name: initialise openvswitch-db - shell: ovs-vsctl --no-wait init - when: openvswitch_db_enable|changed - - - name: Enable and start Open vSwitch service - service: name={{ item }} enabled=yes state=started - with_items: - - openvswitch.service diff --git a/install-files/openstack/usr/share/openstack/postgres.yml b/install-files/openstack/usr/share/openstack/postgres.yml deleted file mode 100644 index 5ff9355e..00000000 --- a/install-files/openstack/usr/share/openstack/postgres.yml +++ /dev/null @@ -1,48 +0,0 @@ ---- -- hosts: localhost - vars_files: - - "/etc/openstack/postgres.conf" - tasks: - - - name: Create postgres user - user: - name: postgres - comment: PostgreSQL Server - shell: /sbin/nologin - home: /var/lib/pgsql - - - name: Create the postgres directories - file: - path: "{{ item }}" - state: directory - owner: postgres - group: postgres - with_items: - - /var/run/postgresql - - /var/lib/pgsql/data - - - name: Initialise postgres database - command: pg_ctl -D /var/lib/pgsql/data initdb - args: - creates: /var/lib/pgsql/data/base - sudo: yes - sudo_user: postgres - - - name: Add the configuration needed for postgres for Openstack - template: - src: /usr/share/openstack/postgres/{{ item }} - dest: /var/lib/pgsql/data/{{ item }} - owner: postgres - group: postgres - mode: 0600 - with_items: - - postgresql.conf - - pg_hba.conf - - - name: Enable and start postgres services - service: - name: "{{ item }}" - enabled: yes - state: started - with_items: - - postgres-server diff --git a/install-files/openstack/usr/share/openstack/postgres/pg_hba.conf b/install-files/openstack/usr/share/openstack/postgres/pg_hba.conf deleted file mode 100644 index 78186924..00000000 --- a/install-files/openstack/usr/share/openstack/postgres/pg_hba.conf +++ /dev/null @@ -1,5 +0,0 @@ -local all all trust -host all all 127.0.0.0/8 trust -host all all ::1/128 trust -host all all {{ MANAGEMENT_INTERFACE_IP_ADDRESS }}/32 trust -host all all 0.0.0.0/0 md5 diff --git a/install-files/openstack/usr/share/openstack/postgres/postgresql.conf b/install-files/openstack/usr/share/openstack/postgres/postgresql.conf deleted file mode 100644 index 9c8094ea..00000000 --- a/install-files/openstack/usr/share/openstack/postgres/postgresql.conf +++ /dev/null @@ -1,11 +0,0 @@ -listen_addresses = '{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}' -max_connections = 300 -shared_buffers = 128MB -log_timezone = 'UTC' -datestyle = 'iso, mdy' -timezone = 'UTC' -lc_messages = 'C' -lc_monetary = 'C' -lc_numeric = 'C' -lc_time = 'C' -default_text_search_config = 'pg_catalog.english' diff --git a/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq-env.conf b/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq-env.conf deleted file mode 100644 index d4c58dae..00000000 --- a/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq-env.conf +++ /dev/null @@ -1,3 +0,0 @@ -# Configure port node where rabbitmq-server will listen from. -NODE_PORT={{ RABBITMQ_PORT }} -CONFIG_FILE=/etc/rabbitmq/rabbitmq diff --git a/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq.config b/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq.config deleted file mode 100644 index 9b93881e..00000000 --- a/install-files/openstack/usr/share/openstack/rabbitmq/rabbitmq.config +++ /dev/null @@ -1,9 +0,0 @@ -%% -*- Rabbit configuration for Openstack in Baserock -[ - {rabbit, - [ - {default_user, <<"{{ RABBITMQ_USER }}">>}, - {default_pass, <<"{{ RABBITMQ_PASSWORD }}">>}, - {tcp_listeners, [{{ RABBITMQ_PORT }}]} - ]} -]. diff --git a/install-files/openstack/usr/share/openstack/swift-controller.yml b/install-files/openstack/usr/share/openstack/swift-controller.yml deleted file mode 100644 index 690de087..00000000 --- a/install-files/openstack/usr/share/openstack/swift-controller.yml +++ /dev/null @@ -1,52 +0,0 @@ ---- -- hosts: localhost - vars_files: - - swift-controller-vars.yml - vars: - - ring_name_port_map: - account: - port: 6002 - container: - port: 6001 - object: - port: 6000 - remote_user: root - tasks: - - user: - name: swift - comment: Swift user - - - file: - path: /etc/swift - owner: swift - group: swift - state: directory - - - template: - src: /usr/share/swift/etc/swift/proxy-server.j2 - dest: /etc/swift/proxy-server.conf - mode: 0644 - owner: swift - group: swift - - - keystone_user: - user: swift - password: "{{ SWIFT_ADMIN_PASSWORD }}" - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - keystone_user: - role: admin - user: swift - tenant: service - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" - - - keystone_service: - name: swift - type: object-store - description: OpenStack Object Storage - publicurl: http://{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}:8080/v1/AUTH_%(tenant_id)s - internalurl: http://{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}:8080/v1/AUTH_%(tenant_id)s - adminurl: http://{{ MANAGEMENT_INTERFACE_IP_ADDRESS }}:8080 - region: regionOne - token: "{{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}" diff --git a/install-files/openstack/usr/share/swift/etc/rsyncd.j2 b/install-files/openstack/usr/share/swift/etc/rsyncd.j2 deleted file mode 100644 index c0657665..00000000 --- a/install-files/openstack/usr/share/swift/etc/rsyncd.j2 +++ /dev/null @@ -1,23 +0,0 @@ -uid = swift -gid = swift -log file = /var/log/rsyncd.log -pid file = /var/run/rsyncd.pid -address = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -[account] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/account.lock - -[container] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/container.lock - -[object] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/object.lock diff --git a/install-files/openstack/usr/share/swift/etc/swift/proxy-server.j2 b/install-files/openstack/usr/share/swift/etc/swift/proxy-server.j2 deleted file mode 100644 index dda82d5a..00000000 --- a/install-files/openstack/usr/share/swift/etc/swift/proxy-server.j2 +++ /dev/null @@ -1,630 +0,0 @@ -[DEFAULT] -# bind_ip = 0.0.0.0 -bind_port = 8080 -# bind_timeout = 30 -# backlog = 4096 -swift_dir = /etc/swift -user = swift - -# Enables exposing configuration settings via HTTP GET /info. -# expose_info = true - -# Key to use for admin calls that are HMAC signed. Default is empty, -# which will disable admin calls to /info. -# admin_key = secret_admin_key -# -# Allows the ability to withhold sections from showing up in the public calls -# to /info. You can withhold subsections by separating the dict level with a -# ".". The following would cause the sections 'container_quotas' and 'tempurl' -# to not be listed, and the key max_failed_deletes would be removed from -# bulk_delete. Default is empty, allowing all registered fetures to be listed -# via HTTP GET /info. -# disallowed_sections = container_quotas, tempurl, bulk_delete.max_failed_deletes - -# Use an integer to override the number of pre-forked processes that will -# accept connections. Should default to the number of effective cpu -# cores in the system. It's worth noting that individual workers will -# use many eventlet co-routines to service multiple concurrent requests. -# workers = auto -# -# Maximum concurrent requests per worker -# max_clients = 1024 -# -# Set the following two lines to enable SSL. This is for testing only. -# cert_file = /etc/swift/proxy.crt -# key_file = /etc/swift/proxy.key -# -# expiring_objects_container_divisor = 86400 -# expiring_objects_account_name = expiring_objects -# -# You can specify default log routing here if you want: -# log_name = swift -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_headers = false -# log_address = /dev/log -# The following caps the length of log lines to the value given; no limit if -# set to 0, the default. -# log_max_line_length = 0 -# -# This optional suffix (default is empty) that would be appended to the swift transaction -# id allows one to easily figure out from which cluster that X-Trans-Id belongs to. -# This is very useful when one is managing more than one swift cluster. -# trans_id_suffix = -# -# comma separated list of functions to call to setup custom log handlers. -# functions get passed: conf, name, log_to_console, log_route, fmt, logger, -# adapted_logger -# log_custom_handlers = -# -# If set, log_udp_host will override log_address -# log_udp_host = -# log_udp_port = 514 -# -# You can enable StatsD logging here: -# log_statsd_host = localhost -# log_statsd_port = 8125 -# log_statsd_default_sample_rate = 1.0 -# log_statsd_sample_rate_factor = 1.0 -# log_statsd_metric_prefix = -# -# Use a comma separated list of full url (http://foo.bar:1234,https://foo.bar) -# cors_allow_origin = -# strict_cors_mode = True -# -# client_timeout = 60 -# eventlet_debug = false - -[pipeline:main] -#pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk tempurl ratelimit tempauth container-quotas account-quotas slo dlo proxy-logging proxy-server -pipeline = authtoken cache healthcheck keystoneauth proxy-logging proxy-server - -[app:proxy-server] -use = egg:swift#proxy -# You can override the default log routing for this app here: -# set log_name = proxy-server -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_address = /dev/log -# -# log_handoffs = true -# recheck_account_existence = 60 -# recheck_container_existence = 60 -# object_chunk_size = 65536 -# client_chunk_size = 65536 -# -# How long the proxy server will wait on responses from the a/c/o servers. -# node_timeout = 10 -# -# How long the proxy server will wait for an initial response and to read a -# chunk of data from the object servers while serving GET / HEAD requests. -# Timeouts from these requests can be recovered from so setting this to -# something lower than node_timeout would provide quicker error recovery -# while allowing for a longer timeout for non-recoverable requests (PUTs). -# Defaults to node_timeout, should be overriden if node_timeout is set to a -# high number to prevent client timeouts from firing before the proxy server -# has a chance to retry. -# recoverable_node_timeout = node_timeout -# -# conn_timeout = 0.5 -# -# How long to wait for requests to finish after a quorum has been established. -# post_quorum_timeout = 0.5 -# -# How long without an error before a node's error count is reset. This will -# also be how long before a node is reenabled after suppression is triggered. -# error_suppression_interval = 60 -# -# How many errors can accumulate before a node is temporarily ignored. -# error_suppression_limit = 10 -# -# If set to 'true' any authorized user may create and delete accounts; if -# 'false' no one, even authorized, can. -allow_account_management = true -# -# Set object_post_as_copy = false to turn on fast posts where only the metadata -# changes are stored anew and the original data file is kept in place. This -# makes for quicker posts; but since the container metadata isn't updated in -# this mode, features like container sync won't be able to sync posts. -# object_post_as_copy = true -# -# If set to 'true' authorized accounts that do not yet exist within the Swift -# cluster will be automatically created. -account_autocreate = true -# -# If set to a positive value, trying to create a container when the account -# already has at least this maximum containers will result in a 403 Forbidden. -# Note: This is a soft limit, meaning a user might exceed the cap for -# recheck_account_existence before the 403s kick in. -# max_containers_per_account = 0 -# -# This is a comma separated list of account hashes that ignore the -# max_containers_per_account cap. -# max_containers_whitelist = -# -# Comma separated list of Host headers to which the proxy will deny requests. -# deny_host_headers = -# -# Prefix used when automatically creating accounts. -# auto_create_account_prefix = . -# -# Depth of the proxy put queue. -# put_queue_depth = 10 -# -# Storage nodes can be chosen at random (shuffle), by using timing -# measurements (timing), or by using an explicit match (affinity). -# Using timing measurements may allow for lower overall latency, while -# using affinity allows for finer control. In both the timing and -# affinity cases, equally-sorting nodes are still randomly chosen to -# spread load. -# The valid values for sorting_method are "affinity", "shuffle", and "timing". -# sorting_method = shuffle -# -# If the "timing" sorting_method is used, the timings will only be valid for -# the number of seconds configured by timing_expiry. -# timing_expiry = 300 -# -# The maximum time (seconds) that a large object connection is allowed to last. -# max_large_object_get_time = 86400 -# -# Set to the number of nodes to contact for a normal request. You can use -# '* replicas' at the end to have it use the number given times the number of -# replicas for the ring being used for the request. -# request_node_count = 2 * replicas -# -# Which backend servers to prefer on reads. Format is r for region -# N or rz for region N, zone M. The value after the equals is -# the priority; lower numbers are higher priority. -# -# Example: first read from region 1 zone 1, then region 1 zone 2, then -# anything in region 2, then everything else: -# read_affinity = r1z1=100, r1z2=200, r2=300 -# Default is empty, meaning no preference. -# read_affinity = -# -# Which backend servers to prefer on writes. Format is r for region -# N or rz for region N, zone M. If this is set, then when -# handling an object PUT request, some number (see setting -# write_affinity_node_count) of local backend servers will be tried -# before any nonlocal ones. -# -# Example: try to write to regions 1 and 2 before writing to any other -# nodes: -# write_affinity = r1, r2 -# Default is empty, meaning no preference. -# write_affinity = -# -# The number of local (as governed by the write_affinity setting) -# nodes to attempt to contact first, before any non-local ones. You -# can use '* replicas' at the end to have it use the number given -# times the number of replicas for the ring being used for the -# request. -# write_affinity_node_count = 2 * replicas -# -# These are the headers whose values will only be shown to swift_owners. The -# exact definition of a swift_owner is up to the auth system in use, but -# usually indicates administrative responsibilities. -# swift_owner_headers = x-container-read, x-container-write, x-container-sync-key, x-container-sync-to, x-account-meta-temp-url-key, x-account-meta-temp-url-key-2, x-account-access-control - -[filter:tempauth] -use = egg:swift#tempauth -# You can override the default log routing for this filter here: -# set log_name = tempauth -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log -# -# The reseller prefix will verify a token begins with this prefix before even -# attempting to validate it. Also, with authorization, only Swift storage -# accounts with this prefix will be authorized by this middleware. Useful if -# multiple auth systems are in use for one Swift cluster. -# reseller_prefix = AUTH -# -# The auth prefix will cause requests beginning with this prefix to be routed -# to the auth subsystem, for granting tokens, etc. -# auth_prefix = /auth/ -# token_life = 86400 -# -# This allows middleware higher in the WSGI pipeline to override auth -# processing, useful for middleware such as tempurl and formpost. If you know -# you're not going to use such middleware and you want a bit of extra security, -# you can set this to false. -# allow_overrides = true -# -# This specifies what scheme to return with storage urls: -# http, https, or default (chooses based on what the server is running as) -# This can be useful with an SSL load balancer in front of a non-SSL server. -# storage_url_scheme = default -# -# Lastly, you need to list all the accounts/users you want here. The format is: -# user__ = [group] [group] [...] [storage_url] -# or if you want underscores in or , you can base64 encode them -# (with no equal signs) and use this format: -# user64__ = [group] [group] [...] [storage_url] -# There are special groups of: -# .reseller_admin = can do anything to any account for this auth -# .admin = can do anything within the account -# If neither of these groups are specified, the user can only access containers -# that have been explicitly allowed for them by a .admin or .reseller_admin. -# The trailing optional storage_url allows you to specify an alternate url to -# hand back to the user upon authentication. If not specified, this defaults to -# $HOST/v1/_ where $HOST will do its best to resolve -# to what the requester would need to use to reach this host. -# Here are example entries, required for running the tests: -user_admin_admin = admin .admin .reseller_admin -user_test_tester = testing .admin -user_test2_tester2 = testing2 .admin -user_test_tester3 = testing3 - -# To enable Keystone authentication you need to have the auth token -# middleware first to be configured. Here is an example below, please -# refer to the keystone's documentation for details about the -# different settings. -# -# You'll need to have as well the keystoneauth middleware enabled -# and have it in your main pipeline so instead of having tempauth in -# there you can change it to: authtoken keystoneauth -# -[filter:authtoken] -paste.filter_factory = keystonemiddleware.auth_token:filter_factory -# auth_host = keystonehost -# auth_port = 35357 -# auth_protocol = http -# auth_uri = http://keystonehost:5000/ -#auth_uri = http://controller:5000/v2.0 -auth_uri = http://127.0.0.1:5000/v2.0 -identity_uri = http://127.0.0.1:35357 -admin_tenant_name = service -admin_user = swift -admin_password = {{ SWIFT_ADMIN_PASSWORD }} -delay_auth_decision = 1 -# cache = swift.cache -# include_service_catalog = False -# -[filter:keystoneauth] -use = egg:swift#keystoneauth -# Operator roles is the role which user would be allowed to manage a -# tenant and be able to create container or give ACL to others. -# operator_roles = admin, swiftoperator -operator_roles = admin, _member_ -# The reseller admin role has the ability to create and delete accounts -# reseller_admin_role = ResellerAdmin -# For backwards compatibility, keystoneauth will match names in cross-tenant -# access control lists (ACLs) when both the requesting user and the tenant -# are in the default domain i.e the domain to which existing tenants are -# migrated. The default_domain_id value configured here should be the same as -# the value used during migration of tenants to keystone domains. -# default_domain_id = default -# For a new installation, or an installation in which keystone projects may -# move between domains, you should disable backwards compatible name matching -# in ACLs by setting allow_names_in_acls to false: -# allow_names_in_acls = true - -[filter:healthcheck] -use = egg:swift#healthcheck -# An optional filesystem path, which if present, will cause the healthcheck -# URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE". -# This facility may be used to temporarily remove a Swift node from a load -# balancer pool during maintenance or upgrade (remove the file to allow the -# node back into the load balancer pool). -# disable_path = - -[filter:cache] -use = egg:swift#memcache -# You can override the default log routing for this filter here: -# set log_name = cache -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log -# -# If not set here, the value for memcache_servers will be read from -# memcache.conf (see memcache.conf-sample) or lacking that file, it will -# default to the value below. You can specify multiple servers separated with -# commas, as in: 10.1.2.3:11211,10.1.2.4:11211 -memcache_servers = 127.0.0.1:11211 -# -# Sets how memcache values are serialized and deserialized: -# 0 = older, insecure pickle serialization -# 1 = json serialization but pickles can still be read (still insecure) -# 2 = json serialization only (secure and the default) -# If not set here, the value for memcache_serialization_support will be read -# from /etc/swift/memcache.conf (see memcache.conf-sample). -# To avoid an instant full cache flush, existing installations should -# upgrade with 0, then set to 1 and reload, then after some time (24 hours) -# set to 2 and reload. -# In the future, the ability to use pickle serialization will be removed. -# memcache_serialization_support = 2 -# -# Sets the maximum number of connections to each memcached server per worker -# memcache_max_connections = 2 - -[filter:ratelimit] -use = egg:swift#ratelimit -# You can override the default log routing for this filter here: -# set log_name = ratelimit -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log -# -# clock_accuracy should represent how accurate the proxy servers' system clocks -# are with each other. 1000 means that all the proxies' clock are accurate to -# each other within 1 millisecond. No ratelimit should be higher than the -# clock accuracy. -# clock_accuracy = 1000 -# -# max_sleep_time_seconds = 60 -# -# log_sleep_time_seconds of 0 means disabled -# log_sleep_time_seconds = 0 -# -# allows for slow rates (e.g. running up to 5 sec's behind) to catch up. -# rate_buffer_seconds = 5 -# -# account_ratelimit of 0 means disabled -# account_ratelimit = 0 - -# these are comma separated lists of account names -# account_whitelist = a,b -# account_blacklist = c,d - -# with container_limit_x = r -# for containers of size x limit write requests per second to r. The container -# rate will be linearly interpolated from the values given. With the values -# below, a container of size 5 will get a rate of 75. -# container_ratelimit_0 = 100 -# container_ratelimit_10 = 50 -# container_ratelimit_50 = 20 - -# Similarly to the above container-level write limits, the following will limit -# container GET (listing) requests. -# container_listing_ratelimit_0 = 100 -# container_listing_ratelimit_10 = 50 -# container_listing_ratelimit_50 = 20 - -[filter:domain_remap] -use = egg:swift#domain_remap -# You can override the default log routing for this filter here: -# set log_name = domain_remap -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log -# -# storage_domain = example.com -# path_root = v1 -# reseller_prefixes = AUTH - -[filter:catch_errors] -use = egg:swift#catch_errors -# You can override the default log routing for this filter here: -# set log_name = catch_errors -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log - -[filter:cname_lookup] -# Note: this middleware requires python-dnspython -use = egg:swift#cname_lookup -# You can override the default log routing for this filter here: -# set log_name = cname_lookup -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log -# -# Specify the storage_domain that match your cloud, multiple domains -# can be specified separated by a comma -# storage_domain = example.com -# -# lookup_depth = 1 - -# Note: Put staticweb just after your auth filter(s) in the pipeline -[filter:staticweb] -use = egg:swift#staticweb - -# Note: Put tempurl before dlo, slo and your auth filter(s) in the pipeline -[filter:tempurl] -use = egg:swift#tempurl -# The methods allowed with Temp URLs. -# methods = GET HEAD PUT POST DELETE -# -# The headers to remove from incoming requests. Simply a whitespace delimited -# list of header names and names can optionally end with '*' to indicate a -# prefix match. incoming_allow_headers is a list of exceptions to these -# removals. -# incoming_remove_headers = x-timestamp -# -# The headers allowed as exceptions to incoming_remove_headers. Simply a -# whitespace delimited list of header names and names can optionally end with -# '*' to indicate a prefix match. -# incoming_allow_headers = -# -# The headers to remove from outgoing responses. Simply a whitespace delimited -# list of header names and names can optionally end with '*' to indicate a -# prefix match. outgoing_allow_headers is a list of exceptions to these -# removals. -# outgoing_remove_headers = x-object-meta-* -# -# The headers allowed as exceptions to outgoing_remove_headers. Simply a -# whitespace delimited list of header names and names can optionally end with -# '*' to indicate a prefix match. -# outgoing_allow_headers = x-object-meta-public-* - -# Note: Put formpost just before your auth filter(s) in the pipeline -[filter:formpost] -use = egg:swift#formpost - -# Note: Just needs to be placed before the proxy-server in the pipeline. -[filter:name_check] -use = egg:swift#name_check -# forbidden_chars = '"`<> -# maximum_length = 255 -# forbidden_regexp = /\./|/\.\./|/\.$|/\.\.$ - -[filter:list-endpoints] -use = egg:swift#list_endpoints -# list_endpoints_path = /endpoints/ - -[filter:proxy-logging] -use = egg:swift#proxy_logging -# If not set, logging directives from [DEFAULT] without "access_" will be used -# access_log_name = swift -# access_log_facility = LOG_LOCAL0 -# access_log_level = INFO -# access_log_address = /dev/log -# -# If set, access_log_udp_host will override access_log_address -# access_log_udp_host = -# access_log_udp_port = 514 -# -# You can use log_statsd_* from [DEFAULT] or override them here: -# access_log_statsd_host = localhost -# access_log_statsd_port = 8125 -# access_log_statsd_default_sample_rate = 1.0 -# access_log_statsd_sample_rate_factor = 1.0 -# access_log_statsd_metric_prefix = -# access_log_headers = false -# -# If access_log_headers is True and access_log_headers_only is set only -# these headers are logged. Multiple headers can be defined as comma separated -# list like this: access_log_headers_only = Host, X-Object-Meta-Mtime -# access_log_headers_only = -# -# By default, the X-Auth-Token is logged. To obscure the value, -# set reveal_sensitive_prefix to the number of characters to log. -# For example, if set to 12, only the first 12 characters of the -# token appear in the log. An unauthorized access of the log file -# won't allow unauthorized usage of the token. However, the first -# 12 or so characters is unique enough that you can trace/debug -# token usage. Set to 0 to suppress the token completely (replaced -# by '...' in the log). -# Note: reveal_sensitive_prefix will not affect the value -# logged with access_log_headers=True. -# reveal_sensitive_prefix = 16 -# -# What HTTP methods are allowed for StatsD logging (comma-sep); request methods -# not in this list will have "BAD_METHOD" for the portion of the metric. -# log_statsd_valid_http_methods = GET,HEAD,POST,PUT,DELETE,COPY,OPTIONS -# -# Note: The double proxy-logging in the pipeline is not a mistake. The -# left-most proxy-logging is there to log requests that were handled in -# middleware and never made it through to the right-most middleware (and -# proxy server). Double logging is prevented for normal requests. See -# proxy-logging docs. - -# Note: Put before both ratelimit and auth in the pipeline. -[filter:bulk] -use = egg:swift#bulk -# max_containers_per_extraction = 10000 -# max_failed_extractions = 1000 -# max_deletes_per_request = 10000 -# max_failed_deletes = 1000 - -# In order to keep a connection active during a potentially long bulk request, -# Swift may return whitespace prepended to the actual response body. This -# whitespace will be yielded no more than every yield_frequency seconds. -# yield_frequency = 10 - -# Note: The following parameter is used during a bulk delete of objects and -# their container. This would frequently fail because it is very likely -# that all replicated objects have not been deleted by the time the middleware got a -# successful response. It can be configured the number of retries. And the -# number of seconds to wait between each retry will be 1.5**retry - -# delete_container_retry_count = 0 - -# Note: Put after auth in the pipeline. -[filter:container-quotas] -use = egg:swift#container_quotas - -# Note: Put after auth and staticweb in the pipeline. -[filter:slo] -use = egg:swift#slo -# max_manifest_segments = 1000 -# max_manifest_size = 2097152 -# min_segment_size = 1048576 -# Start rate-limiting SLO segment serving after the Nth segment of a -# segmented object. -# rate_limit_after_segment = 10 -# -# Once segment rate-limiting kicks in for an object, limit segments served -# to N per second. 0 means no rate-limiting. -# rate_limit_segments_per_sec = 0 -# -# Time limit on GET requests (seconds) -# max_get_time = 86400 - -# Note: Put after auth and staticweb in the pipeline. -# If you don't put it in the pipeline, it will be inserted for you. -[filter:dlo] -use = egg:swift#dlo -# Start rate-limiting DLO segment serving after the Nth segment of a -# segmented object. -# rate_limit_after_segment = 10 -# -# Once segment rate-limiting kicks in for an object, limit segments served -# to N per second. 0 means no rate-limiting. -# rate_limit_segments_per_sec = 1 -# -# Time limit on GET requests (seconds) -# max_get_time = 86400 - -[filter:account-quotas] -use = egg:swift#account_quotas - -[filter:gatekeeper] -use = egg:swift#gatekeeper -# You can override the default log routing for this filter here: -# set log_name = gatekeeper -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_headers = false -# set log_address = /dev/log - -[filter:container_sync] -use = egg:swift#container_sync -# Set this to false if you want to disallow any full url values to be set for -# any new X-Container-Sync-To headers. This will keep any new full urls from -# coming in, but won't change any existing values already in the cluster. -# Updating those will have to be done manually, as knowing what the true realm -# endpoint should be cannot always be guessed. -# allow_full_urls = true -# Set this to specify this clusters //realm/cluster as "current" in /info -# current = //REALM/CLUSTER - -# Note: Put it at the beginning of the pipleline to profile all middleware. But -# it is safer to put this after catch_errors, gatekeeper and healthcheck. -[filter:xprofile] -use = egg:swift#xprofile -# This option enable you to switch profilers which should inherit from python -# standard profiler. Currently the supported value can be 'cProfile', -# 'eventlet.green.profile' etc. -# profile_module = eventlet.green.profile -# -# This prefix will be used to combine process ID and timestamp to name the -# profile data file. Make sure the executing user has permission to write -# into this path (missing path segments will be created, if necessary). -# If you enable profiling in more than one type of daemon, you must override -# it with an unique value like: /var/log/swift/profile/proxy.profile -# log_filename_prefix = /tmp/log/swift/profile/default.profile -# -# the profile data will be dumped to local disk based on above naming rule -# in this interval. -# dump_interval = 5.0 -# -# Be careful, this option will enable profiler to dump data into the file with -# time stamp which means there will be lots of files piled up in the directory. -# dump_timestamp = false -# -# This is the path of the URL to access the mini web UI. -# path = /__profile__ -# -# Clear the data when the wsgi server shutdown. -# flush_at_shutdown = false -# -# unwind the iterator of applications -# unwind = false diff --git a/install-files/swift/etc/ntp.conf b/install-files/swift/etc/ntp.conf deleted file mode 100644 index 54522871..00000000 --- a/install-files/swift/etc/ntp.conf +++ /dev/null @@ -1,25 +0,0 @@ -{% if SWIFT_CONTROLLER is undefined or SWIFT_CONTROLLER == "False" %} -server {{ CONTROLLER_HOST_ADDRESS }} iburst -{% else %} -# We use iburst here to reduce the potential initial delay to set the clock -server 0.pool.ntp.org iburst -server 1.pool.ntp.org iburst -server 2.pool.ntp.org iburst -server 3.pool.ntp.org iburst - -# kod - notify client when packets are denied service, -# rather than just dropping the packets -# -# nomodify - deny queries which attempt to modify the state of the server -# -# notrap - decline to provide mode 6 control message trap service to -# matching hosts -# -# see ntp.conf(5) for more details -restrict -4 default kod notrap nomodify -restrict -6 default kod notrap nomodify -{% endif %} - -# The default rlimit isn't enough in some cases -# so we set a higher limit here -rlimit memlock 256 diff --git a/install-files/swift/manifest b/install-files/swift/manifest deleted file mode 100644 index 7fd76206..00000000 --- a/install-files/swift/manifest +++ /dev/null @@ -1,15 +0,0 @@ -0040755 0 0 /usr/share -0040755 0 0 /usr/share/swift -0100644 0 0 /usr/share/swift/hosts -0100644 0 0 /usr/share/swift/swift-storage.yml -0040755 0 0 /usr/share/swift/etc -0040755 0 0 /usr/share/swift/etc/swift -0100644 0 0 /usr/share/swift/etc/swift/account-server.j2 -0100644 0 0 /usr/share/swift/etc/swift/swift.j2 -0100644 0 0 /usr/share/swift/etc/swift/object-server.j2 -0100644 0 0 /usr/share/swift/etc/swift/container-server.j2 -0100644 0 0 /usr/share/swift/etc/rsyncd.j2 -0100644 0 0 /usr/lib/systemd/system/swift-storage-setup.service -0100644 0 0 /usr/lib/systemd/system/swift-storage.service -template overwrite 0100644 0 0 /etc/ntp.conf -overwrite 0100644 0 0 /usr/lib/systemd/system/rsync.service diff --git a/install-files/swift/usr/lib/systemd/system/rsync.service b/install-files/swift/usr/lib/systemd/system/rsync.service deleted file mode 100644 index babcfb46..00000000 --- a/install-files/swift/usr/lib/systemd/system/rsync.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=fast remote file copy program daemon -After=swift-storage-setup.service -ConditionPathExists=/etc/rsyncd.conf - -[Service] -ExecStart=/usr/bin/rsync --daemon --no-detach -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/install-files/swift/usr/lib/systemd/system/swift-storage-setup.service b/install-files/swift/usr/lib/systemd/system/swift-storage-setup.service deleted file mode 100644 index 3df31163..00000000 --- a/install-files/swift/usr/lib/systemd/system/swift-storage-setup.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Run openstack-swift-storage-setup (once) -After=local-fs.target postgres-server-setup.service - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/ansible-playbook -v -i /usr/share/swift/hosts /usr/share/swift/swift-storage.yml -Restart=no - -[Install] -WantedBy=multi-user.target diff --git a/install-files/swift/usr/lib/systemd/system/swift-storage.service b/install-files/swift/usr/lib/systemd/system/swift-storage.service deleted file mode 100644 index dc41d3bc..00000000 --- a/install-files/swift/usr/lib/systemd/system/swift-storage.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=OpenStack Swift Storage -After=syslog.target network.target swift-storage-setup.service - -[Service] -Type=forking -Restart=on-failure -ExecStart=/usr/bin/swift-init all start -ExecStop=/usr/bin/swift-init all stop - -[Install] -WantedBy=multi-user.target diff --git a/install-files/swift/usr/share/swift/etc/rsyncd.j2 b/install-files/swift/usr/share/swift/etc/rsyncd.j2 deleted file mode 100644 index c0657665..00000000 --- a/install-files/swift/usr/share/swift/etc/rsyncd.j2 +++ /dev/null @@ -1,23 +0,0 @@ -uid = swift -gid = swift -log file = /var/log/rsyncd.log -pid file = /var/run/rsyncd.pid -address = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} - -[account] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/account.lock - -[container] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/container.lock - -[object] -max connections = 2 -path = /srv/node/ -read only = false -lock file = /var/lock/object.lock diff --git a/install-files/swift/usr/share/swift/etc/swift/account-server.j2 b/install-files/swift/usr/share/swift/etc/swift/account-server.j2 deleted file mode 100644 index d977e295..00000000 --- a/install-files/swift/usr/share/swift/etc/swift/account-server.j2 +++ /dev/null @@ -1,192 +0,0 @@ -[DEFAULT] -# bind_ip = 0.0.0.0 -bind_ip = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} -bind_port = 6002 -# bind_timeout = 30 -# backlog = 4096 -user = swift -swift_dir = /etc/swift -devices = /srv/node -# mount_check = true -# disable_fallocate = false -# -# Use an integer to override the number of pre-forked processes that will -# accept connections. -# workers = auto -# -# Maximum concurrent requests per worker -# max_clients = 1024 -# -# You can specify default log routing here if you want: -# log_name = swift -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# The following caps the length of log lines to the value given; no limit if -# set to 0, the default. -# log_max_line_length = 0 -# -# comma separated list of functions to call to setup custom log handlers. -# functions get passed: conf, name, log_to_console, log_route, fmt, logger, -# adapted_logger -# log_custom_handlers = -# -# If set, log_udp_host will override log_address -# log_udp_host = -# log_udp_port = 514 -# -# You can enable StatsD logging here: -# log_statsd_host = localhost -# log_statsd_port = 8125 -# log_statsd_default_sample_rate = 1.0 -# log_statsd_sample_rate_factor = 1.0 -# log_statsd_metric_prefix = -# -# If you don't mind the extra disk space usage in overhead, you can turn this -# on to preallocate disk space with SQLite databases to decrease fragmentation. -# db_preallocation = off -# -# eventlet_debug = false -# -# You can set fallocate_reserve to the number of bytes you'd like fallocate to -# reserve, whether there is space for the given file size or not. -# fallocate_reserve = 0 - -[pipeline:main] -pipeline = healthcheck recon account-server - -[app:account-server] -use = egg:swift#account -# You can override the default log routing for this app here: -# set log_name = account-server -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_requests = true -# set log_address = /dev/log -# -# auto_create_account_prefix = . -# -# Configure parameter for creating specific server -# To handle all verbs, including replication verbs, do not specify -# "replication_server" (this is the default). To only handle replication, -# set to a True value (e.g. "True" or "1"). To handle only non-replication -# verbs, set to "False". Unless you have a separate replication network, you -# should not specify any value for "replication_server". -# replication_server = false - -[filter:healthcheck] -use = egg:swift#healthcheck -# An optional filesystem path, which if present, will cause the healthcheck -# URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE" -# disable_path = - -[filter:recon] -use = egg:swift#recon -recon_cache_path = /var/cache/swift - -[account-replicator] -# You can override the default log routing for this app here (don't use set!): -# log_name = account-replicator -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# vm_test_mode = no -# per_diff = 1000 -# max_diffs = 100 -# concurrency = 8 -# interval = 30 -# -# How long without an error before a node's error count is reset. This will -# also be how long before a node is reenabled after suppression is triggered. -# error_suppression_interval = 60 -# -# How many errors can accumulate before a node is temporarily ignored. -# error_suppression_limit = 10 -# -# node_timeout = 10 -# conn_timeout = 0.5 -# -# The replicator also performs reclamation -# reclaim_age = 604800 -# -# Time in seconds to wait between replication passes -# Note: if the parameter 'interval' is defined then it will be used in place -# of run_pause. -# run_pause = 30 -# -# recon_cache_path = /var/cache/swift - -[account-auditor] -# You can override the default log routing for this app here (don't use set!): -# log_name = account-auditor -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# Will audit each account at most once per interval -# interval = 1800 -# -# log_facility = LOG_LOCAL0 -# log_level = INFO -# accounts_per_second = 200 -# recon_cache_path = /var/cache/swift - -[account-reaper] -# You can override the default log routing for this app here (don't use set!): -# log_name = account-reaper -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# concurrency = 25 -# interval = 3600 -# node_timeout = 10 -# conn_timeout = 0.5 -# -# Normally, the reaper begins deleting account information for deleted accounts -# immediately; you can set this to delay its work however. The value is in -# seconds; 2592000 = 30 days for example. -# delay_reaping = 0 -# -# If the account fails to be be reaped due to a persistent error, the -# account reaper will log a message such as: -# Account has not been reaped since -# You can search logs for this message if space is not being reclaimed -# after you delete account(s). -# Default is 2592000 seconds (30 days). This is in addition to any time -# requested by delay_reaping. -# reap_warn_after = 2592000 - -# Note: Put it at the beginning of the pipeline to profile all middleware. But -# it is safer to put this after healthcheck. -[filter:xprofile] -use = egg:swift#xprofile -# This option enable you to switch profilers which should inherit from python -# standard profiler. Currently the supported value can be 'cProfile', -# 'eventlet.green.profile' etc. -# profile_module = eventlet.green.profile -# -# This prefix will be used to combine process ID and timestamp to name the -# profile data file. Make sure the executing user has permission to write -# into this path (missing path segments will be created, if necessary). -# If you enable profiling in more than one type of daemon, you must override -# it with an unique value like: /var/log/swift/profile/account.profile -# log_filename_prefix = /tmp/log/swift/profile/default.profile -# -# the profile data will be dumped to local disk based on above naming rule -# in this interval. -# dump_interval = 5.0 -# -# Be careful, this option will enable profiler to dump data into the file with -# time stamp which means there will be lots of files piled up in the directory. -# dump_timestamp = false -# -# This is the path of the URL to access the mini web UI. -# path = /__profile__ -# -# Clear the data when the wsgi server shutdown. -# flush_at_shutdown = false -# -# unwind the iterator of applications -# unwind = false diff --git a/install-files/swift/usr/share/swift/etc/swift/container-server.j2 b/install-files/swift/usr/share/swift/etc/swift/container-server.j2 deleted file mode 100644 index 3c63b7d0..00000000 --- a/install-files/swift/usr/share/swift/etc/swift/container-server.j2 +++ /dev/null @@ -1,211 +0,0 @@ -[DEFAULT] -# bind_ip = 0.0.0.0 -bind_ip = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} -bind_port = 6001 -# bind_timeout = 30 -# backlog = 4096 -user = swift -swift_dir = /etc/swift -devices = /srv/node -# mount_check = true -# disable_fallocate = false -# -# Use an integer to override the number of pre-forked processes that will -# accept connections. -# workers = auto -# -# Maximum concurrent requests per worker -# max_clients = 1024 -# -# This is a comma separated list of hosts allowed in the X-Container-Sync-To -# field for containers. This is the old-style of using container sync. It is -# strongly recommended to use the new style of a separate -# container-sync-realms.conf -- see container-sync-realms.conf-sample -# allowed_sync_hosts = 127.0.0.1 -# -# You can specify default log routing here if you want: -# log_name = swift -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# The following caps the length of log lines to the value given; no limit if -# set to 0, the default. -# log_max_line_length = 0 -# -# comma separated list of functions to call to setup custom log handlers. -# functions get passed: conf, name, log_to_console, log_route, fmt, logger, -# adapted_logger -# log_custom_handlers = -# -# If set, log_udp_host will override log_address -# log_udp_host = -# log_udp_port = 514 -# -# You can enable StatsD logging here: -# log_statsd_host = localhost -# log_statsd_port = 8125 -# log_statsd_default_sample_rate = 1.0 -# log_statsd_sample_rate_factor = 1.0 -# log_statsd_metric_prefix = -# -# If you don't mind the extra disk space usage in overhead, you can turn this -# on to preallocate disk space with SQLite databases to decrease fragmentation. -# db_preallocation = off -# -# eventlet_debug = false -# -# You can set fallocate_reserve to the number of bytes you'd like fallocate to -# reserve, whether there is space for the given file size or not. -# fallocate_reserve = 0 - -[pipeline:main] -pipeline = healthcheck recon container-server - -[app:container-server] -use = egg:swift#container -# You can override the default log routing for this app here: -# set log_name = container-server -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_requests = true -# set log_address = /dev/log -# -# node_timeout = 3 -# conn_timeout = 0.5 -# allow_versions = false -# auto_create_account_prefix = . -# -# Configure parameter for creating specific server -# To handle all verbs, including replication verbs, do not specify -# "replication_server" (this is the default). To only handle replication, -# set to a True value (e.g. "True" or "1"). To handle only non-replication -# verbs, set to "False". Unless you have a separate replication network, you -# should not specify any value for "replication_server". -# replication_server = false - -[filter:healthcheck] -use = egg:swift#healthcheck -# An optional filesystem path, which if present, will cause the healthcheck -# URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE" -# disable_path = - -[filter:recon] -use = egg:swift#recon -recon_cache_path = /var/cache/swift - -[container-replicator] -# You can override the default log routing for this app here (don't use set!): -# log_name = container-replicator -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# vm_test_mode = no -# per_diff = 1000 -# max_diffs = 100 -# concurrency = 8 -# interval = 30 -# node_timeout = 10 -# conn_timeout = 0.5 -# -# The replicator also performs reclamation -# reclaim_age = 604800 -# -# Time in seconds to wait between replication passes -# Note: if the parameter 'interval' is defined then it will be used in place -# of run_pause. -# run_pause = 30 -# -# recon_cache_path = /var/cache/swift - -[container-updater] -# You can override the default log routing for this app here (don't use set!): -# log_name = container-updater -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# interval = 300 -# concurrency = 4 -# node_timeout = 3 -# conn_timeout = 0.5 -# -# slowdown will sleep that amount between containers -# slowdown = 0.01 -# -# Seconds to suppress updating an account that has generated an error -# account_suppression_time = 60 -# -# recon_cache_path = /var/cache/swift - -[container-auditor] -# You can override the default log routing for this app here (don't use set!): -# log_name = container-auditor -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# Will audit each container at most once per interval -# interval = 1800 -# -# containers_per_second = 200 -# recon_cache_path = /var/cache/swift - -[container-sync] -# You can override the default log routing for this app here (don't use set!): -# log_name = container-sync -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# If you need to use an HTTP Proxy, set it here; defaults to no proxy. -# You can also set this to a comma separated list of HTTP Proxies and they will -# be randomly used (simple load balancing). -# sync_proxy = http://10.1.1.1:8888,http://10.1.1.2:8888 -# -# Will sync each container at most once per interval -# interval = 300 -# -# Maximum amount of time to spend syncing each container per pass -# container_time = 60 -# -# Maximum amount of time in seconds for the connection attempt -# conn_timeout = 5 -# Server errors from requests will be retried by default -# request_tries = 3 -# -# Internal client config file path -# internal_client_conf_path = /etc/swift/internal-client.conf - -# Note: Put it at the beginning of the pipeline to profile all middleware. But -# it is safer to put this after healthcheck. -[filter:xprofile] -use = egg:swift#xprofile -# This option enable you to switch profilers which should inherit from python -# standard profiler. Currently the supported value can be 'cProfile', -# 'eventlet.green.profile' etc. -# profile_module = eventlet.green.profile -# -# This prefix will be used to combine process ID and timestamp to name the -# profile data file. Make sure the executing user has permission to write -# into this path (missing path segments will be created, if necessary). -# If you enable profiling in more than one type of daemon, you must override -# it with an unique value like: /var/log/swift/profile/container.profile -# log_filename_prefix = /tmp/log/swift/profile/default.profile -# -# the profile data will be dumped to local disk based on above naming rule -# in this interval. -# dump_interval = 5.0 -# -# Be careful, this option will enable profiler to dump data into the file with -# time stamp which means there will be lots of files piled up in the directory. -# dump_timestamp = false -# -# This is the path of the URL to access the mini web UI. -# path = /__profile__ -# -# Clear the data when the wsgi server shutdown. -# flush_at_shutdown = false -# -# unwind the iterator of applications -# unwind = false diff --git a/install-files/swift/usr/share/swift/etc/swift/object-server.j2 b/install-files/swift/usr/share/swift/etc/swift/object-server.j2 deleted file mode 100644 index 19d72f6c..00000000 --- a/install-files/swift/usr/share/swift/etc/swift/object-server.j2 +++ /dev/null @@ -1,306 +0,0 @@ -[DEFAULT] -# bind_ip = 0.0.0.0 -bind_ip = {{ MANAGEMENT_INTERFACE_IP_ADDRESS }} -bind_port = 6000 -# bind_timeout = 30 -# backlog = 4096 -user = swift -swift_dir = /etc/swift -devices = /srv/node -# mount_check = true -# disable_fallocate = false -# expiring_objects_container_divisor = 86400 -# expiring_objects_account_name = expiring_objects -# -# Use an integer to override the number of pre-forked processes that will -# accept connections. -# workers = auto -# -# Maximum concurrent requests per worker -# max_clients = 1024 -# -# You can specify default log routing here if you want: -# log_name = swift -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# The following caps the length of log lines to the value given; no limit if -# set to 0, the default. -# log_max_line_length = 0 -# -# comma separated list of functions to call to setup custom log handlers. -# functions get passed: conf, name, log_to_console, log_route, fmt, logger, -# adapted_logger -# log_custom_handlers = -# -# If set, log_udp_host will override log_address -# log_udp_host = -# log_udp_port = 514 -# -# You can enable StatsD logging here: -# log_statsd_host = localhost -# log_statsd_port = 8125 -# log_statsd_default_sample_rate = 1.0 -# log_statsd_sample_rate_factor = 1.0 -# log_statsd_metric_prefix = -# -# eventlet_debug = false -# -# You can set fallocate_reserve to the number of bytes you'd like fallocate to -# reserve, whether there is space for the given file size or not. -# fallocate_reserve = 0 -# -# Time to wait while attempting to connect to another backend node. -# conn_timeout = 0.5 -# Time to wait while sending each chunk of data to another backend node. -# node_timeout = 3 -# Time to wait while receiving each chunk of data from a client or another -# backend node. -# client_timeout = 60 -# -# network_chunk_size = 65536 -# disk_chunk_size = 65536 - -[pipeline:main] -pipeline = healthcheck recon object-server - -[app:object-server] -use = egg:swift#object -# You can override the default log routing for this app here: -# set log_name = object-server -# set log_facility = LOG_LOCAL0 -# set log_level = INFO -# set log_requests = true -# set log_address = /dev/log -# -# max_upload_time = 86400 -# slow = 0 -# -# Objects smaller than this are not evicted from the buffercache once read -# keep_cache_size = 5242880 -# -# If true, objects for authenticated GET requests may be kept in buffer cache -# if small enough -# keep_cache_private = false -# -# on PUTs, sync data every n MB -# mb_per_sync = 512 -# -# Comma separated list of headers that can be set in metadata on an object. -# This list is in addition to X-Object-Meta-* headers and cannot include -# Content-Type, etag, Content-Length, or deleted -# allowed_headers = Content-Disposition, Content-Encoding, X-Delete-At, X-Object-Manifest, X-Static-Large-Object -# -# auto_create_account_prefix = . -# -# A value of 0 means "don't use thread pools". A reasonable starting point is -# 4. -# threads_per_disk = 0 -# -# Configure parameter for creating specific server -# To handle all verbs, including replication verbs, do not specify -# "replication_server" (this is the default). To only handle replication, -# set to a True value (e.g. "True" or "1"). To handle only non-replication -# verbs, set to "False". Unless you have a separate replication network, you -# should not specify any value for "replication_server". -# replication_server = false -# -# Set to restrict the number of concurrent incoming REPLICATION requests -# Set to 0 for unlimited -# Note that REPLICATION is currently an ssync only item -# replication_concurrency = 4 -# -# Restricts incoming REPLICATION requests to one per device, -# replication_currency above allowing. This can help control I/O to each -# device, but you may wish to set this to False to allow multiple REPLICATION -# requests (up to the above replication_concurrency setting) per device. -# replication_one_per_device = True -# -# Number of seconds to wait for an existing replication device lock before -# giving up. -# replication_lock_timeout = 15 -# -# These next two settings control when the REPLICATION subrequest handler will -# abort an incoming REPLICATION attempt. An abort will occur if there are at -# least threshold number of failures and the value of failures / successes -# exceeds the ratio. The defaults of 100 and 1.0 means that at least 100 -# failures have to occur and there have to be more failures than successes for -# an abort to occur. -# replication_failure_threshold = 100 -# replication_failure_ratio = 1.0 -# -# Use splice() for zero-copy object GETs. This requires Linux kernel -# version 3.0 or greater. If you set "splice = yes" but the kernel -# does not support it, error messages will appear in the object server -# logs at startup, but your object servers should continue to function. -# -# splice = no - -[filter:healthcheck] -use = egg:swift#healthcheck -# An optional filesystem path, which if present, will cause the healthcheck -# URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE" -# disable_path = - -[filter:recon] -use = egg:swift#recon -recon_cache_path = /var/cache/swift -#recon_lock_path = /var/lock - -[object-replicator] -# You can override the default log routing for this app here (don't use set!): -# log_name = object-replicator -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# vm_test_mode = no -# daemonize = on -# run_pause = 30 -# concurrency = 1 -# stats_interval = 300 -# -# The sync method to use; default is rsync but you can use ssync to try the -# EXPERIMENTAL all-swift-code-no-rsync-callouts method. Once ssync is verified -# as having performance comparable to, or better than, rsync, we plan to -# deprecate rsync so we can move on with more features for replication. -# sync_method = rsync -# -# max duration of a partition rsync -# rsync_timeout = 900 -# -# bandwidth limit for rsync in kB/s. 0 means unlimited -# rsync_bwlimit = 0 -# -# passed to rsync for io op timeout -# rsync_io_timeout = 30 -# -# node_timeout = -# max duration of an http request; this is for REPLICATE finalization calls and -# so should be longer than node_timeout -# http_timeout = 60 -# -# attempts to kill all workers if nothing replicates for lockup_timeout seconds -# lockup_timeout = 1800 -# -# The replicator also performs reclamation -# reclaim_age = 604800 -# -# ring_check_interval = 15 -# recon_cache_path = /var/cache/swift -# -# limits how long rsync error log lines are -# 0 means to log the entire line -# rsync_error_log_line_length = 0 -# -# handoffs_first and handoff_delete are options for a special case -# such as disk full in the cluster. These two options SHOULD NOT BE -# CHANGED, except for such an extreme situations. (e.g. disks filled up -# or are about to fill up. Anyway, DO NOT let your drives fill up) -# handoffs_first is the flag to replicate handoffs prior to canonical -# partitions. It allows to force syncing and deleting handoffs quickly. -# If set to a True value(e.g. "True" or "1"), partitions -# that are not supposed to be on the node will be replicated first. -# handoffs_first = False -# -# handoff_delete is the number of replicas which are ensured in swift. -# If the number less than the number of replicas is set, object-replicator -# could delete local handoffs even if all replicas are not ensured in the -# cluster. Object-replicator would remove local handoff partition directories -# after syncing partition when the number of successful responses is greater -# than or equal to this number. By default(auto), handoff partitions will be -# removed when it has successfully replicated to all the canonical nodes. -# handoff_delete = auto - -[object-reconstructor] -# You can override the default log routing for this app here (don't use set!): -# Unless otherwise noted, each setting below has the same meaning as described -# in the [object-replicator] section, however these settings apply to the EC -# reconstructor -# -# log_name = object-reconstructor -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# daemonize = on -# run_pause = 30 -# concurrency = 1 -# stats_interval = 300 -# node_timeout = 10 -# http_timeout = 60 -# lockup_timeout = 1800 -# reclaim_age = 604800 -# ring_check_interval = 15 -# recon_cache_path = /var/cache/swift -# handoffs_first = False - -[object-updater] -# You can override the default log routing for this app here (don't use set!): -# log_name = object-updater -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# interval = 300 -# concurrency = 1 -# node_timeout = -# slowdown will sleep that amount between objects -# slowdown = 0.01 -# -# recon_cache_path = /var/cache/swift - -[object-auditor] -# You can override the default log routing for this app here (don't use set!): -# log_name = object-auditor -# log_facility = LOG_LOCAL0 -# log_level = INFO -# log_address = /dev/log -# -# You can set the disk chunk size that the auditor uses making it larger if -# you like for more efficient local auditing of larger objects -# disk_chunk_size = 65536 -# files_per_second = 20 -# concurrency = 1 -# bytes_per_second = 10000000 -# log_time = 3600 -# zero_byte_files_per_second = 50 -# recon_cache_path = /var/cache/swift - -# Takes a comma separated list of ints. If set, the object auditor will -# increment a counter for every object whose size is <= to the given break -# points and report the result after a full scan. -# object_size_stats = - -# Note: Put it at the beginning of the pipleline to profile all middleware. But -# it is safer to put this after healthcheck. -[filter:xprofile] -use = egg:swift#xprofile -# This option enable you to switch profilers which should inherit from python -# standard profiler. Currently the supported value can be 'cProfile', -# 'eventlet.green.profile' etc. -# profile_module = eventlet.green.profile -# -# This prefix will be used to combine process ID and timestamp to name the -# profile data file. Make sure the executing user has permission to write -# into this path (missing path segments will be created, if necessary). -# If you enable profiling in more than one type of daemon, you must override -# it with an unique value like: /var/log/swift/profile/object.profile -# log_filename_prefix = /tmp/log/swift/profile/default.profile -# -# the profile data will be dumped to local disk based on above naming rule -# in this interval. -# dump_interval = 5.0 -# -# Be careful, this option will enable profiler to dump data into the file with -# time stamp which means there will be lots of files piled up in the directory. -# dump_timestamp = false -# -# This is the path of the URL to access the mini web UI. -# path = /__profile__ -# -# Clear the data when the wsgi server shutdown. -# flush_at_shutdown = false -# -# unwind the iterator of applications -# unwind = false diff --git a/install-files/swift/usr/share/swift/etc/swift/swift.j2 b/install-files/swift/usr/share/swift/etc/swift/swift.j2 deleted file mode 100644 index 933e207e..00000000 --- a/install-files/swift/usr/share/swift/etc/swift/swift.j2 +++ /dev/null @@ -1,169 +0,0 @@ -[swift-hash] - -# swift_hash_path_suffix and swift_hash_path_prefix are used as part of the -# the hashing algorithm when determining data placement in the cluster. -# These values should remain secret and MUST NOT change -# once a cluster has been deployed. - -swift_hash_path_suffix = {{ SWIFT_HASH_PATH_SUFFIX }} -swift_hash_path_prefix = {{ SWIFT_HASH_PATH_PREFIX }} - -# storage policies are defined here and determine various characteristics -# about how objects are stored and treated. Policies are specified by name on -# a per container basis. Names are case-insensitive. The policy index is -# specified in the section header and is used internally. The policy with -# index 0 is always used for legacy containers and can be given a name for use -# in metadata however the ring file name will always be 'object.ring.gz' for -# backwards compatibility. If no policies are defined a policy with index 0 -# will be automatically created for backwards compatibility and given the name -# Policy-0. A default policy is used when creating new containers when no -# policy is specified in the request. If no other policies are defined the -# policy with index 0 will be declared the default. If multiple policies are -# defined you must define a policy with index 0 and you must specify a -# default. It is recommended you always define a section for -# storage-policy:0. -# -# A 'policy_type' argument is also supported but is not mandatory. Default -# policy type 'replication' is used when 'policy_type' is unspecified. -[storage-policy:0] -name = Policy-0 -default = yes -#policy_type = replication - -# the following section would declare a policy called 'silver', the number of -# replicas will be determined by how the ring is built. In this example the -# 'silver' policy could have a lower or higher # of replicas than the -# 'Policy-0' policy above. The ring filename will be 'object-1.ring.gz'. You -# may only specify one storage policy section as the default. If you changed -# this section to specify 'silver' as the default, when a client created a new -# container w/o a policy specified, it will get the 'silver' policy because -# this config has specified it as the default. However if a legacy container -# (one created with a pre-policy version of swift) is accessed, it is known -# implicitly to be assigned to the policy with index 0 as opposed to the -# current default. -#[storage-policy:1] -#name = silver -#policy_type = replication - -# The following declares a storage policy of type 'erasure_coding' which uses -# Erasure Coding for data reliability. The 'erasure_coding' storage policy in -# Swift is available as a "beta". Please refer to Swift documentation for -# details on how the 'erasure_coding' storage policy is implemented. -# -# Swift uses PyECLib, a Python Erasure coding API library, for encode/decode -# operations. Please refer to Swift documentation for details on how to -# install PyECLib. -# -# When defining an EC policy, 'policy_type' needs to be 'erasure_coding' and -# EC configuration parameters 'ec_type', 'ec_num_data_fragments' and -# 'ec_num_parity_fragments' must be specified. 'ec_type' is chosen from the -# list of EC backends supported by PyECLib. The ring configured for the -# storage policy must have it's "replica" count configured to -# 'ec_num_data_fragments' + 'ec_num_parity_fragments' - this requirement is -# validated when services start. 'ec_object_segment_size' is the amount of -# data that will be buffered up before feeding a segment into the -# encoder/decoder. More information about these configuration options and -# supported `ec_type` schemes is available in the Swift documentation. Please -# refer to Swift documentation for details on how to configure EC policies. -# -# The example 'deepfreeze10-4' policy defined below is a _sample_ -# configuration with 10 'data' and 4 'parity' fragments. 'ec_type' -# defines the Erasure Coding scheme. 'jerasure_rs_vand' (Reed-Solomon -# Vandermonde) is used as an example below. -# -#[storage-policy:2] -#name = deepfreeze10-4 -#policy_type = erasure_coding -#ec_type = jerasure_rs_vand -#ec_num_data_fragments = 10 -#ec_num_parity_fragments = 4 -#ec_object_segment_size = 1048576 - - -# The swift-constraints section sets the basic constraints on data -# saved in the swift cluster. These constraints are automatically -# published by the proxy server in responses to /info requests. - -[swift-constraints] - -# max_file_size is the largest "normal" object that can be saved in -# the cluster. This is also the limit on the size of each segment of -# a "large" object when using the large object manifest support. -# This value is set in bytes. Setting it to lower than 1MiB will cause -# some tests to fail. It is STRONGLY recommended to leave this value at -# the default (5 * 2**30 + 2). - -#max_file_size = 5368709122 - - -# max_meta_name_length is the max number of bytes in the utf8 encoding -# of the name portion of a metadata header. - -#max_meta_name_length = 128 - - -# max_meta_value_length is the max number of bytes in the utf8 encoding -# of a metadata value - -#max_meta_value_length = 256 - - -# max_meta_count is the max number of metadata keys that can be stored -# on a single account, container, or object - -#max_meta_count = 90 - - -# max_meta_overall_size is the max number of bytes in the utf8 encoding -# of the metadata (keys + values) - -#max_meta_overall_size = 4096 - -# max_header_size is the max number of bytes in the utf8 encoding of each -# header. Using 8192 as default because eventlet use 8192 as max size of -# header line. This value may need to be increased when using identity -# v3 API tokens including more than 7 catalog entries. -# See also include_service_catalog in proxy-server.conf-sample -# (documented in overview_auth.rst) - -#max_header_size = 8192 - - -# max_object_name_length is the max number of bytes in the utf8 encoding -# of an object name - -#max_object_name_length = 1024 - - -# container_listing_limit is the default (and max) number of items -# returned for a container listing request - -#container_listing_limit = 10000 - - -# account_listing_limit is the default (and max) number of items returned -# for an account listing request -#account_listing_limit = 10000 - - -# max_account_name_length is the max number of bytes in the utf8 encoding -# of an account name - -#max_account_name_length = 256 - - -# max_container_name_length is the max number of bytes in the utf8 encoding -# of a container name - -#max_container_name_length = 256 - - -# By default all REST API calls should use "v1" or "v1.0" as the version string, -# for example "/v1/account". This can be manually overridden to make this -# backward-compatible, in case a different version string has been used before. -# Use a comma-separated list in case of multiple allowed versions, for example -# valid_api_versions = v0,v1,v2 -# This is only enforced for account, container and object requests. The allowed -# api versions are by default excluded from /info. - -# valid_api_versions = v1,v1.0 diff --git a/install-files/swift/usr/share/swift/hosts b/install-files/swift/usr/share/swift/hosts deleted file mode 100644 index 5b97818d..00000000 --- a/install-files/swift/usr/share/swift/hosts +++ /dev/null @@ -1 +0,0 @@ -localhost ansible_connection=local diff --git a/install-files/swift/usr/share/swift/swift-storage.yml b/install-files/swift/usr/share/swift/swift-storage.yml deleted file mode 100644 index 62a335ed..00000000 --- a/install-files/swift/usr/share/swift/swift-storage.yml +++ /dev/null @@ -1,24 +0,0 @@ ---- -- hosts: localhost - vars_files: - - swift-storage-vars.yml - vars: - remote_user: root - tasks: - - user: name=swift comment="Swift user" - - file: path=/etc/swift owner=swift group=swift state=directory recurse=yes - - - template: src=/usr/share/swift/etc/rsyncd.j2 dest=/etc/rsyncd.conf - mode=0644 owner=swift group=swift - - - template: src=/usr/share/swift/etc/swift/{{ item }}.j2 - dest=/etc/swift/{{ item }}.conf mode=0644 owner=swift group=swift - with_items: - - account-server - - container-server - - object-server - - swift - - - file: path=/srv/node owner=swift group=swift state=directory recurse=yes - - file: path=/var/cache/swift owner=swift group=swift state=directory - recurse=yes diff --git a/install-files/vagrant-files/home/vagrant/.ssh/authorized_keys b/install-files/vagrant-files/home/vagrant/.ssh/authorized_keys deleted file mode 100644 index 18a9c00f..00000000 --- a/install-files/vagrant-files/home/vagrant/.ssh/authorized_keys +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key diff --git a/install-files/vagrant-files/manifest b/install-files/vagrant-files/manifest deleted file mode 100644 index 67168341..00000000 --- a/install-files/vagrant-files/manifest +++ /dev/null @@ -1,4 +0,0 @@ -0040755 0 0 /home -0040755 1000 0000 /home/vagrant -0040700 1000 1000 /home/vagrant/.ssh -0100600 1000 1000 /home/vagrant/.ssh/authorized_keys diff --git a/ivi/clusters/ivi-system-armv7lhf-jetson-deploy.morph b/ivi/clusters/ivi-system-armv7lhf-jetson-deploy.morph deleted file mode 100644 index b7d54749..00000000 --- a/ivi/clusters/ivi-system-armv7lhf-jetson-deploy.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: ivi-system-armv7lhf-jetson-deploy -kind: cluster -description: Deploy a IVI system. -systems: -- morph: ivi/systems/ivi-system-armv7lhf-jetson.morph - deploy: - ivi-system-armv7lhf-jetson: - type: extensions/rawdisk - location: /ivi-system-armv7lhf-jetson.img - HOSTNAME: ivi-system-armv7lhf-jetson - DISK_SIZE: 6G - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 diff --git a/ivi/clusters/ivi-system-x86_32-deploy.morph b/ivi/clusters/ivi-system-x86_32-deploy.morph deleted file mode 100644 index 9adaa196..00000000 --- a/ivi/clusters/ivi-system-x86_32-deploy.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: ivi-system-x86_32-deploy -kind: cluster -description: | - Deploy a stock IVI system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: ivi/systems/ivi-system-x86_32.morph - deploy: - ivi-system-x86_32: - type: extensions/rawdisk - location: /ivi-system-x86_32.img - HOSTNAME: ivi-system-x86-32 - DISK_SIZE: 6G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_32.morph - deploy: - initramfs: - type: initramfs - location: boot/initramfs.gz diff --git a/ivi/clusters/ivi-system-x86_64-deploy.morph b/ivi/clusters/ivi-system-x86_64-deploy.morph deleted file mode 100644 index 5e18cd39..00000000 --- a/ivi/clusters/ivi-system-x86_64-deploy.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: ivi-system-x86_64-deploy -kind: cluster -description: | - Deploy a stock IVI system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: ivi/systems/ivi-system-x86_64.morph - deploy: - ivi-system-x86_64: - type: extensions/rawdisk - location: /ivi-system-x86_64.img - HOSTNAME: ivi-system-x86-64 - DISK_SIZE: 6G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: initramfs - location: boot/initramfs.gz diff --git a/ivi/strata/bsp-x86_32-ivi.morph b/ivi/strata/bsp-x86_32-ivi.morph deleted file mode 100644 index 0dd7e00d..00000000 --- a/ivi/strata/bsp-x86_32-ivi.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: bsp-x86_32-ivi -kind: stratum -description: Set of components required for booting a 32-bit - x86 based system, with some options specific to IVI systems. -build-depends: -- morph: strata/bsp-x86_both-tools.morph -chunks: -- name: linux-x86-32-ivi - morph: ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph - repo: upstream:linux - ref: 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c - unpetrify-ref: v4.12 diff --git a/ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph b/ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph deleted file mode 100644 index c4ff83f6..00000000 --- a/ivi/strata/bsp-x86_32-ivi/linux-x86-32-ivi.morph +++ /dev/null @@ -1,84 +0,0 @@ -name: linux-x86-32-ivi -kind: chunk -products: -- artifact: linux-x86-32-ivi-devel - include: - - (usr/)?src/linux/.* -- artifact: linux-x86-32-ivi-bins - include: - - boot/.* -- artifact: linux-x86-32-ivi-libs - include: - - lib/.* -configure-commands: -- make defconfig -- scripts/config -e ATA -- scripts/config -e ATA_PIIX -- scripts/config -e AUTOFS4_FS -- scripts/config -e BLK_DEV_BSG -- scripts/config -e BLK_DEV_SD -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e CFS_BANDWIDTH -- scripts/config -e CGROUPS -- scripts/config -e CGROUP_SCHED -- scripts/config -e CHECKPOINT_RESTORE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e DEVTMPFS -- scripts/config -e DMIID -- scripts/config -e EFIVAR_FS -- scripts/config -e EFI_PARTITION -- scripts/config -e EPOLL -- scripts/config -e FAIR_GROUP_SCHED -- scripts/config -e FHANDLE -- scripts/config -d FW_LOADER_USER_HELPER -- scripts/config -e INOTIFY_USER -- scripts/config -e IPV6 -- scripts/config -e NET -- scripts/config -e NET_NS -- scripts/config -e PROC_FS -- scripts/config -e SATA_AHCI -- scripts/config -e SCSI -- scripts/config -e SCSI_MOD -- scripts/config -e SECCOMP -- scripts/config -e SIGNALFD -- scripts/config -e SYSFS -- scripts/config -d SYSFS_DEPRECATED -- scripts/config -e TIMERFD -- scripts/config -e TMPFS_POSIX_ACL -- scripts/config -e TMPFS_XATTR -- scripts/config -e UEVENT_HELPER_PATH="" -- scripts/config -m CONFIG_DRM_CIRRUS_QEMU -- scripts/config -m CONFIG_DRM_BOCHS -- scripts/config -m CONFIG_DRM_VIRTIO_GPU -- scripts/config -m CONFIG_BT_INTEL -- scripts/config -m CONFIG_MOSTCORE -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- make INSTALL_PATH="$DESTDIR"/boot install -- make INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -d "$DESTDIR$PREFIX/src/linux" -- | - ( - printf 'Makefile\0' - printf 'Module.symvers\0' - find arch/x86 -maxdepth 1 -name 'Makefile*' -print0 - find arch/x86 \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0 - find arch/x86 \( -type d -a \( -name include -o -name scripts \) \) -o \ - \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0 - find include -name 'asm*' -prune -o -print0 - find include/asm-generic -print0 - find include/uapi -print0 - find scripts -print0 - ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux" -system-integration: - linux-x86-32-ivi-misc: - # This is required for any modules to work correctly. However, it depends - # `depmod` from the 'kmod' chunk in the 'foundation' stratum, so it runs - # conditionally on `depmod` existing to avoid breaking in - # minimal-system-x86_32. - 00-depmod: - - if which depmod; then (cd /usr/lib/modules && for version in *; do depmod -a "$version"; done) fi diff --git a/ivi/strata/bsp-x86_64-ivi.morph b/ivi/strata/bsp-x86_64-ivi.morph deleted file mode 100644 index 009afdd8..00000000 --- a/ivi/strata/bsp-x86_64-ivi.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: bsp-x86_64-ivi -kind: stratum -description: Set of components required for booting a 64-bit - x86 based system, with some options specific to IVI systems. -build-depends: -- morph: strata/bsp-x86_both-tools.morph -chunks: -- name: linux-x86-64-ivi - morph: ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph - repo: upstream:linux - ref: 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c - unpetrify-ref: v4.12 diff --git a/ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph b/ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph deleted file mode 100644 index 21d82571..00000000 --- a/ivi/strata/bsp-x86_64-ivi/linux-x86-64-ivi.morph +++ /dev/null @@ -1,84 +0,0 @@ -name: linux-x86-64-ivi -kind: chunk -products: -- artifact: linux-x86-64-ivi-devel - include: - - (usr/)?src/linux/.* -- artifact: linux-x86-64-ivi-bins - include: - - boot/.* -- artifact: linux-x86-64-ivi-libs - include: - - lib/.* -configure-commands: -- make defconfig -- scripts/config -e ATA -- scripts/config -e ATA_PIIX -- scripts/config -e AUTOFS4_FS -- scripts/config -e BLK_DEV_BSG -- scripts/config -e BLK_DEV_SD -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e CFS_BANDWIDTH -- scripts/config -e CGROUPS -- scripts/config -e CGROUP_SCHED -- scripts/config -e CHECKPOINT_RESTORE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e DEVTMPFS -- scripts/config -e DMIID -- scripts/config -e EFIVAR_FS -- scripts/config -e EFI_PARTITION -- scripts/config -e EPOLL -- scripts/config -e FAIR_GROUP_SCHED -- scripts/config -e FHANDLE -- scripts/config -d FW_LOADER_USER_HELPER -- scripts/config -e INOTIFY_USER -- scripts/config -e IPV6 -- scripts/config -e NET -- scripts/config -e NET_NS -- scripts/config -e PROC_FS -- scripts/config -e SATA_AHCI -- scripts/config -e SCSI -- scripts/config -e SCSI_MOD -- scripts/config -e SECCOMP -- scripts/config -e SIGNALFD -- scripts/config -e SYSFS -- scripts/config -d SYSFS_DEPRECATED -- scripts/config -e TIMERFD -- scripts/config -e TMPFS_POSIX_ACL -- scripts/config -e TMPFS_XATTR -- scripts/config -e UEVENT_HELPER_PATH="" -- scripts/config -m CONFIG_DRM_CIRRUS_QEMU -- scripts/config -m CONFIG_DRM_BOCHS -- scripts/config -m CONFIG_DRM_VIRTIO_GPU -- scripts/config -m CONFIG_BT_INTEL -- scripts/config -m CONFIG_MOSTCORE -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- make INSTALL_PATH="$DESTDIR"/boot install -- make INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -d "$DESTDIR$PREFIX/src/linux" -- | - ( - printf 'Makefile\0' - printf 'Module.symvers\0' - find arch/x86 -maxdepth 1 -name 'Makefile*' -print0 - find arch/x86 \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0 - find arch/x86 \( -type d -a \( -name include -o -name scripts \) \) -o \ - \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0 - find include -name 'asm*' -prune -o -print0 - find include/asm-generic -print0 - find include/uapi -print0 - find scripts -print0 - ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux" -system-integration: - linux-x86-64-ivi-misc: - # This is required for any modules to work correctly. However, it depends - # `depmod` from the 'kmod' chunk in the 'foundation' stratum, so it runs - # conditionally on `depmod` existing to avoid breaking in - # minimal-system-x86_64. - 00-depmod: - - if which depmod; then (cd /usr/lib/modules && for version in *; do depmod -a "$version"; done) fi diff --git a/ivi/strata/qt5-ivi.morph b/ivi/strata/qt5-ivi.morph deleted file mode 100644 index 7032c290..00000000 --- a/ivi/strata/qt5-ivi.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: qt5-ivi -kind: stratum -description: Qt5 IVI stratum -build-depends: -- morph: strata/ruby.morph -- morph: strata/qt5-tools.morph -- morph: strata/qt5-tools-qtmultimedia.morph -chunks: -- name: qtapplicationmanager - morph: ivi/strata/qt5-ivi/qtapplicationmanager.morph - repo: upstream:qt5/qtapplicationmanager - ref: 3334cc42fcbc15dc75a0e247578e714399cd939f - unpetrify-ref: "5.9" -- name: qtivi - repo: upstream:qt5/qtivi - ref: 107832b9e27319e9104e3b68d76a4d0f326567f6 - unpetrify-ref: dev - build-system: qmake - submodules: - src/3rdparty/qface: - url: upstream:qt5/qtivi-qface diff --git a/ivi/strata/qt5-ivi/qtapplicationmanager.morph b/ivi/strata/qt5-ivi/qtapplicationmanager.morph deleted file mode 100644 index 45f2c07a..00000000 --- a/ivi/strata/qt5-ivi/qtapplicationmanager.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: qtapplicationmanager -kind: chunk -build-system: qmake -configure-commands: -- qmake -config install-prefix=$PREFIX -post-install-commands: -- mkdir -p $DESTDIR/opt/am -- cp -r template-opt/am/* $DESTDIR/opt/am/ diff --git a/ivi/strata/rvi.morph b/ivi/strata/rvi.morph deleted file mode 100644 index 8fd11874..00000000 --- a/ivi/strata/rvi.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: rvi -kind: stratum -build-depends: -- morph: strata/bluetooth.morph -- morph: strata/erlang.morph -chunks: -- name: rvi_core - morph: ivi/strata/rvi/rvi_core.morph - repo: upstream:rvi/rvi_core - ref: 9a3db2baecdddbfba8e8bfeb71038e4de6a44225 - unpetrify-ref: v0.5.0 diff --git a/ivi/strata/rvi/rvi_core.morph b/ivi/strata/rvi/rvi_core.morph deleted file mode 100644 index c34f8a97..00000000 --- a/ivi/strata/rvi/rvi_core.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: rvi_core -kind: chunk -build-system: manual -build-commands: -- | - make deps - make compile - make escript -install-commands: -- | - make DESTDIR="$DESTDIR" install - install -d "$DESTDIR"/usr/lib/systemd/system - install -m 0644 yocto_template/rvi.service "$DESTDIR"/usr/lib/systemd/system -post-install-commands: -- echo "genivi.org/node/$(cat /proc/sys/kernel/random/uuid)" > "$DESTDIR"/etc/opt/rvi/device_id -- install -m 0644 priv/config/rvi_common.config "$DESTDIR"/etc/opt/rvi/rvi.config diff --git a/ivi/systems/ivi-system-armv7lhf-jetson.morph b/ivi/systems/ivi-system-armv7lhf-jetson.morph deleted file mode 100644 index 552e31ac..00000000 --- a/ivi/systems/ivi-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,94 +0,0 @@ -name: ivi-system-armv7lhf-jetson -kind: system -description: A generic IVI system with components from GENIVI and AGL -arch: armv7lhf -strata: -- name: bluetooth - morph: strata/bluetooth.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: data-indexing-management - morph: strata/data-indexing-management.morph -- name: device-management - morph: strata/device-management.morph -- name: dlna-services - morph: strata/dlna-services.morph -- name: foundation - morph: strata/foundation.morph -- name: geolocation - morph: strata/geolocation.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: icu-common - morph: strata/icu-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: multimedia-gstreamer-openmax-generic - morph: strata/multimedia-gstreamer-openmax-generic.morph -- name: navigation - morph: strata/navigation.morph -- name: network-security - morph: strata/network-security.morph -- name: NetworkManager-common - morph: strata/NetworkManager-common.morph -- name: privileges-management - morph: strata/privileges-management.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-gobject - morph: strata/python3-gobject.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebengine - morph: strata/qt5-tools-qtwebengine.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: ruby - morph: strata/ruby.morph -- name: samba - morph: strata/samba.morph -- name: secret-service - morph: strata/secret-service.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: spell-checking - morph: strata/spell-checking.morph -- name: storage-management - morph: strata/storage-management.morph -- name: vala-common - morph: strata/vala-common.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/install-essential-files diff --git a/ivi/systems/ivi-system-x86_32.morph b/ivi/systems/ivi-system-x86_32.morph deleted file mode 100644 index 12f5efc3..00000000 --- a/ivi/systems/ivi-system-x86_32.morph +++ /dev/null @@ -1,104 +0,0 @@ -name: ivi-system-x86_32 -kind: system -description: A generic IVI system with components from GENIVI and AGL -arch: x86_32 -strata: -- name: bluetooth - morph: strata/bluetooth.morph -- name: bsp-x86_both-tools - morph: strata/bsp-x86_both-tools.morph -- name: bsp-x86_32-ivi - morph: ivi/strata/bsp-x86_32-ivi.morph -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: data-indexing-management - morph: strata/data-indexing-management.morph -- name: device-management - morph: strata/device-management.morph -- name: dlna-services - morph: strata/dlna-services.morph -- name: erlang - morph: strata/erlang.morph -- name: foundation - morph: strata/foundation.morph -- name: geolocation - morph: strata/geolocation.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: icu-common - morph: strata/icu-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-hardware-codecs-x86 - morph: strata/multimedia-hardware-codecs-x86.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: multimedia-gstreamer-openmax-generic - morph: strata/multimedia-gstreamer-openmax-generic.morph -- name: navigation - morph: strata/navigation.morph -- name: network-security - morph: strata/network-security.morph -- name: NetworkManager-common - morph: strata/NetworkManager-common.morph -- name: privileges-management - morph: strata/privileges-management.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-gobject - morph: strata/python3-gobject.morph -- name: qt5-ivi - morph: ivi/strata/qt5-ivi.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebengine - morph: strata/qt5-tools-qtwebengine.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: ruby - morph: strata/ruby.morph -- name: samba - morph: strata/samba.morph -- name: secret-service - morph: strata/secret-service.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: spell-checking - morph: strata/spell-checking.morph -- name: storage-management - morph: strata/storage-management.morph -- name: vala-common - morph: strata/vala-common.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: rvi - morph: ivi/strata/rvi.morph -configuration-extensions: -- extensions/set-hostname -- extensions/install-essential-files diff --git a/ivi/systems/ivi-system-x86_64.morph b/ivi/systems/ivi-system-x86_64.morph deleted file mode 100644 index 2a42f003..00000000 --- a/ivi/systems/ivi-system-x86_64.morph +++ /dev/null @@ -1,104 +0,0 @@ -name: ivi-system-x86_64 -kind: system -description: A generic IVI system with components from GENIVI and AGL -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: bsp-x86_both-tools - morph: strata/bsp-x86_both-tools.morph -- name: bsp-x86_64-ivi - morph: ivi/strata/bsp-x86_64-ivi.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: data-indexing-management - morph: strata/data-indexing-management.morph -- name: device-management - morph: strata/device-management.morph -- name: dlna-services - morph: strata/dlna-services.morph -- name: erlang - morph: strata/erlang.morph -- name: foundation - morph: strata/foundation.morph -- name: geolocation - morph: strata/geolocation.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: icu-common - morph: strata/icu-common.morph -- name: input-common - morph: strata/input-common.morph -- name: ivi-common - morph: strata/ivi-common.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-hardware-codecs-x86 - morph: strata/multimedia-hardware-codecs-x86.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: multimedia-gstreamer-openmax-generic - morph: strata/multimedia-gstreamer-openmax-generic.morph -- name: navigation - morph: strata/navigation.morph -- name: network-security - morph: strata/network-security.morph -- name: NetworkManager-common - morph: strata/NetworkManager-common.morph -- name: privileges-management - morph: strata/privileges-management.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-gobject - morph: strata/python3-gobject.morph -- name: qt5-ivi - morph: ivi/strata/qt5-ivi.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebengine - morph: strata/qt5-tools-qtwebengine.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: ruby - morph: strata/ruby.morph -- name: samba - morph: strata/samba.morph -- name: secret-service - morph: strata/secret-service.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: spell-checking - morph: strata/spell-checking.morph -- name: storage-management - morph: strata/storage-management.morph -- name: vala-common - morph: strata/vala-common.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: rvi - morph: ivi/strata/rvi.morph -configuration-extensions: -- extensions/set-hostname -- extensions/install-essential-files diff --git a/migrations b/migrations deleted file mode 100644 index 2b0104d2..00000000 --- a/migrations +++ /dev/null @@ -1,3 +0,0 @@ -The content of the definitions/migrations directory is now at - -http://git.baserock.org/cgit/baserock/baserock/spec.git/tree/migrations diff --git a/partitioning/default b/partitioning/default deleted file mode 100644 index 5e34afbf..00000000 --- a/partitioning/default +++ /dev/null @@ -1,9 +0,0 @@ -start_offset: 2048 -partition_table_format: mbr -partitions: -- description: rootfs - size: fill - fdisk_type: 0x83 - filesystem: btrfs - mountpoint: / - boot: yes diff --git a/partitioning/socfpga-devkit b/partitioning/socfpga-devkit deleted file mode 100644 index 4a982427..00000000 --- a/partitioning/socfpga-devkit +++ /dev/null @@ -1,26 +0,0 @@ -start_offset: 2048 -partition_table_format: mbr -partitions: -- description: pre-loader - filesystem: none - fdisk_type: 0xa2 - number: 3 - size: 1M - raw_files: - - file: boot/socfpga-preloader.img - - file: boot/u-boot.img -- description: boot - filesystem: vfat - mountpoint: /boot - fdisk_type: 0x0b - number: 1 - size: 100M -- description: root - filesystem: btrfs - mountpoint: / - fdisk_type: 0x83 - number: 2 - size: fill -raw_files: -- file: boot/socfpga-devkit-env.img - offset_bytes: 512 diff --git a/scripts/baserock-release-metadata b/scripts/baserock-release-metadata deleted file mode 100755 index 1b429671..00000000 --- a/scripts/baserock-release-metadata +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/env python3 -# Copyright (C) 2017 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., - - -'''baserock-release-metadata - -Generates a YAML document with some simple metadata that should be included -in release binaries - -This expects to be run inside the definitions repo so that it can figure -out the Git commit being built. - -''' - -import collections -import subprocess - - -def git_show_commit(): - return subprocess.check_output( - ['git', 'rev-parse', 'HEAD']).decode('unicode-escape').strip() - - -def buildstream_version(): - return subprocess.check_output( - ['bst', '--version']).decode('unicode-escape').strip() - - -def main(): - repo = "https://www.gitlab.com/baserock/definitions" - commit = git_show_commit() - build_tool = "Buildstream" - # This marks the version of BuildStream that checked out the sysroot - # artifact; the artifact may have pulled it from a cache though so - # we don't know what version of BuildStream actually built anything. - build_tool_version = buildstream_version() - - # Here we produce a YAML document with specific ordering and formatting - # to ensure readability. - print("description: |\n" - " This sysroot was produced by the Baserock project.\n" - " See for more information.\n") - print("project-repo: %s" % repo) - print("project-commit: %s" % commit) - print() - print("build-tool: %s" % build_tool) - print("build-tool-version: %s" % build_tool_version) - - -try: - main() -except RuntimeError as e: - sys.stderr.write("%s\n" % e) - sys.exit(1) diff --git a/scripts/check-unpetrify-refs.py b/scripts/check-unpetrify-refs.py deleted file mode 100755 index c70b680d..00000000 --- a/scripts/check-unpetrify-refs.py +++ /dev/null @@ -1,76 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2016 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. - -import os -import glob -import argparse -import subprocess - -import scriptslib - - -''' -Script for checking unpetrify-refs in strata. - -Without args this script will check everything in strata/, or each stratum -given on the command-line and will print on stdout whether a chunk has -a missing or non-existent unpetrify-ref and if it fails to check the remote -(missing repo). -''' - -strata_dir = "strata" - -def ref_exists(remote, ref): - output = subprocess.check_output( - ["git", "ls-remote", remote, str(ref)], - stderr=subprocess.STDOUT).strip() - return True if output else False - -def main(): - parser = argparse.ArgumentParser( - description="Sanity checks unpetrify-refs in Baserock strata") - parser.add_argument("--trove-host", default="git.baserock.org", - help="Trove host to map repo aliases to") - parser.add_argument("strata", nargs="*", metavar="STRATA", - help="The strata to check (checks all by default)") - args = parser.parse_args() - - if args.strata: - strata = args.strata - else: - strata_path = os.path.join(scriptslib.definitions_root(), strata_dir) - strata = glob.glob("%s/*.morph" % strata_path) - - for stratum in strata: - path = os.path.relpath(stratum) - morphology = scriptslib.load_yaml_file(stratum) - for chunk in morphology['chunks']: - unpetrify_ref = chunk.get("unpetrify-ref") - if not unpetrify_ref: - print ("%s: '%s' has no unpetrify-ref!" % - (path, chunk['name'])) - continue - remote = scriptslib.parse_repo_alias(chunk['repo'], args.trove_host) - try: - if not ref_exists(remote, unpetrify_ref): - print ("%s: unpetrify-ref for '%s' is not present on the " - "remote (%s)!" % (path, chunk['name'], remote)) - except subprocess.CalledProcessError as e: - print ("%s: failed to ls-remote (%s) for chunk '%s':\n%s" % - (path, remote, chunk['name'], e.output.strip())) - -if __name__ == "__main__": - main() diff --git a/scripts/cycle.sh b/scripts/cycle.sh deleted file mode 100755 index c0e2aa67..00000000 --- a/scripts/cycle.sh +++ /dev/null @@ -1,61 +0,0 @@ -#!/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. - -usage() { - echo "Usage: cycle.sh some-system some-cluster [newversion]" - echo - echo "This builds and deploys the current checked out version of" - echo "some-system, applying it as a self-upgrade to the system you" - echo "are working in, using configuration from some-cluster." - echo "The upgrade is labelled TEST by default, or [newversion] if" - echo "specified, and is set to be the default for next boot." -} - -if [ -z "$1" ] || [ -z "$2" ] || [ ! -z "$4" ] ; then - usage - exit 1 -fi - -newversion=TEST -if [ ! -z "$3" ] ; then - newversion=$3 - if (echo "$newversion" | grep ' ' > /dev/null 2>&1) ; then - echo 'Version label must not contain spaces.' - exit 1 - fi -fi - -if system-version-manager get-running | grep -q "^$newversion$"; then - echo "You are currently running the $newversion system." - echo "Maybe you want to boot into a different system version?" - exit 1 -fi - -set -e -set -v - -runningversion=`system-version-manager get-running` -system-version-manager set-default $runningversion -if system-version-manager list | grep -q "^$newversion$"; then - system-version-manager remove $newversion -fi - -morph gc -morph build "$1" - -sed -i "s|^- morph: .*$|- morph: $1|" "$2" -morph deploy --upgrade "$2" self.HOSTNAME=$(hostname) self.VERSION_LABEL=$newversion -system-version-manager list diff --git a/scripts/licensecheck.pl b/scripts/licensecheck.pl deleted file mode 100644 index 5b6d0d33..00000000 --- a/scripts/licensecheck.pl +++ /dev/null @@ -1,604 +0,0 @@ -#!/usr/bin/perl -# This script was originally based on the script of the same name from -# the KDE SDK (by dfaure@kde.org) -# -# This version is -# Copyright (C) 2007, 2008 Adam D. Barratt -# Copyright (C) 2012 Francesco Poli -# -# 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; either version 2 of the License, or -# (at your option) any later version. -# -# 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, see . - -=head1 NAME - -licensecheck - simple license checker for source files - -=head1 SYNOPSIS - -B B<--help>|B<--version> - -B [B<--no-conf>] [B<--verbose>] [B<--copyright>] -[B<-l>|B<--lines=>I] [B<-i>|B<--ignore=>I] [B<-c>|B<--check=>I] -[B<-m>|B<--machine>] [B<-r>|B<--recursive>] -I - -=head1 DESCRIPTION - -B attempts to determine the license that applies to each file -passed to it, by searching the start of the file for text belonging to -various licenses. - -If any of the arguments passed are directories, B will add -the files contained within to the list of files to process. - -=head1 OPTIONS - -=over 4 - -=item B<--verbose>, B<--no-verbose> - -Specify whether to output the text being processed from each file before -the corresponding license information. - -Default is to be quiet. - -=item B<-l=>I, B<--lines=>I - -Specify the number of lines of each file's header which should be parsed -for license information. (Default is 60). - -=item B<-i=>I, B<--ignore=>I - -When processing the list of files and directories, the regular -expression specified by this option will be used to indicate those which -should not be considered (e.g. backup files, VCS metadata). - -=item B<-r>, B<--recursive> - -Specify that the contents of directories should be added -recursively. - -=item B<-c=>I, B<--check=>I - -Specify a pattern against which filenames will be matched in order to -decide which files to check the license of. - -The default includes common source files. - -=item B<--copyright> - -Also display copyright text found within the file - -=item B<-m>, B<--machine> - -Display the information in a machine readable way, i.e. in the form -[] so that it can be easily sorted -and/or filtered, e.g. with the B and B commands. -Note that using the B<--verbose> option will kill the readability. - -=item B<--no-conf>, B<--noconf> - -Do not read any configuration files. This can only be used as the first -option given on the command line. - -=back - -=head1 CONFIGURATION VARIABLES - -The two configuration files F and -F<~/.devscripts> are sourced by a shell in that order to set -configuration variables. Command line options can be used to override -configuration file settings. Environment variable settings are -ignored for this purpose. The currently recognised variables are: - -=over 4 - -=item B - -If this is set to I, then it is the same as the B<--verbose> command -line parameter being used. The default is I. - -=item B - -If this is set to a positive number then the specified number of lines -at the start of each file will be read whilst attempting to determine -the license(s) in use. This is equivalent to the B<--lines> command line -option. - -=back - -=head1 LICENSE - -This code is copyright by Adam D. Barratt >, -all rights reserved; based on a script of the same name from the KDE -SDK, which is copyright by >. -This program comes with ABSOLUTELY NO WARRANTY. -You are free to redistribute this code under the terms of the GNU -General Public License, version 2 or later. - -=head1 AUTHOR - -Adam D. Barratt - -=cut - -use strict; -use warnings; -use Getopt::Long qw(:config gnu_getopt); -use File::Basename; - -my $progname = basename($0); - -# From dpkg-source -my $default_ignore_regex = ' -# Ignore general backup files -(?:^|/).*~$| -# Ignore emacs recovery files -(?:^|/)\.#.*$| -# Ignore vi swap files -(?:^|/)\..*\.swp$| -# Ignore baz-style junk files or directories -(?:^|/),,.*(?:$|/.*$)| -# File-names that should be ignored (never directories) -(?:^|/)(?:DEADJOE|\.cvsignore|\.arch-inventory|\.bzrignore|\.gitignore)$| -# File or directory names that should be ignored -(?:^|/)(?:CVS|RCS|\.pc|\.deps|\{arch\}|\.arch-ids|\.svn|\.hg|_darcs|\.git| -\.shelf|_MTN|\.bzr(?:\.backup|tags)?)(?:$|/.*$) -'; - -# Take out comments and newlines -$default_ignore_regex =~ s/^#.*$//mg; -$default_ignore_regex =~ s/\n//sg; - -my $default_check_regex = '\.(c(c|pp|xx)?|h(h|pp|xx)?|f(77|90)?|go|p(l|m)|xs|sh|php|py(|x)|rb|java|js|vala|el|sc(i|e)|cs|pas|inc|dtd|xsl|mod|m|tex|mli?|(c|l)?hs)$'; - -my $modified_conf_msg; - -my %OPT=( - verbose => '', - lines => '', - noconf => '', - ignore => '', - check => '', - recursive => 0, - copyright => 0, - machine => 0, -); - -my $def_lines = 60; - -# Read configuration files and then command line -# This is boilerplate - -if (@ARGV and $ARGV[0] =~ /^--no-?conf$/) { - $modified_conf_msg = " (no configuration files read)"; - shift; -} else { - my @config_files = ('/etc/devscripts.conf', '~/.devscripts'); - my %config_vars = ( - 'LICENSECHECK_VERBOSE' => 'no', - 'LICENSECHECK_PARSELINES' => $def_lines, - ); - my %config_default = %config_vars; - - my $shell_cmd; - # Set defaults - foreach my $var (keys %config_vars) { - $shell_cmd .= qq[$var="$config_vars{$var}";\n]; - } - $shell_cmd .= 'for file in ' . join(" ", @config_files) . "; do\n"; - $shell_cmd .= '[ -f $file ] && . $file; done;' . "\n"; - # Read back values - foreach my $var (keys %config_vars) { $shell_cmd .= "echo \$$var;\n" } - my $shell_out = `/bin/bash -c '$shell_cmd'`; - @config_vars{keys %config_vars} = split /\n/, $shell_out, -1; - - # Check validity - $config_vars{'LICENSECHECK_VERBOSE'} =~ /^(yes|no)$/ - or $config_vars{'LICENSECHECK_VERBOSE'} = 'no'; - $config_vars{'LICENSECHECK_PARSELINES'} =~ /^[1-9][0-9]*$/ - or $config_vars{'LICENSECHECK_PARSELINES'} = $def_lines; - - foreach my $var (sort keys %config_vars) { - if ($config_vars{$var} ne $config_default{$var}) { - $modified_conf_msg .= " $var=$config_vars{$var}\n"; - } - } - $modified_conf_msg ||= " (none)\n"; - chomp $modified_conf_msg; - - $OPT{'verbose'} = $config_vars{'LICENSECHECK_VERBOSE'} eq 'yes' ? 1 : 0; - $OPT{'lines'} = $config_vars{'LICENSECHECK_PARSELINES'}; -} - -GetOptions(\%OPT, - "help|h", - "check|c=s", - "copyright", - "ignore|i=s", - "lines|l=i", - "machine|m", - "noconf|no-conf", - "recursive|r", - "verbose!", - "version|v", -) or die "Usage: $progname [options] filelist\nRun $progname --help for more details\n"; - -$OPT{'lines'} = $def_lines if $OPT{'lines'} !~ /^[1-9][0-9]*$/; -$OPT{'ignore'} = $default_ignore_regex if ! length $OPT{'ignore'}; -$OPT{'check'} = $default_check_regex if ! length $OPT{'check'}; - -if ($OPT{'noconf'}) { - fatal("--no-conf is only acceptable as the first command-line option!"); -} -if ($OPT{'help'}) { help(); exit 0; } -if ($OPT{'version'}) { version(); exit 0; } - -die "Usage: $progname [options] filelist\nRun $progname --help for more details\n" unless @ARGV; - -$OPT{'lines'} = $def_lines if not defined $OPT{'lines'}; - -my @files = (); -my @find_args = (); -my $files_count = @ARGV; - -push @find_args, qw(-maxdepth 1) unless $OPT{'recursive'}; -push @find_args, qw(-follow -type f -print); - -while (@ARGV) { - my $file = shift @ARGV; - - if (-d $file) { - open my $FIND, '-|', 'find', $file, @find_args - or die "$progname: couldn't exec find: $!\n"; - - while (<$FIND>) { - chomp; - next unless m%$OPT{'check'}%; - # Skip empty files - next if (-z $_); - push @files, $_ unless m%$OPT{'ignore'}%; - } - close $FIND; - } else { - next unless ($files_count == 1) or $file =~ m%$OPT{'check'}%; - push @files, $file unless $file =~ m%$OPT{'ignore'}%; - } -} - -while (@files) { - my $file = shift @files; - my $content = ''; - my $copyright_match; - my $copyright = ''; - my $license = ''; - my %copyrights; - - open (my $F, '<' ,$file) or die "Unable to access $file\n"; - while (<$F>) { - last if ($. > $OPT{'lines'}); - $content .= $_; - $copyright_match = parse_copyright($_); - if ($copyright_match) { - $copyrights{lc("$copyright_match")} = "$copyright_match"; - } - } - close($F); - - $copyright = join(" / ", reverse sort values %copyrights); - - print qq(----- $file header -----\n$content----- end header -----\n\n) - if $OPT{'verbose'}; - - $license = parselicense(clean_comments($content)); - - if ($OPT{'machine'}) { - print "$file\t$license"; - print "\t" . ($copyright or "*No copyright*") if $OPT{'copyright'}; - print "\n"; - } else { - print "$file: "; - print "*No copyright* " unless $copyright; - print $license . "\n"; - print " [Copyright: " . $copyright . "]\n" - if $copyright and $OPT{'copyright'}; - print "\n" if $OPT{'copyright'}; - } -} - -sub parse_copyright { - my $copyright = ''; - my $match; - - my $copyright_indicator_regex = ' - (?:copyright # The full word - |copr\. # Legally-valid abbreviation - |\x{00a9} # Unicode character COPYRIGHT SIGN - |\xc2\xa9 # Unicode copyright sign encoded in iso8859 - |\(c\) # Legally-null representation of sign - )'; - my $copyright_disindicator_regex = ' - \b(?:info(?:rmation)? # Discussing copyright information - |(notice|statement|claim|string)s? # Discussing the notice - |and|or|is|in|to # Part of a sentence - |(holder|owner)s? # Part of a sentence - |ownership # Part of a sentence - )\b'; - my $copyright_predisindicator_regex = '( - ^[#]define\s+.*\(c\) # #define foo(c) -- not copyright - )'; - - if ( ! m%$copyright_predisindicator_regex%ix) { - - if (m%$copyright_indicator_regex(?::\s*|\s+)(\S.*)$%ix) { - $match = $1; - - # Ignore lines matching "see foo for copyright information" etc. - if ($match !~ m%^\s*$copyright_disindicator_regex%ix) { - # De-cruft - $match =~ s/([,.])?\s*$//; - $match =~ s/$copyright_indicator_regex//igx; - $match =~ s/^\s+//; - $match =~ s/\s{2,}/ /g; - $match =~ s/\\@/@/g; - $copyright = $match; - } - } - } - - return $copyright; -} - -sub clean_comments { - local $_ = shift or return q{}; - - # Remove generic comments: look for 4 or more lines beginning with - # regular comment pattern and trim it. Fall back to old algorithm - # if no such pattern found. - my @matches = m/^\s*([^a-zA-Z0-9\s]{1,3})\s\w/mg; - if (@matches >= 4) { - my $comment_re = qr/\s*[\Q$matches[0]\E]{1,3}\s*/; - s/^$comment_re//mg; - } - - # Remove Fortran comments - s/^[cC] //gm; - tr/\t\r\n/ /; - - # Remove C / C++ comments - s#(\*/|/[/*])##g; - tr% A-Za-z.,@;0-9\(\)/-%%cd; - tr/ //s; - - return $_; -} - -sub help { - print <<"EOF"; -Usage: $progname [options] filename [filename ...] -Valid options are: - --help, -h Display this message - --version, -v Display version and copyright info - --no-conf, --noconf Don't read devscripts config files; must be - the first option given - --verbose Display the header of each file before its - license information - --lines, -l Specify how many lines of the file header - should be parsed for license information - (Default: $def_lines) - --check, -c Specify a pattern indicating which files should - be checked - (Default: '$default_check_regex') - --machine, -m Display in a machine readable way (good for awk) - --recursive, -r Add the contents of directories recursively - --copyright Also display the file's copyright - --ignore, -i Specify that files / directories matching the - regular expression should be ignored when - checking files - (Default: '$default_ignore_regex') - -Default settings modified by devscripts configuration files: -$modified_conf_msg -EOF -} - -sub version { - print <<"EOF"; -This is $progname, from the Debian devscripts package, version ###VERSION### -Copyright (C) 2007, 2008 by Adam D. Barratt ; based -on a script of the same name from the KDE SDK by . - -This program comes with ABSOLUTELY NO WARRANTY. -You are free to redistribute this code under the terms of the -GNU General Public License, version 2, or (at your option) any -later version. -EOF -} - -sub parselicense { - my ($licensetext) = @_; - - my $gplver = ""; - my $extrainfo = ""; - my $license = ""; - - if ($licensetext =~ /version ([^, ]+?)[.,]? (?:\(?only\)?.? )?(?:of the GNU (Affero )?(Lesser |Library )?General Public License )?(as )?published by the Free Software Foundation/i or - $licensetext =~ /GNU (?:Affero )?(?:Lesser |Library )?General Public License (?:as )?published by the Free Software Foundation[;,] version ([^, ]+?)[.,]? /i) { - - $gplver = " (v$1)"; - } elsif ($licensetext =~ /GNU (?:Affero )?(?:Lesser |Library )?General Public License, version (\d+(?:\.\d+)?)[ \.]/) { - $gplver = " (v$1)"; - } elsif ($licensetext =~ /either version ([^ ]+)(?: of the License)?, or \(at your option\) any later version/) { - $gplver = " (v$1 or later)"; - } elsif ($licensetext =~ /either version ([^ ]+)(?: of the License)?, or \(at your option\) version (\d(?:[\.-]\d+)*)/) { - $gplver = " (v$1 or v$2)"; - } - - if ($licensetext =~ /(?:675 Mass Ave|59 Temple Place|51 Franklin Steet|02139|02111-1307)/i) { - $extrainfo = " (with incorrect FSF address)$extrainfo"; - } - - if ($licensetext =~ /permission (?:is (also granted|given))? to link (the code of )?this program with (any edition of )?(Qt|the Qt library)/i) { - $extrainfo = " (with Qt exception)$extrainfo" - } - - if ($licensetext =~ /(All changes made in this file will be lost|DO NOT (EDIT|delete this file)|Generated (automatically|by|from)|generated.*file)/i) { - $license = "GENERATED FILE"; - } - - if ($licensetext =~ /((is free software.? )?you can redistribute (it|them) and\/or modify (it|them)|is licensed) under the terms of (version [^ ]+ of )?the (GNU (Library |Lesser )General Public License|LGPL)/i) { - $license = "LGPL$gplver$extrainfo $license"; - } - - if ($licensetext =~ /is free software.? you can redistribute (it|them) and\/or modify (it|them) under the terms of the (GNU Affero General Public License|AGPL)/i) { - $license = "AGPL$gplver$extrainfo $license"; - } - - if ($licensetext =~ /(is free software.? )?you (can|may) redistribute (it|them) and\/or modify (it|them) under the terms of (?:version [^ ]+ (?:\(?only\)? )?of )?the GNU General Public License/i) { - $license = "GPL$gplver$extrainfo $license"; - } - - if ($licensetext =~ /is distributed under the terms of the GNU General Public License,/ - and length $gplver) { - $license = "GPL$gplver$extrainfo $license"; - } - - if ($licensetext =~ /is distributed.*terms.*GPL/) { - $license = "GPL (unversioned/unknown version) $license"; - } - - if ($licensetext =~ /This file is part of the .*Qt GUI Toolkit. This file may be distributed under the terms of the Q Public License as defined/) { - $license = "QPL (part of Qt) $license"; - } elsif ($licensetext =~ /may (be distributed|redistribute it) under the terms of the Q Public License/) { - $license = "QPL $license"; - } - - if ($licensetext =~ /opensource\.org\/licenses\/mit-license\.php/) { - $license = "MIT/X11 (BSD like) $license"; - } elsif ($licensetext =~ /Permission is hereby granted, free of charge, to any person obtaining a copy of this software and(\/or)? associated documentation files \(the (Software|Materials)\), to deal in the (Software|Materials)/) { - $license = "MIT/X11 (BSD like) $license"; - } elsif ($licensetext =~ /Permission is hereby granted, without written agreement and without license or royalty fees, to use, copy, modify, and distribute this software and its documentation for any purpose/) { - $license = "MIT/X11 (BSD like) $license"; - } - - if ($licensetext =~ /Permission to use, copy, modify, and(\/or)? distribute this software for any purpose with or without fee is hereby granted, provided.*copyright notice.*permission notice.*all copies/) { - $license = "ISC $license"; - } - - if ($licensetext =~ /THIS SOFTWARE IS PROVIDED .*AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY/) { - if ($licensetext =~ /All advertising materials mentioning features or use of this software must display the following acknowledge?ment.*This product includes software developed by/i) { - $license = "BSD (4 clause) $license"; - } elsif ($licensetext =~ /(The name(?:\(s\))? .*? may not|Neither the (names? .*?|authors?) nor the names of( (its|their|other|any))? contributors may) be used to endorse or promote products derived from this software/i) { - $license = "BSD (3 clause) $license"; - } elsif ($licensetext =~ /Redistributions of source code must retain the above copyright notice/i) { - $license = "BSD (2 clause) $license"; - } else { - $license = "BSD $license"; - } - } - - if ($licensetext =~ /Mozilla Public License,? (Version|v\.) (\d+(?:\.\d+)?)/) { - $license = "MPL (v$2) $license"; - } - - if ($licensetext =~ /Released under the terms of the Artistic License ([^ ]+)/) { - $license = "Artistic (v$1) $license"; - } - - if ($licensetext =~ /is free software under the Artistic [Ll]icense/) { - $license = "Artistic $license"; - } - - if ($licensetext =~ /This program is free software; you can redistribute it and\/or modify it under the same terms as Perl itself/) { - $license = "Perl $license"; - } - - if ($licensetext =~ /under the Apache License, Version ([^ ]+)/) { - $license = "Apache (v$1) $license"; - } - - if ($licensetext =~ /(THE BEER-WARE LICENSE)/i) { - $license = "Beerware $license"; - } - - if ($licensetext =~ /This source file is subject to version ([^ ]+) of the PHP license/) { - $license = "PHP (v$1) $license"; - } - - if ($licensetext =~ /under the terms of the CeCILL /) { - $license = "CeCILL $license"; - } - - if ($licensetext =~ /under the terms of the CeCILL-([^ ]+) /) { - $license = "CeCILL-$1 $license"; - } - - if ($licensetext =~ /under the SGI Free Software License B/) { - $license = "SGI Free Software License B $license"; - } - - if ($licensetext =~ /is in the public domain/i) { - $license = "Public domain $license"; - } - - if ($licensetext =~ /terms of the Common Development and Distribution License(, Version ([^(]+))? \(the License\)/) { - $license = "CDDL " . ($1 ? "(v$2) " : '') . $license; - } - - if ($licensetext =~ /Microsoft Permissive License \(Ms-PL\)/) { - $license = "Ms-PL $license"; - } - - if ($licensetext =~ /Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license \(the \"Software\"\)/ or - $licensetext =~ /Boost Software License([ ,-]+Version ([^ ]+)?(\.))/i) { - $license = "BSL " . ($1 ? "(v$2) " : '') . $license; - } - - if ($licensetext =~ /PYTHON SOFTWARE FOUNDATION LICENSE (VERSION ([^ ]+))/i) { - $license = "PSF " . ($1 ? "(v$2) " : '') . $license; - } - - if ($licensetext =~ /The origin of this software must not be misrepresented.*Altered source versions must be plainly marked as such.*This notice may not be removed or altered from any source distribution/ or - $licensetext =~ /see copyright notice in zlib\.h/) { - $license = "zlib/libpng $license"; - } elsif ($licensetext =~ /This code is released under the libpng license/) { - $license = "libpng $license"; - } - - if ($licensetext =~ /Do What The Fuck You Want To Public License, Version ([^, ]+)/i) { - $license = "WTFPL (v$1) $license"; - } - - if ($licensetext =~ /Do what The Fuck You Want To Public License/i) { - $license = "WTFPL $license"; - } - - if ($licensetext =~ /(License WTFPL|Under (the|a) WTFPL)/i) { - $license = "WTFPL $license"; - } - - $license = "UNKNOWN" if (!length($license)); - - # Remove trailing spaces. - $license =~ s/\s+$//; - - return $license; -} - -sub fatal { - my ($pack,$file,$line); - ($pack,$file,$line) = caller(); - (my $msg = "$progname: fatal error at line $line:\n@_\n") =~ tr/\0//d; - $msg =~ s/\n\n$/\n/; - die $msg; -} diff --git a/scripts/licensecheck.py b/scripts/licensecheck.py deleted file mode 100755 index 08d0e1b4..00000000 --- a/scripts/licensecheck.py +++ /dev/null @@ -1,201 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2016 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. - -import argparse -import errno -import os -import pipes -import re -import string -import subprocess -import sys -import tempfile - -import scriptslib - - -gpl3_chunks = ("autoconf", - "autoconf-tarball", - "automake", - "bash", - "binutils", - "bison", - "ccache", - "cmake", - "flex", - "gawk", - "gcc", - "gdbm", - "gettext-tarball", - "gperf", - "groff", - "libtool", - "libtool-tarball", - "m4-tarball", - "make", - "nano", - "patch", - "rsync", - "texinfo-tarball") - - -def license_file_name(repo_name, sha, licenses_dir): - license_file = os.path.join(licenses_dir, repo_name + '-' + sha) - return license_file - - -def check_license(repo_name, sha, clone_path, license_file): - - licenses_dir = os.path.dirname(license_file) - - try: - os.makedirs(licenses_dir) - except OSError as e: - if e.errno != errno.EEXIST: - raise - - _, license_file_temp = tempfile.mkstemp(dir=licenses_dir) - with open(license_file_temp,"wb") as out: - sys.stderr.write("Checking license of '%s' ...\n" % repo_name) - with open(os.devnull, 'w') as devnull: - subprocess.check_call("perl scripts/licensecheck.pl -r " - + pipes.quote(clone_path) + "|cut -d: -f2- | sort -u", - stdout=out, stderr=devnull, shell=True) - - os.rename(license_file_temp, license_file) - return license_file - - -def check_repo_if_needed(name, repo, ref, repos_dir, licenses_dir): - repo_name = re.split('/|:',repo)[-1] - if repo_name.endswith(".git"): - repo_name = repo_name[:-4] - - repo_url = scriptslib.parse_repo_alias(repo) - - # Check if ref is sha1 to speedup - if len(ref) == 40 and all(c in string.hexdigits for c in ref): - license_file = license_file_name(repo_name, ref, licenses_dir) - if os.path.isfile(license_file): - return (repo, license_file) - - clone_path = os.path.join(repos_dir, repo_name) - - if os.path.isdir(clone_path): - sys.stderr.write("Updating repo '%s' ...\n" % repo_name) - with open(os.devnull, 'w') as devnull: - subprocess.check_call([ - "git", "remote", "update", "origin", "--prune"], - stderr=devnull, stdout=devnull, cwd=clone_path) - # Update submodules - subprocess.check_call( - ["git", "submodule", "update", "--recursive"], - stderr=devnull, stdout=devnull, cwd=clone_path) - subprocess.check_call(["git", "checkout", ref], stderr=devnull, - stdout=devnull, cwd=clone_path) - else: - sys.stderr.write("Getting repo '%s' ...\n" % repo_name) - with open(os.devnull, 'w') as devnull: - try: - # Attempt to use morph to obtain a repository, from morph's - # existing local git cache if possible - subprocess.check_call( - ["morph", "get-repo", name, clone_path], - stdout=devnull, stderr=devnull) - - except (OSError, subprocess.CalledProcessError): - # Fall back to git clone, when morph hasn't been found on the - # system, or otherwise fails to get a repo. This is required - # where morph isn't available, e.g. when using YBD to build. - # YBD currently doesn't offer a similar 'get-repo' feature. - sys.stderr.write("Falling back to git clone.\n") - subprocess.check_call( - ["git", "clone", "--recursive", repo_url, clone_path], - stdout=devnull, stderr=devnull) # also clone submodules - - sha = subprocess.check_output( - ["git", "rev-parse", "HEAD"], cwd=clone_path).strip() - - license_file = license_file_name(repo_name, sha, licenses_dir) - if os.path.isfile(license_file): - return (repo, license_file) - - return (repo, check_license(repo_name, sha, clone_path, license_file)) - - -def check_stratum(stratum_file, repos_dir, licenses_dir): - stratum = scriptslib.load_yaml_file(stratum_file) - license_files = [] - for chunk in stratum['chunks']: - - name = chunk["name"] - build_mode = chunk.get("build-mode") # Allowed to be None - - # Don't include bootstrap chunks and stripped gplv3 chunks - if name in gpl3_chunks or build_mode == "bootstrap": - continue - repo = chunk["repo"] - ref = chunk["ref"] - yield check_repo_if_needed(name, repo, ref, repos_dir, licenses_dir) - - -def main(): - - parser = argparse.ArgumentParser( - description='Checks licenses of the components of a given System.') - parser.add_argument('system', metavar='SYSTEM', type=str, - help='System to check for licenses') - parser.add_argument('--repos-dir', default="./repos", - help='DIR to clone all the repos (default ./repos)') - parser.add_argument('--licenses-dir', default="./licenses", - help='DIR to store chunk license files (default ./licenses)') - - args = parser.parse_args() - - if not os.path.exists(args.repos_dir): - os.makedirs(args.repos_dir) - - system = scriptslib.load_yaml_file(args.system) - license_files = [] - for stratum in system['strata']: - stratum_file = stratum['morph'] - stratum_path = os.path.join(scriptslib.definitions_root(), stratum_file) - license_files.extend(check_stratum(stratum_path, args.repos_dir, args.licenses_dir)) - - for chunk_repo, chunk_license in license_files: - try: - # Print repo name - sys.stdout.write("%s\n%s\n" % (chunk_repo, '-' * len(chunk_repo))) - - # Print license file of the repo - with open(chunk_license, 'r') as f: - for line in f: - sys.stdout.write(line) - sys.stdout.write("\n") - except IOError: - # stdout is closed, no point in continuing - # Attempt to close them explicitly to prevent cleanup problems: - try: - sys.stdout.flush() - sys.stdout.close() - except IOError: - pass - finally: - exit() - - -if __name__ == "__main__": - main() diff --git a/scripts/organize-morphologies.py b/scripts/organize-morphologies.py deleted file mode 100755 index 3072c8f8..00000000 --- a/scripts/organize-morphologies.py +++ /dev/null @@ -1,255 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2014-2016 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. - -import json -import morphlib -import os -import subprocess -import sys -import urllib -import urllib2 -import urlparse -import yaml -import re -import errno - -''' organize-morphologies.py: -Tool for organizing morphologies in definitions. - -This script will move: - - cluster morphologies into clusters directory - - system morphologies into systems directory - - stratum morphologies into strata directory - -This script will download the chunk morphologies for every stratum -and placed into strata/stratum_which_the_chunk_belongs_to directory. - -It also modifies the morphologies fields which points to some morpholgy -which has been moved. -''' - - -def make_request(path): - server_url = 'http://git.baserock.org:8080/' - url = urlparse.urljoin(server_url, '/1.0/%s' % path) - handle = urllib2.urlopen(url) - return handle.read() - -def quote(*args): - return tuple(urllib.quote(string) for string in args) - -def cat_file(repo, ref, filename): - return make_request('files?repo=%s&ref=%s&filename=%s' % - quote(repo, ref, filename)) - -# NOTE: This function reimplement part of morphlib's loader -def sanitise_morphology_path(morph_field, morph_kind, belongs_to='None'): - '''This function receives the name or the morph field of one morphology - and returns the path of the morphology depending on the name, kind and - if it belongs to other morphologies. - ''' - # Dictionary which match morphology's kind and morphology's - # directory in definitions.git - morph_dir = { 'chunk': 'chunks', 'stratum': 'strata', - 'system':'systems', 'cluster': 'clusters'} - # For chunks morphologies we need to know to which stratums - # belongs this chunk. - if morph_kind == 'chunk': - if belongs_to == '': - raise morphlib.Error('Chunk morphologies need the stratum name' - 'to create the path. Please add the stratum' - 'which belongs this morphology') - # Get the name of the chunk which we assume is at the end - # of the morph file - if '/' in morph_field: - morph_field = os.path.basename(morph_field) - - # Add the stratum name to the chunk name - morph_field = os.path.join(belongs_to, morph_field) - - # Reset the kind to stratum because chunk contains stratum - # name in its path. - morph_kind = 'stratum' - - # Add the morphology path to the morph field. - if not morph_field.startswith(morph_dir[morph_kind]): - morph_field = os.path.join(morph_dir[morph_kind], morph_field) - - # Add the morphology suffix if the morphology. - if not morph_field.endswith('.morph'): - morph_field = morph_field + '.morph' - - return morph_field - -def create_directory(name, path): - directory = os.path.join(path, name) - try: - os.makedirs(directory) - except OSError as err: - if err.errno != errno.EEXIST: - raise err - else: - pass - return directory - -def move_file(morph, directory, path, loader): - if not morph.filename.startswith(directory): - filename = os.path.basename(morph.filename) - new_location = os.path.join(path, filename) - print '\nMoving %s into %s' % (filename, new_location) - subprocess.call(['git', 'mv', morph.filename, new_location]) - morph.filename = new_location - loader.unset_defaults(morph) - loader.save_to_file(morph.filename, morph) - -def load_and_fix_chunk(chunk_str, loader, name): - try: - chunk_morph = loader.load_from_string(chunk_str) - except morphlib.morphloader.InvalidFieldError as err: - if "comments" in str(err): - # This error is caused because there are old morphologies which - # contain the field "comments" instead of "description". - # Replacing "comments" field by "description" will allow the morphology - # to pass parse_morphology_text check and ready to be written to a file. - fixed_chunk = loader.parse_morphology_text(chunk_str, name) - fixed_chunk['description'] = fixed_chunk.pop('comments') - print "WARNING: Invalid 'comments' field in " \ - "%s corrected to 'description'" % name - chunk_morph = load_and_fix_chunk(str(fixed_chunk), loader, name) - elif "buildsystem" in str(err): - # This error is caused because a typo in a morphology which - # has a field "buildsystem" instead of "build-system". - fixed_chunk = loader.parse_morphology_text(chunk_str, name) - fixed_chunk['build-system'] = fixed_chunk.pop('buildsystem') - print "WARNING: Invalid 'buildsystem' field in %s" \ - "corrected to 'build-system'" % name - chunk_morph = load_and_fix_chunk(str(fixed_chunk), loader, name) - else: - print "ERROR: %s in chunk %s" %(err, name) - raise err - except morphlib.morphloader.MorphologyNotYamlError as err: - print "WARNING: %s in chunk %s is not valid YAML, " \ - "attempting to fix..." %(err, name) - # This error is caused because there are old morphologies written - # in JSON which contain '\t' characters. When try to load this - # kind of morphologies load_from_string fails when parse_morphology_text. - # Removing this characters will make load_from_string to load the morphology - # and translate it into a correct yaml format. - fixed_chunk = chunk_str.replace('\t','') - print "INFO: %s successfully fixed" % name - chunk_morph = load_and_fix_chunk(fixed_chunk, loader, name) - return chunk_morph - -def move_clusters(morphs, path, loader): - kind = 'system' - directory = 'clusters' - # Move cluster morphologies to clusters folder fixing their dependent - # morphologies which are systems. - full_path = create_directory(directory, path) - for morph in morphs: - all_systems = morph['systems'][:] - for system in morph['systems']: - all_systems.extend(system.get('subsystems', [])) - # Add the correct path to the morph fields for systems and subsystems - for field in all_systems: - field['morph'] = sanitise_morphology_path(field['morph'], kind) - move_file(morph, directory, full_path, loader) - -def move_systems(morphs, path, loader): - kind = 'stratum' - directory = 'systems' - # Move system morphologies to systems folder fixing their dependent - # morphologies which are strata. - full_path = create_directory(directory, path) - for morph in morphs: - # Add name field and the correct path to the stratum on the morph - # fields in strata. - for field in morph['strata']: - field['name'] = os.path.basename(field['morph']) - field['morph'] = sanitise_morphology_path(field['morph'], kind) - move_file(morph, directory, full_path, loader) - -def download_chunks(morph, loader): - # Download chunks morphologies defined on the stratum and - # add them to the directory tree. - for chunk in morph['chunks']: - name = chunk['name'] + '.morph' - try: - chunk['morph'] = sanitise_morphology_path(chunk['morph'], 'chunk', morph['name']) - except KeyError as err: - if 'morph' in str(err): - chunk['morph'] = sanitise_morphology_path(chunk['name'], 'chunk', morph['name']) - else: - raise err - ref = chunk['ref'] - repo = scriptslib.parse_repo_alias(chunk['repo']) - try: - print "\nDownloading %s from %s into %s" %(name, repo, chunk['morph']) - chunk_str = cat_file(repo, ref, name) - except urllib2.HTTPError as err: - # If there is no morphology in the repository we assume that the morphology - # system will be autodetected, so we don't have to create a new one - # unless we shut down the autodetecting system (fallback system). - if err.code == 404: - print 'INFO: Morph will fall-back to build-time' \ - 'autodetection for %s' %(name) - # Remove morph field from autodetected chunks - del chunk['morph'] - else: - loaded_chunk = load_and_fix_chunk(chunk_str, loader, name) - loader.unset_defaults(loaded_chunk) - loader.save_to_file(chunk['morph'], loaded_chunk) - -def move_strata(morphs, path, loader): - # Create strata directory - strata_dir = 'strata/' - strata_path = create_directory(strata_dir, path) - for morph in morphs: - # Create stratum directory where downloading its chunks. - stratum_path = strata_path + morph['name'] - stratum_dir = create_directory(stratum_path, path) - - # Download chunks which belongs to the stratum - download_chunks(morph, loader) - - # Add to build-depends the correct path to the dependent stratum morphologies. - for build_depends in morph['build-depends']: - build_depends['morph'] = sanitise_morphology_path(build_depends['morph'], 'stratum') - # Move stratum morphologies to strata - move_file(morph, strata_dir, strata_path, loader) - -def main(): - # Load all morphologies in the definitions repo - sb = morphlib.sysbranchdir.open_from_within('.') - loader = morphlib.morphloader.MorphologyLoader() - morphs = [m for m in sb.load_all_morphologies(loader)] - - # Clasify the morphologies regarding of their kind field - morphologies = { kind: [m for m in morphs if m['kind'] == kind] - for kind in ('chunk', 'stratum', 'system', 'cluster') } - - for kind, morphs in morphologies.iteritems(): - print 'There are: %d %s.\n' %(len(morphs), kind) - - # Get the path from definitions repo - definitions_repo = sb.get_git_directory_name(sb.root_repository_url) - - # Move the morphologies to its directories - move_clusters(morphologies['cluster'], definitions_repo, loader) - move_systems(morphologies['system'], definitions_repo, loader) - move_strata(morphologies['stratum'], definitions_repo, loader) - -main() diff --git a/scripts/release-build b/scripts/release-build deleted file mode 100755 index cb62f661..00000000 --- a/scripts/release-build +++ /dev/null @@ -1,192 +0,0 @@ -#!/usr/bin/env python -# 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. - - -import cliapp -import morphlib -import os -import subprocess -import sys -import time - - -class Build(object): - '''A single distbuild instance.''' - - def __init__(self, name, arch, app): - self.system_name = name - - controller_netloc = app.controllers[arch].split(':') - controller_args = [ - '--controller-initiator-address=%s' % controller_netloc[0], - ] - if len(controller_netloc) > 1: - controller_args.append( - '--controller-initiator-port=%s' % controller_netloc[1]) - - self.command = ['morph', 'distbuild', '--local-changes=ignore'] - self.command += controller_args + [self.system_name] - - def start(self): - self.process = subprocess.Popen(self.command) - - def completed(self): - return (self.process.poll() is not None) - - -class ReleaseApp(cliapp.Application): - - '''Cliapp app that handles distbuilding and deploying a cluster.''' - - def add_settings(self): - self.settings.string_list(['controllers'], - 'a list of distbuild controllers and their ' - 'architecture') - - self.settings.string(['trove-host'], - 'hostname of Trove instance') - - self.settings.string(['artifact-cache-server'], - 'server to fetch artifacts from', default=None) - - self.settings.string(['release-number'], - 'Baserock version of the systems being built', - default='yy.ww') - - def error(self, message): - raise cliapp.AppException(message) - - def check_args(self, args): - if len(args) == 0: - self.error( - "Please pass the name of the release cluster (e.g. " - "clusters/release.morph)") - - if len(args) > 1: - self.error("Too many arguments given.") - - def process_args(self, args): - '''Process the command line''' - self.controllers = {} - controllers_list = self.settings['controllers'] - - for item in controllers_list: - arch, controller = item.split(':', 1) - self.controllers[arch] = controller - - defs_repo = morphlib.definitions_repo.open( - '.', search_for_root=True) - self.loader = defs_repo.get_morphology_loader() - self.finder = morphlib.morphologyfinder.MorphologyFinder(defs_repo) - - self.check_args(args) - - cluster_name = args[0] - cluster, cluster_path = self.load_morphology(cluster_name) - - builds = self.prepare_builds(cluster) - for build in builds: - build.start() - - while not all(build.completed() for build in builds): - time.sleep(1) - - fail = False - for build in builds: - if build.process.returncode != 0: - fail = True - sys.stderr.write( - 'Building failed for %s\n' % build.system_name) - if fail: - raise cliapp.AppException('Building of systems failed') - - if not os.path.exists('release'): - os.mkdir('release') - self.deploy_images(cluster, cluster_path) - - def load_morphology(self, name, kind=None): - path = morphlib.util.sanitise_morphology_path(name) - morph = self.loader.load_from_string( - self.finder.read_file(path)) - if kind: - assert morph['kind'] == kind - return morph, path - - def iterate_systems(self, system_list): - for system in system_list: - yield system['morph'] - if 'subsystems' in system: - for subsystem in self.iterate_systems(system['subsystems']): - yield subsystem - - def prepare_builds(self, cluster): - '''Prepare a list of builds''' - systems = set(self.iterate_systems(cluster['systems'])) - builds = [] - for system_name in systems: - system, _ = self.load_morphology(system_name) - if system['arch'] in self.controllers: - builds.append(Build(system_name, system['arch'], self)) - else: - print("Unable to build %s: no %s distbuild available" % - (system_name, system['arch'])) - return builds - - def deploy_images(self, cluster, cluster_path): - version_label = 'baserock-%s' % self.settings['release-number'] - outputs = {} - - for system in cluster['systems']: - morphology_name = system['morph'] - morphology = self.load_morphology(morphology_name)[0] - if morphology['arch'] not in self.controllers: - continue - - for deployment_name, deployment_info in system['deploy'].iteritems(): - # The release.morph cluster must specify a basename for the file, - # of name and extension. This script knows about name, but it - # can't find out the appropriate file extension without second - # guessing the behaviour of write extensions. - basename = deployment_info['location'] - - if '/' in basename or basename.startswith(version_label): - raise cliapp.AppException( - 'In %s: system %s.location should be just the base name, ' - 'e.g. "%s.img"' % (cluster_path, deployment_name, deployment_name)) - - filename = os.path.join('release', '%s-%s' % (version_label, basename)) - if os.path.exists(filename): - self.output.write('Reusing existing deployment of %s\n' % filename) - else: - self.output.write('Creating %s from release.morph\n' % filename) - self.deploy_single_image(cluster_path, deployment_name, filename, version_label) - - def deploy_single_image(self, cluster_path, name, location, version_label): - deploy_command = [ - 'morph', 'deploy', cluster_path, name, - '--trove-host=%s' % self.settings['trove-host']] - artifact_server = self.settings['artifact-cache-server'] - if artifact_server is not None: - deploy_command.append('--artifact-cache-server=%s' % artifact_server) - deploy_command.extend(( - '%s.location=%s' % (name, location), - '%s.VERSION_LABEL=%s' % (name, version_label) - )) - - cliapp.runcmd(deploy_command, stdout=sys.stdout) - - -ReleaseApp().run() diff --git a/scripts/release-build.test.conf b/scripts/release-build.test.conf deleted file mode 100644 index 50083352..00000000 --- a/scripts/release-build.test.conf +++ /dev/null @@ -1,6 +0,0 @@ -[config] -trove-host = ct-mcr-1.ducie.codethink.co.uk -controllers = x86_64:ct-mcr-1-distbuild-x86-64-majikthise-controller.dyn.ducie.codethink.co.uk, - x86_32:ct-mcr-1-distbuild-x86-32-majikthise-controller.dyn.ducie.codethink.co.uk, - armv7lhf:ct-mcr-1-distbuild-armv7lhf-jetson.dyn.ducie.codethink.co.uk -release-number = 14.29 diff --git a/scripts/release-test b/scripts/release-test deleted file mode 100755 index 4dcc6f76..00000000 --- a/scripts/release-test +++ /dev/null @@ -1,400 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2014 Codethink Ltd -# -# 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. - -'''release-test - -This script deploys the set of systems in the cluster morphology it is -instructed to read, to test that they work correctly. - -''' - -import cliapp -import os -import pipes -import shlex -import shutil -import socket -import tempfile -import time -import uuid - -import morphlib - - -class MorphologyHelper(object): - - def __init__(self): - self.defs_repo = morphlib.definitions_repo.open( - '.', search_for_root=True) - self.loader = morphlib.morphloader.MorphologyLoader() - self.finder = morphlib.morphologyfinder.MorphologyFinder(self.defs_repo) - - def load_morphology(self, path): - text = self.finder.read_file(path) - return self.loader.load_from_string(text) - - @classmethod - def iterate_systems(cls, systems_list): - for system in systems_list: - yield morphlib.util.sanitise_morphology_path(system['morph']) - if 'subsystems' in system: - for subsystem in cls.iterate_systems(system['subsystems']): - yield subsystem - - def iterate_cluster_deployments(cls, cluster_morph): - for system in cluster_morph['systems']: - path = morphlib.util.sanitise_morphology_path(system['morph']) - defaults = system.get('deploy-defaults', {}) - for name, options in system['deploy'].iteritems(): - config = dict(defaults) - config.update(options) - yield path, name, config - - def load_cluster_systems(self, cluster_morph): - for system_path in set(self.iterate_systems(cluster_morph['systems'])): - system_morph = self.load_morphology(system_path) - yield system_path, system_morph - - -class TimeoutError(cliapp.AppException): - - """Error to be raised when a connection waits too long""" - - def __init__(self, msg): - super(TimeoutError, self).__init__(msg) - - -class VMHost(object): - - def __init__(self, user, address, disk_path): - self.user = user - self.address = address - self.disk_path = disk_path - - @property - def ssh_host(self): - return '{user}@{address}'.format(user=self.user, address=self.address) - - def runcmd(self, *args, **kwargs): - cliapp.ssh_runcmd(self.ssh_host, *args, **kwargs) - - def virsh(self, *args, **kwargs): - self.runcmd(['virsh', '-c', 'qemu:///system'] + list(args), **kwargs) - - -class DeployedSystemInstance(object): - - def __init__(self, deployment, config, host_machine, vm_id, rootfs_path): - self.deployment = deployment - self.config = config - # TODO: Stop assuming test machine can DHCP and be assigned its - # hostname in the deployer's resolve search path. - self.ip_address = self.config['HOSTNAME'] - self.host_machine = host_machine - self.vm_id = vm_id - self.rootfs_path = rootfs_path - - @property - def ssh_host(self): - # TODO: Stop assuming we ssh into test instances as root - return 'root@{host}'.format(host=self.ip_address) - - def runcmd(self, argv, chdir='.', **kwargs): - ssh_cmd = ['ssh', '-o', 'StrictHostKeyChecking=no', - '-o', 'UserKnownHostsFile=/dev/null', self.ssh_host] - cmd = ['sh', '-c', 'cd "$1" && shift && exec "$@"', '-', chdir] - cmd += argv - ssh_cmd.append(' '.join(map(pipes.quote, cmd))) - return cliapp.runcmd(ssh_cmd, **kwargs) - - def _wait_for_dhcp(self, timeout): - '''Block until given hostname resolves successfully. - - Raises TimeoutError if the hostname has not appeared in 'timeout' - seconds. - - ''' - start_time = time.time() - while True: - try: - socket.gethostbyname(self.ip_address) - return - except socket.gaierror: - pass - if time.time() > start_time + timeout: - raise TimeoutError("Host %s did not appear after %i seconds" % - (self.ip_address, timeout)) - time.sleep(0.5) - - def _wait_for_ssh(self, timeout): - """Wait until the deployed VM is responding via SSH""" - start_time = time.time() - while True: - try: - self.runcmd(['true'], stdin=None, stdout=None, stderr=None) - return - except cliapp.AppException: - # TODO: Stop assuming the ssh part of the command is what failed - if time.time() > start_time + timeout: - raise TimeoutError("%s sshd did not start after %i seconds" - % (self.ip_address, timeout)) - time.sleep(0.5) - - def wait_until_online(self, timeout=10): - self._wait_for_dhcp(timeout) - self._wait_for_ssh(timeout) - - def delete(self): - # Stop and remove VM - try: - self.host_machine.virsh('destroy', self.vm_id) - except cliapp.AppException as e: - # TODO: Stop assuming that destroy failed because it wasn't running - pass - try: - self.host_machine.virsh('undefine', self.vm_id, '--remove-all-storage') - except cliapp.AppException as e: - # TODO: Stop assuming that undefine failed because it was - # already removed - pass - - -class Deployment(object): - - def __init__(self, cluster_path, name, deployment_config, host_machine): - self.cluster_path = cluster_path - self.name = name - self.deployment_config = deployment_config - self.host_machine = host_machine - - @staticmethod - def _ssh_host_key_exists(hostname): - """Check if an ssh host key exists in known_hosts""" - if not os.path.exists('/root/.ssh/known_hosts'): - return False - with open('/root/.ssh/known_hosts', 'r') as known_hosts: - return any(line.startswith(hostname) for line in known_hosts) - - def _update_known_hosts(self): - if not self._ssh_host_key_exists(self.host_machine.address): - with open('/root/.ssh/known_hosts', 'a') as known_hosts: - cliapp.runcmd(['ssh-keyscan', self.host_machine.address], - stdout=known_hosts) - - @staticmethod - def _generate_sshkey_config(tempdir, config): - manifest = os.path.join(tempdir, 'manifest') - with open(manifest, 'w') as f: - f.write('0040700 0 0 /root/.ssh\n') - f.write('overwrite 0100600 0 0 /root/.ssh/authorized_keys\n') - authkeys = os.path.join(tempdir, 'root', '.ssh', 'authorized_keys') - os.makedirs(os.path.dirname(authkeys)) - with open(authkeys, 'w') as auth_f: - with open('/root/.ssh/id_rsa.pub', 'r') as key_f: - shutil.copyfileobj(key_f, auth_f) - - install_files = shlex.split(config.get('INSTALL_FILES', '')) - install_files.append(manifest) - yield 'INSTALL_FILES', ' '.join(pipes.quote(f) for f in install_files) - - def deploy(self): - self._update_known_hosts() - - hostname = str(uuid.uuid4()) - vm_id = hostname - image_base = self.host_machine.disk_path - rootpath = '{image_base}/{hostname}.img'.format(image_base=image_base, - hostname=hostname) - loc = 'kvm+ssh://{ssh_host}/{id}/{path}'.format( - ssh_host=self.host_machine.ssh_host, id=vm_id, path=rootpath) - - options = { - 'type': 'kvm', - 'location': loc, - 'AUTOSTART': 'True', - 'HOSTNAME': hostname, - 'DISK_SIZE': '20G', - 'RAM_SIZE': '2G', - 'VERSION_LABEL': 'release-test', - } - - tempdir = tempfile.mkdtemp() - try: - options.update( - self._generate_sshkey_config(tempdir, - self.deployment_config)) - - args = ['morph', 'deploy', self.cluster_path, self.name] - for k, v in options.iteritems(): - args.append('%s.%s=%s' % (self.name, k, v)) - cliapp.runcmd(args, stdin=None, stdout=None, stderr=None) - - config = dict(self.deployment_config) - config.update(options) - - return DeployedSystemInstance(self, config, self.host_machine, - vm_id, rootpath) - finally: - shutil.rmtree(tempdir) - - -class ReleaseApp(cliapp.Application): - - """Cliapp application which handles automatic builds and tests""" - - def add_settings(self): - """Add the command line options needed""" - group_main = 'Program Options' - self.settings.string_list(['deployment-host'], - 'ARCH:HOST:PATH that VMs can be deployed to', - default=None, - group=group_main) - self.settings.string(['trove-host'], - 'Address of Trove for test systems to build from', - default=None, - group=group_main) - self.settings.string(['trove-id'], - 'ID of Trove for test systems to build from', - default=None, - group=group_main) - self.settings.string(['build-ref-prefix'], - 'Prefix of build branches for test systems', - default=None, - group=group_main) - - @staticmethod - def _run_tests(instance, system_path, system_morph, - (trove_host, trove_id, build_ref_prefix), - morph_helper, systems): - instance.wait_until_online() - - tests = [] - def baserock_build_test(instance): - instance.runcmd(['git', 'config', '--global', 'user.name', - 'Test Instance of %s' % instance.deployment.name]) - instance.runcmd(['git', 'config', '--global', 'user.email', - 'ci-test@%s' % instance.config['HOSTNAME']]) - instance.runcmd(['mkdir', '-p', '/src/ws', '/src/cache', - '/src/tmp']) - def morph_cmd(*args, **kwargs): - # TODO: decide whether to use cached artifacts or not by - # adding --artifact-cache-server= --cache-server= - argv = ['morph', '--log=/src/morph.log', '--cachedir=/src/cache', - '--tempdir=/src/tmp', '--log-max=100M', - '--trove-host', trove_host, '--trove-id', trove_id, - '--build-ref-prefix', build_ref_prefix] - argv.extend(args) - instance.runcmd(argv, **kwargs) - - repo = morph_helper.sb.root_repository_url - ref = morph_helper.defs_repo.HEAD - sha1 = morph_helper.defs_repo.resolve_ref_to_commit(ref) - morph_cmd('init', '/src/ws') - chdir = '/src/ws' - - morph_cmd('checkout', repo, ref, chdir=chdir) - # TODO: Add a morph subcommand that gives the path to the root repository. - repo_path = os.path.relpath( - morph_helper.sb.get_git_directory_name(repo), - morph_helper.sb.root_directory) - chdir = os.path.join(chdir, ref, repo_path) - - instance.runcmd(['git', 'reset', '--hard', sha1], chdir=chdir) - print 'Building test systems for {sys}'.format(sys=system_path) - for to_build_path, to_build_morph in systems.iteritems(): - if to_build_morph['arch'] == system_morph['arch']: - print 'Test building {path}'.format(path=to_build_path) - morph_cmd('build', to_build_path, chdir=chdir, - stdin=None, stdout=None, stderr=None) - print 'Finished Building test systems' - - def python_smoke_test(instance): - instance.runcmd(['python', '-c', 'print "Hello World"']) - - # TODO: Come up with a better way of determining which tests to run - if 'devel' in system_path: - tests.append(baserock_build_test) - else: - tests.append(python_smoke_test) - - for test in tests: - test(instance) - - def deploy_and_test_systems(self, cluster_path, - deployment_hosts, build_test_config): - """Run the deployments and tests""" - - version = 'release-test' - - morph_helper = MorphologyHelper() - cluster_morph = morph_helper.load_morphology(cluster_path) - systems = dict(morph_helper.load_cluster_systems(cluster_morph)) - - for system_path, deployment_name, deployment_config in \ - morph_helper.iterate_cluster_deployments(cluster_morph): - - system_morph = systems[system_path] - # We can only test systems in KVM that have a BSP - if not any('bsp' in si['morph'] for si in system_morph['strata']): - continue - - # We can only test systems in KVM that we have a host for - if system_morph['arch'] not in deployment_hosts: - continue - host_machine = deployment_hosts[system_morph['arch']] - deployment = Deployment(cluster_path, deployment_name, - deployment_config, host_machine) - - instance = deployment.deploy() - try: - self._run_tests(instance, system_path, system_morph, - build_test_config, morph_helper, systems) - finally: - instance.delete() - - def process_args(self, args): - """Process the command line args and kick off the builds/tests""" - if self.settings['build-ref-prefix'] is None: - self.settings['build-ref-prefix'] = ( - os.path.join(self.settings['trove-id'], 'builds')) - for setting in ('deployment-host', 'trove-host', - 'trove-id', 'build-ref-prefix'): - self.settings.require(setting) - - deployment_hosts = {} - for host_config in self.settings['deployment-host']: - arch, address = host_config.split(':', 1) - user, address = address.split('@', 1) - address, disk_path = address.split(':', 1) - if user == '': - user = 'root' - # TODO: Don't assume root is the user with deploy access - deployment_hosts[arch] = VMHost(user, address, disk_path) - - build_test_config = (self.settings['trove-host'], - self.settings['trove-id'], - self.settings['build-ref-prefix']) - - if len(args) != 1: - raise cliapp.AppException('Usage: release-test CLUSTER') - cluster_path = morphlib.util.sanitise_morphology_path(args[0]) - self.deploy_and_test_systems(cluster_path, deployment_hosts, - build_test_config) - - -if __name__ == '__main__': - ReleaseApp().run() diff --git a/scripts/release-test-os b/scripts/release-test-os deleted file mode 100755 index 06e01daf..00000000 --- a/scripts/release-test-os +++ /dev/null @@ -1,526 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2014 Codethink Ltd -# -# 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. - -'''release-test - -This script deploys the set of systems in the cluster morphology it is -instructed to read, to test that they work correctly. - -''' - -import cliapp -import os -import pipes -import shlex -import shutil -import socket -import tempfile -import time -import uuid - -import morphlib - - -class NovaList: - def __init__(self): - self.output = [] - self.lines = [] - self.instance = [] - - def update(self): - self.output = cliapp.runcmd(['nova', 'list']) - self.lines = self.output.split('\n') - self.lines = self.lines[3:-2] - - def get_nova_details_for_instance(self, name): - self.update() - - for line in self.lines: - entries = line.split('|') - stripped_line = [entry.strip() for entry in entries] - if stripped_line.count(name) == 1: - self.instance = stripped_line - - def get_nova_state_for_instance(self, name): - self.get_nova_details_for_instance(name) - if not self.instance: - return - return self.instance[3] - - def get_nova_ip_for_instance(self, name): - self.get_nova_details_for_instance(name) - if not self.instance: - return - - if self.get_nova_state_for_instance(name) != 'ACTIVE': - return - - return self.instance[6] - - def get_nova_ip_for_instance_timeout(self, name, timeout=120): - start_time = time.time() - - while self.get_nova_state_for_instance(name) != 'ACTIVE': - - if time.time() > start_time + timeout: - print "%s not ACTIVE after %i seconds" % (name, timeout) - return - - time.sleep(1) - - ip_addr = self.get_nova_ip_for_instance(name) - if not ip_addr: - return - - if ip_addr.count('=') == 0: - return - - ip_addr = ip_addr[ip_addr.find('=') + 1:] - - if ip_addr.count(',') == 0: - return ip_addr - - return ip_addr[:ip_addr.find(',')] - - - -class MorphologyHelper(object): - - def __init__(self): - self.sb = sb = morphlib.sysbranchdir.open_from_within('.') - defs_repo_path = sb.get_git_directory_name(sb.root_repository_url) - self.defs_repo = morphlib.gitdir.GitDirectory(defs_repo_path) - self.loader = morphlib.morphloader.MorphologyLoader() - self.finder = morphlib.morphologyfinder.MorphologyFinder(self.defs_repo) - - def load_morphology(self, path): - text = self.finder.read_file(path) - return self.loader.load_from_string(text) - - @classmethod - def iterate_systems(cls, systems_list): - for system in systems_list: - yield morphlib.util.sanitise_morphology_path(system['morph']) - if 'subsystems' in system: - for subsystem in cls.iterate_systems(system['subsystems']): - yield subsystem - - def iterate_cluster_deployments(cls, cluster_morph): - for system in cluster_morph['systems']: - path = morphlib.util.sanitise_morphology_path(system['morph']) - defaults = system.get('deploy-defaults', {}) - for name, options in system['deploy'].iteritems(): - config = dict(defaults) - config.update(options) - yield path, name, config - - def load_cluster_systems(self, cluster_morph): - for system_path in set(self.iterate_systems(cluster_morph['systems'])): - system_morph = self.load_morphology(system_path) - yield system_path, system_morph - - -class TimeoutError(cliapp.AppException): - - """Error to be raised when a connection waits too long""" - - def __init__(self, msg): - super(TimeoutError, self).__init__(msg) - - -class VMHost(object): - - def __init__(self, user, address, disk_path): - self.user = user - self.address = address - self.disk_path = disk_path - - @property - def ssh_host(self): - return '{user}@{address}'.format(user=self.user, address=self.address) - - def runcmd(self, *args, **kwargs): - cliapp.ssh_runcmd(self.ssh_host, *args, **kwargs) - - -class DeployedSystemInstance(object): - - def __init__(self, deployment, config, host_machine, vm_id, rootfs_path, - ip_addr, hostname): - self.deployment = deployment - self.config = config - self.ip_address = ip_addr - self.host_machine = host_machine - self.vm_id = vm_id - self.rootfs_path = rootfs_path - self.hostname = hostname - - @property - def ssh_host(self): - # TODO: Stop assuming we ssh into test instances as root - return 'root@{host}'.format(host=self.ip_address) - - def runcmd(self, argv, chdir='.', **kwargs): - ssh_cmd = ['ssh', '-o', 'StrictHostKeyChecking=no', - '-o', 'UserKnownHostsFile=/dev/null', self.ssh_host] - cmd = ['sh', '-c', 'cd "$1" && shift && exec "$@"', '-', chdir] - cmd += argv - ssh_cmd.append(' '.join(map(pipes.quote, cmd))) - return cliapp.runcmd(ssh_cmd, **kwargs) - - def _wait_for_dhcp(self, timeout): - '''Block until given hostname resolves successfully. - - Raises TimeoutError if the hostname has not appeared in 'timeout' - seconds. - - ''' - start_time = time.time() - while True: - try: - socket.gethostbyname(self.ip_address) - return - except socket.gaierror: - pass - if time.time() > start_time + timeout: - raise TimeoutError("Host %s did not appear after %i seconds" % - (self.ip_address, timeout)) - time.sleep(0.5) - - def _wait_for_ssh(self, timeout): - """Wait until the deployed VM is responding via SSH""" - start_time = time.time() - while True: - try: - self.runcmd(['true'], stdin=None, stdout=None, stderr=None) - return - except cliapp.AppException: - # TODO: Stop assuming the ssh part of the command is what failed - if time.time() > start_time + timeout: - raise TimeoutError("%s sshd did not start after %i seconds" - % (self.ip_address, timeout)) - time.sleep(0.5) - - def _wait_for_cloud_init(self, timeout): - """Wait until cloud init has resized the disc""" - start_time = time.time() - while True: - try: - out = self.runcmd(['sh', '-c', - 'test -e "$1" && echo exists || echo does not exist', - '-', - '/root/cloud-init-finished']) - except: - import traceback - traceback.print_exc() - raise - if out.strip() == 'exists': - return - if time.time() > start_time + timeout: - raise TimeoutError("Disc size not increased after %i seconds" - % (timeout)) - time.sleep(3) - - def wait_until_online(self, timeout=120): - self._wait_for_dhcp(timeout) - self._wait_for_ssh(timeout) - self._wait_for_cloud_init(timeout) - print "Test system %s ready to run tests." % (self.hostname) - - def delete(self): - # Stop and remove VM - print "Deleting %s test instance" % (self.hostname) - try: - cliapp.runcmd(['nova', 'delete', self.hostname]) - except cliapp.AppException as e: - # TODO: Stop assuming that delete failed because the instance - # wasn't running - print "- Failed" - pass - print "Deleting %s test disc image" % (self.hostname) - try: - cliapp.runcmd(['nova', 'image-delete', self.hostname]) - except cliapp.AppException as e: - # TODO: Stop assuming that image-delete failed because it was - # already removed - print "- Failed" - pass - - -class Deployment(object): - - def __init__(self, cluster_path, name, deployment_config, - host_machine, net_id): - self.cluster_path = cluster_path - self.name = name - self.deployment_config = deployment_config - self.host_machine = host_machine - self.net_id = net_id - - @staticmethod - def _ssh_host_key_exists(hostname): - """Check if an ssh host key exists in known_hosts""" - if not os.path.exists('/root/.ssh/known_hosts'): - return False - with open('/root/.ssh/known_hosts', 'r') as known_hosts: - return any(line.startswith(hostname) for line in known_hosts) - - def _update_known_hosts(self): - if not self._ssh_host_key_exists(self.host_machine.address): - with open('/root/.ssh/known_hosts', 'a') as known_hosts: - cliapp.runcmd(['ssh-keyscan', self.host_machine.address], - stdout=known_hosts) - - @staticmethod - def _generate_sshkey_config(tempdir, config): - manifest = os.path.join(tempdir, 'manifest') - with open(manifest, 'w') as f: - f.write('0040700 0 0 /root/.ssh\n') - f.write('overwrite 0100600 0 0 /root/.ssh/authorized_keys\n') - authkeys = os.path.join(tempdir, 'root', '.ssh', 'authorized_keys') - os.makedirs(os.path.dirname(authkeys)) - with open(authkeys, 'w') as auth_f: - with open('/root/.ssh/id_rsa.pub', 'r') as key_f: - shutil.copyfileobj(key_f, auth_f) - - install_files = shlex.split(config.get('INSTALL_FILES', '')) - install_files.append(manifest) - yield 'INSTALL_FILES', ' '.join(pipes.quote(f) for f in install_files) - - def deploy(self): - self._update_known_hosts() - - hostname = str(uuid.uuid4()) - vm_id = hostname - image_base = self.host_machine.disk_path - rootpath = '{image_base}/{hostname}.img'.format(image_base=image_base, - hostname=hostname) - loc = 'http://{ssh_host}:5000/v2.0'.format( - ssh_host=self.host_machine.ssh_host, id=vm_id, path=rootpath) - - options = { - 'type': 'openstack', - 'location': loc, - 'HOSTNAME': hostname, - 'DISK_SIZE': '5G', - 'RAM_SIZE': '2G', - 'VERSION_LABEL': 'release-test', - 'OPENSTACK_USER': os.environ['OS_USERNAME'], - 'OPENSTACK_TENANT': os.environ['OS_TENANT_NAME'], - 'OPENSTACK_PASSWORD': os.environ['OS_PASSWORD'], - 'OPENSTACK_IMAGENAME': hostname, - 'CLOUD_INIT': 'yes', - 'KERNEL_ARGS': 'console=tty0 console=ttyS0', - } - - tempdir = tempfile.mkdtemp() - try: - options.update( - self._generate_sshkey_config(tempdir, - self.deployment_config)) - - # Deploy the image to openstack - args = ['morph', 'deploy', self.cluster_path, self.name] - for k, v in options.iteritems(): - args.append('%s.%s=%s' % (self.name, k, v)) - cliapp.runcmd(args, stdin=None, stdout=None, stderr=None) - - config = dict(self.deployment_config) - config.update(options) - - # Boot an instance from the image - args = ['nova', 'boot', - '--flavor', 'm1.medium', - '--image', hostname, - '--user-data', '/usr/lib/mason/os-init-script', - '--nic', "net-id=%s" % (self.net_id), - hostname] - output = cliapp.runcmd(args) - - # Print nova boot output, with adminPass line removed - output_lines = output.split('\n') - for line in output_lines: - if line.find('adminPass') != -1: - password_line = line - output_lines.remove(password_line) - output = '\n'.join(output_lines) - print output - - # Get ip address from nova list - nl = NovaList() - ip_addr = nl.get_nova_ip_for_instance_timeout(hostname) - print "IP address for instance %s: %s" % (hostname, ip_addr) - - return DeployedSystemInstance(self, config, self.host_machine, - vm_id, rootpath, ip_addr, hostname) - finally: - shutil.rmtree(tempdir) - - -class ReleaseApp(cliapp.Application): - - """Cliapp application which handles automatic builds and tests""" - - def add_settings(self): - """Add the command line options needed""" - group_main = 'Program Options' - self.settings.string_list(['deployment-host'], - 'ARCH:HOST:PATH that VMs can be deployed to', - default=None, - group=group_main) - self.settings.string(['trove-host'], - 'Address of Trove for test systems to build from', - default=None, - group=group_main) - self.settings.string(['trove-id'], - 'ID of Trove for test systems to build from', - default=None, - group=group_main) - self.settings.string(['build-ref-prefix'], - 'Prefix of build branches for test systems', - default=None, - group=group_main) - self.settings.string(['net-id'], - 'Openstack network ID', - default=None, - group=group_main) - - @staticmethod - def _run_tests(instance, system_path, system_morph, - (trove_host, trove_id, build_ref_prefix), - morph_helper, systems): - instance.wait_until_online() - - tests = [] - def baserock_build_test(instance): - instance.runcmd(['git', 'config', '--global', 'user.name', - 'Test Instance of %s' % instance.deployment.name]) - instance.runcmd(['git', 'config', '--global', 'user.email', - 'ci-test@%s' % instance.config['HOSTNAME']]) - instance.runcmd(['mkdir', '-p', '/src/ws', '/src/cache', - '/src/tmp']) - def morph_cmd(*args, **kwargs): - # TODO: decide whether to use cached artifacts or not by - # adding --artifact-cache-server= --cache-server= - argv = ['morph', '--log=/src/morph.log', '--cachedir=/src/cache', - '--tempdir=/src/tmp', '--log-max=100M', - '--trove-host', trove_host, '--trove-id', trove_id, - '--build-ref-prefix', build_ref_prefix] - argv.extend(args) - instance.runcmd(argv, **kwargs) - - repo = morph_helper.sb.root_repository_url - ref = morph_helper.defs_repo.HEAD - sha1 = morph_helper.defs_repo.resolve_ref_to_commit(ref) - morph_cmd('init', '/src/ws') - chdir = '/src/ws' - - morph_cmd('checkout', repo, ref, chdir=chdir) - # TODO: Add a morph subcommand that gives the path to the root repository. - repo_path = os.path.relpath( - morph_helper.sb.get_git_directory_name(repo), - morph_helper.sb.root_directory) - chdir = os.path.join(chdir, ref, repo_path) - - instance.runcmd(['git', 'reset', '--hard', sha1], chdir=chdir) - print 'Building test systems for {sys}'.format(sys=system_path) - for to_build_path, to_build_morph in systems.iteritems(): - if to_build_morph['arch'] == system_morph['arch']: - print 'Test building {path}'.format(path=to_build_path) - morph_cmd('build', to_build_path, chdir=chdir, - stdin=None, stdout=None, stderr=None) - print 'Finished Building test systems' - - def python_smoke_test(instance): - instance.runcmd(['python', '-c', 'print "Hello World"']) - - # TODO: Come up with a better way of determining which tests to run - if 'devel' in system_path: - tests.append(baserock_build_test) - else: - tests.append(python_smoke_test) - - for test in tests: - test(instance) - - def deploy_and_test_systems(self, cluster_path, - deployment_hosts, build_test_config, - net_id): - """Run the deployments and tests""" - - version = 'release-test' - - morph_helper = MorphologyHelper() - cluster_morph = morph_helper.load_morphology(cluster_path) - systems = dict(morph_helper.load_cluster_systems(cluster_morph)) - - for system_path, deployment_name, deployment_config in \ - morph_helper.iterate_cluster_deployments(cluster_morph): - - system_morph = systems[system_path] - # We can only test systems in KVM that have a BSP - if not any('bsp' in si['morph'] for si in system_morph['strata']): - continue - - # We can only test systems in KVM that we have a host for - if system_morph['arch'] not in deployment_hosts: - continue - host_machine = deployment_hosts[system_morph['arch']] - deployment = Deployment(cluster_path, deployment_name, - deployment_config, host_machine, - net_id) - - instance = deployment.deploy() - try: - self._run_tests(instance, system_path, system_morph, - build_test_config, morph_helper, systems) - finally: - instance.delete() - - def process_args(self, args): - """Process the command line args and kick off the builds/tests""" - if self.settings['build-ref-prefix'] is None: - self.settings['build-ref-prefix'] = ( - os.path.join(self.settings['trove-id'], 'builds')) - for setting in ('deployment-host', 'trove-host', - 'trove-id', 'build-ref-prefix', 'net-id'): - self.settings.require(setting) - - deployment_hosts = {} - for host_config in self.settings['deployment-host']: - arch, address = host_config.split(':', 1) - user, address = address.split('@', 1) - address, disk_path = address.split(':', 1) - if user == '': - user = 'root' - # TODO: Don't assume root is the user with deploy access - deployment_hosts[arch] = VMHost(user, address, disk_path) - - build_test_config = (self.settings['trove-host'], - self.settings['trove-id'], - self.settings['build-ref-prefix']) - - if len(args) != 1: - raise cliapp.AppException('Usage: release-test CLUSTER') - cluster_path = morphlib.util.sanitise_morphology_path(args[0]) - self.deploy_and_test_systems(cluster_path, deployment_hosts, - build_test_config, - self.settings['net-id']) - - -if __name__ == '__main__': - ReleaseApp().run() diff --git a/scripts/release-upload b/scripts/release-upload deleted file mode 100755 index f8b3337c..00000000 --- a/scripts/release-upload +++ /dev/null @@ -1,473 +0,0 @@ -#!/usr/bin/python -# 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. - - -'''Upload and publish Baserock binaries for a release. - -This utility is used for the Baserock release process. See -http://wiki.baserock.org/guides/release-process/ for details on the -release process. - -This utility uploads two sets of binaries: - -* The build artifacts (built chunks and strata) used to construct the - systems being released. The systems are found in `release.morph` and - the artifacts from the Trove used to prepare the release. They get - uploaded to a public Trove (by default git.baserock.org). If they're - the same Trove, then nothing happens. - -* The released system images (disk images, tar archives, etc) - specified in `release.morph` get uploaded to a download server (by - default download.baserock.org). - -''' - - -import json -import logging -import os -import pwd -import shutil -import sys -import urllib -import urllib2 -import urlparse - -import cliapp -import yaml - -import morphlib - -class ReleaseUploader(cliapp.Application): - - def add_settings(self): - group = 'Release upload settings' - - local_username = self.get_local_username() - - self.settings.string( - ['build-trove-host'], - 'get build artifacts from Trove at ADDRESS', - metavar='ADDRESS', - group=group) - - self.settings.string( - ['public-trove-host'], - 'publish build artifacts on Trove at ADDRESS', - metavar='ADDRESS', - default='git.baserock.org', - group=group) - - self.settings.string( - ['public-trove-username'], - 'log into public trove as USER', - metavar='USER', - default=local_username, - group=group) - - self.settings.string( - ['public-trove-artifact-dir'], - 'put published artifacts into DIR', - metavar='DIR', - default='/home/cache/artifacts', - group=group) - - self.settings.string( - ['release-artifact-dir'], - 'get release artifacts from DIR (all files from there)', - metavar='DIR', - default='.', - group=group) - - self.settings.string( - ['download-server-address'], - 'publish release artifacts on server at ADDRESS', - metavar='ADDRESS', - default='download.baserock.org', - group=group) - - self.settings.string( - ['download-server-username'], - 'log into download server as USER', - metavar='USER', - default=local_username, - group=group) - - self.settings.string( - ['download-server-private-dir'], - 'use DIR as the temporary location for uploaded release ' - 'artifacts', - metavar='DIR', - default='/srv/download.baserock.org/baserock/.publish-temp', - group=group) - - self.settings.string( - ['download-server-public-dir'], - 'put published release artifacts in DIR', - metavar='DIR', - default='/srv/download.baserock.org/baserock', - group=group) - - self.settings.string( - ['local-build-artifacts-dir'], - 'keep build artifacts to be uploaded temporarily in DIR', - metavar='DIR', - default='build-artifacts', - group=group) - - self.settings.string( - ['morph-cmd'], - 'run FILE to invoke morph', - metavar='FILE', - default='morph', - group=group) - - self.settings.string_list( - ['arch'], - 'Upload files from morphologies of ARCH', - metavar='ARCH', - default=[], - group=group) - - self.settings.boolean( - ['upload-build-artifacts'], - 'upload build artifacts?', - default=True) - - self.settings.boolean( - ['upload-release-artifacts'], - 'upload release artifacts (disk images etc)?', - default=True) - - def get_local_username(self): - uid = os.getuid() - return pwd.getpwuid(uid)[0] - - def process_args(self, args): - if len(args) != 1: - raise cliapp.AppException('Usage: release-upload CLUSTER') - cluster_morphology_path = args[0] - self.status(msg='Uploading and publishing Baserock release') - - if self.settings['upload-build-artifacts']: - self.publish_build_artifacts(cluster_morphology_path) - else: - self.status( - msg='Not uploading build artifacts ' - '(upload-build-artifacts set to false') - - if self.settings['upload-release-artifacts']: - self.publish_release_artifacts() - else: - self.status( - msg='Not uploading release artifacts ' - '(upload-release-artifacts set to false') - - def publish_build_artifacts(self, cluster_morphology_path): - publisher = BuildArtifactPublisher(self.settings, self.status) - publisher.publish_build_artifacts(cluster_morphology_path) - self.status(msg='Build artifacts have been published') - - def publish_release_artifacts(self): - publisher = ReleaseArtifactPublisher(self.settings, self.status) - publisher.publish_release_artifacts() - self.status(msg='Release artifacts have been published') - - def status(self, msg, **kwargs): - formatted = msg.format(**kwargs) - logging.info(formatted) - sys.stdout.write(formatted + '\n') - sys.stdout.flush() - - -class BuildArtifactPublisher(object): - - '''Publish build artifacts related to the release.''' - - def __init__(self, settings, status): - self.settings = settings - self.status = status - - def publish_build_artifacts(self, cluster_path): - artifact_basenames = self.list_build_artifacts_for_release(cluster_path) - self.status( - msg='Found {count} build artifact files in release', - count=len(artifact_basenames)) - - to_be_uploaded = self.filter_away_build_artifacts_on_public_trove( - artifact_basenames) - - logging.debug('List of artifacts (basenames) to upload (without already uploaded):') - for i, basename in enumerate(to_be_uploaded): - logging.debug(' {0}: {1}'.format(i, basename)) - logging.debug('End of artifact list (to_be_uploaded)') - - self.status( - msg='Need to fetch locally, then upload {count} build artifacts', - count=len(to_be_uploaded)) - - self.upload_build_artifacts_to_public_trove(to_be_uploaded) - - def list_build_artifacts_for_release(self, cluster_morphology_path): - self.status(msg='Find build artifacts included in release') - - # FIXME: These are hardcoded for simplicity. They would be - # possible to deduce automatically from the workspace, but - # that can happen later. - repo = 'file://%s' % os.path.abspath('.') - ref = 'HEAD' - - argv = [self.settings['morph-cmd'], 'list-artifacts', '--quiet', - '--repo', repo, '--ref', ref] - argv += self.find_system_morphologies(cluster_morphology_path) - output = cliapp.runcmd(argv) - basenames = output.splitlines() - logging.debug('List of build artifacts in release:') - for basename in basenames: - logging.debug(' {0}'.format(basename)) - logging.debug('End of list of build artifacts in release') - - return basenames - - def find_system_morphologies(self, cluster_morphology_path): - cluster = self.load_cluster_morphology(cluster_morphology_path) - system_dicts = self.find_systems_in_parsed_cluster_morphology(cluster) - if self.settings['arch']: - system_dicts = self.choose_systems_for_wanted_architectures( - system_dicts, self.settings['arch']) - return [sd['morph'] for sd in system_dicts] - - def load_cluster_morphology(self, pathname): - with open(pathname) as f: - return yaml.load(f) - - def find_systems_in_parsed_cluster_morphology(self, cluster): - return cluster['systems'] - - def choose_systems_for_wanted_architectures(self, system_dicts, archs): - return [ - sd - for sd in system_dicts - if self.system_is_for_wanted_arch(sd, archs)] - - def system_is_for_wanted_arch(self, system_dict, archs): - morph = self.load_system_morphology(system_dict) - return morph['arch'] in archs - - def load_system_morphology(self, system_dict): - pathname = morphlib.util.sanitise_morphology_path(system_dict['morph']) - return self.load_morphology_from_named_file(pathname) - - def load_morphology_from_named_file(self, pathname): - finder = self.get_morphology_finder_for_root_repository() - morphology_text = finder.read_file(pathname) - loader = morphlib.morphloader.MorphologyLoader() - return loader.load_from_string(morphology_text) - - def get_morphology_finder_for_root_repository(self): - definitions_repo = morphlib.definitions_repo.open( - '.', search_for_root=True) - return morphlib.morphologyfinder.MorphologyFinder(definitions_repo) - - def filter_away_build_artifacts_on_public_trove(self, basenames): - result = [] - logging.debug('Filtering away already existing artifacts:') - for basename, exists in self.query_public_trove_for_artifacts(basenames): - logging.debug(' {0}: {1}'.format(basename, exists)) - if not exists: - result.append(basename) - logging.debug('End of filtering away') - return result - - def query_public_trove_for_artifacts(self, basenames): - host = self.settings['public-trove-host'] - - # FIXME: This could use - # contextlib.closing(urllib2.urlopen(url, data=data) instead - # of explicit closing. - url = 'http://{host}:8080/1.0/artifacts'.format(host=host) - data = json.dumps(basenames) - f = urllib2.urlopen(url, data=data) - obj = json.load(f) - return obj.items() - - def upload_build_artifacts_to_public_trove(self, basenames): - self.download_artifacts_locally(basenames) - self.upload_artifacts_to_public_trove(basenames) - - def download_artifacts_locally(self, basenames): - dirname = self.settings['local-build-artifacts-dir'] - self.create_directory_if_missing(dirname) - for i, basename in enumerate(basenames): - url = self.construct_artifact_url(basename) - pathname = os.path.join(dirname, basename) - if not os.path.exists(pathname): - self.status( - msg='Downloading {i}/{total} {basename}', - basename=repr(basename), i=i, total=len(basenames)) - self.download_from_url(url, dirname, pathname) - - def create_directory_if_missing(self, dirname): - if not os.path.exists(dirname): - os.makedirs(dirname) - - def construct_artifact_url(self, basename): - scheme = 'http' - netloc = '{host}:8080'.format(host=self.settings['build-trove-host']) - path = '/1.0/artifacts' - query = 'filename={0}'.format(urllib.quote_plus(basename)) - fragment = '' - components = (scheme, netloc, path, query, fragment) - return urlparse.urlunsplit(components) - - def download_from_url(self, url, dirname, pathname): - logging.info( - 'Downloading {url} to {pathname}'.format( - url=url, pathname=pathname)) - with open(pathname, 'wb') as output: - try: - incoming = urllib2.urlopen(url) - shutil.copyfileobj(incoming, output) - incoming.close() - except urllib2.HTTPError as e: - if pathname.endswith('.meta'): - return - self.status( - msg="ERROR: Can't download {url}: {explanation}", - url=url, - explanation=str(e)) - os.remove(pathname) - raise - - def upload_artifacts_to_public_trove(self, basenames): - self.status( - msg='Upload build artifacts to {trove}', - trove=self.settings['public-trove-host']) - rsync_files_to_server( - self.settings['local-build-artifacts-dir'], - basenames, - self.settings['public-trove-username'], - self.settings['public-trove-host'], - self.settings['public-trove-artifact-dir']) - set_permissions_on_server( - self.settings['public-trove-username'], - self.settings['public-trove-host'], - self.settings['public-trove-artifact-dir'], - basenames) - -class ReleaseArtifactPublisher(object): - - '''Publish release artifacts for a release.''' - - def __init__(self, settings, status): - self.settings = settings - self.status = status - - def publish_release_artifacts(self): - files = self.list_release_artifacts() - if files: - self.upload_release_artifacts_to_private_dir(files) - self.move_release_artifacts_to_public_dir(files) - self.create_symlinks_to_new_release_artifacts(files) - - def list_release_artifacts(self): - self.status(msg='Find release artifacts to publish') - return os.listdir(self.settings['release-artifact-dir']) - - def upload_release_artifacts_to_private_dir(self, files): - self.status(msg='Upload release artifacts to private directory') - path = self.settings['download-server-private-dir'] - self.create_directory_on_download_server(path) - self.rsync_files_to_download_server(files, path) - - def create_directory_on_download_server(self, path): - user = self.settings['download-server-username'] - host = self.settings['download-server-address'] - self.status(msg='Create {host}:{path}', host=host, path=path) - target = '{user}@{host}'.format(user=user, host=host) - cliapp.ssh_runcmd(target, ['mkdir', '-p', path]) - - def rsync_files_to_download_server(self, files, path): - self.status(msg='Upload release artifacts to download server') - rsync_files_to_server( - self.settings['release-artifact-dir'], - files, - self.settings['download-server-username'], - self.settings['download-server-address'], - path) - set_permissions_on_server( - self.settings['download-server-username'], - self.settings['download-server-address'], - path, - files) - - def move_release_artifacts_to_public_dir(self, files): - self.status(msg='Move release artifacts to public directory') - private_dir = self.settings['download-server-private-dir'] - public_dir = self.settings['download-server-public-dir'] - self.create_directory_on_download_server(public_dir) - - # Move just the contents of the private dir, not the dir - # itself (-mindepth). Avoid overwriting existing files (mv - # -n). - argv = ['find', private_dir, '-mindepth', '1', - '-exec', 'mv', '-n', '{}', public_dir + '/.', ';'] - - target = '{user}@{host}'.format( - user=self.settings['download-server-username'], - host=self.settings['download-server-address']) - cliapp.ssh_runcmd(target, argv) - - def create_symlinks_to_new_release_artifacts(self, files): - self.status(msg='FIXME: Create symlinks to new releas artifacts') - - -def rsync_files_to_server( - source_dir, source_filenames, user, host, target_dir): - - if not source_filenames: - return - - argv = [ - 'rsync', - '-a', - '--progress', - '--partial', - '--human-readable', - '--sparse', - '--protect-args', - '-0', - '--files-from=-', - source_dir, - '{user}@{host}:{path}'.format(user=user, host=host, path=target_dir), - ] - - files_list = '\0'.join(filename for filename in source_filenames) - cliapp.runcmd(argv, feed_stdin=files_list, stdout=None, stderr=None) - - -def set_permissions_on_server(user, host, target_dir, filenames): - # If we have no files, we can't form a valid command to run on the server - if not filenames: - return - target = '{user}@{host}'.format(user=user, host=host) - argv = ['xargs', '-0', 'chmod', '0644'] - files_list = ''.join( - '{0}\0'.format(os.path.join(target_dir, filename)) for filename in filenames) - cliapp.ssh_runcmd(target, argv, feed_stdin=files_list, stdout=None, stderr=None) - - -ReleaseUploader(description=__doc__).run() diff --git a/scripts/release-upload.test.conf b/scripts/release-upload.test.conf deleted file mode 100644 index 13227983..00000000 --- a/scripts/release-upload.test.conf +++ /dev/null @@ -1,10 +0,0 @@ -[config] -download-server-address = localhost -download-server-private-dir = /tmp/private -download-server-public-dir = /tmp/public -build-trove-host = ct-mcr-1.ducie.codethink.co.uk -public-trove-host = localhost -public-trove-username = root -public-trove-artifact-dir = /tmp/artifacts -release-artifact-dir = t.release-files -morph-cmd = /home/root/git-morph diff --git a/scripts/scriptslib.py b/scripts/scriptslib.py deleted file mode 100644 index 53c6ca8e..00000000 --- a/scripts/scriptslib.py +++ /dev/null @@ -1,156 +0,0 @@ -# Copyright (C) 2016 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. - -# Small library of useful things for the scripts that live here. - -import yaml -import subprocess -import os -import sys - -aliases = { - 'baserock:': 'git://%(trove)s/baserock/', - 'freedesktop:': 'git://anongit.freedesktop.org/', - 'github:': 'git://github.com/', - 'gnome:': 'git://git.gnome.org/', - 'upstream:': 'git://%(trove)s/delta/' -} - -def parse_repo_alias(repo, trove_host='git.baserock.org'): - global aliases - remote = repo[:repo.find(':') + 1] - aliases = {k: v % {'trove': trove_host} for k, v in aliases.iteritems()} - try: - return repo.replace(remote, aliases[remote]) - except KeyError as e: - raise Exception("Unknown repo-alias \"%s\"" % repo) - -def definitions_root(): - return subprocess.check_output( - ["git", "rev-parse", "--show-toplevel"]).strip() - -def load_yaml_file(yaml_file): - with open(yaml_file, 'r') as f: - return yaml.safe_load(f) - - -class BaserockMeta(object): - '''An object representing Baserock metadata contained in a Baserock - system image, for available metadata formats''' - - def __init__(self): - self.metas = {} - - def get_each(self): - '''Yield an iterable for the whole list of metas''' - for key in self.metas: - yield self.metas[key] - - def get_name(self, name): - '''Yield an iterable of metadata matched by name, e.g. `bash`''' - for key in self.metas: - if self.metas[key]['source-name'] == name: - yield self.metas[key] - - def import_meta(self, meta_text): - importers = (self.import_meta_ybd, - self.import_meta_morph) - - for i in importers: - try: - i(meta_text) - return - except (KeyError, Exception) as err: - pass - - # Shouldn't get here - sys.stderr.write('Metadata format not recognised.\n' - 'Error:\n') - raise err - - def import_meta_morph(self, meta_text): - self._add_meta(yaml.load(meta_text)) - - def import_meta_ybd(self, meta_text): - source = yaml.load(meta_text) - - null = '0' * 32 - - if 'configuration' in source: - # This is the deployment metadata, ignore - return - elif 'repo' not in source: - kind = 'stratum' - contents = 'components' - source['repo'] = 'upstream:definitions' - source['ref'] = null # No ref info - else: - kind = 'chunk' - contents = 'components' - - repo = parse_repo_alias(source['repo']) - source_name = '-'.join( - source['products'][0]['artifact'].split('-')[:-1]) - - # Needed until YBD provides cache-key in metadata - if not 'cache-key' in source: - source['cache-key'] = null - - for product in source['products']: - - self._add_meta({ - 'kind': kind, - 'source-name': source_name, - 'artifact-name': product['artifact'], - 'contents': product[contents], - 'repo': repo, - 'repo-alias': source['repo'], - 'sha1': source['ref'], - 'original_ref': source['ref'], - 'cache-key': source['cache-key'] - }) - - def _add_meta(self, meta_dict): - '''Validate and add a meta''' - - ignore = ('configuration', - 'system-artifact-name') - - for i in ignore: - if i in meta_dict: - return - - required_fields = ('repo', 'sha1', 'contents') - for f in required_fields: - if not f in meta_dict: - raise Exception('Metadata format not recognised, no ' - 'value for \'%s\'. Data: \'%s\''% (f, str(meta_dict))) - - self.metas[meta_dict['artifact-name']] = meta_dict - - -def meta_load_from_dir(meta_dir_path): - '''Read Baserock metadata from a directory''' - - files = [f for f in os.listdir(meta_dir_path) - if os.path.isfile(os.path.join(meta_dir_path, f))] - - meta = BaserockMeta() - for f in files: - if f.endswith('.meta'): - meta.import_meta( - open(os.path.join(meta_dir_path, f), 'r').read()) - - return meta diff --git a/scripts/yaml-jsonschema b/scripts/yaml-jsonschema deleted file mode 100755 index 64f52a79..00000000 --- a/scripts/yaml-jsonschema +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/env python -# Copyright (C) 2015 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, see . - - -'''A tool to validate YAML files against the JSON-Schema schemas. - -This wraps Python `jsonschema` module so that YAML schemas can be understood -and YAML data can be validated. - -Usage: yaml-jsonschema SCHEMA INPUT1 [INPUT2, ...] - -''' - - -import jsonschema -import yaml - -import sys - - -schema_file = sys.argv[1] -input_files = sys.argv[2:] - - -with open(schema_file) as f: - schema = yaml.load(f) - - -for input_file in input_files: - with open(input_file) as f: - data = yaml.load(f) - - try: - jsonschema.validate(data, schema) - print("%s: valid" % input_file) - except jsonschema.ValidationError as e: - # Print 'e' instead of 'e.message' for more information! - print("%s: %s" % (input_file, e.message)) diff --git a/strata/CPAN-Mini-Inject.morph b/strata/CPAN-Mini-Inject.morph deleted file mode 100644 index d4566bd3..00000000 --- a/strata/CPAN-Mini-Inject.morph +++ /dev/null @@ -1,306 +0,0 @@ -name: CPAN-Mini-Inject -kind: stratum -description: A collection of perl distributions used by CPAN::Mini::Inject -build-depends: -- morph: strata/core.morph -- morph: strata/perl-common.morph -chunks: -- name: Archive-Zip - repo: upstream:cpan/Archive-Zip-tarball - ref: 42c8b23669eac442a303190dad44d78cea63cf59 - unpetrify-ref: Archive-Zip-1.49 - build-system: cpan -- name: CPAN-DistnameInfo - repo: upstream:cpan/CPAN-DistnameInfo-tarball - ref: 56f58177bddb4002f0dc57811fe0f72a8fc9e479 - unpetrify-ref: CPAN-DistnameInfo-0.12 - build-system: cpan -- name: Compress-Bzip2 - repo: upstream:cpan/Compress-Bzip2-tarball - ref: efd32dfb6c52e28f3b158930b64f986ff8760409 - unpetrify-ref: Compress-Bzip2-2.22 - build-system: cpan -- name: Encode-Locale - repo: upstream:cpan/Encode-Locale-tarball - ref: e4bf16d2fde5df6eadd91475e3dcca56b87b1eb0 - unpetrify-ref: Encode-Locale-1.05 - build-system: cpan -- name: File-Slurp - repo: upstream:cpan/File-Slurp-tarball - ref: 9d4173f2716c2f9a2d26f8f9ab0f47b351b87de7 - unpetrify-ref: File-Slurp-9999.19 - build-system: cpan -- name: File-Spec-Native - repo: upstream:cpan/File-Spec-Native-tarball - ref: 475e3c7cb559a68109d8c90ab8ff0b6a37c98793 - unpetrify-ref: File-Spec-Native-1.004 - build-system: cpan -- name: File-Which - repo: upstream:cpan/File-Which-tarball - ref: a276db189a656a4cc5881a2ebc4cad3113685030 - unpetrify-ref: File-Which-1.19 - build-system: cpan -- name: File-HomeDir - repo: upstream:cpan/File-HomeDir-tarball - ref: d08b8685307cd5e8980f3c9409d4b3c1d06b2c24 - unpetrify-ref: File-HomeDir-1.00 - build-system: cpan - build-depends: - - File-Which -- name: HTML-Tagset - repo: upstream:cpan/HTML-Tagset-tarball - ref: 85713405a9d0b06f3abba0c2ddfaab2077344e8f - unpetrify-ref: HTML-Tagset-3.20 - build-system: cpan -- name: HTML-Parser - repo: upstream:cpan/HTML-Parser-tarball - ref: 2f253cfc85ffd55a8acb988e91f0bc5ab348124c - unpetrify-ref: HTML-Parser-3.71 - build-system: cpan - build-depends: - - HTML-Tagset -- name: CGI - repo: upstream:cpan/CGI-tarball - ref: f9f3ab3056d94292adb4ab2e1451645bee989769 - unpetrify-ref: CGI-4.21 - build-system: cpan - build-depends: - - HTML-Tagset - - HTML-Parser -- name: HTTP-Date - repo: upstream:cpan/HTTP-Date-tarball - ref: f1f9b3164e11c877ed5d509738551a56ac9b37f0 - unpetrify-ref: HTTP-Date-6.02 - build-system: cpan -- name: File-Listing - repo: upstream:cpan/File-Listing-tarball - ref: c1655656f083337cbfd901455db96695890f2d89 - unpetrify-ref: File-Listing-6.04 - build-system: cpan - build-depends: - - HTTP-Date -- name: HTTP-Server-Simple - repo: upstream:cpan/HTTP-Server-Simple-tarball - ref: e2d680ac7c6f0bb36808aa45e1453c8b585d2717 - unpetrify-ref: HTTP-Server-Simple-0.50 - build-system: cpan - build-depends: - - CGI - - HTML-Tagset - - HTML-Parser -- name: IO-HTML - repo: upstream:cpan/IO-HTML-tarball - ref: adc9c8b29ed1144626af564f936811a9d5e319a6 - unpetrify-ref: IO-HTML-1.001 - build-system: cpan -- name: LWP-MediaTypes - repo: upstream:cpan/LWP-MediaTypes-tarball - ref: d550937a3b104e53897b8f51dd528724f721858a - unpetrify-ref: LWP-MediaTypes-6.02 - build-system: cpan -- name: Number-Compare - repo: upstream:cpan/Number-Compare-tarball - ref: af206af84f17997c2967416423e9cdf516e17203 - unpetrify-ref: Number-Compare-0.03 - build-system: cpan -- name: Path-Class - repo: upstream:cpan/Path-Class-tarball - ref: 5f549fcb4056f8b314c7f7336a020ef9735fb384 - unpetrify-ref: Path-Class-0.35 - build-system: cpan -- name: Text-Glob - repo: upstream:cpan/Text-Glob-tarball - ref: 7c186823d68db1d2bd078fb91a95d30cd12890da - unpetrify-ref: Text-Glob-0.09 - build-system: cpan -- name: File-Find-Rule - repo: upstream:cpan/File-Find-Rule-tarball - ref: 5e7c9d8e7b80b54baa3f8161222b5a8e9077c0aa - unpetrify-ref: File-Find-Rule-0.33 - build-system: cpan - build-depends: - - Text-Glob - - Number-Compare -- name: Data-Compare - repo: upstream:cpan/Data-Compare-tarball - ref: 8fddd4400d09891094843fe9e77fec74e4510c67 - unpetrify-ref: Data-Compare-1.25 - build-system: cpan - build-depends: - - File-Find-Rule - - Text-Glob - - Number-Compare -- name: CPAN-Checksums - repo: upstream:cpan/CPAN-Checksums-tarball - ref: 26d8d4d1d2a7a8ebcffc6ff5c6b13495f74dd129 - unpetrify-ref: CPAN-Checksums-2.10 - build-system: cpan - build-depends: - - Text-Glob - - Data-Compare - - File-Find-Rule - - Number-Compare - - Compress-Bzip2 -- name: Dist-Metadata - repo: upstream:cpan/Dist-Metadata-tarball - ref: 2ca9db53e3e8164ecf0c95bf93fa289019e1b92c - unpetrify-ref: Dist-Metadata-0.926 - build-system: cpan - build-depends: - - Path-Class - - File-Spec-Native - - Archive-Zip - - CPAN-DistnameInfo -- name: URI - repo: upstream:cpan/URI-tarball - ref: 9165b237ad8fae18b36d4d40d6e2ccfde7b136c7 - unpetrify-ref: URI-1.69 - build-system: cpan -- name: Net-HTTP - repo: upstream:cpan/Net-HTTP-tarball - ref: 8780c70ceb3019aa50e129cb62daa3bfaebd0e82 - unpetrify-ref: Net-HTTP-6.09 - build-system: cpan - build-depends: - - URI -- name: HTTP-Message - repo: upstream:cpan/HTTP-Message-tarball - ref: d403562e3f7ac96df7cee2c1709ecd970b6c9761 - unpetrify-ref: HTTP-Message-6.10 - build-system: cpan - build-depends: - - Encode-Locale - - HTTP-Date - - IO-HTML - - URI - - LWP-MediaTypes -- name: HTTP-Negotiate - repo: upstream:cpan/HTTP-Negotiate-tarball - ref: ab7c5218426d7424b8f7b5c333870958ad6609da - unpetrify-ref: HTTP-Negotiate-6.01 - build-system: cpan - build-depends: - - Encode-Locale - - HTTP-Date - - IO-HTML - - LWP-MediaTypes - - URI - - HTTP-Message -- name: HTTP-Cookies - repo: upstream:cpan/HTTP-Cookies-tarball - ref: 4861af5daed8f4ba6d0041aed25e98f403d96fc0 - unpetrify-ref: HTTP-Cookies-6.01 - build-system: cpan - build-depends: - - Encode-Locale - - HTTP-Date - - IO-HTML - - URI - - LWP-MediaTypes - - HTTP-Message -- name: HTTP-Daemon - repo: upstream:cpan/HTTP-Daemon-tarball - ref: 64ffbaec18717f99cb80441d8b474868e39939fb - unpetrify-ref: HTTP-Daemon-6.01 - build-system: cpan - build-depends: - - Encode-Locale - - HTTP-Date - - IO-HTML - - LWP-MediaTypes - - URI - - HTTP-Message -- name: WWW-RobotRules - repo: upstream:cpan/WWW-RobotRules-tarball - ref: 80c86924c3437c0ad64852ea29c7eab1197dfe90 - unpetrify-ref: WWW-RobotRules-6.02 - build-system: cpan - build-depends: - - URI -- name: YAML - repo: upstream:cpan/YAML-tarball - ref: 2fe5b8de1e9d06482aa76303e7342bc6605700ea - unpetrify-ref: YAML-1.15 - build-system: cpan -- name: libwww-perl - repo: upstream:cpan/libwww-perl-tarball - ref: 20f161ca116b8a4fc7ac986a317d7f6d43e5c173 - unpetrify-ref: libwww-perl-6.13 - build-system: cpan - build-depends: - - Encode-Locale - - Net-HTTP - - HTTP-Daemon - - HTTP-Date - - HTTP-Negotiate - - HTTP-Message - - IO-HTML - - LWP-MediaTypes - - HTML-Tagset - - WWW-RobotRules - - HTTP-Cookies - - File-Listing - - HTML-Parser - - URI -- name: CPAN-Mini - repo: upstream:cpan/CPAN-Mini-tarball - ref: 2a051e40a3fc09bba24c335060e8df327d313e55 - unpetrify-ref: CPAN-Mini-1.111016 - build-system: cpan - build-depends: - - Encode-Locale - - File-Which - - HTTP-Date - - HTTP-Cookies - - HTTP-Daemon - - LWP-MediaTypes - - HTTP-Negotiate - - File-Listing - - URI - - File-HomeDir - - HTML-Tagset - - HTTP-Message - - Net-HTTP - - IO-HTML - - libwww-perl - - HTML-Parser - - WWW-RobotRules -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph - repo: upstream:cpan/CPAN-Mini-Inject-tarball - ref: 74e30d582ac01d80a7f1b28af247d0a5ee913d55 - unpetrify-ref: master - build-depends: - - File-Spec-Native - - HTTP-Negotiate - - LWP-MediaTypes - - Dist-Metadata - - File-Which - - Compress-Bzip2 - - libwww-perl - - CGI - - File-Slurp - - IO-HTML - - Number-Compare - - CPAN-Mini - - HTML-Tagset - - HTTP-Server-Simple - - HTTP-Message - - File-HomeDir - - Path-Class - - Archive-Zip - - Text-Glob - - Data-Compare - - HTTP-Date - - URI - - File-Listing - - HTTP-Cookies - - CPAN-DistnameInfo - - HTML-Parser - - Encode-Locale - - HTTP-Daemon - - File-Find-Rule - - YAML - - WWW-RobotRules - - Net-HTTP - - CPAN-Checksums diff --git a/strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph b/strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph deleted file mode 100644 index a92c26f3..00000000 --- a/strata/CPAN-Mini-Inject/CPAN-Mini-Inject.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: CPAN-Mini-Inject -kind: chunk -build-system: module-build diff --git a/strata/NetworkManager-common.morph b/strata/NetworkManager-common.morph deleted file mode 100644 index b1b47e5d..00000000 --- a/strata/NetworkManager-common.morph +++ /dev/null @@ -1,48 +0,0 @@ -name: NetworkManager-common -kind: stratum -build-depends: -- morph: strata/bluetooth.morph -- morph: strata/connectivity.morph -- morph: strata/device-management.morph -- morph: strata/network-security.morph -- morph: strata/privileges-management.morph -- morph: strata/python-pygobject.morph -chunks: -- name: libmbim - repo: upstream:libmbim - ref: 50cddf48823f05ec124afad80c0d948184e19b00 - unpetrify-ref: 1.14.0 - build-system: autotools -- name: libqmi - repo: upstream:libqmi - ref: 7bdb9347cf08cf26ed8e420a11b358befa81824b - unpetrify-ref: 1.16.0 - build-system: autotools -- name: ModemManager - morph: strata/NetworkManager-common/ModemManager.morph - repo: upstream:ModemManager - ref: 397761c9758c3a8c2d130afaf36dab645d6e0ecf - unpetrify-ref: 1.6.0 - build-depends: - - libmbim - - libqmi -- name: libndp - repo: upstream:libndp - ref: 2f721c4ff519f38f46695a60d9f9d88f35bf3c1d - unpetrify-ref: v1.6 - build-system: autotools -- name: readline6 - morph: strata/NetworkManager-common/readline6.morph - repo: upstream:readline - ref: 7628b745a813aac53586b640da056a975f1c443e - unpetrify-ref: readline-6.3 - build-system: autotools -- name: NetworkManager - morph: strata/NetworkManager-common/NetworkManager.morph - repo: upstream:NetworkManager - ref: 9ed1921ce3b8f1b856d97128913b33c7eeeed6e9 - unpetrify-ref: 1.8.2 - build-depends: - - ModemManager - - libndp - - readline6 diff --git a/strata/NetworkManager-common/ModemManager.morph b/strata/NetworkManager-common/ModemManager.morph deleted file mode 100644 index 909f6eca..00000000 --- a/strata/NetworkManager-common/ModemManager.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: ModemManager -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc -system-integration: - ModemManager-misc: - 00-enable-ModemManager-unit: - - systemctl enable ModemManager diff --git a/strata/NetworkManager-common/NetworkManager.morph b/strata/NetworkManager-common/NetworkManager.morph deleted file mode 100644 index 4964fa2e..00000000 --- a/strata/NetworkManager-common/NetworkManager.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: NetworkManager -kind: chunk -build-system: autotools -configure-commands: -- NOCONFIGURE=1 ./autogen.sh -- PYTHON=python3 ./configure --prefix="$PREFIX" --sysconfdir=/etc --with-session-tracking=systemd --disable-ppp --enable-more-warnings=yes --disable-gtk-doc -system-integration: - ModemManager-misc: - 00-enable-NetworkManager-unit: - - systemctl enable NetworkManager diff --git a/strata/NetworkManager-common/readline6.morph b/strata/NetworkManager-common/readline6.morph deleted file mode 100644 index e3776357..00000000 --- a/strata/NetworkManager-common/readline6.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: readline6 -kind: chunk -build-system: autotools - -configure-commands: -# Skip the autoreconf step, it's broken for some reason and the generated -# files are committed to the Git repo. -- ./configure --prefix="$PREFIX" diff --git a/strata/ansible.morph b/strata/ansible.morph deleted file mode 100644 index f21cb222..00000000 --- a/strata/ansible.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: ansible -kind: stratum -description: A stratum with ansible and its dependencies -build-depends: -- morph: strata/core.morph -- morph: strata/python-common.morph -chunks: -- name: ansible - morph: strata/ansible/ansible.morph - repo: upstream:ansible - ref: ebc8d48d34296fe010096f044e2b7591df37a622 - unpetrify-ref: v1.8.4 - submodules: - lib/ansible/modules/core: - url: upstream:ansible-modules-core.git - v2/ansible/modules/core: - url: upstream:ansible-modules-core.git - v2/ansible/modules/extras: - url: upstream:ansible-modules-extras.git - lib/ansible/modules/extras: - url: upstream:ansible-modules-extras.git -- name: openstack-ansible-modules - morph: strata/ansible/openstack-ansible-modules.morph - repo: upstream:openstack/openstack-ansible-modules - ref: 451dcdeadfd35615a867d5e59a684e4aa82959ae - unpetrify-ref: master diff --git a/strata/ansible/ansible.morph b/strata/ansible/ansible.morph deleted file mode 100644 index dbc6ec4b..00000000 --- a/strata/ansible/ansible.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: ansible -kind: chunk -build-system: python-distutils -post-install-commands: -- | - install -D -m644 /proc/self/fd/0 "$DESTDIR/etc/ansible/ansible.cfg" <= 3.18 -- scripts/config -e EXT4_USE_FOR_EXT23 -- scripts/config -e PACKET -- scripts/config -e UNIX -- scripts/config -e INET -- scripts/config -e IP_MULTICAST -- scripts/config -e IP_PNP -- scripts/config -e IP_PNP_DHCP -- scripts/config -e IP_PNP_BOOTP -- scripts/config -e MSDOS_FS -- scripts/config -e NETWORK_FILESYSTEMS -- scripts/config -e NET_KEY -- scripts/config -e NFS_FS -- scripts/config -e NFS_V3 -- scripts/config -e ROOT_NFS -- scripts/config -e LOCKD -- scripts/config -e LOCKD_V4 -- scripts/config -e NFS_COMMON -- scripts/config -e SUNRPC -- scripts/config -e SYSVIPC -- scripts/config -e BTRFS_FS -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e TMPFS -- scripts/config -e TMPFS_POSIX_ACL -- scripts/config -e VFAT_FS -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e VETH -- yes '' | make oldconfig -build-commands: -- make zImage $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage diff --git a/strata/bsp-armv7-versatile.morph b/strata/bsp-armv7-versatile.morph deleted file mode 100644 index 470f6c56..00000000 --- a/strata/bsp-armv7-versatile.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: bsp-armv7-versatile -kind: stratum -description: The platform dependent components required to boot an ARM versatile development - board. -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-armv7-versatile - morph: strata/bsp-armv7-versatile/linux-armv7-versatile.morph - repo: upstream:linux-stable - ref: 660613d1a4e94144490850b6c3d350331860fac4 - unpetrify-ref: v3.19.2 diff --git a/strata/bsp-armv7-versatile/linux-armv7-versatile.morph b/strata/bsp-armv7-versatile/linux-armv7-versatile.morph deleted file mode 100644 index ed0194b8..00000000 --- a/strata/bsp-armv7-versatile/linux-armv7-versatile.morph +++ /dev/null @@ -1,31 +0,0 @@ -name: linux-armv7-versatile -kind: chunk -configure-commands: -- make ARCH=arm vexpress_defconfig -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -d BTRFS_FS_CHECK_INTEGRITY -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config -e BLK_DEV_LOOP -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e FB_VESA -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- yes '' | make oldconfig -build-commands: -- make ARCH=arm zImage $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage diff --git a/strata/bsp-armv7b-highbank.morph b/strata/bsp-armv7b-highbank.morph deleted file mode 100644 index 397b9fcb..00000000 --- a/strata/bsp-armv7b-highbank.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: bsp-armv7b-highbank -kind: stratum -description: The platform dependent components required to boot an ARM highbank board. -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-armv7b-highbank - morph: strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph - repo: upstream:linux-stable - - # Linux 3.16 and later do not boot on Calxeda. They fail just before - # starting 'init' with this sort of message: - # - # Unhandled fault: imprecise external abort (0xc06) at 0xb6fea878 - - ref: f35b5e46feabab668a44df5b33f3558629f94dfc - unpetrify-ref: v3.15.10 diff --git a/strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph b/strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph deleted file mode 100644 index 1b86d320..00000000 --- a/strata/bsp-armv7b-highbank/linux-armv7b-highbank.morph +++ /dev/null @@ -1,53 +0,0 @@ -name: linux-armv7b-highbank -kind: chunk -configure-commands: -- make multi_v7_defconfig -- scripts/config -e CPU_BIG_ENDIAN -- scripts/config -e CPU_ENDIAN_BE8 -- scripts/config -e CPU_BE8_BOOT_LE -- scripts/config -e PACKET -- scripts/config -e UNIX -- scripts/config -e NET_KEY -- scripts/config -e INET -- scripts/config -e IP_MULTICAST -- scripts/config -e IP_PNP -- scripts/config -e IP_PNP_DHCP -- scripts/config -e IP_PNP_BOOTP -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e DM_SNAPSHOT -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e BLK_DEV_LOOP -- scripts/config -e BTRFS_FS -- scripts/config -e TMPFS -- scripts/config -e FUSE_FS -#- scripts/config -e OVERLAY_FS # Activate when we build Linux >= 3.18 -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config -e NETWORK_FILESYSTEMS -- scripts/config -e NFS_FS -- scripts/config -e NFS_V3 -- scripts/config -e ROOT_NFS -- scripts/config -e LOCKD -- scripts/config -e LOCKD_V4 -- scripts/config -e NFS_COMMON -- scripts/config -e SUNRPC -- scripts/config -e SYSVIPC -- scripts/config -e CONFIG_POSIX_MQUEUE -- scripts/config -e CPU_IDLE -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_USE_FOR_EXT23 -- scripts/config -e MSDOS_FS -- scripts/config -e VFAT_FS -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- yes '' | make oldconfig -build-commands: -- make zImage $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage diff --git a/strata/bsp-armv7b-vexpress-tc2.morph b/strata/bsp-armv7b-vexpress-tc2.morph deleted file mode 100644 index ea67c386..00000000 --- a/strata/bsp-armv7b-vexpress-tc2.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: bsp-armv7b-vexpress-tc2 -kind: stratum -description: The platform dependent components required to boot Versatile TC2 board -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-armv7b-vexpress-tc2 - morph: strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph - repo: upstream:linux-stable - ref: 660613d1a4e94144490850b6c3d350331860fac4 - unpetrify-ref: v3.19.2 diff --git a/strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph b/strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph deleted file mode 100644 index fd6fab15..00000000 --- a/strata/bsp-armv7b-vexpress-tc2/linux-armv7b-vexpress-tc2.morph +++ /dev/null @@ -1,57 +0,0 @@ -name: linux-armv7b-vexpress-tc2 -kind: chunk -configure-commands: -- make vexpress_defconfig -- scripts/config -e CPU_BIG_ENDIAN -- scripts/config -e CPU_ENDIAN_BE8 -- scripts/config -e CPU_BE8_BOOT_LE -- scripts/config -e PACKET -- scripts/config -e UNIX -- scripts/config -e NET_KEY -- scripts/config -e INET -- scripts/config -e IP_MULTICAST -- scripts/config -e IP_PNP -- scripts/config -e IP_PNP_DHCP -- scripts/config -e IP_PNP_BOOTP -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e DM_SNAPSHOT -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e BLK_DEV_LOOP -- scripts/config -e BTRFS_FS -- scripts/config -e TMPFS -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e CGROUPS -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e AUTOFS4_FS -- scripts/config -e NETWORK_FILESYSTEMS -- scripts/config -e NFS_FS -- scripts/config -e NFS_V3 -- scripts/config -e ROOT_NFS -- scripts/config -e LOCKD -- scripts/config -e LOCKD_V4 -- scripts/config -e NFS_COMMON -- scripts/config -e SUNRPC -- scripts/config -e SYSVIPC -- scripts/config -e CONFIG_POSIX_MQUEUE -- scripts/config -e CPU_IDLE -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_USE_FOR_EXT23 -- scripts/config -e MSDOS_FS -- scripts/config -e VFAT_FS -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e VETH -- yes '' | make oldconfig -build-commands: -- make zImage vexpress-v2p-ca15_a7.dtb -- | - cat arch/arm/boot/zImage arch/arm/boot/dts/vexpress-v2p-ca15_a7.dtb | - dd conv=sync bs=4 of=kernel.bin -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp kernel.bin "$DESTDIR"/boot/zImage diff --git a/strata/bsp-armv7l-altera-socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit.morph deleted file mode 100644 index 403e04e1..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit.morph +++ /dev/null @@ -1,39 +0,0 @@ -name: bsp-armv7l-altera-socfpga-devkit -kind: stratum -description: | - The platform dependent components required to boot the Altera Cortex-A9 - HPS core on an Altera SoCFPGA development kit. -build-depends: -- morph: strata/coreutils-common.morph -- morph: strata/tools.morph -chunks: -- name: u-boot-tools@socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit/u-boot-tools@socfpga-devkit.morph - repo: upstream:u-boot - ref: 905e8f9e53766e606bd4a0ed46d804889e613f32 - unpetrify-ref: v2015.07-rc1 -- name: u-boot@socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit/u-boot@socfpga-devkit.morph - repo: upstream:u-boot-socfpga - ref: 32c1d91bc0d10beca54c2dfc5b475d4ffeffc15a - unpetrify-ref: socfpga_v2013.01.01 -- name: bsp-support@socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit/bsp-support@socfpga-devkit.morph - repo: baserock:baserock/bsp-support - ref: 95e6be2188ad9dfd13cb8887cdc698519831871d - unpetrify-ref: master - build-depends: - - u-boot-tools@socfpga-devkit -- name: preloader@socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit/preloader@socfpga-devkit.morph - repo: upstream:u-boot-socfpga - ref: 32c1d91bc0d10beca54c2dfc5b475d4ffeffc15a - unpetrify-ref: socfpga_v2013.01.01 - build-depends: - - bsp-support@socfpga-devkit - - u-boot-tools@socfpga-devkit -- name: linux-armv7l-altera-socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit/linux-armv7l-altera-socfpga-devkit.morph - repo: upstream:linux - ref: e26081808edadfd257c6c9d81014e3b25e9a6118 - unpetrify-ref: v4.1-rc4 diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/bsp-support@socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit/bsp-support@socfpga-devkit.morph deleted file mode 100644 index 2e206b4e..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/bsp-support@socfpga-devkit.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: bsp-support@socfpga-devkit -kind: chunk -build-commands: -# Modify auto-generated source files: -- mv altera-socfpga/* . -- for file in patches/*.diff; do patch -p 1 < "$file"; done -- sed -i 's/^PRELOADER_SETTINGS_DIR := .*$/PRELOADER_SETTINGS_DIR := .\/hps_hps_0/' hardware-handoff/spl_bsp/Makefile -- sed -i 's/^CROSS_COMPILE := .*$/CROSS_COMPILE := \/usr\/bin\//' hardware-handoff/spl_bsp/Makefile -- mkenvimage -s 4096 -o socfpga-devkit-env.img socfpga-devkit-env.txt -- dtc -f -I dts -O dtb dts-generated/socfpga-devkit.dts > socfpga-devkit.dtb -install-commands: -- mkdir -p "$DESTDIR/boot" -- install -m 755 socfpga-devkit-env.img "$DESTDIR/boot" -- install -m 755 socfpga-devkit.dtb "$DESTDIR/boot" -# These files are required later, to be built against U-Boot: -- mkdir -p "$DESTDIR/tmp/preloader" -- cp -R ./hardware-handoff/* "$DESTDIR/tmp/preloader" diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/device-tree-compiler.morph b/strata/bsp-armv7l-altera-socfpga-devkit/device-tree-compiler.morph deleted file mode 100644 index 8abfafc8..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/device-tree-compiler.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: device-tree-compiler -kind: chunk -build-commands: -- make all -install-commands: -- make install DESTDIR="$DESTDIR" PREFIX="$PREFIX" diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/linux-armv7l-altera-socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit/linux-armv7l-altera-socfpga-devkit.morph deleted file mode 100644 index be372265..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/linux-armv7l-altera-socfpga-devkit.morph +++ /dev/null @@ -1,34 +0,0 @@ -name: linux-armv7l-altera-socfpga-devkit -kind: chunk -configure-commands: -- git status -- make ARCH=arm socfpga_defconfig -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -d BTRFS_FS_CHECK_INTEGRITY -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config -e BLK_DEV_LOOP -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e FB_VESA -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e IPV6 -- scripts/config -d MTD_NAND -- yes '' | make oldconfig -build-commands: -- make ARCH=arm LOADADDR=0x8000 zImage dtbs $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage -- cp arch/arm/boot/dts/socfpga_cyclone5*.dtb "$DESTDIR"/boot/ diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/preloader@socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit/preloader@socfpga-devkit.morph deleted file mode 100644 index c61b10a7..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/preloader@socfpga-devkit.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: preloader@socfpga-devkit -kind: chunk -configure-commands: -- mkdir uboot-socfpga -- find -maxdepth 1 | egrep -v '^./uboot-socfpga|\.$' | xargs -I {} mv {} uboot-socfpga -- cp -R /tmp/preloader/spl_bsp/* . -- cp -R /tmp/preloader/hps_hps_0 . -build-commands: -- make -- mkimage -T socfpgaimage -d uboot-socfpga/spl/u-boot-spl.bin preloader.bin -# Signed preloader needs to be duplicated four times -# which U-Boot's mkimage tool doesn't support -- dd if=/dev/zero of=socfpga-preloader.img bs=64K count=4 -- for i in $(seq 0 3); do dd if=preloader.bin of=socfpga-preloader.img bs=64K seek="$i" conv=notrunc; done -install-commands: -- mkdir -p "$DESTDIR/boot" -- install -m 755 socfpga-preloader.img "$DESTDIR/boot" diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/u-boot-tools@socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit/u-boot-tools@socfpga-devkit.morph deleted file mode 100644 index f7d3f7cb..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/u-boot-tools@socfpga-devkit.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: u-boot-tools@socfpga-devkit -kind: chunk -configure-commands: -- git status -- make ARCH=arm socfpga_cyclone5_config -build-commands: -- make ARCH=arm tools -install-commands: -- mkdir -p "$DESTDIR$PREFIX/bin" -- install -m 755 tools/img2brec.sh "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/jtagconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/netconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkenvimage "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkimage "$DESTDIR$PREFIX/bin/." diff --git a/strata/bsp-armv7l-altera-socfpga-devkit/u-boot@socfpga-devkit.morph b/strata/bsp-armv7l-altera-socfpga-devkit/u-boot@socfpga-devkit.morph deleted file mode 100644 index 2b7ce450..00000000 --- a/strata/bsp-armv7l-altera-socfpga-devkit/u-boot@socfpga-devkit.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: u-boot@socfpga-devkit -kind: chunk -configure-commands: -- make ARCH=arm socfpga_cyclone5_config -build-commands: -- make ARCH=arm -install-commands: -- mkdir -p "$DESTDIR/boot" -- install -m 755 u-boot.img "$DESTDIR/boot" diff --git a/strata/bsp-armv8b64-generic.morph b/strata/bsp-armv8b64-generic.morph deleted file mode 100644 index 636e62b4..00000000 --- a/strata/bsp-armv8b64-generic.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: bsp-armv8b64-generic -kind: stratum -description: | - The set of platform specific components required for booting generic ARMv8 - systems in big-endian mode, such as the 64-bit APM XGene ARM based m400 - Moonshot cartridge. -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-armv8b64-generic - morph: strata/bsp-armv8b64-generic/linux-armv8b64-generic.morph - repo: upstream:linux - ref: cd1397b1f6e429b82e94565b0af93c6bd44e4271 - unpetrify-ref: baserock/bjdooks/m400-be3 - build-depends: [] diff --git a/strata/bsp-armv8b64-generic/linux-armv8b64-generic.morph b/strata/bsp-armv8b64-generic/linux-armv8b64-generic.morph deleted file mode 100644 index 9362eb6e..00000000 --- a/strata/bsp-armv8b64-generic/linux-armv8b64-generic.morph +++ /dev/null @@ -1,278 +0,0 @@ -name: linux-armv8b64-generic -kind: chunk -configure-commands: -- make ARCH=arm64 defconfig -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config -e CEPH_FS -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e VIRTIO -- scripts/config -e VIRTIO_RING -- scripts/config -e VIRTIO_PCI -- scripts/config -e VIRTIO_BALLOON -- scripts/config -e VIRTIO_BLK -- scripts/config -e VIRTIO_NET -- scripts/config -e VIRTIO_CONSOLE -- scripts/config -e HW_RANDOM_VIRTIO -- scripts/config -e 9P_FS -- scripts/config -e 9P_FSCACHE -- scripts/config -e 9P_FS_POSIX_ACL -- scripts/config -e NET_9P -- scripts/config -e NET_9P_VIRTIO -- scripts/config -e R8169 -- scripts/config -e 8139TOO -- scripts/config -e 8139CP -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e KVM -- scripts/config -e TUN -- scripts/config -e BRIDGE -- scripts/config -e VHOST_NET -- scripts/config -e NF_NAT -- scripts/config -e IP_NF_NAT -- scripts/config -e IP_NF_TARGET_MASQUERADE -- scripts/config -e FB_VESA -- scripts/config -e HOTPLUG_PCI -- scripts/config -e HOTPLUG_PCI_ACPI -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e IPV6 -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -# Required for M400 -- scripts/config -e SATA_AHCI_PLATFORM -- scripts/config -e AHCI_XGENE -- scripts/config -e GENERIC_PHY -- scripts/config -e PHY_XGENE -- scripts/config -e NET_VENDOR_MELLANOX -- scripts/config -e MLX4_EN -- scripts/config -e MLX4_EN_DCB -- scripts/config -e MLX4_EN_VXLAN -- scripts/config -e MLX4_CORE -- scripts/config -e MLX5_CORE -- scripts/config -e NET_IP_TUNNEL -- scripts/config -e VXLAN -- scripts/config -e UIO -- scripts/config -e UIO_PDRV_GENIRQ -- scripts/config -e GPIO_DWAPB -- scripts/config -e KEYBOARD_GPIO -- scripts/config -e INPUT_POLLDEV -- scripts/config -e KEYBOARD_GPIO_POLLED -- scripts/config -d DMA_CMA -- scripts/config -e POWER_RESET -- scripts/config -e POWER_RESET_GPIO -- scripts/config -e POWER_RESET_SYSCON -- scripts/config -e POWER_AVS -# Big endian kernel -- scripts/config -e CPU_BIG_ENDIAN -- yes '' | make ARCH=arm64 oldconfig -build-commands: -# Only generate Image here, uImage generated in deployment -# due to availability of mkimage build systems -- make vmlinux dtbs $MAKEFLAGS -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/bsp-armv8l64-generic.morph b/strata/bsp-armv8l64-generic.morph deleted file mode 100644 index ca74dbe3..00000000 --- a/strata/bsp-armv8l64-generic.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: bsp-armv8l64-generic -kind: stratum -description: | - The set of platform specific components required for booting - armv8l64-based systems, like the 64-bit APM XGene ARM based m400 - Moonshot cartridge. -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-armv8l64-generic - 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/linux-armv8l64-generic.morph b/strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph deleted file mode 100644 index dd54b4e4..00000000 --- a/strata/bsp-armv8l64-generic/linux-armv8l64-generic.morph +++ /dev/null @@ -1,276 +0,0 @@ -name: linux-armv8l64-generic -kind: chunk -configure-commands: -- make ARCH=arm64 defconfig -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config -e CEPH_FS -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e VIRTIO -- scripts/config -e VIRTIO_RING -- scripts/config -e VIRTIO_PCI -- scripts/config -e VIRTIO_BALLOON -- scripts/config -e VIRTIO_BLK -- scripts/config -e VIRTIO_NET -- scripts/config -e VIRTIO_CONSOLE -- scripts/config -e HW_RANDOM_VIRTIO -- scripts/config -e 9P_FS -- scripts/config -e 9P_FSCACHE -- scripts/config -e 9P_FS_POSIX_ACL -- scripts/config -e NET_9P -- scripts/config -e NET_9P_VIRTIO -- scripts/config -e R8169 -- scripts/config -e 8139TOO -- scripts/config -e 8139CP -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e KVM -- scripts/config -e TUN -- scripts/config -e BRIDGE -- scripts/config -e VHOST_NET -- scripts/config -e NF_NAT -- scripts/config -e IP_NF_NAT -- scripts/config -e IP_NF_TARGET_MASQUERADE -- scripts/config -e FB_VESA -- scripts/config -e HOTPLUG_PCI -- scripts/config -e HOTPLUG_PCI_ACPI -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e IPV6 -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -# Required for M400 -- scripts/config -e SATA_AHCI_PLATFORM -- scripts/config -e AHCI_XGENE -- scripts/config -e GENERIC_PHY -- scripts/config -e PHY_XGENE -- scripts/config -e NET_VENDOR_MELLANOX -- scripts/config -e MLX4_EN -- scripts/config -e MLX4_EN_DCB -- scripts/config -e MLX4_EN_VXLAN -- scripts/config -e MLX4_CORE -- scripts/config -e MLX5_CORE -- scripts/config -e NET_IP_TUNNEL -- scripts/config -e VXLAN -- scripts/config -e UIO -- scripts/config -e UIO_PDRV_GENIRQ -- scripts/config -e GPIO_DWAPB -- scripts/config -e KEYBOARD_GPIO -- scripts/config -e INPUT_POLLDEV -- scripts/config -e KEYBOARD_GPIO_POLLED -- scripts/config -d DMA_CMA -- scripts/config -e POWER_RESET -- scripts/config -e POWER_RESET_GPIO -- scripts/config -e POWER_RESET_SYSCON -- scripts/config -e POWER_AVS -- yes '' | make ARCH=arm64 oldconfig -build-commands: -# Only generate Image here, uImage generated in deployment -# due to availability of mkimage build systems -- make vmlinux dtbs $MAKEFLAGS -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/bsp-jetson.morph b/strata/bsp-jetson.morph deleted file mode 100644 index 746c17a6..00000000 --- a/strata/bsp-jetson.morph +++ /dev/null @@ -1,36 +0,0 @@ -name: bsp-jetson -kind: stratum -description: | - Platform-specific chunks for NVIDIA Jetson TK1 - - Support for the Tegra platform is still being developed. A very recent - kernel with some patches is currently required to get a fully - accelerated graphics stack on this platform. Note that the SATA and - networking will not work unless you have flashed the bootloader on - your board to the version of U-Boot built in this stratum. Also, the - CPUs on the Jetson run at a slow speed with this version of Linux. -build-depends: -- morph: strata/core.morph -chunks: -- name: device-tree-compiler@jetson - morph: strata/bsp-jetson/device-tree-compiler@jetson.morph - repo: upstream:device-tree-compiler - ref: 302fca9f4c283e1994cf0a5a9ce1cf43ca15e6d2 - unpetrify-ref: v1.4.1 -- name: u-boot@jetson - morph: strata/bsp-jetson/u-boot@jetson.morph - repo: upstream:u-boot - ref: 5ec0003b19cbdf06ccd6941237cbc0d1c3468e2d - unpetrify-ref: v2015.10 - build-depends: - - device-tree-compiler@jetson -- name: linux-jetson-tk1 - morph: strata/bsp-jetson/linux-jetson-tk1.morph - repo: upstream:linux - ref: 69973b830859bc6529a7a0468ba0d80ee5117826 - unpetrify-ref: v4.9 -- name: linux-firmware@jetson - morph: strata/bsp-jetson/linux-firmware@jetson.morph - repo: upstream:linux-firmware - ref: 6ebf5d57d9f6d0cf05558baef1af2b90a3fe98ed - unpetrify-ref: master diff --git a/strata/bsp-jetson/device-tree-compiler@jetson.morph b/strata/bsp-jetson/device-tree-compiler@jetson.morph deleted file mode 100644 index 52c57739..00000000 --- a/strata/bsp-jetson/device-tree-compiler@jetson.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: device-tree-compiler@jetson -kind: chunk -build-commands: -- make all -install-commands: -- make install DESTDIR="$DESTDIR" PREFIX="$PREFIX" diff --git a/strata/bsp-jetson/linux-firmware@jetson.morph b/strata/bsp-jetson/linux-firmware@jetson.morph deleted file mode 100644 index e8415e09..00000000 --- a/strata/bsp-jetson/linux-firmware@jetson.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: linux-firmware@jetson -kind: chunk -install-commands: -- install -d "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -d "$DESTDIR/lib/firmware/nvidia/tegra124" -- install -m644 nvidia/gk20a/fecs_data.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/fecs_inst.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/gpccs_data.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/gpccs_inst.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/sw_bundle_init.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/sw_ctx.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/sw_method_init.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/gk20a/sw_nonctx.bin "$DESTDIR/lib/firmware/nvidia/gk20a" -- install -m644 nvidia/tegra124/xusb.bin "$DESTDIR/lib/firmware/nvidia/tegra124" -- install -m644 LICENCE.nvidia "$DESTDIR/lib/firmware" diff --git a/strata/bsp-jetson/linux-jetson-tk1.morph b/strata/bsp-jetson/linux-jetson-tk1.morph deleted file mode 100644 index b2d56d54..00000000 --- a/strata/bsp-jetson/linux-jetson-tk1.morph +++ /dev/null @@ -1,252 +0,0 @@ -name: linux-jetson-tk1 -kind: chunk -configure-commands: -- make ARCH=arm tegra_defconfig -- scripts/config -d KERNEL_LZO -- scripts/config -e KERNEL_GZIP -- scripts/config -e NAMESPACES -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e OVERLAY_FS -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e DRM_TEGRA_STAGING -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -- scripts/config -e NOUVEAU_PLATFORM_DRIVER -- scripts/config -e DRM_TEGRA_STAGING -- scripts/config -e BT -- yes '' | make ARCH=arm oldconfig -build-commands: -- make $MAKEFLAGS ARCH=arm LOADADDR=0x80200000 zImage dtbs -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage -- cp arch/arm/boot/dts/tegra124-jetson-tk1.dtb "$DESTDIR"/boot/. -- make modules -- make INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -d "$DESTDIR$PREFIX/src/linux" -- | - ( - printf 'Makefile\0' - printf 'Module.symvers\0' - find arch/arm -maxdepth 1 -name 'Makefile*' -print0 - find arch/arm \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0 - find arch/arm \( -type d -a \( -name include -o -name scripts \) \) -o \ - \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0 - find include -name 'asm*' -prune -o -print0 - find include/asm-generic -print0 - find include/uapi -print0 - find scripts -print0 - ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux" -system-integration: - linux-jetson-tk1-misc: - # This is required for any modules to work correctly. However, it depends - # `depmod` from the 'kmod' chunk in the 'foundation' stratum, so it runs - # conditionally on `depmod` existing to avoid breaking in - # minimal-system-x86_64. - 00-depmod: - - if which depmod; then (cd /usr/lib/modules && for version in *; do depmod -a "$version"; done) fi diff --git a/strata/bsp-jetson/u-boot@jetson.morph b/strata/bsp-jetson/u-boot@jetson.morph deleted file mode 100644 index 533f253a..00000000 --- a/strata/bsp-jetson/u-boot@jetson.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: u-boot@jetson -kind: chunk -configure-commands: -- make ARCH=arm jetson-tk1_config -build-commands: -- make ARCH=arm CROSS_COMPILE=/usr/bin/ -- make ARCH=arm CROSS_COMPILE=/usr/bin/ tools -install-commands: -- mkdir -p "$DESTDIR$PREFIX/bin" -- mkdir -p "$DESTDIR/boot" -- mkdir -p "$DESTDIR/boot/u-boot/" -- install -m 755 u-boot-dtb-tegra.bin "$DESTDIR/boot/u-boot.bin" -- install -m 755 u-boot-nodtb-tegra.bin "$DESTDIR/boot/u-boot/u-boot-nodtb-tegra.bin" -- install -m 755 u-boot.dtb "$DESTDIR/boot/u-boot/u-boot.dtb" -- size -A u-boot | grep -w .bss | tr -s ' ' | cut -d ' ' -f 2 > "$DESTDIR/boot/u-boot/u-boot-bss-size" -- install -m 755 tools/img2brec.sh "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/jtagconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/netconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkenvimage "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkimage "$DESTDIR$PREFIX/bin/." diff --git a/strata/bsp-ppc64-generic.morph b/strata/bsp-ppc64-generic.morph deleted file mode 100644 index ea606a75..00000000 --- a/strata/bsp-ppc64-generic.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: bsp-ppc64-generic -kind: stratum -description: The platform dependent components required to boot a ppc64 board. -build-depends: -- morph: strata/core.morph -chunks: -- name: linux-ppc64 - morph: strata/bsp-ppc64-generic/linux-ppc64.morph - repo: upstream:linux - ref: 39a8804455fb23f09157341d3ba7db6d7ae6ee76 - unpetrify-ref: v4.0 diff --git a/strata/bsp-ppc64-generic/linux-ppc64.morph b/strata/bsp-ppc64-generic/linux-ppc64.morph deleted file mode 100644 index d2ef0747..00000000 --- a/strata/bsp-ppc64-generic/linux-ppc64.morph +++ /dev/null @@ -1,226 +0,0 @@ -name: linux-ppc64 -kind: chunk -configure-commands: -- make ARCH=powerpc ppc64_defconfig -- scripts/config -e NAMESPACES -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e IP_PNP -- scripts/config -e IP_PNP_DHCP -- scripts/config -e NFS_FS -- scripts/config -e ROOT_NFS -- scripts/config -e PCI -- scripts/config -e TIGON3 -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS ARCH=powerpc zImage -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/powerpc/boot/zImage "$DESTDIR"/boot/zImage diff --git a/strata/bsp-wandboard.morph b/strata/bsp-wandboard.morph deleted file mode 100644 index ba704b1b..00000000 --- a/strata/bsp-wandboard.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: bsp-wandboard -kind: stratum -description: The platform dependent components required to boot an wandboard ARM board. -build-depends: -- morph: strata/core.morph -chunks: -- name: u-boot@wandboard - morph: strata/bsp-wandboard/u-boot@wandboard.morph - repo: upstream:u-boot - ref: fe57382d04b46c37f34cf8d3b3ad876554fd12bf - unpetrify-ref: baserock/morph -- name: linux-armv7-wandboard - morph: strata/bsp-wandboard/linux-armv7-wandboard.morph - repo: upstream:linux-stable - ref: 660613d1a4e94144490850b6c3d350331860fac4 - unpetrify-ref: v3.19.2 - build-depends: - - u-boot@wandboard diff --git a/strata/bsp-wandboard/linux-armv7-wandboard.morph b/strata/bsp-wandboard/linux-armv7-wandboard.morph deleted file mode 100644 index 8137198e..00000000 --- a/strata/bsp-wandboard/linux-armv7-wandboard.morph +++ /dev/null @@ -1,70 +0,0 @@ -name: linux-armv7-wandboard -kind: chunk -configure-commands: -- make ARCH=arm imx_v6_v7_defconfig -- scripts/config -d KERNEL_LZO -- scripts/config -e KERNEL_GZIP -- scripts/config -e NAMESPACES -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e VETH -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS ARCH=arm LOADADDR=0x10800000 uImage dtbs -- | - cat >boot.script <<'EOF' - setenv image_addr "0x12000000" - setenv bootargs "console=ttymxc0,115200 root=/dev/nfs rw ip=dhcp nfsroot=${fileserver}:${nfsroot},v3,tcp" - dhcp ${image_addr} ${fileserver}:${tfpboot}/uImage - bootm ${image_addr} - EOF -- mkimage -A arm -T script -C none -n "Wandboard TFTP Boot Script" -d boot.script - boot.scr -install-commands: -- mkdir -p "$DESTDIR"/boot -- cp arch/arm/boot/uImage "$DESTDIR"/boot/uImage -- cp boot.scr "$DESTDIR"/boot/boot.scr -- cp arch/arm/boot/dts/imx6*-wandboard.dtb "$DESTDIR"/boot/. diff --git a/strata/bsp-wandboard/u-boot@wandboard.morph b/strata/bsp-wandboard/u-boot@wandboard.morph deleted file mode 100644 index 8a51ee7c..00000000 --- a/strata/bsp-wandboard/u-boot@wandboard.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: u-boot@wandboard -kind: chunk -build-commands: -- make tools -install-commands: -- mkdir -p "$DESTDIR$PREFIX/bin" -- install -m 755 tools/img2brec.sh "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/jtagconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/netconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkenvimage "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkimage "$DESTDIR$PREFIX/bin/." diff --git a/strata/bsp-x86_32-generic.morph b/strata/bsp-x86_32-generic.morph deleted file mode 100644 index 8c558dca..00000000 --- a/strata/bsp-x86_32-generic.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: bsp-x86_32-generic -kind: stratum -description: The set of platform specific components required for booting a 32-bit - x86 based system. -build-depends: -# nasm wants asciidoc and xmlto for generating its docs -# so include docutils here -- morph: strata/docutils.morph -chunks: -- name: linux-x86-32-generic - morph: strata/bsp-x86_32-generic/linux-x86-32-generic.morph - repo: upstream:linux - ref: 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c - unpetrify-ref: v4.12 -- name: nasm - morph: strata/bsp-x86_32-generic/nasm.morph - repo: upstream:nasm - ref: 8fa0fe16408afc76ce1ae4387e1a9d46893cfda6 - unpetrify-ref: nasm-2.11.08 -- name: syslinux - morph: strata/bsp-x86_32-generic/syslinux.morph - repo: upstream:syslinux - ref: 02ab5d34ba0a90e3b6dd78034d7c470c77500119 - unpetrify-ref: baserock/syslinux-4.06-gcc7 - build-depends: - - nasm diff --git a/strata/bsp-x86_32-generic/linux-x86-32-generic.morph b/strata/bsp-x86_32-generic/linux-x86-32-generic.morph deleted file mode 100644 index a28e43d7..00000000 --- a/strata/bsp-x86_32-generic/linux-x86-32-generic.morph +++ /dev/null @@ -1,299 +0,0 @@ -name: linux-x86-32-generic -kind: chunk -products: -- artifact: linux-x86-32-generic-devel - include: - - (usr/)?src/linux/.* -- artifact: linux-x86-32-generic-bins - include: - - boot/.* -- artifact: linux-x86-32-generic-libs - include: - - lib/.* -configure-commands: -- make defconfig -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config -e CEPH_FS -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e VIRTIO -- scripts/config -e VIRTIO_RING -- scripts/config -e VIRTIO_PCI -- scripts/config -e VIRTIO_BALLOON -- scripts/config -e VIRTIO_BLK -- scripts/config -e VIRTIO_NET -- scripts/config -e VIRTIO_CONSOLE -- scripts/config -e HW_RANDOM_VIRTIO -- scripts/config -e 9P_FS -- scripts/config -e 9P_FSCACHE -- scripts/config -e 9P_FS_POSIX_ACL -- scripts/config -e NET_9P -- scripts/config -e NET_9P_VIRTIO -- scripts/config -e R8169 -- scripts/config -e 8139TOO -- scripts/config -e 8139CP -- scripts/config -e ATL1 -- scripts/config -e ATL1C -- scripts/config -e ATL1E -- scripts/config -e E100 -- scripts/config -e E1000 -- scripts/config -e E1000E -- scripts/config -e USB_USBNET -- scripts/config -e USB_NET_AX8817X -- scripts/config -e USB_NET_AX88179_178A -- scripts/config -e USB_NET_DM9601 -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e KVM -- scripts/config -e TUN -- scripts/config -e BRIDGE -- scripts/config -e VHOST_NET -- scripts/config -e NF_NAT -- scripts/config -e IP_NF_NAT -- scripts/config -e IP_NF_TARGET_MASQUERADE -- scripts/config -e FB_VESA -- scripts/config -e HOTPLUG_PCI -- scripts/config -e HOTPLUG_PCI_ACPI -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e KVM_INTEL -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -- scripts/config -e SCSI_VIRTIO -- scripts/config -e HYPERVISOR_GUEST -- scripts/config -e PARAVIRT -- scripts/config -e CONFIG_SND_INTEL8X0 -- scripts/config -m CONFIG_DRM_CIRRUS_QEMU -- scripts/config -m CONFIG_DRM_BOCHS -- scripts/config -e BT -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- make INSTALL_PATH="$DESTDIR"/boot install -- make INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -d "$DESTDIR$PREFIX/src/linux" -- | - ( - printf 'Makefile\0' - printf 'Module.symvers\0' - find arch/x86 -maxdepth 1 -name 'Makefile*' -print0 - find arch/x86 \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0 - find arch/x86 \( -type d -a \( -name include -o -name scripts \) \) -o \ - \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0 - find include -name 'asm*' -prune -o -print0 - find include/asm-generic -print0 - find include/uapi -print0 - find scripts -print0 - ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux" -system-integration: - linux-x86-32-generic-misc: - # This is required for any modules to work correctly. However, it depends - # `depmod` from the 'kmod' chunk in the 'foundation' stratum, so it runs - # conditionally on `depmod` existing to avoid breaking in - # minimal-system-x86_32. - 00-depmod: - - if which depmod; then (cd /usr/lib/modules && for version in *; do depmod -a "$version"; done) fi diff --git a/strata/bsp-x86_32-generic/nasm.morph b/strata/bsp-x86_32-generic/nasm.morph deleted file mode 100644 index 0ab1a629..00000000 --- a/strata/bsp-x86_32-generic/nasm.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: nasm -kind: chunk -build-system: autotools -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/bsp-x86_32-generic/syslinux.morph b/strata/bsp-x86_32-generic/syslinux.morph deleted file mode 100644 index 4570865b..00000000 --- a/strata/bsp-x86_32-generic/syslinux.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: syslinux -kind: chunk -products: -- artifact: syslinux-devel - include: - - (usr/)?share/syslinux/com32.* -build-commands: -- make clean -- make NO_WERROR=1 -- make NO_WERROR=1 installer -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/bsp-x86_64-generic.morph b/strata/bsp-x86_64-generic.morph deleted file mode 100644 index ddef23bd..00000000 --- a/strata/bsp-x86_64-generic.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: bsp-x86_64-generic -kind: stratum -description: The set of platform specific components required for booting a 64-bit - x86 based system. -build-depends: -# nasm wants asciidoc and xmlto for generating its docs -# so include docutils here -- morph: strata/docutils.morph -chunks: -- name: linux-x86-64-generic - morph: strata/bsp-x86_64-generic/linux-x86-64-generic.morph - repo: upstream:linux - ref: 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c - unpetrify-ref: v4.12 -- name: nasm - morph: strata/bsp-x86_64-generic/nasm.morph - repo: upstream:nasm - ref: 8fa0fe16408afc76ce1ae4387e1a9d46893cfda6 - unpetrify-ref: nasm-2.11.08 -- name: syslinux - morph: strata/bsp-x86_64-generic/syslinux.morph - repo: upstream:syslinux - ref: 02ab5d34ba0a90e3b6dd78034d7c470c77500119 - unpetrify-ref: baserock/syslinux-4.06-gcc7 - build-depends: - - nasm diff --git a/strata/bsp-x86_64-generic/linux-x86-64-generic.morph b/strata/bsp-x86_64-generic/linux-x86-64-generic.morph deleted file mode 100644 index 203ccea0..00000000 --- a/strata/bsp-x86_64-generic/linux-x86-64-generic.morph +++ /dev/null @@ -1,300 +0,0 @@ -name: linux-x86-64-generic -kind: chunk -products: -- artifact: linux-x86-64-generic-devel - include: - - (usr/)?src/linux/.* -- artifact: linux-x86-64-generic-bins - include: - - boot/.* -- artifact: linux-x86-64-generic-libs - include: - - lib/.* -configure-commands: -- make defconfig -- scripts/config -e PACKET -- scripts/config -e SATA_AHCI -- scripts/config -e ATA_GENERIC -- scripts/config -e HAVE_IDE -- scripts/config -d BLK_DEV_IDE_SATA -- scripts/config -e BTRFS_FS -- scripts/config -e BTRFS_FS_POSIX_ACL -- scripts/config -e DEVTMPFS -- scripts/config -e DEVTMPFS_MOUNT -- scripts/config -e CONFIG_FHANDLE -- scripts/config -e DEVPTS_MULTIPLE_INSTANCES -- scripts/config -e CGROUPS -- scripts/config -e AUTOFS4_FS -- scripts/config --set-str UEVENT_HELPER_PATH '' -- scripts/config -e EXT2_FS -- scripts/config -e EXT2_FS_XATTR -- scripts/config -e EXT2_FS_POSIX_ACL -- scripts/config -e EXT2_FS_SECURITY -- scripts/config -e EXT2_FS_XIP -- scripts/config -e EXT3_FS -- scripts/config -d EXT3_DEFAULTS_TO_ORDERED -- scripts/config -e EXT3_FS_XATTR -- scripts/config -e EXT3_FS_POSIX_ACL -- scripts/config -e EXT3_FS_SECURITY -- scripts/config -e EXT4_FS -- scripts/config -e EXT4_FS_XATTR -- scripts/config -e EXT4_FS_POSIX_ACL -- scripts/config -e EXT4_FS_SECURITY -- scripts/config -d EXT4_DEBUG -- scripts/config -e FUSE_FS -- scripts/config -e OVERLAY_FS -- scripts/config -e XFS_FS -- scripts/config -e LIBCRC32C -- scripts/config -d JBD_DEBUG -- scripts/config -d JBD2_DEBUG -- scripts/config -e BLK_DEV_LOOP -- scripts/config -d BLK_DEV_CRYPTOLOOP -- scripts/config -e CEPH_FS -- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8 -- scripts/config -e DM_SNAPSHOT -- scripts/config -e VIRTIO -- scripts/config -e VIRTIO_RING -- scripts/config -e VIRTIO_PCI -- scripts/config -e VIRTIO_BALLOON -- scripts/config -e VIRTIO_BLK -- scripts/config -e VIRTIO_NET -- scripts/config -e VIRTIO_CONSOLE -- scripts/config -e HW_RANDOM_VIRTIO -- scripts/config -e 9P_FS -- scripts/config -e 9P_FSCACHE -- scripts/config -e 9P_FS_POSIX_ACL -- scripts/config -e NET_9P -- scripts/config -e NET_9P_VIRTIO -- scripts/config -e R8169 -- scripts/config -e 8139TOO -- scripts/config -e 8139CP -- scripts/config -e ATL1 -- scripts/config -e ATL1C -- scripts/config -e ATL1E -- scripts/config -e E100 -- scripts/config -e E1000 -- scripts/config -e E1000E -- scripts/config -e USB_USBNET -- scripts/config -e USB_NET_AX8817X -- scripts/config -e USB_NET_AX88179_178A -- scripts/config -e USB_NET_DM9601 -- scripts/config -e IKCONFIG -- scripts/config -e IKCONFIG_PROC -- scripts/config -e SECCOMP -- scripts/config -d DEBUG_STACK_TRACE -- scripts/config -e NFSD -- scripts/config -e NFSD_V3 -- scripts/config -e KVM -- scripts/config -e TUN -- scripts/config -e BRIDGE -- scripts/config -e VHOST_NET -- scripts/config -e NF_NAT -- scripts/config -e IP_NF_NAT -- scripts/config -e IP_NF_TARGET_MASQUERADE -- scripts/config -e FB_VESA -- scripts/config -e HOTPLUG_PCI -- scripts/config -e HOTPLUG_PCI_ACPI -- scripts/config -e VLAN_8021Q -- scripts/config -e BRIDGE_VLAN_FILTERING -- scripts/config -e BLK_DEV_NBD -- scripts/config -e BRIDGE_NF_EBTABLES -- scripts/config -e NETFILTER -- scripts/config -e NETFILTER_ADVANCED -- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE -- scripts/config -e OPENVSWITCH -- scripts/config -e OPENVSWITCH_VXLAN -- scripts/config -e CONFIG_OPENVSWITCH_GRE -- scripts/config -e NET_CLS_BASIC -- scripts/config -e NET_SCH_INGRESS -- scripts/config -e NET_ACT_POLICE -- scripts/config -e NET_IPGRE_DEMUX -- scripts/config -e NET_SCH_HTB -- scripts/config -e NET_SCH_HFSC -- scripts/config -e VXLAN -- scripts/config -e VETH -- scripts/config -e IP_NF_MATCH_AH -- scripts/config -e IP_NF_MATCH_ECN -- scripts/config -e IP_NF_MATCH_RPFILTER -- scripts/config -e IP_NF_MATCH_TTL -- scripts/config -e IP_NF_TARGET_SYNPROXY -- scripts/config -e IP_NF_TARGET_NETMAP -- scripts/config -e IP_NF_TARGET_REDIRECT -- scripts/config -e IP_NF_TARGET_CLUSTERIP -- scripts/config -e IP_NF_TARGET_ECN -- scripts/config -e IP_NF_TARGET_TTL -- scripts/config -e IP_NF_RAW -- scripts/config -e IP_NF_SECURITY -- scripts/config -e IP_NF_ARPTABLES -- scripts/config -e KVM_INTEL -- scripts/config -e NETFILTER_NETLINK_QUEUE -- scripts/config -e SCSI_NETLINK -- scripts/config -e NETFILTER_XT_TARGET_MARK -- scripts/config -e NETFILTER_XT_SET -- scripts/config -e IP_SET -- scripts/config -e IP_SET_BITMAP_IP -- scripts/config -e IP_SET_BITMAP_IPMAC -- scripts/config -e IP_SET_BITMAP_PORT -- scripts/config -e IP_SET_HASH_IP -- scripts/config -e IP_SET_HASH_IPMARK -- scripts/config -e IP_SET_HASH_IPPORT -- scripts/config -e IP_SET_HASH_IPPORTIP -- scripts/config -e IP_SET_HASH_IPPORTNET -- scripts/config -e IP_SET_HASH_MAC -- scripts/config -e IP_SET_HASH_NETPORTNET -- scripts/config -e IP_SET_HASH_NET -- scripts/config -e IP_SET_HASH_NETNET -- scripts/config -e IP_SET_HASH_NETPORT -- scripts/config -e IP_SET_HASH_NETIFACE -- scripts/config -e IP_SET_LIST_SET -- scripts/config -e NF_CONNTRACK_TIMEOUT -- scripts/config -e NF_CONNTRACK_TIMESTAMP -- scripts/config -e NF_CONNTRACK_EVENTS -- scripts/config -e NF_CONNTRACK_LABELS -- scripts/config -e NETFILTER_NETLINK_ACCT -- scripts/config -e NETFILTER_NETLINK_QUEUE_CT -- scripts/config -e NF_CT_PROTO_DCCP -- scripts/config -e NF_CT_PROTO_GRE -- scripts/config -e NF_CT_PROTO_SCTP -- scripts/config -e NF_CT_PROTO_UDPLITE -- scripts/config -e NF_CT_NETLINK_TIMEOUT -- scripts/config -e NF_CT_NETLINK_HELPER -- scripts/config -e NF_CONNTRACK_AMANDA -- scripts/config -e NF_CONNTRACK_H323 -- scripts/config -e NF_CONNTRACK_BROADCAST -- scripts/config -e NF_CONNTRACK_NETBIOS_NS -- scripts/config -e NF_CONNTRACK_SNMP -- scripts/config -e NF_CONNTRACK_PPTP -- scripts/config -e NF_CONNTRACK_SANE -- scripts/config -e NF_CONNTRACK_TFTP -- scripts/config -e NF_LOG_COMMON -- scripts/config -e NF_NAT_PROTO_DCCP -- scripts/config -e NF_NAT_PROTO_UDPLITE -- scripts/config -e NF_NAT_PROTO_SCTP -- scripts/config -e NF_NAT_AMANDA -- scripts/config -e NF_NAT_TFTP -- scripts/config -e NF_TABLES -- scripts/config -e NF_TABLES_INET -- scripts/config -e NFT_COMPAT -- scripts/config -e NFT_EXTHDR -- scripts/config -e NFT_META -- scripts/config -e NFT_CT -- scripts/config -e NFT_LIMIT -- scripts/config -e NFT_NAT -- scripts/config -e NFT_QUEUE -- scripts/config -e NFT_REJECT -- scripts/config -e NFT_REJECT_INET -- scripts/config -e NFT_RBTREE -- scripts/config -e NFT_HASH -- scripts/config -e NFT_COUNTER -- scripts/config -e NFT_LOG -- scripts/config -e NFT_MASQ -- scripts/config -e NETFILTER_XT_CONNMARK -- scripts/config -e NETFILTER_XT_TARGET_AUDIT -- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM -- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY -- scripts/config -e NETFILTER_XT_TARGET_CT -- scripts/config -e NETFILTER_XT_TARGET_DSCP -- scripts/config -e NETFILTER_XT_TARGET_HMARK -- scripts/config -e NETFILTER_XT_TARGET_LED -- scripts/config -e NETFILTER_XT_TARGET_LOG -- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE -- scripts/config -e NETFILTER_XT_TARGET_RATEEST -- scripts/config -e NETFILTER_XT_TARGET_TPROXY -- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP -- scripts/config -e NETFILTER_XT_TARGET_TEE -- scripts/config -e NETFILTER_XT_TARGET_TRACE -- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER -- scripts/config -e NETFILTER_XT_MATCH_BPF -- scripts/config -e NETFILTER_XT_MATCH_CLUSTER -- scripts/config -e NETFILTER_XT_MATCH_COMMENT -- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES -- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL -- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT -- scripts/config -e NETFILTER_XT_MATCH_CPU -- scripts/config -e NETFILTER_XT_MATCH_DCCP -- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP -- scripts/config -e NETFILTER_XT_MATCH_DSCP -- scripts/config -e NETFILTER_XT_MATCH_ESP -- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT -- scripts/config -e NETFILTER_XT_MATCH_HELPER -- scripts/config -e NETFILTER_XT_MATCH_IPCOMP -- scripts/config -e NETFILTER_XT_MATCH_IPRANGE -- scripts/config -e NETFILTER_XT_MATCH_IPVS -- scripts/config -e NETFILTER_XT_MATCH_L2TP -- scripts/config -e NETFILTER_XT_MATCH_LENGTH -- scripts/config -e NETFILTER_XT_MATCH_LIMIT -- scripts/config -e NETFILTER_XT_MATCH_MAC -- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT -- scripts/config -e NETFILTER_XT_MATCH_NFACCT -- scripts/config -e NETFILTER_XT_MATCH_OSF -- scripts/config -e NETFILTER_XT_MATCH_OWNER -- scripts/config -e NETFILTER_XT_MATCH_CGROUP -- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV -- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE -- scripts/config -e NETFILTER_XT_MATCH_QUOTA -- scripts/config -e NETFILTER_XT_MATCH_RATEEST -- scripts/config -e NETFILTER_XT_MATCH_REALM -- scripts/config -e NETFILTER_XT_MATCH_RECENT -- scripts/config -e NETFILTER_XT_MATCH_SCTP -- scripts/config -e NETFILTER_XT_MATCH_SOCKET -- scripts/config -e NETFILTER_XT_MATCH_STATISTIC -- scripts/config -e NETFILTER_XT_MATCH_STRING -- scripts/config -e NETFILTER_XT_MATCH_TCPMSS -- scripts/config -e NETFILTER_XT_MATCH_TIME -- scripts/config -e NETFILTER_XT_MATCH_U32 -- scripts/config -e IP_VS -- scripts/config -e BRIDGE_NETFILTER -- scripts/config -e CRYPTO_CRC32C -- scripts/config -e CONFIGFS_FS -- scripts/config -e EXPERT -- scripts/config -e TARGET_CORE -- scripts/config -e ISCSI_TARGET -- scripts/config -e TCM_IBLOCK -- scripts/config -e TCM_FILEIO -- scripts/config -e TCM_PSCSI -- scripts/config -e TCM_USER -- scripts/config -e CONFIG_UIO -- scripts/config -e LOOPBACK_TARGET -- scripts/config -e TCM_FC -- scripts/config -e LIBFC -- scripts/config -e SCSI_FC_ATTRS -- scripts/config -e SCSI_ISCSI_ATTRS -- scripts/config -e ISCSI_TCP -- scripts/config -e SCSI_LOWLEVEL -- scripts/config -e SCSI_VIRTIO -- scripts/config -e HYPERVISOR_GUEST -- scripts/config -e PARAVIRT -- scripts/config -e CONFIG_SND_INTEL8X0 -- scripts/config -m CONFIG_DRM_CIRRUS_QEMU -- scripts/config -m CONFIG_DRM_BOCHS -- scripts/config -m CONFIG_DRM_VIRTIO_GPU -- scripts/config -e BT -- yes '' | make oldconfig -build-commands: -- make $MAKEFLAGS -install-commands: -- mkdir -p "$DESTDIR"/boot -- make INSTALL_PATH="$DESTDIR"/boot install -- make INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -d "$DESTDIR$PREFIX/src/linux" -- | - ( - printf 'Makefile\0' - printf 'Module.symvers\0' - find arch/x86 -maxdepth 1 -name 'Makefile*' -print0 - find arch/x86 \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0 - find arch/x86 \( -type d -a \( -name include -o -name scripts \) \) -o \ - \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0 - find include -name 'asm*' -prune -o -print0 - find include/asm-generic -print0 - find include/uapi -print0 - find scripts -print0 - ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux" -system-integration: - linux-x86-64-generic-misc: - # This is required for any modules to work correctly. However, it depends - # `depmod` from the 'kmod' chunk in the 'foundation' stratum, so it runs - # conditionally on `depmod` existing to avoid breaking in - # minimal-system-x86_64. - 00-depmod: - - if which depmod; then (cd /usr/lib/modules && for version in *; do depmod -a "$version"; done) fi diff --git a/strata/bsp-x86_64-generic/nasm.morph b/strata/bsp-x86_64-generic/nasm.morph deleted file mode 100644 index 0ab1a629..00000000 --- a/strata/bsp-x86_64-generic/nasm.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: nasm -kind: chunk -build-system: autotools -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/bsp-x86_64-generic/syslinux.morph b/strata/bsp-x86_64-generic/syslinux.morph deleted file mode 100644 index 4570865b..00000000 --- a/strata/bsp-x86_64-generic/syslinux.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: syslinux -kind: chunk -products: -- artifact: syslinux-devel - include: - - (usr/)?share/syslinux/com32.* -build-commands: -- make clean -- make NO_WERROR=1 -- make NO_WERROR=1 installer -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/bsp-x86_both-tools.morph b/strata/bsp-x86_both-tools.morph deleted file mode 100644 index 5a72caa7..00000000 --- a/strata/bsp-x86_both-tools.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: bsp-x86_both-tools -kind: stratum -description: The set of platform specific components required for configuring a bootable - x86 based system. -build-depends: -# nasm wants asciidoc and xmlto for generating its docs -# so include docutils here -- morph: strata/docutils.morph -chunks: -- name: nasm - morph: strata/bsp-x86_both-tools/nasm.morph - repo: upstream:nasm - ref: 8fa0fe16408afc76ce1ae4387e1a9d46893cfda6 - unpetrify-ref: nasm-2.11.08 -- name: syslinux - morph: strata/bsp-x86_both-tools/syslinux.morph - repo: upstream:syslinux - ref: 02ab5d34ba0a90e3b6dd78034d7c470c77500119 - unpetrify-ref: baserock/syslinux-4.06-gcc7 - build-depends: - - nasm diff --git a/strata/bsp-x86_both-tools/nasm.morph b/strata/bsp-x86_both-tools/nasm.morph deleted file mode 100644 index 0ab1a629..00000000 --- a/strata/bsp-x86_both-tools/nasm.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: nasm -kind: chunk -build-system: autotools -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/bsp-x86_both-tools/syslinux.morph b/strata/bsp-x86_both-tools/syslinux.morph deleted file mode 100644 index 4570865b..00000000 --- a/strata/bsp-x86_both-tools/syslinux.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: syslinux -kind: chunk -products: -- artifact: syslinux-devel - include: - - (usr/)?share/syslinux/com32.* -build-commands: -- make clean -- make NO_WERROR=1 -- make NO_WERROR=1 installer -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/strata/build-essential.morph b/strata/build-essential.morph deleted file mode 100644 index 1dd9cd35..00000000 --- a/strata/build-essential.morph +++ /dev/null @@ -1,412 +0,0 @@ -name: build-essential -kind: stratum -description: | - Toolchain stratum - - Stage 1: build a minimal cross compiler with the host's tools. - - Starting with a cross compiler ensures that (a) nothing from the host - can leak into the build-essential artifacts, and (b) cross-compiling - build-essential is fully tested and supported, since we always use the - cross code paths. - - Stage 2: cross-build the whole of build-essential, using the host's tools - but the cross-compiler toolchain. - - Stage 2 GCC outputs code for the same 'bootstrap' machine as stage 1 GCC, - but because stage 2 GCC is also built to *run* on the bootstrap machine - it can only execute inside the stage 3 chroot (due to being built against - a libc with a non-standard prefix). - - Stage 3: build the whole of build-essential again, this time using a - staging area containing only the output of stage 2. The result of this - build is fully reproducible. - - We do a switch-a-roo between stage 2 and 3: stages 2 chunks are all built - to run on a host *-bootstrap-* while stage 3 chunks are native-built for - a *-baserock-* machine. This works, because the cross build was all for - show (and cleanliness) and the binaries actually still run on the host. - - After build-essential is built we do another trick. See - stage2-fhs-dirs.morph for details. Basically, /bin is a symlink to - /tools/bin during stage 2 but in stage 3 it becomes a real directory - again. - - PLEASE KEEP THE REFS IN 'armv7lhf-cross-toolchain' STRATUM UP TO DATE WITH - THIS ONE! - - Please note that the chunk 'build-depends' field is treated differently in - this stratum to how other strata in definitions.git use it. Other strata - rely on the fact that dependencies of a dependency (called 'transitive - dependencies') are implicitly included in the staging area. Within - build-essential, some chunks list transitive dependencies explicitly to - make clearer what is going on. -products: -- artifact: build-essential-minimal - include: - - fhs-dirs-.* - - busybox-.* - - glibc-nss -chunks: -- name: stage1-binutils - morph: strata/build-essential/stage1-binutils.morph - repo: upstream:binutils-tarball - ref: 5500a97a2ad1735db5b35bc51cfb825c1f4c38df - unpetrify-ref: binutils-2.25 - build-mode: bootstrap - prefix: /tools - -- name: stage1-gcc - morph: strata/build-essential/stage1-gcc.morph - repo: upstream:gcc-tarball - ref: 3b0dbcfa2e5d12bd80cab1b35f08653d61fe7838 - unpetrify-ref: baserock/gcc-7.1.0 - build-depends: - - stage1-binutils - build-mode: bootstrap - prefix: /tools - -- name: stage2-linux-api-headers - morph: strata/build-essential/stage2-linux-api-headers.morph - repo: upstream:linux - ref: a351e9b9fc24e982ec2f0e76379a49826036da12 - unpetrify-ref: v4.11 - build-depends: - - stage1-binutils - - stage1-gcc - build-mode: bootstrap - prefix: /tools - -- name: stage2-glibc - morph: strata/build-essential/stage2-glibc.morph - repo: upstream:glibc - ref: db0242e3023436757bbc7c488a779e6e3343db04 - unpetrify-ref: glibc-2.25 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - build-mode: bootstrap - prefix: /tools - -- name: stage2-libstdc++ - morph: strata/build-essential/stage2-libstdc++.morph - repo: upstream:gcc-tarball - ref: 3b0dbcfa2e5d12bd80cab1b35f08653d61fe7838 - unpetrify-ref: baserock/gcc-7.1.0 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-binutils - morph: strata/build-essential/stage2-binutils.morph - repo: upstream:binutils-tarball - ref: 5500a97a2ad1735db5b35bc51cfb825c1f4c38df - unpetrify-ref: binutils-2.25 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-gcc-fixed-headers - morph: strata/build-essential/stage2-gcc-fixed-headers.morph - repo: upstream:gcc-tarball - ref: 3b0dbcfa2e5d12bd80cab1b35f08653d61fe7838 - unpetrify-ref: baserock/gcc-7.1.0 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-gcc - morph: strata/build-essential/stage2-gcc.morph - repo: upstream:gcc-tarball - ref: 3b0dbcfa2e5d12bd80cab1b35f08653d61fe7838 - unpetrify-ref: baserock/gcc-7.1.0 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - - stage2-gcc-fixed-headers - - stage2-libstdc++ - build-mode: bootstrap - prefix: /tools - -- name: stage2-busybox - morph: strata/build-essential/stage2-busybox.morph - repo: upstream:busybox - ref: 1ecfe811fe2f70380170ef7d820e8150054e88ca - unpetrify-ref: '1_23_1' - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-fake-bash - morph: strata/build-essential/stage2-fake-bash.morph - repo: upstream:bash - ref: 3590145af6f1c9fa321dff231f69ae696e7e740b - unpetrify-ref: baserock/bash-4.3-patch-27 - build-mode: bootstrap - prefix: /tools - -- name: stage2-fhs-dirs - morph: strata/build-essential/stage2-fhs-dirs.morph - repo: baserock:baserock/fhs-dirs - ref: 9fafca436000bb57ddd5c498f8a75ea7b274f6c5 - unpetrify-ref: baserock/usr_merge - build-mode: bootstrap - prefix: /tools - -- name: stage2-gawk - morph: strata/build-essential/stage2-gawk.morph - repo: upstream:gawk - ref: 925f9363c4b0a5bb9375298afcdcf404efb32587 - unpetrify-ref: gawk-4.1-stable - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-make - morph: strata/build-essential/stage2-make.morph - repo: upstream:make-tarball - ref: 4978d7129e42340ab9efeb0cb9cae4ad0fa052d4 - unpetrify-ref: baserock/make-4.1-ttyname-segfault-fix - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: stage2-reset-specs - morph: strata/build-essential/stage2-reset-specs.morph - repo: upstream:glibc - ref: fdfc9260b61d3d72541f18104d24c7bcb0ce5ca2 - unpetrify-ref: glibc-2.24 - build-depends: - - stage1-binutils - - stage1-gcc - - stage2-linux-api-headers - - stage2-glibc - build-mode: bootstrap - prefix: /tools - -- name: fhs-dirs - morph: strata/build-essential/fhs-dirs.morph - repo: baserock:baserock/fhs-dirs - ref: 9fafca436000bb57ddd5c498f8a75ea7b274f6c5 - unpetrify-ref: baserock/usr_merge - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - -- name: linux-api-headers - morph: strata/build-essential/linux-api-headers.morph - repo: upstream:linux - ref: a351e9b9fc24e982ec2f0e76379a49826036da12 - unpetrify-ref: v4.11 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - fhs-dirs - -- name: glibc - morph: strata/build-essential/glibc.morph - repo: upstream:glibc - ref: db0242e3023436757bbc7c488a779e6e3343db04 - unpetrify-ref: glibc-2.25 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-fake-bash - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - linux-api-headers - artifacts: - glibc-gconv: build-essential-runtime - glibc-libs: build-essential-minimal - glibc-nss: build-essential-runtime - -- name: zlib - morph: strata/build-essential/zlib.morph - repo: upstream:zlib - ref: 50893291621658f355bc5b4d450a8d06a563053d - unpetrify-ref: v1.2.8 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - artifacts: - zlib-libs: build-essential-minimal - -- name: binutils - morph: strata/build-essential/binutils.morph - repo: upstream:binutils-tarball - ref: 5500a97a2ad1735db5b35bc51cfb825c1f4c38df - unpetrify-ref: binutils-2.25 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - - zlib - -- name: busybox - morph: strata/build-essential/busybox.morph - repo: upstream:busybox - ref: 1ecfe811fe2f70380170ef7d820e8150054e88ca - unpetrify-ref: '1_23_1' - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - -- name: gawk - morph: strata/build-essential/gawk.morph - repo: upstream:gawk - ref: dc5af665700d9b04fdf9c18930526d28eef5d5d9 - unpetrify-ref: gawk-4.1.1 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - -- name: m4-tarball - morph: strata/build-essential/m4-tarball.morph - repo: upstream:m4-tarball - ref: 23c11479b3ad787adc7a651ee0c4347839e47723 - unpetrify-ref: m4-1.4.17 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - -- name: gcc - morph: strata/build-essential/gcc.morph - repo: upstream:gcc-tarball - ref: 3b0dbcfa2e5d12bd80cab1b35f08653d61fe7838 - unpetrify-ref: baserock/gcc-7.1.0 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - - zlib - - m4-tarball - - linux-api-headers - artifacts: - gcc-libs: build-essential-minimal - -- name: make - morph: strata/build-essential/make.morph - repo: upstream:make-tarball - ref: 4978d7129e42340ab9efeb0cb9cae4ad0fa052d4 - unpetrify-ref: baserock/make-4.1-ttyname-segfault-fix - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - -- name: ccache - morph: strata/build-essential/ccache.morph - repo: upstream:ccache-tarball - ref: 4f49dfd6f2ac799e236f61593ec209228f47f5c5 - unpetrify-ref: ccache-3.3.4 - build-depends: - - stage2-binutils - - stage2-busybox - - stage2-glibc - - stage2-fhs-dirs - - stage2-gawk - - stage2-gcc - - stage2-linux-api-headers - - stage2-make - - stage2-reset-specs - - glibc - - zlib diff --git a/strata/build-essential/binutils.morph b/strata/build-essential/binutils.morph deleted file mode 100644 index bab52672..00000000 --- a/strata/build-essential/binutils.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: binutils -kind: chunk -build-system: autotools - -configure-commands: -- | - ./configure --prefix="$PREFIX" --disable-nls --disable-werror \ - --with-system-zlib diff --git a/strata/build-essential/busybox.morph b/strata/build-essential/busybox.morph deleted file mode 100644 index 1bbd97a6..00000000 --- a/strata/build-essential/busybox.morph +++ /dev/null @@ -1,89 +0,0 @@ -name: busybox -kind: chunk - -configure-commands: -# Busybox's default config has everything enabled. -- make defconfig KCONFIG_NOTIMESTAMP=1 - -- sed -e 's|.*UDHCPC_DEFAULT_SCRIPT.*|CONFIG_UDHCPC_DEFAULT_SCRIPT="'"$PREFIX"/share/udhcpc/default.script'"|' - -i .config -- sed -e 's|.*IFUPDOWN_IFSTATE_PATH.*|CONFIG_IFUPDOWN_IFSTATE_PATH="/run/ifstate"|' - -i .config - -# Avoid dividing applets between $PREFIX/[s]bin and $PREFIX/usr/[s]bin. -- '[ "$PREFIX" = /usr ] || sed -e ''s/.*INSTALL_NO_USR.*/CONFIG_INSTALL_NO_USR=y/'' - -i .config' -# We have GAWK, but in GENIVI baseline we want to get rid of it -# - sed -e 's/CONFIG_AWK=y.*/# CONFIG_AWK is not set/' -i .config - -# Depends on stuff that was removed since eglibc 2.14. -- sed -e 's/CONFIG_INETD=y.*/# CONFIG_INETD is not set/' -i .config - -# Busybox Patch is incompatible enough with GNU Patch that it can't be -# used for GNULib projects built from Git. -- sed -e 's/CONFIG_PATCH=y.*/# CONFIG_PATCH is not set/' -i .config - -# None of this is needed because we have kmod; and it actually breaks the -# Linux build because depmod isn't compatible enough with util-linux's. -- sed -e 's/CONFIG_DEPMOD=y.*/# CONFIG_DEPMOD is not set/' -i .config -- sed -e 's/CONFIG_INSMOD=y.*/# CONFIG_INSMOD is not set/' -i .config -- sed -e 's/CONFIG_MODPROBE=y.*/# CONFIG_MODPROBE is not set/' -i .config -- sed -e 's/CONFIG_MODPROBE_SMALL=y.*/# CONFIG_MODPROBE_SMALL is not set/' -i .config -- sed -e 's/CONFIG_LSMOD=y.*/# CONFIG_LSMOD is not set/' -i .config -- sed -e 's/CONFIG_RMMOD=y.*/# CONFIG_RMMOD is not set/' -i .config - -# General features that we don't need. -- sed -e 's/CONFIG_FEATURE_MOUNT_CIFS=y.*/# CONFIG_FEATURE_MOUNT_CIFS is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_EXTRA_QUIET=y.*/# CONFIG_FEATURE_EXTRA_QUIET is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INIT_COREDUMPS=y.*/# CONFIG_FEATURE_INIT_COREDUMPS is not - set/' -i .config -- sed -e 's/CONFIG_FEATURE_INIT_SCTTY=y.*/# CONFIG_FEATURE_INIT_SCTTY is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INIT_SYSLOG=y.*/# CONFIG_FEATURE_INIT_SYSLOG is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INITRD=y.*/# CONFIG_FEATURE_INITRD is not set/' -i .config -- sed -e 's/CONFIG_FEATURE_MINIX2=y.*/# CONFIG_FEATURE_MINIX2 is not set/' -i .config -- sed -e 's/CONFIG_FSCK_MINIX=y.*/# CONFIG_FSCK_MINIX is not set/' -i .config -- sed -e 's/CONFIG_LOSETUP=y.*/# CONFIG_LOSETUP is not set/' -i .config -- sed -e 's/CONFIG_LSUSB=y.*/# CONFIG_LSUSB is not set/' -i .config -- sed -e 's/CONFIG_LSPCI=y.*/# CONFIG_LSPCI is not set/' -i .config -- sed -e 's/CONFIG_LZMA=y.*/# CONFIG_LZMA is not set/' -i .config -- sed -e 's/CONFIG_MKFS_EXT2=y.*/# CONFIG_MKFS_EXT2 is not set/' -i .config -- sed -e 's/CONFIG_MKFS_MINIX=y.*/# CONFIG_MKFS_MINIX is not set/' -i .config -- sed -e 's/CONFIG_STRINGS=y.*/# CONFIG_STRINGS is not set/' -i .config -- sed -e 's/CONFIG_UNLZMA=y.*/# CONFIG_UNLZMA is not set/' -i .config -- sed -e 's/CONFIG_UNXZ=y.*/# CONFIG_UNXZ is not set/' -i .config -- sed -e 's/CONFIG_XZ=y.*/# CONFIG_XZ is not set/' -i .config - -# Now turn on some little bits we do need -- sed -e 's/# CONFIG_BBCONFIG is not set/CONFIG_BBCONFIG=y/' -i .config -- sed -e 's/# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set/CONFIG_FEATURE_COMPRESS_BBCONFIG=y/' - -i .config -- sed -e 's/# CONFIG_FEATURE_MOUNT_HELPERS is not set/CONFIG_FEATURE_MOUNT_HELPERS=y/' - -i .config - - -build-commands: -- make KCONFIG_NOTIMESTAMP=1 - -install-commands: -- | - if [ "$PREFIX" = /usr ]; then PREFIX=; fi && - make CONFIG_PREFIX="$DESTDIR$PREFIX" KCONFIG_NOTIMESTAMP=1 install && - chmod 6755 "$DESTDIR$PREFIX"/bin/busybox -# Set up man environment variables -- mkdir -p "$DESTDIR"/etc -- | - cat << EOF > "$DESTDIR/etc/man.conf" - # This file is used by man to provide a manpath for those without one by - # examining their PATH environment variable. - # - # Lines beginning with `#' are comments and are ignored. Any combination of - # tabs or spaces may be used as `whitespace' separators. - - MANDATORY_MANPATH /usr/man - MANDATORY_MANPATH /usr/share/man - MANDATORY_MANPATH /usr/local/share/man - EOF diff --git a/strata/build-essential/ccache.morph b/strata/build-essential/ccache.morph deleted file mode 100644 index 441344f9..00000000 --- a/strata/build-essential/ccache.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: ccache -kind: chunk -build-system: autotools - -configure-commands: -- ./configure --prefix="$PREFIX" - -install-commands: -- make DESTDIR="$DESTDIR" install -- mkdir -p "$DESTDIR/$PREFIX/lib/ccache" -- for cc in gcc cc g++ c++; do ln -sf "$PREFIX/bin/ccache" "$DESTDIR/$PREFIX/lib/ccache/$cc"; - done -- for cc in gcc cc g++ c++; do ln -sf "$PREFIX/bin/ccache" "$DESTDIR/$PREFIX/lib/ccache/$TARGET-$cc"; - done diff --git a/strata/build-essential/fhs-dirs.morph b/strata/build-essential/fhs-dirs.morph deleted file mode 100644 index f4a1b1e9..00000000 --- a/strata/build-essential/fhs-dirs.morph +++ /dev/null @@ -1,49 +0,0 @@ -name: fhs-dirs -kind: chunk -description: create the FHS 2.3 directory hierarchy and the usual files -install-commands: -- sh ./create-fhs-dirs "$DESTDIR" -- install -m 644 passwd "$DESTDIR/etc/passwd" -- install -m 600 shadow "$DESTDIR/etc/shadow" -- install -m 644 interfaces "$DESTDIR/etc/network/interfaces" -- install -m 644 group "$DESTDIR/etc/group" -- install -m 644 issue "$DESTDIR/etc/issue" -- install -m 644 services "$DESTDIR/etc/services" -- install -m 644 protocols "$DESTDIR/etc/protocols" -- echo baserock > "$DESTDIR"/etc/hostname -devices: -- type: c - filename: /dev/console - gid: 0 - major: 5 - minor: 1 - permissions: '0600' - uid: 0 -- type: c - filename: /dev/full - gid: 0 - major: 1 - minor: 7 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/null - gid: 0 - major: 1 - minor: 3 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/urandom - gid: 0 - major: 1 - minor: 9 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/zero - gid: 0 - major: 1 - minor: 5 - permissions: '0666' - uid: 0 diff --git a/strata/build-essential/gawk.morph b/strata/build-essential/gawk.morph deleted file mode 100644 index 1ad871c6..00000000 --- a/strata/build-essential/gawk.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gawk -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-nls diff --git a/strata/build-essential/gcc.morph b/strata/build-essential/gcc.morph deleted file mode 100644 index 18459b73..00000000 --- a/strata/build-essential/gcc.morph +++ /dev/null @@ -1,62 +0,0 @@ -name: gcc -kind: chunk - -products: -- artifact: gcc-libs - include: - - (usr/)lib/lib.*\.so(\.\d+)*$ -- artifact: gcc-doc - include: - - (usr/)?share/doc/.* - - (usr/)?share/man/.* - - (usr/)?share/info/.* -- artifact: gcc-devel - # devel includes everything which isn't documentation or libs, since - # everything else gcc produces is required for compiling - # this is the -devel artifact instead of -misc, since it goes in -devel - # stratum artifacts by default - include: [.*] -configure-commands: -- mkdir o - -# Configure flag notes: -# 1. An attempt to stop anything going in $PREFIX/lib64 (which doesn't -# fully work; we will need to hobble the multilib configuration in -# config/i386/t-linux64 if we really want to kill /lib64). -# 2. Avoid having more than one copy of ZLib in use on the system -# 3. Multilib does not make sense in Baserock. -- | - case "$MORPH_ARCH" in - armv7lhf) ARCH_FLAGS="--with-arch=armv7-a \ - --with-tune=cortex-a9 \ - --with-fpu=vfpv3-d16 \ - --with-float=hard" ;; - armv7*) ARCH_FLAGS="--with-arch=armv7-a" ;; - esac - - cd o && ../configure \ - $ARCH_FLAGS \ - --prefix="$PREFIX" \ - `# [1]` --libdir=$PREFIX/lib \ - --disable-bootstrap \ - `# [2]` --with-system-zlib \ - `# [3]` --disable-multilib \ - --enable-languages=c,c++,fortran - -build-commands: -- | - case "$MORPH_ARCH" in - armv5*) sed -i "s/--host=none/--host=armv5/" o/Makefile - sed -i "s/--target=none/--target=armv5/" o/Makefile ;; - armv7*) sed -i "s/--host=none/--host=armv7a/" o/Makefile - sed -i "s/--target=none/--target=armv7a/" o/Makefile ;; - esac - cd o && make - -install-commands: -- cd o && make DESTDIR="$DESTDIR" install -- ln -s gcc "$DESTDIR/$PREFIX/bin/cc" -- | - for fortran_alias in f77 f90 f95; do - ln -s gfortran "$DESTDIR/$PREFIX/bin/$fortran_alias" - done diff --git a/strata/build-essential/glibc.morph b/strata/build-essential/glibc.morph deleted file mode 100644 index 6c87c5d9..00000000 --- a/strata/build-essential/glibc.morph +++ /dev/null @@ -1,100 +0,0 @@ -name: glibc -kind: chunk -products: -- artifact: glibc-nss - include: - - etc/nsswitch.conf - - (usr/)?lib/libnss.* -- artifact: glibc-gconv - include: - - (usr/)?lib/gconv/.* -- artifact: glibc-libs - include: - - sbin/ldconfig - - lib(32|64)?/ld-.* - - (usr/)?lib(exec)?/pt_chown -- artifact: glibc-bins - include: - - (usr/)?s?bin/.* - - (usr/)?libexec/getconf/.* - - (usr/)?lib(32|64)?/libSegFault\.so(\.\d+)*$ -- artifact: glibc-libs - include: - # This is processed after bins, so bins can take libSegFault.so - - (usr/)?lib(32|64)?/lib[^/]*\.so(\.\d+)*$ - - etc/ld.so.conf - - etc/ld.so.conf.d -- artifact: glibc-devel - include: - - (usr/)?include/.* - - (usr/)?lib(32|64)?/lib.*\.a - - (usr/)?lib(32|64)?/lib.*\.la - - (usr/)?(lib(32|64)?|share)/pkgconfig/.*\.pc - - (usr/)?lib(32|64)?/.*\.o -- artifact: glibc-locale - include: - - (usr/)?lib/locale/.* - - (usr/)?share/locale/.* - - (usr/)?share/i18n/.* - - (usr/)?share/zoneinfo/.* -- artifact: glibc-misc - include: - - .* -configure-commands: -- mkdir o - -- | - case "$MORPH_ARCH" in - armv7*) - ARCH_FLAGS="--without-fp" ;; - esac - - # We override the PATH here to remove /tools/bin from it. - # Thanks to this glibc finds bash in /bin/bash through the /bin - # symlink. This is important because glibc changes the path to bash - # of the shebang in some scripts and these scripts will be broken if - # they point to bash in /tools/bin/bash. - export PATH="/usr/bin:/sbin:/bin"; - export CFLAGS="-O2 $CFLAGS"; - cd o && ../configure \ - $ARCH_FLAGS \ - --prefix="$PREFIX" \ - --disable-profile \ - --enable-kernel=3.0.0 \ - --without-cvs \ - --without-selinux \ - --enable-obsolete-rpc - -build-commands: -- cd o && make localtime=UTC - -install-commands: -- cd o && make install_root="$DESTDIR" localtime=UTC install -- cd o && make install_root="$DESTDIR" localtime=UTC localedata/install-locales -- mkdir -p "$DESTDIR/etc" -- mkdir -p "$DESTDIR/etc/ld.so.conf.d" -- | - cat < nsswitch.conf - passwd: compat - group: compat - shadow: compat - - hosts: files myhostname mdns4_minimal [NOTFOUND=return] dns mdns4 - networks: files - - protocols: db files - services: db files - ethers: db files - rpc: db files - - netgroup: nis - EOF -- install -m 644 -o root -g root nsswitch.conf "$DESTDIR/etc/nsswitch.conf" -- | - cat < ld.so.conf - /lib - /usr/lib - /usr/local/lib - include /etc/ld.so.conf.d/*.conf - EOF -- install -m 644 -o root -g root ld.so.conf "$DESTDIR/etc/ld.so.conf" diff --git a/strata/build-essential/linux-api-headers.morph b/strata/build-essential/linux-api-headers.morph deleted file mode 100644 index 62aa22b8..00000000 --- a/strata/build-essential/linux-api-headers.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: linux-api-headers -kind: chunk -install-commands: -- | - case "$MORPH_ARCH" in - armv5l) - ARCH="arm" ;; - armv7b|armv7l|armv7lhf) - ARCH="arm" ;; - armv8l64|armv8b64) - ARCH="arm64" ;; - x86_32) - ARCH="i386" ;; - x86_64) - ARCH="x86_64" ;; - ppc64) - ARCH="powerpc" ;; - *) - echo "Error: unsupported Morph architecture: $MORPH_ARCH" >&2 - exit 1 - esac - ARCH=$ARCH make INSTALL_HDR_PATH=dest headers_install -- install -d "$DESTDIR${PREFIX-/usr}/include" -- cp -r dest/include/* "$DESTDIR/${PREFIX-/usr}/include" diff --git a/strata/build-essential/m4-tarball.morph b/strata/build-essential/m4-tarball.morph deleted file mode 100644 index eb16726a..00000000 --- a/strata/build-essential/m4-tarball.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: m4-tarball -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-gcc-warnings diff --git a/strata/build-essential/make.morph b/strata/build-essential/make.morph deleted file mode 100644 index 1259b342..00000000 --- a/strata/build-essential/make.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: make -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-nls diff --git a/strata/build-essential/stage1-binutils.morph b/strata/build-essential/stage1-binutils.morph deleted file mode 100644 index 69a79d14..00000000 --- a/strata/build-essential/stage1-binutils.morph +++ /dev/null @@ -1,23 +0,0 @@ -name: stage1-binutils -kind: chunk -build-system: autotools - -configure-commands: -# We set the sysroot location dynamically at runtime by passing -# `--sysroot` to GCC, so we need to build a linker with sysroot support. -# We set it to a non-existent directory as a safety net to avoid looking -# at the host dirs in case we forget to set the sysroot. Setting the -# lib path is vital to avoid the tools we build linking to the libraries -# on the host system; the '=' makes the path we give relative to the -# sysroot, which we can then set at runtime by passing -Wl,--sysroot to -# GCC. Although nothing should be installed on /lib64, we configure the -# linker to look at that directory as well to make things more robust -# (currently GCC installs libraries to this directory at least on -# x86_64). - -- | - ./configure --prefix="$PREFIX" --disable-nls --disable-werror \ - --build=$(sh config.guess) \ - --host=$(sh config.guess) \ - --target=$TARGET_STAGE1 \ - --with-sysroot=/nonexistentdir --with-lib-path="=$PREFIX/lib:=$PREFIX/lib64" diff --git a/strata/build-essential/stage1-gcc.morph b/strata/build-essential/stage1-gcc.morph deleted file mode 100644 index f5d828f7..00000000 --- a/strata/build-essential/stage1-gcc.morph +++ /dev/null @@ -1,83 +0,0 @@ -name: stage1-gcc -kind: chunk - -configure-commands: -# Workaround from LFS due GCC not detecting stack protection correctly -- | - sed -i -e '/k prot/a \ - gcc_cv_libc_provides_ssp=yes - ' gcc/configure - -- mkdir o - -# Configure flag notes: -# 1. See gcc.morph. -# 2. Although we will be setting a sysroot at runtime, giving a -# temporary one at configuration time seems necessary so that -# `--with-native-system-header-dir` produces effect and -# /tools/include is in the include path for the newly built GCC. We -# set it by default to a non-existent directory to avoid GCC looking -# at the host dirs, in case we forget to give it at runtime. -# 3. Disable searching /usr/local/include for headers -# 4. The pass 1 compiler needs to find the libraries we build in pass -# 2. Include path must be set explicility, because it defaults to -# $SYSROOT/usr/include rather than $SYSROOT/include. -# 5. Disable stuff that doesn't work when building a cross compiler -# without an existing libc, and generally try to keep this build as -# simple as possible. -- | - case "$MORPH_ARCH" in - armv7lhf) ARCH_FLAGS="--with-arch=armv7-a \ - --with-tune=cortex-a9 \ - --with-fpu=vfpv3-d16 \ - --with-float=hard" ;; - armv7*) ARCH_FLAGS="--with-arch=armv7-a" ;; - esac - - cd o && CXX="g++ -std=gnu++98" ../configure \ - $ARCH_FLAGS \ - --build=$(sh ../config.guess) \ - --host=$(sh ../config.guess) \ - --target=$TARGET_STAGE1 \ - --prefix="$PREFIX" \ - `# [1]` --libdir="$PREFIX/lib" \ - `# [2]` --with-sysroot=/nonexistentdir \ - --with-newlib \ - `# [3]` --with-local-prefix="$PREFIX" \ - `# [4]` --with-native-system-header-dir="$PREFIX/include" \ - --without-headers \ - --disable-nls \ - --disable-shared \ - --disable-multilib \ - `# [5]` --disable-decimal-float \ - `# [5]` --disable-threads \ - `# [5]` --disable-libatomic \ - `# [5]` --disable-libgomp \ - `# [5]` --disable-libitm \ - `# [5]` --disable-libmpx \ - `# [5]` --disable-libquadmath \ - `# [5]` --disable-libsanitizer \ - `# [5]` --disable-libssp \ - `# [5]` --disable-libvtv \ - `# [5]` --disable-libcilkrts \ - `# [5]` --disable-libstdc++-v3 \ - --enable-languages=c,c++ - -build-commands: -- | - # GCC is not passing the correct host/target flags to GMP's configure - # script, which causes it to not use the machine-dependent code for - # the platform and use the generic one instead. However, the generic - # code results on an undefined reference to `__gmpn_invert_limb' in - # ARMv7. Fix the invocation of GMP's configure script so that GMP can - # use the machine-dependent code. - case "$MORPH_ARCH" in - armv5*) sed -i "s/--host=none/--host=armv5/" o/Makefile - sed -i "s/--target=none/--target=armv5/" o/Makefile ;; - armv7*) sed -i "s/--host=none/--host=armv7a/" o/Makefile - sed -i "s/--target=none/--target=armv7a/" o/Makefile ;; - esac - cd o && make - -install-commands: -- cd o && make DESTDIR="$DESTDIR" install diff --git a/strata/build-essential/stage2-binutils.morph b/strata/build-essential/stage2-binutils.morph deleted file mode 100644 index b07b56a4..00000000 --- a/strata/build-essential/stage2-binutils.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: stage2-binutils -kind: chunk -build-system: autotools - -configure-commands: -- | - export STAGE2_SYSROOT="$(dirname $(pwd))" - export CXX="$TARGET_STAGE1-g++ --sysroot=$STAGE2_SYSROOT" - # binutils has its own embedded libtool, which is old and strips out - # `--sysroot`. Work around by modifying the compiler command to - # include the sysroot flag - export CC="$TARGET_STAGE1-gcc --sysroot=$STAGE2_SYSROOT" - ./configure --prefix="$PREFIX" --disable-nls --disable-werror \ - --build=$(sh config.guess) \ - --host=$TARGET_STAGE1 \ - --target=$TARGET_STAGE1 - -build-commands: -- | - export STAGE2_SYSROOT="$(dirname $(pwd))" - make diff --git a/strata/build-essential/stage2-busybox.morph b/strata/build-essential/stage2-busybox.morph deleted file mode 100644 index f271a40d..00000000 --- a/strata/build-essential/stage2-busybox.morph +++ /dev/null @@ -1,80 +0,0 @@ -name: stage2-busybox -kind: chunk - -configure-commands: -# Explicitly setting HOSTCC is required because we have a 'gcc' earlier in -# the PATH supplied by the stage2-gcc chunk, which can't execute outside of -# the stage 3 staging area. -- make HOSTCC="/usr/bin/gcc" CROSS_COMPILE=$TARGET_STAGE1- KCONFIG_NOTIMESTAMP=1 defconfig - -# Avoid dividing applets between $PREFIX/[s]bin and $PREFIX/usr/[s]bin. -- '[ "$PREFIX" = /usr ] || sed -e ''s/.*INSTALL_NO_USR.*/CONFIG_INSTALL_NO_USR=y/'' - -i .config' -# We have GAWK. -- sed -e 's/CONFIG_AWK=y.*/# CONFIG_AWK is not set/' -i .config - -# Depends on stuff that was removed since eglibc 2.14. -- sed -e 's/CONFIG_INETD=y.*/# CONFIG_INETD is not set/' -i .config - -# Busybox Patch is incompatible enough with GNU Patch that it can't be -# used for GNULib projects built from Git. -- sed -e 's/CONFIG_PATCH=y.*/# CONFIG_PATCH is not set/' -i .config - -# None of this is needed because we have kmod; and it actually breaks the -# Linux build because depmod isn't compatible enough with util-linux's. -- sed -e 's/CONFIG_DEPMOD=y.*/# CONFIG_DEPMOD is not set/' -i .config -- sed -e 's/CONFIG_INSMOD=y.*/# CONFIG_INSMOD is not set/' -i .config -- sed -e 's/CONFIG_MODPROBE=y.*/# CONFIG_MODPROBE is not set/' -i .config -- sed -e 's/CONFIG_MODPROBE_SMALL=y.*/# CONFIG_MODPROBE_SMALL is not set/' -i .config -- sed -e 's/CONFIG_LSMOD=y.*/# CONFIG_LSMOD is not set/' -i .config -- sed -e 's/CONFIG_RMMOD=y.*/# CONFIG_RMMOD is not set/' -i .config - -# General features that we don't need. -- sed -e 's/CONFIG_FEATURE_MOUNT_CIFS=y.*/# CONFIG_FEATURE_MOUNT_CIFS is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_EXTRA_QUIET=y.*/# CONFIG_FEATURE_EXTRA_QUIET is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INIT_COREDUMPS=y.*/# CONFIG_FEATURE_INIT_COREDUMPS is not - set/' -i .config -- sed -e 's/CONFIG_FEATURE_INIT_SCTTY=y.*/# CONFIG_FEATURE_INIT_SCTTY is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INIT_SYSLOG=y.*/# CONFIG_FEATURE_INIT_SYSLOG is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_INITRD=y.*/# CONFIG_FEATURE_INITRD is not set/' -i .config -- sed -e 's/CONFIG_FEATURE_USE_INITTAB=y.*/# CONFIG_FEATURE_USE_INITTAB is not set/' - -i .config -- sed -e 's/CONFIG_FEATURE_MINIX2=y.*/# CONFIG_FEATURE_MINIX2 is not set/' -i .config -- sed -e 's/CONFIG_FSCK_MINIX=y.*/# CONFIG_FSCK_MINIX is not set/' -i .config -- sed -e 's/CONFIG_HALT=y.*/# CONFIG_HALT is not set/' -i .config -- sed -e 's/CONFIG_INIT=y.*/# CONFIG_INIT is not set/' -i .config -- sed -e 's/CONFIG_INIT_TERMINAL_TYPE=y.*/CONFIG_INIT_TERMINAL_TYPE=""/' -i .config -- sed -e 's/CONFIG_LOSETUP=y.*/# CONFIG_LOSETUP is not set/' -i .config -- sed -e 's/CONFIG_LSUSB=y.*/# CONFIG_LSUSB is not set/' -i .config -- sed -e 's/CONFIG_LZMA=y.*/# CONFIG_LZMA is not set/' -i .config -- sed -e 's/CONFIG_MKFS_EXT2=y.*/# CONFIG_MKFS_EXT2 is not set/' -i .config -- sed -e 's/CONFIG_MKFS_MINIX=y.*/# CONFIG_MKFS_MINIX is not set/' -i .config -- sed -e 's/CONFIG_RUNLEVEL=y.*/# CONFIG_RUNLEVEL is not set/' -i .config -- sed -e 's/CONFIG_STRINGS=y.*/# CONFIG_STRINGS is not set/' -i .config -- sed -e 's/CONFIG_UNLZMA=y.*/# CONFIG_UNLZMA is not set/' -i .config -- sed -e 's/CONFIG_UNXZ=y.*/# CONFIG_UNXZ is not set/' -i .config -- sed -e 's/CONFIG_XZ=y.*/# CONFIG_XZ is not set/' -i .config - -build-commands: -- | - export STAGE2_SYSROOT="$(dirname $(pwd))" - export CPPFLAGS="--sysroot=$STAGE2_SYSROOT" - export LDFLAGS="--sysroot=$STAGE2_SYSROOT" - make HOSTCC="/usr/bin/gcc" CROSS_COMPILE=$TARGET_STAGE1- KCONFIG_NOTIMESTAMP=1 - -install-commands: -# We expect to be built with a non-standard prefix in stage 2 (i.e. not -# /usr). The install will break if prefix is set to /usr. -- | - export STAGE2_SYSROOT="$(dirname $(pwd))" - export CPPFLAGS="--sysroot=$STAGE2_SYSROOT" - export LDFLAGS="--sysroot=$STAGE2_SYSROOT" - make CONFIG_PREFIX="$DESTDIR$PREFIX" \ - HOSTCC="/usr/bin/gcc" \ - CROSS_COMPILE=$TARGET_STAGE1- \ - KCONFIG_NOTIMESTAMP=1 install && - chmod 6755 "$DESTDIR$PREFIX"/bin/busybox diff --git a/strata/build-essential/stage2-fake-bash.morph b/strata/build-essential/stage2-fake-bash.morph deleted file mode 100644 index 021fd366..00000000 --- a/strata/build-essential/stage2-fake-bash.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: stage2-fake-bash -kind: chunk -install-commands: -- printf '#!/bin/sh\nexec /bin/sh "$@"\n' | install -D /proc/self/fd/0 -m 755 "$DESTDIR$PREFIX/bin/bash" diff --git a/strata/build-essential/stage2-fhs-dirs.morph b/strata/build-essential/stage2-fhs-dirs.morph deleted file mode 100644 index 6f842403..00000000 --- a/strata/build-essential/stage2-fhs-dirs.morph +++ /dev/null @@ -1,51 +0,0 @@ -name: stage2-fhs-dirs -kind: chunk -description: create the FHS 2.3 directory hierarchy and the usual files -install-commands: -- sh ./create-fhs-dirs "$DESTDIR" -- rmdir "$DESTDIR/usr/bin" -- ln -s "$PREFIX/bin" "$DESTDIR/usr/bin" -- install -m 644 passwd "$DESTDIR/etc/passwd" -- install -m 600 shadow "$DESTDIR/etc/shadow" -- install -m 644 interfaces "$DESTDIR/etc/network/interfaces" -- install -m 644 group "$DESTDIR/etc/group" -- install -m 644 issue "$DESTDIR/etc/issue" -- install -m 644 services "$DESTDIR/etc/services" -- install -m 644 protocols "$DESTDIR/etc/protocols" -- echo baserock > "$DESTDIR"/etc/hostname -devices: -- type: c - filename: /dev/console - gid: 0 - major: 5 - minor: 1 - permissions: '0600' - uid: 0 -- type: c - filename: /dev/full - gid: 0 - major: 1 - minor: 7 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/null - gid: 0 - major: 1 - minor: 3 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/urandom - gid: 0 - major: 1 - minor: 9 - permissions: '0666' - uid: 0 -- type: c - filename: /dev/zero - gid: 0 - major: 1 - minor: 5 - permissions: '0666' - uid: 0 diff --git a/strata/build-essential/stage2-gawk.morph b/strata/build-essential/stage2-gawk.morph deleted file mode 100644 index 15c838b6..00000000 --- a/strata/build-essential/stage2-gawk.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: stage2-gawk -kind: chunk -build-system: autotools -configure-commands: -- STAGE2_SYSROOT="$(dirname $(pwd))" CPPFLAGS="--sysroot=$STAGE2_SYSROOT" CXX=false - LDFLAGS="--sysroot=$STAGE2_SYSROOT" ./configure --prefix="$PREFIX" --disable-nls - --build=$(sh config.guess) --host=$TARGET_STAGE1 -build-commands: -- STAGE2_SYSROOT="$(dirname $(pwd))" make diff --git a/strata/build-essential/stage2-gcc-fixed-headers.morph b/strata/build-essential/stage2-gcc-fixed-headers.morph deleted file mode 100644 index 10794872..00000000 --- a/strata/build-essential/stage2-gcc-fixed-headers.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: stage2-gcc-fixed-headers -kind: chunk -install-commands: -# Stage 1 GCC's fixincludes process created a limits.h before there was -# a real limits.h available for the target. This step (taken from Linux -# Linux From Scratch) creates a better one so that stage 2 GCC can compile. -# -# THIS IS A FRAGILE HACK! We need to replace the headers. The only way to -# overwrite files in a staging area is to install a new chunk. -# This is undesired behaviour in the long term, as we want to never -# have overlaps, so this functionality may go away. -- | - libgcc_dir=$(dirname $($TARGET_STAGE1-gcc -print-libgcc-file-name)) - sysroot="$(dirname "$(pwd)")" - target_libgcc_dir="${libgcc_dir#$sysroot}" - mkdir -p "$DESTDIR/$target_libgcc_dir/include-fixed" - cat "gcc/limitx.h" "gcc/glimits.h" "gcc/limity.h" \ - >"$DESTDIR/$target_libgcc_dir/include-fixed/limits.h" - diff --git a/strata/build-essential/stage2-gcc.morph b/strata/build-essential/stage2-gcc.morph deleted file mode 100644 index 6f211e83..00000000 --- a/strata/build-essential/stage2-gcc.morph +++ /dev/null @@ -1,81 +0,0 @@ -name: stage2-gcc -kind: chunk - -configure-commands: -- mkdir o - -# In other projects we specify the sysroot location using CPPFLAGS. -# Here, that breaks because GCC compiles stuff for the *build* machine, -# too ... and this requires using the host's compiler, which cannot use -# the same set of CPPFLAGS as the target. If we specify the sysroot -# using CC instead then we don't interfere, because we are only -# specifying the *host* C compiler. -# -# Configure flag notes: -# 1. It's vital that this compiler runs in the bootstrap machine, and -# targets the same machine (TARGET_STAGE1) so that the stage 1 GCC -# is used instead of the compiler of the build machine. -# 2. See gcc.morph. -# 3. Disable searching /usr/local/include for headers -# 4. This flag causes the correct --sysroot flag to be passed when -# calling stage 1 GCC. -- | - case "$MORPH_ARCH" in - armv7lhf) ARCH_FLAGS="--with-arch=armv7-a \ - --with-tune=cortex-a9 \ - --with-fpu=vfpv3-d16 \ - --with-float=hard" ;; - armv7*) ARCH_FLAGS="--with-arch=armv7-a" ;; - esac - export STAGE2_SYSROOT="$(dirname $(pwd))" - export CC="$TARGET_STAGE1-gcc --sysroot=$STAGE2_SYSROOT" - export CXX="$TARGET_STAGE1-g++ --sysroot=$STAGE2_SYSROOT" - export AR="$TARGET_STAGE1-ar" - export RANLIB="$TARGET_STAGE1-ranlib" - cd o && ../configure \ - $ARCH_FLAGS \ - --build=$(sh ../config.guess) \ - `# [1]` --host=$TARGET_STAGE1 \ - `# [1]` --target=$TARGET_STAGE1 \ - --prefix="$PREFIX" \ - `# [2]` --libdir=$PREFIX/lib \ - `# [3]` --with-local-prefix=$PREFIX \ - `# [4]` --with-build-sysroot="$STAGE2_SYSROOT" \ - --disable-bootstrap \ - --disable-nls \ - --disable-multilib \ - --disable-libgomp \ - --disable-libstdcxx-pch \ - --enable-languages=c,c++ - -build-commands: -- | - case "$MORPH_ARCH" in - armv5*) sed -i "s/--host=none/--host=armv5/" o/Makefile - sed -i "s/--target=none/--target=armv5/" o/Makefile ;; - armv7*) sed -i "s/--host=none/--host=armv7a/" o/Makefile - sed -i "s/--target=none/--target=armv7a/" o/Makefile ;; - esac - export STAGE2_SYSROOT="$(dirname $(pwd))" - cd o && make - -install-commands: -- cd o && make DESTDIR="$DESTDIR" install - -# Stage 3 builds need to link against this file in the location that -# it will be in the final system, so we make a temporary link now. -# -# On x86_64 GCC resolutely installs its libraries into lib64. To fix this -# would require hobbling the MULTILIB_OSDIRNAMES field in -# gcc/config/i386/t-linux64 and this might break things, so for now we -# tolerate the inconsistency. -- | - if [ "$(echo $TARGET | cut -c -6)" = "x86_64" ]; then - libdir=lib64 - else - libdir=lib - fi - - install -d "$DESTDIR/lib" - ln -s "$PREFIX/$libdir/libgcc_s.so" "$DESTDIR/lib/" - ln -s "$PREFIX/$libdir/libgcc_s.so.1" "$DESTDIR/lib/" diff --git a/strata/build-essential/stage2-glibc.morph b/strata/build-essential/stage2-glibc.morph deleted file mode 100644 index d2ead6c6..00000000 --- a/strata/build-essential/stage2-glibc.morph +++ /dev/null @@ -1,108 +0,0 @@ -name: stage2-glibc -kind: chunk -build-system: manual - -configure-commands: -- mkdir o - -# Configure flag notes: -# 1. Avoid installing to PREFIX/lib64 on x86_64. -# 2. Location of linux-api-headers. -# 3. Normal flags. See glibc.morph. -# 4. Force configuration values of certain things that can't be detected -# in a cross-compile. -- | - case "$MORPH_ARCH" in - armv7*) - ARCH_FLAGS="--without-fp" ;; - esac - - export CFLAGS="-O2 $CFLAGS"; export CXX=false; \ - cd o && ../configure \ - $ARCH_FLAGS \ - --build=$(../scripts/config.guess) --host=$TARGET_STAGE1 \ - --prefix="$PREFIX" \ - --enable-obsolete-rpc \ - `# [1]` --libdir="$PREFIX/lib" \ - `# [2]` --with-headers="$(pwd)/../../$PREFIX/include" \ - `# [3]` --disable-profile --enable-kernel=2.6.25 \ - `# [4]` libc_cv_c_cleanup=yes libc_cv_ctors_header=yes \ - libc_cv_forced_unwind=yes libc_cv_ssp=no - -build-commands: -- cd o && make localtime=UTC - -install-commands: -- cd o && make install_root="$DESTDIR" localtime=UTC install -- mkdir -p "$DESTDIR/etc" -- mkdir -p "$DESTDIR/etc/ld.so.conf.d" -- | - cat < ld.so.conf - /lib - /usr/lib - /usr/local/lib - include /etc/ld.so.conf.d/*.conf - EOF -- install -m 644 -o root -g root ld.so.conf "$DESTDIR/etc/ld.so.conf" -- | - # Fix up GCC to handle the sysroot containing glibc being in a different - # location for each chunk build. - # - # For headers, it's enough to pass -B in the CPPFLAGS. This would work for - # the startup files (crt*.o) as well, except where libtool is involved (in - # which case it strips -B out of your LDFLAGS before calling GCC). We get - # around this by making GCC locate them relative to the environment variable - # STAGE2_SYSROOT, which we can then set along with CPPFLAGS in each stage 2 - # chunk build. - # - # We also force the use of the program loader at PREFIX/lib/ld.so instead - # of its usual home in /lib or /lib64, which is necessary for the output of - # stage 2 to work as a chroot when building stage 3. - - sysroot="$(dirname "$(pwd)")" - specs_dir="$(dirname $($TARGET_STAGE1-gcc --print-libgcc-file-name))" - target_specs_dir="$DESTDIR/${specs_dir#$sysroot}" - mkdir -p "$target_specs_dir" - - $TARGET_STAGE1-gcc -dumpspecs | - sed -e "s@[gMS]\?crt[1in].o%s@%:getenv(STAGE2_SYSROOT $PREFIX/lib/&)@g" \ - -e "s@/lib\(64\)\?/ld@$PREFIX/lib/ld@g" \ - > "$target_specs_dir/specs-for-sysroot" - - # NASTY HACK # - # We create a symlink to the actual specs here, so that later the - # symlink can be replaced with a dangling link. - # - # This is necessary as we need to have gcc use its internal specs, - # which can differ to the specs generated by `gcc -dumpspecs`. - # - # The dangling symlink will not make it onto the final system, just - # like all other bootstrap only components. - ln -s specs-for-sysroot "$target_specs_dir/specs" - -# Install a symlink for the program interpreter (ld.so) so that binaries -# built in stage 3 before the stage 3 glibc is built can use it. -# FIXME: get a better way of finding the name of the loader. The lib64 -# path is hardcoded into glibc in the file -# sysdeps/unix/sysv/linux/configure. -- install -d $DESTDIR/lib -- | - case "$MORPH_ARCH" in - x86_64) - install -d "$DESTDIR/lib64" - ln -s "$PREFIX/lib/ld-linux-x86-64.so.2" \ - "$DESTDIR/lib64/ld-linux-x86-64.so.2" ;; - ppc64l) - install -d "$DESTDIR/lib64" - ln -s "$PREFIX/lib/ld64.so.2" \ - "$DESTDIR/lib64/ld64.so.2" ;; - ppc64|ppc64b) - install -d "$DESTDIR/lib64" - ln -s "$PREFIX/lib/ld64.so.1" \ - "$DESTDIR/lib64/ld64.so.1" ;; - *) - loader=$(basename $(ls "$DESTDIR$PREFIX"/lib/ld-linux*)) - [ -z $loader ] && loader=$(basename $(ls "$DESTDIR$PREFIX"/lib/ld.so*)) - [ -z $loader ] && ( echo "Bug in stage2-glibc ld.so symlinks" ; exit 1 ) - ln -s "$PREFIX/lib/$loader" "$DESTDIR/lib/$loader" - esac diff --git a/strata/build-essential/stage2-libstdc++.morph b/strata/build-essential/stage2-libstdc++.morph deleted file mode 100644 index 79a40308..00000000 --- a/strata/build-essential/stage2-libstdc++.morph +++ /dev/null @@ -1,36 +0,0 @@ -name: stage2-libstdc++ -kind: chunk -configure-commands: -- mkdir o - -# Configure flag notes: -# 1. The thread C++ library cannot be built, as the thread C library -# was not build in stage1-gcc. -# 2. Prevents the installation of precompiled include files, which are -# not needed at this stage. -# 3. From LFS: the header location of C++ needs to be explicitly given -# as we are running the configure script from the top-level -# directory. -- | - export STAGE2_SYSROOT="$(dirname $(pwd))" - # -fPIC must be given, otherwise it will not be possible to create - # shared libraries linked to libstdc++ - export CPPFLAGS="--sysroot=$STAGE2_SYSROOT -fPIC" - export LDFLAGS="--sysroot=$STAGE2_SYSROOT" - cd o && ../libstdc++-v3/configure \ - --build=$(sh ../config.guess) \ - --host="$TARGET_STAGE1" \ - --target="$TARGET_STAGE1" \ - --prefix="$PREFIX" \ - --disable-nls \ - --disable-shared \ - --disable-multilib \ - `# [1]` --disable-libstdcxx-threads \ - `# [2]` --disable-libstdcxx-pch \ - `# [3]` --with-gxx-include-dir=/tools/"$TARGET_STAGE1"/include/c++/7.1.0 - -build-commands: -- cd o && make - -install-commands: -- cd o && make DESTDIR="$DESTDIR" install diff --git a/strata/build-essential/stage2-linux-api-headers.morph b/strata/build-essential/stage2-linux-api-headers.morph deleted file mode 100644 index 1da94ee9..00000000 --- a/strata/build-essential/stage2-linux-api-headers.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: stage2-linux-api-headers -kind: chunk -install-commands: -- | - case "$MORPH_ARCH" in - armv5l) - ARCH="arm" ;; - armv7b|armv7l|armv7lhf) - ARCH="arm" ;; - armv8l64|armv8b64) - ARCH="arm64" ;; - x86_32) - ARCH="i386" ;; - x86_64) - ARCH="x86_64" ;; - ppc64) - ARCH="powerpc" ;; - *) - echo "Error: unsupported Morph architecture: $MORPH_ARCH" >&2 - exit 1 - esac - ARCH=$ARCH make INSTALL_HDR_PATH=dest headers_install -- install -d "$DESTDIR${PREFIX-/usr}/include" -- cp -r dest/include/* "$DESTDIR/${PREFIX-/usr}/include" diff --git a/strata/build-essential/stage2-make.morph b/strata/build-essential/stage2-make.morph deleted file mode 100644 index af5e5347..00000000 --- a/strata/build-essential/stage2-make.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: stage2-make -kind: chunk -build-system: autotools -configure-commands: -- STAGE2_SYSROOT="$(dirname $(pwd))" CPPFLAGS="--sysroot=$STAGE2_SYSROOT" CXX=false - LDFLAGS="--sysroot=$STAGE2_SYSROOT" ./configure --prefix="$PREFIX" --disable-nls --without-guile - --build=$(sh config/config.guess) --host=$TARGET_STAGE1 -build-commands: -- STAGE2_SYSROOT="$(dirname $(pwd))" make diff --git a/strata/build-essential/stage2-reset-specs.morph b/strata/build-essential/stage2-reset-specs.morph deleted file mode 100644 index 8892f67c..00000000 --- a/strata/build-essential/stage2-reset-specs.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: stage2-reset-specs -kind: chunk - -# Nasty hack to get around being unable to reliably add configuration to gcc, -# hence the gcc specs are modified, combined with Baserock's rootfs protection -# preventing specs being modified before builds. -# The limitation is overcome by installing files as part of a chunk, which -# overwrites previous files. -# New specs were added for the bootstrap builds, but after stage2 we start -# having chrooted builds, so the old specs need to be replaced. -# Unfortunately we can't just replace the specs with the ones gcc produces, -# since gcc behaves differently without specs to with specs it produces! -# So we use a **NASTY HACK** to replace the specs symlink with one that -# points to a file that doesn't exist. -install-commands: -- | - STAGE2_SYSROOT="$(dirname "$(pwd)")" - specs_dir="$(dirname $($TARGET_STAGE1-gcc -print-libgcc-file-name))" - target_specs_dir="$DESTDIR/${specs_dir#$STAGE2_SYSROOT}" - mkdir -p "$target_specs_dir" - ln -s "temporary specs removed by baserock bootstrap" "$target_specs_dir/specs" diff --git a/strata/build-essential/zlib.morph b/strata/build-essential/zlib.morph deleted file mode 100644 index 900648b6..00000000 --- a/strata/build-essential/zlib.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: zlib -kind: chunk -build-system: manual -configure-commands: -- ./configure --prefix="$PREFIX" -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/strata/cloudinit-support.morph b/strata/cloudinit-support.morph deleted file mode 100644 index 4cb15542..00000000 --- a/strata/cloudinit-support.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: cloudinit-support -kind: stratum -description: A stratum with cloudinit to fit a system in the OpenStack cloud. -build-depends: -- morph: strata/build-essential.morph -- morph: strata/python2-core.morph -- morph: strata/python-common.morph -- morph: strata/foundation.morph -chunks: -- name: python-cheetah - repo: upstream:python-cheetah - ref: 831aa6b99d9b4fb012ee644d8e80e0bc0eb6d6ed - unpetrify-ref: baserock/morph - build-system: python-distutils -- name: cloud-init - morph: strata/cloudinit-support/cloud-init.morph - repo: upstream:cloud-init - ref: 130d51acc5b0becd64e7007f9dfe41a6e022eaec - unpetrify-ref: baserock/morph - build-depends: - - python-cheetah diff --git a/strata/cloudinit-support/cloud-init.morph b/strata/cloudinit-support/cloud-init.morph deleted file mode 100644 index 5933dbf8..00000000 --- a/strata/cloudinit-support/cloud-init.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: cloud-init -kind: chunk -build-system: python-distutils -post-install-commands: -- mkdir -p "$DESTDIR"/lib/systemd/system -- cp systemd/* "$DESTDIR"/lib/systemd/system/ diff --git a/strata/connectivity.morph b/strata/connectivity.morph deleted file mode 100644 index 9d1a1b04..00000000 --- a/strata/connectivity.morph +++ /dev/null @@ -1,27 +0,0 @@ -name: connectivity -kind: stratum -build-depends: -- morph: strata/foundation.morph -chunks: -- name: mobile-broadband-provider-info - repo: upstream:mobile-broadband-provider-info - ref: 4ed19e11c2975105b71b956440acdb25d46a347d - unpetrify-ref: baserock/morph - build-system: autotools -- name: libnl - repo: upstream:libnl - ref: a2c4bd8f094a7247903578860a9c42049991860b - unpetrify-ref: baserock/morph - build-system: autotools -- name: wpa_supplicant - morph: strata/connectivity/wpa_supplicant.morph - repo: upstream:hostap - ref: 2462f347bca0a7cce7e06ff88adbe3aa47c52d54 - unpetrify-ref: hostap_2_6 - build-depends: - - libnl -- name: iptables - repo: upstream:iptables - ref: 482c6d3731e2681cb4baae835c294840300197e6 - unpetrify-ref: v1.4.21 - build-system: autotools diff --git a/strata/connectivity/wpa_supplicant.morph b/strata/connectivity/wpa_supplicant.morph deleted file mode 100644 index 3fdc68a2..00000000 --- a/strata/connectivity/wpa_supplicant.morph +++ /dev/null @@ -1,36 +0,0 @@ -name: wpa_supplicant -kind: chunk -configure-commands: -- | - cat >"wpa_supplicant/.config" < "$ACE_ROOT"/ace/config.h - echo "include "$ACE_ROOT"/include/makeinclude/platform_linux.GNU" > "$ACE_ROOT"/include/makeinclude/platform_macros.GNU - export LD_LIBRARY_PATH="$ACE_ROOT"/lib:$LD_LIBRARY_PATH - cd "$TAO_ROOT" - make -install-commands: -- | - export ACE_ROOT="$PWD/ACE" - export TAO_ROOT="$PWD/TAO" - export MPC_ROOT='/usr/src/MPC' - cd "$TAO_ROOT" - make DESTDIR="$DESTDIR" INSTALL_PREFIX="$PREFIX" install -system-integration: - ACE_TAO-misc: - 00-remove-build-dependencies: - - rm -rf /usr/src/MPC diff --git a/strata/corba/MPC.morph b/strata/corba/MPC.morph deleted file mode 100644 index 84b015ec..00000000 --- a/strata/corba/MPC.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: MPC -kind: chunk -build-system: manual -install-commands: -- mkdir -p "$DESTDIR/usr/src/MPC" -- cp -r * "$DESTDIR/usr/src/MPC" diff --git a/strata/core.morph b/strata/core.morph deleted file mode 100644 index 2d2c0253..00000000 --- a/strata/core.morph +++ /dev/null @@ -1,482 +0,0 @@ -name: core -kind: stratum -description: Core components of a Baserock base system that are build tools required - for the BSP and Foundation strata, but a step above build-essential -build-depends: -- morph: strata/build-essential.morph -chunks: -- name: gdbm - morph: strata/core/gdbm.morph - repo: upstream:gdbm-tarball - ref: e5faeaaf75ecfb705a9b643b3e4cb881ebb69f48 - unpetrify-ref: gdbm-1.11 -- name: perl - morph: strata/core/perl.morph - repo: upstream:perl - ref: 70f63a4c7dba89e8e48b44de7978faae4319e693 - unpetrify-ref: v5.22.0 - build-depends: - - gdbm -- name: ncurses - morph: strata/core/ncurses.morph - repo: upstream:ncurses - ref: f6d73a10a980bc78969c3af93665cbe7d06c3646 - unpetrify-ref: ncurses-5.9-20150131 -- name: texinfo-tarball - morph: strata/core/texinfo-tarball.morph - repo: upstream:texinfo-tarball - ref: 6a55f074b1f67d02149c13931eb1df9f0e539b15 - unpetrify-ref: texinfo-5.2 - build-depends: - - ncurses - - perl -- name: autoconf-tarball - morph: strata/core/autoconf-tarball.morph - repo: upstream:autoconf-tarball - ref: 55d1d2c339bc5f935f6d8d702e98b7bd5d968e9d - unpetrify-ref: autoconf-2.69 - build-depends: - - perl -- name: automake - morph: strata/core/automake.morph - repo: upstream:automake - ref: db43dd473361d90d8b00362cfef5bac8e722000d - unpetrify-ref: v1.15 - build-depends: - - autoconf-tarball - - perl - - texinfo-tarball -- name: help2man - repo: upstream:help2man - ref: 83bab7e2e8e24a380266a9a247c029c49b0de666 - unpetrify-ref: baserock/v1.46.5 - build-system: autotools - build-depends: - - autoconf-tarball - - automake - - perl - - texinfo-tarball -# Note: autoconf's version number must be set in autoconf's chunk morph, -# so if you update autoconf be sure to also update the version number -# in strata/core/autoconf.morph -- name: autoconf - morph: strata/core/autoconf.morph - repo: upstream:autoconf - ref: 218f9347c9c34919c2b8eef8d9a0513ac567a3c1 - unpetrify-ref: baserock/v2.69-texinfo-fix - build-depends: - - autoconf-tarball - - automake - - help2man - - texinfo-tarball - - perl -- name: libtool-tarball - morph: strata/core/libtool-tarball.morph - repo: upstream:libtool-tarball - ref: c026ca36e37d2643623a75d0d3e9e451023139f3 - unpetrify-ref: libtool-2.4.6 -- name: file - repo: upstream:file - ref: 670c2bbcffe873a2b8589ed140c12e7923ef20c0 - unpetrify-ref: file-5.22 - build-system: autotools - build-depends: - - autoconf - - automake - - libtool-tarball -- name: libexpat - morph: strata/core/libexpat.morph - repo: upstream:libexpat - ref: 7cfc09db3e258129ab05811f2f9e351746ddab9f - unpetrify-ref: R_2_1_0 - build-depends: - - autoconf - - automake - - file - - libtool-tarball - - perl -- name: openssl-new - morph: strata/core/openssl-new.morph - repo: upstream:openssl-new - ref: 081314d07705aa58912845c213a48414d8f616a9 - unpetrify-ref: OpenSSL_1_0_2k - build-depends: - - perl -- name: bzip2 - morph: strata/core/bzip2.morph - repo: upstream:bzip2 - ref: 8deafa68e52b230018c0318dc7959ff9af3ad2a5 - unpetrify-ref: baserock/morph -- name: readline - morph: strata/core/readline.morph - repo: upstream:readline - ref: 518937ab89be812ccd45e9b8c1ce4ad721d35ef6 - unpetrify-ref: baserock/genivi/baseline - build-depends: - - automake -- name: libffi - morph: strata/core/libffi.morph - repo: upstream:libffi - ref: 20562ac0427c3578250d04c6e34fb0127d4551cf - unpetrify-ref: v3.2.1 - build-depends: - - autoconf - - automake - - libtool-tarball -- name: sqlite3 - repo: upstream:sqlite3 - ref: 24adc227bc29cd17e39df097fbca389c7724cd14 - unpetrify-ref: sqlite-autoconf-3080801 - build-system: autotools - build-depends: - - autoconf - - automake - - libtool-tarball -- name: python3 - morph: strata/core/python3.morph - repo: upstream:cpython - ref: 609bc370055e03b3c74c4321a5990929c29a226d - unpetrify-ref: v3.5.2 - build-depends: - - openssl-new - - bzip2 - - libexpat - - libffi - - sqlite3 - - ncurses - - readline -- name: ca-certificates - morph: strata/core/ca-certificates.morph - repo: upstream:ca-certificates - ref: 642c21872876ce2f9ec323b1df44f1cd6c47e91c - unpetrify-ref: baserock/debian/20150426 - build-depends: - - automake - - python3 -- name: curl - morph: strata/core/curl.morph - repo: upstream:curl - ref: 44b9b4d4f56d6f6de92c89636994c03984e9cd01 - unpetrify-ref: curl-7_52_1 - build-depends: - - autoconf - - automake - - file - - libtool-tarball - - openssl-new - - perl -- name: gettext-tarball - morph: strata/core/gettext-tarball.morph - repo: upstream:gettext-tarball - ref: 500500ec9b7b0d0cef90b48c9b4ddc8866b5f19c - unpetrify-ref: gettext-0.19.8.1 - build-depends: - - libexpat -- name: git-minimal - morph: strata/core/git-minimal.morph - repo: upstream:git - ref: ed9067f705aa51819c7dfff7e4190dd267beaf5d - unpetrify-ref: v2.8.0-rc2 - build-depends: - - autoconf - - python3 - - curl - - gettext-tarball - - libexpat - - openssl-new - - perl -- name: mini-utils - morph: strata/core/mini-utils.morph - repo: baserock:baserock/mini-utils - ref: 5293265b29bbf468ab9d7f3302b19dbc81d0f8b8 - unpetrify-ref: master -- name: gzip - morph: strata/core/gzip.morph - repo: upstream:gzip - ref: e360d3795658e14fb15705876393b9384843971e - unpetrify-ref: master - build-system: autotools - build-depends: - - autoconf - - gettext-tarball - - git-minimal - - mini-utils - submodules: - gnulib: - url: upstream:gnulib -- name: flex - morph: strata/core/flex.morph - repo: upstream:flex - ref: de10f98e8a2dc2a021796811490d0f30c3cd90bf - unpetrify-ref: baserock/build-essential - build-depends: - - perl - - autoconf - - automake - - file - - gettext-tarball - - texinfo-tarball -- name: bison - morph: strata/core/bison.morph - repo: upstream:bison - ref: c4e686a1abd817b4d4da5bdd5b3a5540566fd4a0 - unpetrify-ref: v3.0.4 - build-depends: - - autoconf - - automake - - flex - - gettext-tarball - - git-minimal - - openssl-new - - help2man - - mini-utils - - perl - - texinfo-tarball - submodules: - submodules/autoconf: - url: upstream:autoconf - gnulib: - url: upstream:gnulib -- name: patch - morph: strata/core/patch.morph - repo: upstream:patch - ref: 3b698ab6a13fd3e5890689cd85cf41312c682f8c - unpetrify-ref: v2.7.5 - build-depends: - - autoconf - - automake - - bison - - git-minimal - - openssl-new - - mini-utils - - perl - submodules: - gnulib: - url: upstream:gnulib -- name: xz - repo: upstream:xz - ref: a0cd05ee71d330b79ead6eb9222e1b24e1559d3a - unpetrify-ref: v5.2.0 - build-system: autotools - build-depends: - - autoconf - - automake - - file - - gettext-tarball - - libtool-tarball - - perl -- name: libtool - morph: strata/core/libtool.morph - repo: upstream:libtool - ref: f09d00cbcf924c378573163e244fffeb8d28005f - unpetrify-ref: v2.4.6 - build-depends: - - autoconf - - automake - - file - - help2man - - git-minimal - - openssl-new - - patch - - texinfo-tarball - - xz - - perl - - mini-utils - submodules: - gnulib: - url: upstream:gnulib -- name: pkg-config - morph: strata/core/pkg-config.morph - repo: upstream:pkg-config - ref: 74ceac54ef6f9247c00f08eecd8cca811a3c5934 - unpetrify-ref: pkg-config-0.28 - build-depends: - - autoconf - - automake - - libtool - - perl -- name: attr - morph: strata/core/attr.morph - repo: upstream:attr - ref: 4b005410f865895d4dcd56e2c135278a7a315877 - unpetrify-ref: v2.4.47 - build-depends: - - file - - autoconf - - automake - - gettext-tarball - - libtool - - perl -- name: acl - repo: upstream:acl - ref: fa5f6835e00c4927cae051328642b2a5a0d8b1c1 - unpetrify-ref: master - build-system: autotools - build-depends: - - autoconf - - automake - - gettext-tarball - - libtool - - attr - - perl -- name: linux-pam - morph: strata/core/linux-pam.morph - repo: upstream:linux-pam - ref: b1521c97e73b10469f7b34c0571d51c647eca83c - unpetrify-ref: Linux-PAM-1.1.8 - build-depends: - - autoconf - - automake - - gettext-tarball - - libtool - - pkg-config - - flex - - attr - - acl - - perl -- name: libcap2 - morph: strata/core/libcap2.morph - repo: upstream:libcap2 - ref: 4f7cca1bc9c2a274edb39d351b65747010d3ba7b - unpetrify-ref: baserock/morph - build-depends: - - autoconf - - automake - - gettext-tarball - - libtool - - pkg-config - - attr - - acl - - linux-pam - - perl -- name: shadow - morph: strata/core/shadow.morph - repo: upstream:shadow - ref: bfaa59229d61adb7fa0c570f0d94fd324c6e05aa - unpetrify-ref: upstream/4.2.1 - build-depends: - - autoconf - - automake - - gettext-tarball - - libtool - - bison - - attr - - acl - - linux-pam - - libcap2 - - perl -- name: util-linux - morph: strata/core/util-linux.morph - repo: upstream:util-linux - ref: 44338f7fe6a529cef1f206dccd95e7282625c483 - unpetrify-ref: v2.28 - build-depends: - - autoconf - - automake - - gettext-tarball - - git-minimal - - openssl-new - - libtool - - pkg-config - - linux-pam - - shadow - - perl -- name: e2fsprogs - morph: strata/core/e2fsprogs.morph - repo: upstream:e2fsprogs - ref: 3427917edca335d2cc4258cff8ab105c840298a4 - unpetrify-ref: v1.43.7 - build-depends: - - pkg-config - - util-linux - - file -- name: libxml2 - repo: upstream:libxml2 - ref: 6657afe83a38278f124ace71dc85f60420beb2d5 - unpetrify-ref: v2.9.3 - build-system: autotools - build-depends: - - autoconf - - automake - - file - - libtool - - libexpat - - pkg-config - - python3 - - xz - - perl -- name: libxslt - repo: upstream:libxslt - ref: 73e08bf7c36a9145d38f51d37e66529b873c011a - unpetrify-ref: master - build-system: autotools - build-depends: - - autoconf - - libtool - - automake - - file - - libxml2 - - xz - - perl -- name: XML-Parser - repo: upstream:XML-Parser - ref: e1a3ec157140a699e3020836475a0df622f70f1b - unpetrify-ref: baserock/morph - build-system: cpan - build-depends: - - libexpat - - perl -- name: intltool - repo: upstream:intltool - ref: 12f04c88be9ff8a578d8fd6990ee2448c66dc5f4 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - libexpat - - XML-Parser - - autoconf - - automake - - perl -- name: bash - morph: strata/core/bash.morph - repo: upstream:bash - ref: 3590145af6f1c9fa321dff231f69ae696e7e740b - unpetrify-ref: baserock/bash-4.3-patch-27 -- name: cmake - morph: strata/core/cmake.morph - repo: upstream:cmake - ref: 0d5a2252ef8a586f4fc70a66aabd17fb3fd52110 - unpetrify-ref: v3.8.2 -- name: cython - repo: upstream:cython - ref: 4dd8e762fa51d01775506fbbc102c45dbcea065d - unpetrify-ref: '0.22' - build-system: python3-distutils - build-depends: - - python3 -- name: gperf - morph: strata/core/gperf.morph - repo: upstream:gperf - ref: 5094e4a539adf845111013f82c2c4fcaec637983 - unpetrify-ref: baserock/morph -- name: bc - repo: upstream:bc-tarball - ref: 0956d119432ff6a2e85bae1fa336df799cad70b0 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - autoconf - - automake - - perl - - flex - - texinfo-tarball -- name: libseccomp - repo: upstream:libseccomp - ref: 2331d104bc0cbde5f6c54e504a038e52bfe8e12d - unpetrify-ref: v2.3.2 - build-system: autotools - build-depends: - - autoconf - - automake - - libtool - - perl diff --git a/strata/core/attr.morph b/strata/core/attr.morph deleted file mode 100644 index c7b46d31..00000000 --- a/strata/core/attr.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: attr -kind: chunk -build-system: autotools -pre-configure-commands: -- make configure -configure-commands: -- | - ./configure --prefix="$PREFIX" \ - --exec-prefix="$PREFIX" \ - --sbindir="$PREFIX"/bin \ - --bindir="$PREFIX"/bin \ - --libdir="$PREFIX"/lib \ - --libexecdir="$PREFIX"/lib \ - --enable-lib64=yes \ - --includedir="$PREFIX"/include \ - --mandir="$PREFIX"/share/man \ - --datadir="$PREFIX"/share -install-commands: -- make DESTDIR="$DESTDIR" install-lib install-dev diff --git a/strata/core/autoconf-tarball.morph b/strata/core/autoconf-tarball.morph deleted file mode 100644 index fbdc5768..00000000 --- a/strata/core/autoconf-tarball.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: autoconf-tarball -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/core/autoconf.morph b/strata/core/autoconf.morph deleted file mode 100644 index 63b95ba8..00000000 --- a/strata/core/autoconf.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: autoconf -kind: chunk -build-system: autotools -pre-configure-commands: -- echo "2.69" > .tarball-version diff --git a/strata/core/automake.morph b/strata/core/automake.morph deleted file mode 100644 index 282535d6..00000000 --- a/strata/core/automake.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: automake -kind: chunk -build-system: autotools -configure-commands: -- ./bootstrap.sh -- ./configure --prefix="$PREFIX" -build-commands: -- unset DESTDIR; make diff --git a/strata/core/bash.morph b/strata/core/bash.morph deleted file mode 100644 index 59c9e8b4..00000000 --- a/strata/core/bash.morph +++ /dev/null @@ -1,36 +0,0 @@ -name: bash -kind: chunk -build-system: autotools -configure-commands: -- | - export CFLAGS="${CFLAGS} -DSYS_BASHRC='\"/etc/bash.bashrc\"'"; - ./configure --prefix="$PREFIX" \ - --without-bash-malloc \ - --with-installed-readline \ - --enable-readline -post-install-commands: -- | - cat <<'EOF' >> bash.bashrc - # - # /etc/bash.bashrc - # - - # If not running interactively, don't do anything - [[ $- != *i* ]] && return - - # Configure prompt for different terminals - case ${TERM} in - xterm*|rxvt*|Eterm|aterm|kterm|gnome*) - PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"' - - ;; - screen) - PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"' - ;; - esac - - # Enable bash completion if present - [ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion - EOF -- mkdir -p "$DESTDIR"/etc -- install -m 644 bash.bashrc "$DESTDIR"/etc/bash.bashrc diff --git a/strata/core/bison.morph b/strata/core/bison.morph deleted file mode 100644 index 7b880cb6..00000000 --- a/strata/core/bison.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: bison -kind: chunk -build-system: autotools -configure-commands: -- sh bootstrap --skip-po --no-git --gnulib-srcdir=gnulib -- ./configure --prefix="$PREFIX" diff --git a/strata/core/bzip2.morph b/strata/core/bzip2.morph deleted file mode 100644 index f4bdb794..00000000 --- a/strata/core/bzip2.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: bzip2 -kind: chunk -configure-commands: -- sed -i -rf bzip2.morph-makefix.sed Makefile -build-commands: -- make -f Makefile-libbz2_so -- make -install-commands: -- make DESTDIR="$DESTDIR" PREFIX="$PREFIX" install -- install libbz2.so* "$DESTDIR$PREFIX/lib" diff --git a/strata/core/ca-certificates.morph b/strata/core/ca-certificates.morph deleted file mode 100644 index 0497b283..00000000 --- a/strata/core/ca-certificates.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: ca-certificates -kind: chunk -build-system: manual -build-commands: -- make -install-commands: -# -# ca-certificates makefile does not properly take responsibility -# for creating the paths it installs to -# -- mkdir -p "$DESTDIR"/usr/share/ca-certificates -- mkdir -p "$DESTDIR"/usr/sbin -- make DESTDIR="$DESTDIR" install -- mkdir "$DESTDIR"/etc -# -# We create the config with all certificates provided -# by the debian package enabled. Some systems may want -# to override the ca-certificates.conf file. -# -- | - cd "$DESTDIR"/usr/share/ca-certificates - find * -type f > "$DESTDIR"/etc/ca-certificates.conf -system-integration: - ca-certificates-misc: - 00-update-ca-certs: - - update-ca-certificates diff --git a/strata/core/cmake.morph b/strata/core/cmake.morph deleted file mode 100644 index 1d310ef4..00000000 --- a/strata/core/cmake.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: cmake -kind: chunk -configure-commands: -- ./bootstrap --prefix="$PREFIX" --docdir=/share/doc/cmake --mandir=/share/man -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/strata/core/curl.morph b/strata/core/curl.morph deleted file mode 100644 index d445ee00..00000000 --- a/strata/core/curl.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: curl -kind: chunk -configure-commands: -# -# Curl must be configured --with-ca-bundle in order to find the -# correct certificate bundle at runtime, which is later generated -# by update-ca-certificates. Other applications such as git, rely -# on curl knowing the default location of the certs. -# -- ./buildconf -- ./configure --disable-manual --prefix="$PREFIX" --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/strata/core/e2fsprogs.morph b/strata/core/e2fsprogs.morph deleted file mode 100644 index 6f32ad38..00000000 --- a/strata/core/e2fsprogs.morph +++ /dev/null @@ -1,27 +0,0 @@ -name: e2fsprogs -kind: chunk -build-system: autotools -configure-commands: -# Configure with the usual paths for binaries and config -# but also disable whatever we can that is already provided by util-linux -# Disabling e2fsprofs' libblkid does not work, but we don't have to -# install it. -- | - ./configure --prefix="$PREFIX" --sysconfdir=/etc \ - --disable-libuuid --disable-uuidd --disable-libblkid -build-commands: -# Without this, the static archive libcom_err is generated without -# position independant code; later when samba tries to create a shared -# library linking to this archive, we get errors. -- make CFLAGS="-g -O2 -DHAVE_CONFIG_H -fPIC" -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 \) -delete - find "$td" \( -name blkid.8 -o -name findfs.8 \) -delete - mv "$td"/* "$DESTDIR" diff --git a/strata/core/flex.morph b/strata/core/flex.morph deleted file mode 100644 index 615bf79e..00000000 --- a/strata/core/flex.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: flex -kind: chunk -pre-configure-commands: -- autoreconf -ivf -configure-commands: -- ./configure --prefix="$PREFIX" -build-commands: -- make dist_doc_DATA= -install-commands: -- make dist_doc_DATA= DESTDIR="$DESTDIR" install -- ln -s libfl.a "$DESTDIR$PREFIX/lib/libl.a" -- echo "#!$PREFIX/bin/sh" >"$DESTDIR$PREFIX/bin/lex" -- echo 'exec '"$PREFIX"'/bin/flex -l "$@"' >>"$DESTDIR$PREFIX/bin/lex" -- chmod 755 "$DESTDIR$PREFIX/bin/lex" diff --git a/strata/core/gdbm.morph b/strata/core/gdbm.morph deleted file mode 100644 index 6bec33e0..00000000 --- a/strata/core/gdbm.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: gdbm -kind: chunk -configure-commands: -- ./configure --prefix="$PREFIX" --enable-libgdbm-compat --disable-nls -build-commands: -- make MANS= INFO_DEPS= -install-commands: -- make MANS= INFO_DEPS= DESTDIR="$DESTDIR" install diff --git a/strata/core/gettext-tarball.morph b/strata/core/gettext-tarball.morph deleted file mode 100644 index 4983b484..00000000 --- a/strata/core/gettext-tarball.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gettext-tarball -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/core/git-minimal.morph b/strata/core/git-minimal.morph deleted file mode 100644 index 8b562ef6..00000000 --- a/strata/core/git-minimal.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: git-minimal -kind: chunk -build-system: autotools -pre-configure-commands: -- make configure -build-commands: -- make all diff --git a/strata/core/gperf.morph b/strata/core/gperf.morph deleted file mode 100644 index ca515880..00000000 --- a/strata/core/gperf.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gperf -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/core/gzip.morph b/strata/core/gzip.morph deleted file mode 100644 index 2a9ebbe8..00000000 --- a/strata/core/gzip.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: gzip -kind: chunk -build-system: autotools -pre-configure-commands: -- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- ./bootstrap --skip-po --no-git --gnulib-srcdir=gnulib diff --git a/strata/core/libcap2.morph b/strata/core/libcap2.morph deleted file mode 100644 index 3e4f205e..00000000 --- a/strata/core/libcap2.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libcap2 -kind: chunk -build-commands: -- make prefix="$PREFIX" -install-commands: -- make prefix="$PREFIX" DESTDIR="$DESTDIR" RAISE_SETFCAP=no install lib=lib diff --git a/strata/core/libexpat.morph b/strata/core/libexpat.morph deleted file mode 100644 index 05285c0d..00000000 --- a/strata/core/libexpat.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libexpat -kind: chunk -build-system: autotools -pre-configure-commands: -- ./buildconf.sh -- automake --add-missing --copy || true diff --git a/strata/core/libffi.morph b/strata/core/libffi.morph deleted file mode 100644 index 174477af..00000000 --- a/strata/core/libffi.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libffi -kind: chunk -build-system: autotools -install-commands: -- make DESTDIR="$DESTDIR"/ install -- mkdir -p "$DESTDIR"/usr/include -- cp "$TARGET"/include/ffi.h "$DESTDIR"/usr/include/ -- cp "$TARGET"/include/ffitarget.h "$DESTDIR"/usr/include/ diff --git a/strata/core/libtool-tarball.morph b/strata/core/libtool-tarball.morph deleted file mode 100644 index 65a3edbc..00000000 --- a/strata/core/libtool-tarball.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libtool-tarball -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/core/libtool.morph b/strata/core/libtool.morph deleted file mode 100644 index fc44e6fd..00000000 --- a/strata/core/libtool.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: libtool -kind: chunk -build-system: autotools -configure-commands: -- >- - export NOCONFIGURE=1; export MAKEFLAGS="-j 1"; - ./bootstrap -- ./configure --prefix="$PREFIX" - --sysconfdir=/etc - --localstatedir=/var diff --git a/strata/core/linux-pam.morph b/strata/core/linux-pam.morph deleted file mode 100644 index e65caa63..00000000 --- a/strata/core/linux-pam.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: linux-pam -kind: chunk -build-system: autotools -pre-configure-commands: -- autoreconf -ivf -configure-commands: -# libdir has to be specified or it'll go into lib64. It has to be /usr/lib because -# systemd installs its pam library into /usr/lib/security. -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --libdir="$PREFIX/lib" diff --git a/strata/core/mini-utils.morph b/strata/core/mini-utils.morph deleted file mode 100644 index a3d1109e..00000000 --- a/strata/core/mini-utils.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: mini-utils -kind: chunk -build-system: manual -build-commands: -- make -install-commands: -- make PREFIX="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/strata/core/ncurses.morph b/strata/core/ncurses.morph deleted file mode 100644 index 42acb481..00000000 --- a/strata/core/ncurses.morph +++ /dev/null @@ -1,45 +0,0 @@ -name: ncurses -kind: chunk -configure-commands: -- LDCONFIG=true ./configure --with-shared --without-debug --enable-widec -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install -post-install-commands: -- | - # lfs recommends some alterations for software that looks for - # libcurses instead of libncurses - # it's more convenient to have this in a separate file than the - # morph as less strings have to be escaped and comments are possible - - # some software expects to find libcurses in /lib - mkdir -p "$DESTDIR/lib" - mv "$DESTDIR"/"$PREFIX"/lib/libncursesw.so.5* "$DESTDIR"/lib - ln -sf ../../lib/libncursesw.so.5 "$DESTDIR"/"$PREFIX"/lib/libncursesw.so - - # some linker tricks for libraries that look for non-wide character - # versions of ncurses - for lib in ncurses form panel menu; do - # remove non-wide shared object - rm -f "$DESTDIR/${PREFIX}/lib/lib${lib}.so" - # use a linker script to find the wide character variant - echo "INPUT(-l${lib}w)" >"$DESTDIR/${PREFIX}/lib/lib${lib}.so" - # symlink the non-shared library - ln -sf "lib${lib}w.a" "$DESTDIR/${PREFIX}/lib/lib${lib}.a" - done - ln -sf libncurses++w.a "$DESTDIR/${PREFIX}/lib/libncurses++.a" - - # redirect software that looks for libcurses - rm -f "$DESTDIR/${PREFIX}/lib/libcursesw.so" - echo "INPUT(-lncursesw)" >"$DESTDIR/${PREFIX}/lib/libcursesw.so" - ln -sf libncurses.so "$DESTDIR/${PREFIX}/lib/libcurses.so" - ln -sf libncursesw.a "$DESTDIR/${PREFIX}/lib/libcursesw.a" - ln -sf libncurses.a "$DESTDIR/${PREFIX}/lib/libcurses.a" - - # install documentation - mkdir -p "$DESTDIR/${PREFIX}/share/doc/ncurses" - cp -R doc/* "$DESTDIR/${PREFIX}/share/doc/ncurses" - - # remove 'clear' and 'reset' executables, busybox provides them - rm -f "$DESTDIR/${PREFIX}/bin/clear" "$DESTDIR/${PREFIX}/bin/reset" diff --git a/strata/core/openssl-new.morph b/strata/core/openssl-new.morph deleted file mode 100644 index 2ed14ff2..00000000 --- a/strata/core/openssl-new.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: openssl-new -kind: chunk -max-jobs: 1 -configure-commands: -- sed -i -e 's,^LIBNAMES=\\(.*\\) padlock \\(.*\\),LIBNAMES=\\1 \\2,g' engines/Makefile -- | - if [ "$(uname -m)" = "ppc64" ]; then - sh ./Configure linux-ppc64 --openssldir=/etc/ssl --prefix="${PREFIX-/usr}" --libdir=lib shared - else - ./config --openssldir=/etc/ssl --prefix="${PREFIX-/usr}" --libdir=lib shared - fi -build-commands: -- make -install-commands: -- make INSTALL_PREFIX="$DESTDIR" install_sw diff --git a/strata/core/patch.morph b/strata/core/patch.morph deleted file mode 100644 index b7f146ef..00000000 --- a/strata/core/patch.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: patch -kind: chunk -build-system: autotools -pre-configure-commands: -- ./bootstrap --skip-po diff --git a/strata/core/perl.morph b/strata/core/perl.morph deleted file mode 100644 index ce086aa7..00000000 --- a/strata/core/perl.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: perl -kind: chunk -max-jobs: 1 -configure-commands: -- sh Configure -des -Dprefix="$PREFIX" -Darchlib="$PREFIX/lib/perl" -Dprivlib="$PREFIX/share/perl" - -Dbin="$PREFIX/bin" -Dscriptdir="$PREFIX/bin" -Dman1dir="$PREFIX/share/man/man1" - -Dman3dir="$PREFIX/share/man/man3" -Dsiteprefix="$PREFIX" -Dsitearch="$PREFIX/lib/perl" - -Dsitelib="$PREFIX/share/perl" -Dsitebin="$PREFIX/bin" -Dsitescript="$PREFIX/bin" - -Dsiteman1dir="$PREFIX/share/man/man1" -Dsiteman3dir="$PREFIX/share/man/man3" -Dvendorprefix="$PREFIX" - -Dvendorarch="$PREFIX/lib/perl" -Dvendorlib="$PREFIX/share/perl" -Dvendorbin="$PREFIX/bin" - -Dvendorscript="$PREFIX/bin" -Dvendorman1dir="$PREFIX/share/man/man1" -Dvendorman3dir="$PREFIX/share/man/man3" - -Dpager="$PREFIX/bin/less -isR" -Duseshrplib -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/strata/core/pkg-config.morph b/strata/core/pkg-config.morph deleted file mode 100644 index ed35a2ac..00000000 --- a/strata/core/pkg-config.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: pkg-config -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --with-internal-glib diff --git a/strata/core/python3.morph b/strata/core/python3.morph deleted file mode 100644 index 54d2e9e7..00000000 --- a/strata/core/python3.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: python3 -kind: chunk -build-system: autotools -configure-commands: -- | - ./configure --prefix="$PREFIX" \ - --sysconfdir=/etc \ - --enable-shared \ - --with-system-expat \ - --with-system-ffi -post-install-commands: -- test -x "$DESTDIR"/"$PREFIX"/bin/python || ln -s python3.5 "$DESTDIR"/"$PREFIX"/bin/python -- test -x "$DESTDIR"/"$PREFIX"/bin/python3 || ln -s python3.5 "$DESTDIR"/"$PREFIX"/bin/python3 -- test -x "$DESTDIR"/"$PREFIX"/bin/python-config || ln -s python3.5-config "$DESTDIR"/"$PREFIX"/bin/python-config -- test -x "$DESTDIR"/"$PREFIX"/bin/python3-config || ln -s python3.5-config "$DESTDIR"/"$PREFIX"/bin/python3-config diff --git a/strata/core/readline.morph b/strata/core/readline.morph deleted file mode 100644 index 3a63a5c4..00000000 --- a/strata/core/readline.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: readline -kind: chunk -build-system: autotools -configure-commands: -- cp /usr/share/automake*/config.guess support -- cp /usr/share/automake*/config.sub support -- ./configure --prefix="$PREFIX" -build-commands: -- make SHLIB_LIBS=-lncurses diff --git a/strata/core/shadow.morph b/strata/core/shadow.morph deleted file mode 100644 index 5e3244ae..00000000 --- a/strata/core/shadow.morph +++ /dev/null @@ -1,53 +0,0 @@ -name: shadow -kind: chunk -build-system: autotools -pre-configure-commands: -- autoreconf -vfi -configure-commands: -- | - ./configure --with-selinux=no \ - --sysconfdir=/etc \ - --with-libpam=yes \ - --prefix="$PREFIX" -post-install-commands: -# Disable things handled by pam instead -- | - for OPTION in FAIL_DELAY \ - FAILLOG_ENAB \ - LASTLOG_ENAB \ - MAIL_CHECK_ENAB \ - OBSCURE_CHECKS_ENAB \ - PORTTIME_CHECKS_ENAB \ - QUOTAS_ENAB \ - CONSOLE MOTD_FILE \ - FTMP_FILE \ - NOLOGINS_FILE \ - ENV_HZ \ - PASS_MIN_LEN \ - SU_WHEEL_ONLY \ - CRACKLIB_DICTPATH \ - PASS_CHANGE_TRIES \ - PASS_ALWAYS_WARN \ - CHFN_AUTH \ - ENVIRON_FILE - do - sed -i -e "s/^${OPTION}.*/# & #This option is handled by PAM instead./" \ - "$DESTDIR/etc/login.defs" - done -# ENCRYPT_METHOD is handled specially with PAM, it will use the default as -# provided in login.defs, but it may be overridden in the pam.d config. -# We do not currently override this though, and it's better to guard oursleves -# against accidentally reducing password security by forgetting to include the -# algorithm as an argument to the PAM module, so ENCRYPT_METHOD is configured -# here, rather than in PAM. -- | - if grep -q '[\s#]ENCRYPT_METHOD' "$DESTDIR/etc/login.defs"; then - sed -i -e '/^[\s#]*ENCRYPT_METHOD /s/.*/ENCRYPT_METHOD SHA512/g' "$DESTDIR/etc/login.defs" - else - echo 'ENCRYPT_METHOD SHA512' >>"$DESTDIR/etc/login.defs" - fi - -# The default pam.d config files have pam_selinux.so as a requirement, even -# when shadow is configured '--with-selinux=no'. We change this default config -# to make this requirement optional. -- sed -i -e 's/\(.*\)required\(.*pam_selinux.so.*\)/\1optional\2/' "$DESTDIR"/etc/pam.d/* diff --git a/strata/core/texinfo-tarball.morph b/strata/core/texinfo-tarball.morph deleted file mode 100644 index 5f784ba2..00000000 --- a/strata/core/texinfo-tarball.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: texinfo-tarball -kind: chunk -configure-commands: -- ./configure --prefix="$PREFIX" -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install -- make DESTDIR="$DESTDIR" TEXMF="$PREFIX/share/texmf" install-tex diff --git a/strata/core/util-linux.morph b/strata/core/util-linux.morph deleted file mode 100644 index dca8ad4c..00000000 --- a/strata/core/util-linux.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: util-linux -kind: chunk -build-system: autotools -pre-configure-commands: -- ./autogen.sh -configure-commands: -- | - ./configure --prefix="$PREFIX" \ - --enable-libmount-force-mountinfo \ - --disable-use-tty-group diff --git a/strata/coreutils-common.morph b/strata/coreutils-common.morph deleted file mode 100644 index c22fcfac..00000000 --- a/strata/coreutils-common.morph +++ /dev/null @@ -1,67 +0,0 @@ -name: coreutils-common -kind: stratum -description: | - We need to split this so we can build stuff using coreutils but we can not - having it in the final systems (for example in genivi ones that do not - accept GPLv3 code) -build-depends: -- morph: strata/core.morph -chunks: -- name: coreutils - morph: strata/coreutils-common/coreutils.morph - repo: upstream:coreutils - ref: 68f73f23866d6137e9c8d88d86073b33588d7b56 - unpetrify-ref: v8.25 - submodules: - gnulib: - url: upstream:gnulib -- name: sed - morph: strata/coreutils-common/sed.morph - repo: upstream:sed - ref: ed4b1d7c04f92b330b940d4f0d02cd51d2473ce9 - unpetrify-ref: baserock/morph - build-depends: - - coreutils - submodules: - gnulib: - url: upstream:gnulib -- name: diff - morph: strata/coreutils-common/diff.morph - repo: upstream:diffutils - ref: bd86eb1a1e87ab85a7c8dbb658fa829ce69c252e - unpetrify-ref: baserock/v3.3 - build-depends: - - coreutils - submodules: - gnulib: - url: upstream:gnulib -- name: tar - morph: strata/coreutils-common/tar.morph - repo: upstream:tar - ref: 20b55f0679d314568ec21ae6db1ea635494e292b - unpetrify-ref: baserock/release_1_29 - build-depends: - - coreutils - submodules: - paxutils: - url: upstream:paxutils - gnulib: - url: upstream:gnulib -- name: findutils - repo: upstream:findutils - ref: 992a6b62ab8061531dc0ad40325b8e4c222fce66 - unpetrify-ref: v4.6.0 - build-system: autotools - submodules: - gnulib: - url: upstream:gnulib -- name: less - repo: upstream:less - ref: 09a405d8f652b56944c93ebf5c673cdfe5319b04 - unpetrify-ref: baserock/morph - build-system: autotools -- name: jq - repo: upstream:jq - ref: a5b5cbefb83935ce95ec62b9cadc8ec73026d33a - unpetrify-ref: jq-1.5 - build-system: autotools diff --git a/strata/coreutils-common/coreutils.morph b/strata/coreutils-common/coreutils.morph deleted file mode 100644 index ad6b2c32..00000000 --- a/strata/coreutils-common/coreutils.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: coreutils -kind: chunk -build-system: autotools -pre-configure-commands: -- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- bash bootstrap --skip-po --no-git --gnulib-srcdir=gnulib -configure-commands: -- FORCE_UNSAFE_CONFIGURE=1 ./configure --prefix="$PREFIX" --disable-nls -build-commands: -- make WERROR_CFLAGS= -install-commands: -- make INSTALL_PROGRAM=install DESTDIR="$DESTDIR" install diff --git a/strata/coreutils-common/diff.morph b/strata/coreutils-common/diff.morph deleted file mode 100644 index c5eb809d..00000000 --- a/strata/coreutils-common/diff.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: diff -kind: chunk -build-system: autotools -pre-configure-commands: -- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- ./bootstrap --skip-po --no-git --gnulib-srcdir=gnulib -configure-commands: -- ./configure --prefix="$PREFIX" --disable-gcc-warnings diff --git a/strata/coreutils-common/sed.morph b/strata/coreutils-common/sed.morph deleted file mode 100644 index 87ace803..00000000 --- a/strata/coreutils-common/sed.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: sed -kind: chunk -build-system: autotools -pre-configure-commands: -- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- ./bootstrap --skip-po --no-git --gnulib-srcdir=gnulib -configure-commands: -- ./configure --prefix="$PREFIX" --disable-gcc-warnings diff --git a/strata/coreutils-common/tar.morph b/strata/coreutils-common/tar.morph deleted file mode 100644 index 11ca9585..00000000 --- a/strata/coreutils-common/tar.morph +++ /dev/null @@ -1,13 +0,0 @@ -name: tar -kind: chunk -build-system: autotools -configure-commands: -- bash bootstrap --skip-po --gnulib-srcdir="$(pwd)/gnulib" - -# Configure flag notes: -# 1. Needed to run configure as root -# 2. Disable some warning that cause the build to fail -- | - `# [1]` env FORCE_UNSAFE_CONFIGURE=1 \ - ./configure --prefix="$PREFIX" \ - `# [2]` --disable-gcc-warnings diff --git a/strata/cpp-common-libs.morph b/strata/cpp-common-libs.morph deleted file mode 100644 index 470f0155..00000000 --- a/strata/cpp-common-libs.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: cpp-common-libs -kind: stratum -description: C++ common libraries -build-depends: -- morph: strata/python2-core.morph -chunks: -- name: boost - morph: strata/cpp-common-libs/boost.morph - repo: upstream:boost-tarball - ref: ed232fdd34968697a68783b3195b1da4226915b5 - unpetrify-ref: boost_1_57_0 diff --git a/strata/cpp-common-libs/boost.morph b/strata/cpp-common-libs/boost.morph deleted file mode 100644 index 6aaee8ad..00000000 --- a/strata/cpp-common-libs/boost.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: boost -kind: chunk -build-system: manual -configure-commands: -- ./bootstrap.sh -build-commands: -- ./b2 $MAKEFLAGS -install-commands: -- ./b2 install --prefix="$DESTDIR$PREFIX" diff --git a/strata/cross-bootstrap.morph b/strata/cross-bootstrap.morph deleted file mode 100644 index 9248101a..00000000 --- a/strata/cross-bootstrap.morph +++ /dev/null @@ -1,29 +0,0 @@ -name: cross-bootstrap -kind: stratum -description: The minimal development tools to build a baserock devel system -build-depends: -- morph: strata/core.morph -- morph: strata/python2-core.morph -chunks: -- name: groff - morph: strata/cross-bootstrap/groff.morph - repo: upstream:groff-git - ref: 16305a24e67966ace06d55e2a0b98cc0e3127a93 - unpetrify-ref: 1.22.3 -- name: openssh - morph: strata/cross-bootstrap/openssh.morph - repo: upstream:openssh-git - ref: 782fe9e725243eeb5ad6ab9a1783b5d6bedfe0d7 - unpetrify-ref: baserock/morph - build-depends: - - groff -- name: linux-user-chroot - repo: upstream:linux-user-chroot - ref: d25cc110f69e6e71a95b4ac532dcfc5423d4a16b - unpetrify-ref: baserock/morph - build-system: autotools -- name: rsync - morph: strata/cross-bootstrap/rsync.morph - repo: upstream:rsync - ref: 7cb0de6326c915a72253fd103dae93308031ec3f - unpetrify-ref: v3.1.1 diff --git a/strata/cross-bootstrap/groff.morph b/strata/cross-bootstrap/groff.morph deleted file mode 100644 index 8380a9cc..00000000 --- a/strata/cross-bootstrap/groff.morph +++ /dev/null @@ -1,13 +0,0 @@ -name: groff -kind: chunk -max-jobs: 1 -configure-commands: -- PAGE=A4 ./configure --prefix="$PREFIX" -build-commands: -# hack to avoid a netpbm dependency -- touch doc/gnu.eps -- make -install-commands: -- make DESTDIR="$DESTDIR" install -- ln -s eqn "$DESTDIR$PREFIX/bin/geqn" -- ln -s tbl "$DESTDIR$PREFIX/bin/gtbl" diff --git a/strata/cross-bootstrap/openssh.morph b/strata/cross-bootstrap/openssh.morph deleted file mode 100644 index 6c759cb0..00000000 --- a/strata/cross-bootstrap/openssh.morph +++ /dev/null @@ -1,28 +0,0 @@ -name: openssh -kind: chunk -configure-commands: -- autoreconf -if -- | - OPENSSL_SEEDS_ITSELF=yes ./configure \ - --prefix="$PREFIX" --sysconfdir=/etc/ssh \ - --datadir="$PREFIX/share/sshd" \ - --libexecdir="$PREFIX/lib/openssh" \ - --with-privsep-path=/var/lib/sshd -build-commands: -- make -- | - sed -e "s|@prefix@|$PREFIX|g" \ - -e 's|@STARTUP_SCRIPT_SHELL@|/bin/sh|g' \ - -e 's|@sysconfdir@|/etc/ssh|g' \ - -e 's|@COMMENT_OUT_ECC@||g' \ - sshd-keygen.in >sshd-keygen -- sed -e "s|@prefix@|$PREFIX|g" opensshd.service.in >opensshd.service -install-commands: -- make DESTDIR="$DESTDIR" install -- mkdir -p "$DESTDIR/$PREFIX/sbin" -- chmod go= "$DESTDIR"/var/lib/sshd -- install -m 744 sshd-keygen "$DESTDIR/$PREFIX/sbin/sshd-keygen" -- install -m 755 contrib/ssh-copy-id "$DESTDIR/$PREFIX/bin/ssh-copy-id" -- mkdir -p "$DESTDIR/lib/systemd/system/multi-user.target.wants" -- install -m 644 opensshd.service "$DESTDIR/lib/systemd/system/opensshd.service" -- ln -s ../opensshd.service "$DESTDIR/lib/systemd/system/multi-user.target.wants/opensshd.service" diff --git a/strata/cross-bootstrap/rsync.morph b/strata/cross-bootstrap/rsync.morph deleted file mode 100644 index 9a92878d..00000000 --- a/strata/cross-bootstrap/rsync.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: rsync -kind: chunk -build-system: autotools -build-commands: -- make proto -- make diff --git a/strata/cross-tools.morph b/strata/cross-tools.morph deleted file mode 100644 index 795d3936..00000000 --- a/strata/cross-tools.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: cross-tools -kind: stratum -description: Tools used together with cross compilers -build-depends: -- morph: strata/core.morph -chunks: -- name: patchelf - repo: upstream:patchelf - ref: 21a85cc1c63cf3ef060ece59cdd82455e2884703 - unpetrify-ref: baserock/morph - build-system: autotools diff --git a/strata/cups.morph b/strata/cups.morph deleted file mode 100644 index b10bcd6c..00000000 --- a/strata/cups.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: cups -kind: stratum -description: Cups printer driver -build-depends: -- morph: strata/core.morph -chunks: -- name: cups - morph: strata/cups/cups.morph - repo: upstream:cups - ref: f28bae1aeae3964fba4f0728263657405f63c417 - unpetrify-ref: release-1.7.0 diff --git a/strata/cups/cups.morph b/strata/cups/cups.morph deleted file mode 100644 index a3c2edf8..00000000 --- a/strata/cups/cups.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: cups -kind: chunk -build-system: manual -configure-commands: -- autoconf -- ./configure --prefix="$PREFIX" -build-commands: -- make -# Note: BUILDROOT is the variable recommended in INSTALL.txt for the -# destination directory. -install-commands: -- make BUILDROOT="$DESTDIR" install diff --git a/strata/data-indexing-management.morph b/strata/data-indexing-management.morph deleted file mode 100644 index 097f2d72..00000000 --- a/strata/data-indexing-management.morph +++ /dev/null @@ -1,40 +0,0 @@ -name: data-indexing-management -kind: stratum -description: Components to index data -build-depends: -- morph: strata/graphics-common.morph -- morph: strata/icu-common.morph -- morph: strata/multimedia-gstreamer.morph -- morph: strata/vala-common.morph -chunks: -- name: libexif - repo: upstream:libexif-tarball - ref: 0c6a5fa0d9719a40748d8726b4543f02f70518c1 - unpetrify-ref: libexif-0.6.21 - build-system: autotools -- name: libmediaart - morph: strata/data-indexing-management/libmediaart.morph - repo: upstream:gnome/libmediaart - ref: 52eb6498c97ce0005186946bc9162d87597abc2c - unpetrify-ref: baserock/1.9.0-8-g52eb649 -- name: gmime - morph: strata/data-indexing-management/gmime.morph - repo: upstream:gnome/gmime - ref: 496313fbe956b350c22fa705edbcfdde3d7c9e50 - unpetrify-ref: baserock/GMIME_2_6_20-24-g496313f -- name: totem-pl-parser - repo: upstream:gnome/totem-pl-parser - ref: 1be3144e9a6bf183a61c9596165d52bbe405b5cc - unpetrify-ref: baserock/V_3_10_5-16-g1be3144 - build-system: autotools - build-depends: - - gmime -- name: tracker - repo: upstream:gnome/tracker - ref: ad31f26e3c45dbe3365ff4aaae39269d9210f4a9 - unpetrify-ref: 1.6.0 - build-system: autotools - build-depends: - - libexif - - libmediaart - - totem-pl-parser diff --git a/strata/data-indexing-management/gmime.morph b/strata/data-indexing-management/gmime.morph deleted file mode 100644 index f71efac4..00000000 --- a/strata/data-indexing-management/gmime.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: gmime -kind: chunk -build-system: autotools -pre-configure-commands: -# Work around upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=757720 -- sed -i 's/$(INCLUDES)/$(AM_CPPFLAGS)/g' gmime/Makefile.am diff --git a/strata/data-indexing-management/libmediaart.morph b/strata/data-indexing-management/libmediaart.morph deleted file mode 100644 index 43e0812f..00000000 --- a/strata/data-indexing-management/libmediaart.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libmediaart -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --disable-qt diff --git a/strata/device-management.morph b/strata/device-management.morph deleted file mode 100644 index e0ed4a25..00000000 --- a/strata/device-management.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: device-management -kind: stratum -description: libraries that provides access to devices -build-depends: -- morph: strata/foundation.morph -- morph: strata/glib-common.morph -chunks: -- name: libgudev - repo: upstream:libgudev - ref: d722339aae9065a379acc0c421e8bbab866d5a38 - unpetrify-ref: "230" - build-system: autotools diff --git a/strata/devtools.morph b/strata/devtools.morph deleted file mode 100644 index 57fa7e3a..00000000 --- a/strata/devtools.morph +++ /dev/null @@ -1,56 +0,0 @@ -name: devtools -kind: stratum -description: | - Extra development tools included in the devel system, this stratum - is here to help reduce unnecessary building, chunks added to this - stratum should not have any dependants (please don't build-depend on this - stratum) -build-depends: -- morph: strata/core.morph -- morph: strata/python2-core.morph -- morph: strata/docutils.morph -chunks: -- name: nano - morph: strata/devtools/nano.morph - repo: upstream:nano-tarball - ref: fb040ea36cb8e2158ccd9100600652f94ae90af1 - unpetrify-ref: baserock/morph -- name: vim - morph: strata/devtools/vim.morph - repo: upstream:vim - ref: 07c2c06799e0579e6bfb1a7d98acf38e36a98f79 - unpetrify-ref: baserock/morph -- name: pv - morph: strata/devtools/pv.morph - repo: upstream:pv - ref: d6ce7cfec684fa72d7a919d7b1aa817a0ca6102a - unpetrify-ref: baserock/morph - build-system: autotools -- name: screen - morph: strata/devtools/screen.morph - repo: upstream:screen - ref: 7dd4a9e5f385c96a77e8ee5c977a1dde4c0ff467 - unpetrify-ref: baserock/morph -- name: git-review - repo: upstream:git-review - ref: 79262a52301c146a6b60d09a828661a83a5f5ba7 - unpetrify-ref: master - build-system: python-distutils -- name: wget - morph: strata/devtools/wget.morph - repo: upstream:wget - ref: f65f522f58606f125535306e712c2c29921ee8b4 - unpetrify-ref: v1.17.1 - submodules: - gnulib: - url: upstream:gnulib -- name: git - morph: strata/devtools/git.morph - repo: upstream:git - ref: ed9067f705aa51819c7dfff7e4190dd267beaf5d - unpetrify-ref: v2.8.0-rc2 -- name: iotop - repo: upstream:iotop - ref: 59e2537794d91c1375d391293f8fd89ca8b794a8 - unpetrify-ref: iotop-0.6 - build-system: python-distutils diff --git a/strata/devtools/git.morph b/strata/devtools/git.morph deleted file mode 100644 index da7a8c04..00000000 --- a/strata/devtools/git.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: git -kind: chunk -build-system: autotools -pre-configure-commands: -- make configure -build-commands: -- make all doc -install-commands: -- make DESTDIR="$DESTDIR" install install-doc -post-install-commands: -- install -D -m 644 -t "$DESTDIR"/etc/bash_completion.d/. contrib/completion/git-completion.bash diff --git a/strata/devtools/nano.morph b/strata/devtools/nano.morph deleted file mode 100644 index 3eeee120..00000000 --- a/strata/devtools/nano.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: nano -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --sysconfdir=/etc -post-install-commands: -- | - cat <> nanorc - set smooth - include /usr/share/nano/c.nanorc - include /usr/share/nano/patch.nanorc - include /usr/share/nano/python.nanorc - include /usr/share/nano/sh.nanorc - EOF -- mkdir -p "$DESTDIR"/etc -- install -m 644 nanorc "$DESTDIR"/etc/nanorc diff --git a/strata/devtools/pv.morph b/strata/devtools/pv.morph deleted file mode 100644 index 392bff6a..00000000 --- a/strata/devtools/pv.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: pv -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/devtools/screen.morph b/strata/devtools/screen.morph deleted file mode 100644 index 0b23c5d4..00000000 --- a/strata/devtools/screen.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: screen -kind: chunk -description: A terminal multiplexer and sanity tool for many -max-jobs: 1 -configure-commands: -- cd ./src && sh autogen.sh -- cd ./src && ./configure --prefix="$PREFIX" -build-commands: -- cd ./src && make -install-commands: -- cd ./src && make DESTDIR="$DESTDIR" install diff --git a/strata/devtools/vim.morph b/strata/devtools/vim.morph deleted file mode 100644 index 58e1403f..00000000 --- a/strata/devtools/vim.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: vim -kind: chunk -build-system: autotools -configure-commands: -- echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >>src/feature.h -- ./configure --prefix="$PREFIX" --enable-multibyte -install-commands: -- make DESTDIR="$DESTDIR" install -- mkdir -p "$DESTDIR"/etc -- install -m 644 runtime/vimrc_example.vim "$DESTDIR"/etc/vimrc diff --git a/strata/devtools/wget.morph b/strata/devtools/wget.morph deleted file mode 100644 index a3a7995a..00000000 --- a/strata/devtools/wget.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: wget -kind: chunk -build-system: autotools -pre-configure-commands: -# rsync is needed if we want the bootstrap script to download .po files, -# we can't download into our chroot so we remove this dependency -- sed -i '/^buildreq="/,/"/ { /^rsync.*/ d }' bootstrap.conf -- ./bootstrap --no-bootstrap-sync --skip-po -configure-commands: -- ./configure --prefix="$PREFIX" --with-ssl=openssl diff --git a/strata/dlna-services.morph b/strata/dlna-services.morph deleted file mode 100644 index 2c4f1104..00000000 --- a/strata/dlna-services.morph +++ /dev/null @@ -1,51 +0,0 @@ -name: dlna-services -kind: stratum -description: provides DLNA services -build-depends: -- morph: strata/data-indexing-management.morph -- morph: strata/docutils.morph -- morph: strata/vala-common.morph -chunks: -- name: gssdp - morph: strata/dlna-services/gssdp.morph - repo: upstream:gnome/gssdp - ref: a53a6ac85f1b70192bc75fbbd4601582d6095cfd - unpetrify-ref: gssdp-0.14.12 -- name: gupnp - repo: upstream:gnome/gupnp - ref: c42b9cdda466ae9fef91f6beb370f8dfdebc295c - unpetrify-ref: gupnp-0.20.14 - build-system: autotools - build-depends: - - gssdp -- name: gupnp-av - repo: upstream:gnome/gupnp-av - ref: d277511ae1f456ba804f4c9beb5d36043f5a1659 - unpetrify-ref: gupnp-av-0.12.7 - build-system: autotools - build-depends: - - gupnp -- name: gupnp-igd - repo: upstream:gnome/gupnp-igd - ref: f679a8ad782eee72e2ff7a0a7598b4523ef03bb3 - unpetrify-ref: 0.2.4 - build-system: autotools - build-depends: - - gupnp -- name: gupnp-dlna - repo: upstream:gnome/gupnp-dlna - ref: 1aad765f223e3338d86bc975a2b4925fca43bf58 - unpetrify-ref: gupnp-dlna-0.10.3 - build-system: autotools - build-depends: - - gupnp -- name: rygel - repo: upstream:rygel - ref: 4a42aee4afda9509db1e3d259c5a2907407a7261 - unpetrify-ref: RYGEL_0_28_2 - build-system: autotools - build-depends: - - gssdp - - gupnp - - gupnp-av - - gupnp-dlna diff --git a/strata/dlna-services/gssdp.morph b/strata/dlna-services/gssdp.morph deleted file mode 100644 index 14b810b0..00000000 --- a/strata/dlna-services/gssdp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gssdp -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --disable-Werror diff --git a/strata/docutils.morph b/strata/docutils.morph deleted file mode 100644 index e76cc7a2..00000000 --- a/strata/docutils.morph +++ /dev/null @@ -1,52 +0,0 @@ -name: docutils -kind: stratum -description: Stuff for generating documentation -build-depends: -- morph: strata/python2-core.morph -chunks: -- name: xml-catalog - morph: strata/docutils/xml-catalog.morph - repo: baserock:baserock/xml-catalog - ref: 1d4a2abc875c4dda1b5eadc0a097a48a8d2ec82b - unpetrify-ref: master -- name: docbook-xml - morph: strata/docutils/docbook-xml.morph - repo: upstream:docbook-xml - ref: c8f0ce32a8075e9ab21e5cf734fb96195455264d - unpetrify-ref: docbook-xml-4.5 - build-depends: - # This is a little awkward, we don't really build-depend on xml-catalog, - # but if we don't include it as a build dependency - # then we won't have the existing xml catalog in our staging area - # which would cause this chunk to create a new catalog which would - # overwrite the catalog created by the 'xml-catalog' chunk. - # - # construction of the catalog cannot be done at system-integration time - # because we need the catalog *here* in order to build nasm complete with - # man pages. - - xml-catalog -- name: docbook-xsl - morph: strata/docutils/docbook-xsl.morph - repo: upstream:docbook-xsl - ref: 802da9dd5d4bc18f46a916eedc0c5c1980a15e59 - unpetrify-ref: docbook-xsl-1.78.1 - build-depends: - # Same issue as above, except this time we don't want to overwrite - # the catalog that now contains the XML DTDs. - - docbook-xml -- name: asciidoc - repo: upstream:asciidoc - ref: d3a6df0caa94edaf8180bd71bf2fc68390f56520 - unpetrify-ref: 8.6.9 - build-system: autotools - build-depends: - - docbook-xml - - docbook-xsl -- name: xmlto - repo: upstream:xmlto-tarball - ref: 6a590aba95cbcce0f184381fb19d16558e56832d - unpetrify-ref: xmlto-0.0.26 - build-system: autotools - build-depends: - - docbook-xml - - docbook-xsl diff --git a/strata/docutils/docbook-xml.morph b/strata/docutils/docbook-xml.morph deleted file mode 100644 index 91233b6d..00000000 --- a/strata/docutils/docbook-xml.morph +++ /dev/null @@ -1,104 +0,0 @@ -name: docbook-xml -kind: chunk -build-system: manual -install-commands: -- install -v -d -m755 "$DESTDIR$PREFIX/share/xml/docbook/xml-dtd-4.5" -- install -v -d -m755 "$DESTDIR/etc/xml" -- | - cp -v -af docbook.cat *.dtd ent/ *.mod \ - "$DESTDIR$PREFIX/share/xml/docbook/xml-dtd-4.5" -post-install-commands: -- | - # Create (or update) and populate the "$DESTDIR/etc/xml/docbook" catalog file - if [ ! -e /etc/xml/docbook ]; then - xmlcatalog --noout --create "$DESTDIR/etc/xml/docbook" - else - # Copy the existing catalog so we can update it - cp /etc/xml/docbook "$DESTDIR/etc/xml/docbook" - fi - -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD DocBook XML V4.5//EN" \ - "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "rewriteSystem" \ - "http://www.oasis-open.org/docbook/xml/4.5" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5" \ - "$DESTDIR/etc/xml/docbook" -- | - xmlcatalog --noout --add "rewriteURI" \ - "http://www.oasis-open.org/docbook/xml/4.5" \ - "file:///usr/share/xml/docbook/xml-dtd-4.5" \ - "$DESTDIR/etc/xml/docbook" - -- | - # Create (or update) and populate the "$DESTDIR/etc/xml/catalog" catalog file - if [ ! -e /etc/xml/catalog ]; then - echo 'Creating new xml catalog' - xmlcatalog --noout --create "$DESTDIR/etc/xml/catalog" - else - # Copy the existing catalog so we can update it - cp /etc/xml/catalog "$DESTDIR/etc/xml/catalog" - fi - -- | - xmlcatalog --noout --add "delegatePublic" \ - "-//OASIS//ENTITIES DocBook XML" \ - "file:///etc/xml/docbook" \ - "$DESTDIR/etc/xml/catalog" -- | - xmlcatalog --noout --add "delegatePublic" \ - "-//OASIS//DTD DocBook XML" \ - "file:///etc/xml/docbook" \ - "$DESTDIR/etc/xml/catalog" -- | - xmlcatalog --noout --add "delegateSystem" \ - "http://www.oasis-open.org/docbook/" \ - "file:///etc/xml/docbook" \ - "$DESTDIR/etc/xml/catalog" -- | - xmlcatalog --noout --add "delegateURI" \ - "http://www.oasis-open.org/docbook/" \ - "file:///etc/xml/docbook" \ - "$DESTDIR/etc/xml/catalog" diff --git a/strata/docutils/docbook-xsl.morph b/strata/docutils/docbook-xsl.morph deleted file mode 100644 index b3bf396d..00000000 --- a/strata/docutils/docbook-xsl.morph +++ /dev/null @@ -1,50 +0,0 @@ -name: docbook-xsl -kind: chunk -install-commands: -- install -v -m755 -d "$DESTDIR$PREFIX/share/xml/docbook/xsl-stylesheets-1.78.1" -- | - cp -v -R VERSION common eclipse epub extensions fo highlighting html \ - htmlhelp images javahelp lib manpages params profiling \ - roundtrip slides template tests tools webhelp website \ - xhtml xhtml-1_1 \ - "$DESTDIR$PREFIX/share/xml/docbook/xsl-stylesheets-1.78.1" - -- ln -s VERSION "$DESTDIR$PREFIX/share/xml/docbook/xsl-stylesheets-1.78.1/VERSION.xsl" - -- install -v -m644 -D README "$DESTDIR$PREFIX/share/doc/docbook-xsl-1.78.1/README.txt" -- | - install -v -m644 RELEASE-NOTES* NEWS* \ - "$DESTDIR$PREFIX/share/doc/docbook-xsl-1.78.1" -post-install-commands: -- if [ ! -d "$DESTDIR/etc/xml" ]; then install -v -m755 -d "$DESTDIR/etc/xml"; fi -- | - if [ ! -e /etc/xml/catalog ]; then - echo "Creating new xml catalog" - xmlcatalog --noout --create "$DESTDIR/etc/xml/catalog" - else - cp /etc/xml/catalog "$DESTDIR/etc/xml/catalog" - fi - -- | - xmlcatalog --noout --add "rewriteSystem" \ - "http://docbook.sourceforge.net/release/xsl/1.78.1" \ - "/usr/share/xml/docbook/xsl-stylesheets-1.78.1" \ - "$DESTDIR/etc/xml/catalog" - -- | - xmlcatalog --noout --add "rewriteURI" \ - "http://docbook.sourceforge.net/release/xsl/1.78.1" \ - "/usr/share/xml/docbook/xsl-stylesheets-1.78.1" \ - "$DESTDIR/etc/xml/catalog" - -- | - xmlcatalog --noout --add "rewriteSystem" \ - "http://docbook.sourceforge.net/release/xsl/current" \ - "/usr/share/xml/docbook/xsl-stylesheets-1.78.1" \ - "$DESTDIR/etc/xml/catalog" - -- | - xmlcatalog --noout --add "rewriteURI" \ - "http://docbook.sourceforge.net/release/xsl/current" \ - "/usr/share/xml/docbook/xsl-stylesheets-1.78.1" \ - "$DESTDIR/etc/xml/catalog" diff --git a/strata/docutils/xml-catalog.morph b/strata/docutils/xml-catalog.morph deleted file mode 100644 index f0f589d3..00000000 --- a/strata/docutils/xml-catalog.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: xml-catalog -kind: chunk -install-commands: -- make DESTDIR="$DESTDIR" install -post-install-commands: -- DESTDIR="$DESTDIR" ./post-install.sh diff --git a/strata/elixir.morph b/strata/elixir.morph deleted file mode 100644 index dd46ed64..00000000 --- a/strata/elixir.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: elixir -kind: stratum -description: stratum for elixir -build-depends: -- morph: strata/erlang.morph -chunks: -- name: elixir - morph: strata/elixir/elixir.morph - repo: upstream:elixir - ref: 737ac62926db7a692e2fe67c27b696cfd0866674 - unpetrify-ref: v1.2.3 diff --git a/strata/elixir/elixir.morph b/strata/elixir/elixir.morph deleted file mode 100644 index 1efbea87..00000000 --- a/strata/elixir/elixir.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: elixir -kind: chunk -build-commands: -- make clean -install-commands: -- make install diff --git a/strata/erlang.morph b/strata/erlang.morph deleted file mode 100644 index 3aad68e8..00000000 --- a/strata/erlang.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: erlang -kind: stratum -description: stratum for erlang/otp and stuff -build-depends: -- morph: strata/core.morph -chunks: -- name: erlang - morph: strata/erlang/erlang.morph - repo: upstream:erlang - ref: 1ab69efa960703b86a13ea6ba96f4fd56f1565f9 - unpetrify-ref: OTP-18.3.3 -- name: rebar - morph: strata/erlang/rebar.morph - repo: upstream:erlang-modules/rebar - ref: d42ed4683576d995f60e3222f076e99f0b081f79 - unpetrify-ref: master - build-depends: - - erlang diff --git a/strata/erlang/erlang.morph b/strata/erlang/erlang.morph deleted file mode 100644 index feaf04f1..00000000 --- a/strata/erlang/erlang.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: erlang -kind: chunk -configure-commands: -- ./otp_build autoconf -- ./configure --prefix=$PREFIX -build-commands: -- make -install-commands: -- make install diff --git a/strata/erlang/rebar.morph b/strata/erlang/rebar.morph deleted file mode 100644 index fa5fd64f..00000000 --- a/strata/erlang/rebar.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: rebar -kind: chunk -build-commands: -- ./bootstrap -install-commands: -- install -D -m 755 rebar "$DESTDIR$PREFIX"/bin/rebar diff --git a/strata/foundation.morph b/strata/foundation.morph deleted file mode 100644 index 50d1e63b..00000000 --- a/strata/foundation.morph +++ /dev/null @@ -1,131 +0,0 @@ -name: foundation -kind: stratum -description: Basic userland runtime system -build-depends: -- morph: strata/coreutils-common.morph -chunks: -- name: bash-completion - repo: upstream:bash-completion - ref: 3085c7e12179817a02a611016606391295c69942 - unpetrify-ref: '2.1' - build-system: autotools -- name: groff - morph: strata/foundation/groff.morph - repo: upstream:groff-git - ref: 16305a24e67966ace06d55e2a0b98cc0e3127a93 - unpetrify-ref: 1.22.3 -- name: kmod - morph: strata/foundation/kmod.morph - repo: upstream:kmod - ref: 42f32b8ae45ad8e3a1da29c9b20af9b5e2e9e676 - unpetrify-ref: v22 -- name: time-zone-database - morph: strata/foundation/time-zone-database.morph - repo: upstream:tz - ref: a0782484f101ac55c916568bc1c490d7761fc904 - unpetrify-ref: 2015a -- name: pciutils - morph: strata/foundation/pciutils.morph - repo: upstream:pciutils - ref: 37c9315c504f266c23d51e62e59d32422dbbe9e7 - unpetrify-ref: v3.4.1 -- name: dbus-pre - morph: strata/foundation/dbus-pre.morph - repo: upstream:dbus - ref: 8f71063e75fd6e06e985c1de711bf62231b504af - unpetrify-ref: baserock/dbus-1.10.14-capi-patches -- name: libgpg-error - morph: strata/foundation/libgpg-error.morph - repo: upstream:libgpg-error - ref: d77c33ae608d67086ea057cca5ddee99a7202f8b - unpetrify-ref: libgpg-error-1.19 -- name: libgcrypt - morph: strata/foundation/libgcrypt.morph - repo: upstream:libgcrypt - ref: b16176769672a659b9a7c1d23325270338323385 - unpetrify-ref: baserock/libgcrypt-1.7.8 - build-depends: - - libgpg-error -- name: systemd - morph: strata/foundation/systemd.morph - repo: upstream:systemd - ref: a1e2ef7ec912902d8142e7cb5830cbfb47dba86c - unpetrify-ref: v232 - build-depends: - - dbus-pre - - kmod - - libgcrypt - - libgpg-error -- name: libusb - repo: upstream:libusb - ref: 09e75e98b4d9ea7909e8837b7a3f00dda4589dc3 - unpetrify-ref: v1.0.21 - build-system: autotools - build-depends: - - systemd -- name: usbutils - repo: upstream:usbutils - ref: 3bafa6940f512357d7aa54d3a76de01662a19e48 - unpetrify-ref: v008 - build-system: autotools - build-depends: - - libusb - - systemd - submodules: - usbhid-dump: - url: upstream:usbhid-dump -- name: lzo - morph: strata/foundation/lzo.morph - repo: upstream:lzo - ref: 338906b389d616a50da0447038d4ec3e1e3f190f - unpetrify-ref: lzo-2.08 -- name: fuse - morph: strata/foundation/fuse.morph - repo: upstream:fuse - ref: e9b2eec7c5856032652bb8ff734174764e444c74 - unpetrify-ref: baserock/fuse_2_9_4-fix-armv8 -- name: btrfs-progs - morph: strata/foundation/btrfs-progs.morph - repo: upstream:btrfs-progs - ref: 19a806f575cd010734fa5793c4b3bfb49926dc62 - unpetrify-ref: v4.0 - build-depends: - - lzo -- name: dbus - morph: strata/foundation/dbus.morph - repo: upstream:dbus - ref: 8f71063e75fd6e06e985c1de711bf62231b504af - unpetrify-ref: baserock/dbus-1.10.14-capi-patches - build-depends: - - systemd - - libgcrypt - - libgpg-error -- name: openssh - morph: strata/foundation/openssh.morph - repo: upstream:openssh-git - ref: 782fe9e725243eeb5ad6ab9a1783b5d6bedfe0d7 - unpetrify-ref: baserock/morph - build-depends: - - groff -- name: tbdiff - morph: strata/foundation/tbdiff.morph - repo: baserock:baserock/tbdiff - ref: e17a444c651451724046e7da1ae2559e71478b3a - unpetrify-ref: master -- name: rsync - morph: strata/foundation/rsync.morph - repo: upstream:rsync - ref: 7cb0de6326c915a72253fd103dae93308031ec3f - unpetrify-ref: v3.1.1 -- name: python-systemd - build-system: python3-distutils - repo: upstream:python-packages/python-systemd - ref: 8ccd64789ab030b76a99b578b5b1e9812b7a8cd8 - unpetrify-ref: v231 - build-depends: - - systemd -- name: libarchive - morph: strata/foundation/libarchive.morph - repo: upstream:libarchive - ref: 19f23e191f9d3e1dd2a518735046100419965804 - unpetrify-ref: v3.1.2 diff --git a/strata/foundation/btrfs-progs.morph b/strata/foundation/btrfs-progs.morph deleted file mode 100644 index 807a115f..00000000 --- a/strata/foundation/btrfs-progs.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: btrfs-progs -kind: chunk -build-system: autotools -pre-configure-commands: -- ./autogen.sh -configure-commands: -# The change in the CFLAGS is needed to make the compilation succeed in armv5l -- export CFLAGS="-O2 $CFLAGS"; ./configure --prefix="$PREFIX" --disable-documentation diff --git a/strata/foundation/dbus-pre.morph b/strata/foundation/dbus-pre.morph deleted file mode 100644 index 34e7f221..00000000 --- a/strata/foundation/dbus-pre.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: dbus-pre -kind: chunk -build-system: autotools -configure-commands: -- sh autogen.sh --no-configure -- ./configure --prefix="$PREFIX" --localstatedir=/var --sysconfdir=/etc --disable-systemd --disable-xml-docs -build-commands: -- make XMLTO_OUTPUT= -install-commands: -- make XMLTO_OUTPUT= DESTDIR="$DESTDIR" install diff --git a/strata/foundation/dbus.morph b/strata/foundation/dbus.morph deleted file mode 100644 index 23840ce1..00000000 --- a/strata/foundation/dbus.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: dbus -kind: chunk -build-system: autotools -configure-commands: -- sh autogen.sh --no-configure -- ./configure --prefix="$PREFIX" --localstatedir=/var --sysconfdir=/etc --enable-user-session -build-commands: -- make XMLTO_OUTPUT= -install-commands: -- make XMLTO_OUTPUT= DESTDIR="$DESTDIR" install diff --git a/strata/foundation/fuse.morph b/strata/foundation/fuse.morph deleted file mode 100644 index 5d431307..00000000 --- a/strata/foundation/fuse.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: fuse -kind: chunk -build-system: autotools -pre-configure-commands: -- ./makeconf.sh diff --git a/strata/foundation/groff.morph b/strata/foundation/groff.morph deleted file mode 100644 index 8380a9cc..00000000 --- a/strata/foundation/groff.morph +++ /dev/null @@ -1,13 +0,0 @@ -name: groff -kind: chunk -max-jobs: 1 -configure-commands: -- PAGE=A4 ./configure --prefix="$PREFIX" -build-commands: -# hack to avoid a netpbm dependency -- touch doc/gnu.eps -- make -install-commands: -- make DESTDIR="$DESTDIR" install -- ln -s eqn "$DESTDIR$PREFIX/bin/geqn" -- ln -s tbl "$DESTDIR$PREFIX/bin/gtbl" diff --git a/strata/foundation/kmod.morph b/strata/foundation/kmod.morph deleted file mode 100644 index 364ca42e..00000000 --- a/strata/foundation/kmod.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: kmod -kind: chunk -build-system: autotools -configure-commands: -- | - ./bootstrap-configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var \ - --bindir="$PREFIX"/bin --libdir="$PREFIX"/lib \ - --disable-manpages --enable-python -post-install-commands: -- ln -s kmod "$DESTDIR/$PREFIX"/bin/modprobe -- ln -s kmod "$DESTDIR/$PREFIX"/bin/lsmod -- ln -s kmod "$DESTDIR/$PREFIX"/bin/rmmod -- ln -s kmod "$DESTDIR/$PREFIX"/bin/insmod -- ln -s kmod "$DESTDIR/$PREFIX"/bin/modinfo -- ln -s kmod "$DESTDIR/$PREFIX"/bin/depmod diff --git a/strata/foundation/libarchive.morph b/strata/foundation/libarchive.morph deleted file mode 100644 index bf840f58..00000000 --- a/strata/foundation/libarchive.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libarchive -kind: chunk -build-system: autotools -configure-commands: -- autoreconf -ivf -- ./configure --prefix="$PREFIX" --disable-acl diff --git a/strata/foundation/libgcrypt.morph b/strata/foundation/libgcrypt.morph deleted file mode 100644 index ccd5cb8a..00000000 --- a/strata/foundation/libgcrypt.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: libgcrypt -kind: chunk -build-system: autotools - -pre-configure-commands: -- autoreconf -fi - -configure-commands: -# libgcrypt documentation requires fig2dev, which we don't have -- ./configure --prefix="$PREFIX" --disable-doc diff --git a/strata/foundation/libgpg-error.morph b/strata/foundation/libgpg-error.morph deleted file mode 100644 index bc8dcdab..00000000 --- a/strata/foundation/libgpg-error.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: libgpg-error -kind: chunk -build-system: autotools -pre-configure-commands: -- autoreconf -fi -configure-commands: -- ./configure --prefix="$PREFIX" --disable-doc diff --git a/strata/foundation/lzo.morph b/strata/foundation/lzo.morph deleted file mode 100644 index a1a7bbc7..00000000 --- a/strata/foundation/lzo.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: lzo -kind: chunk -build-system: autotools -configure-commands: -- ./configure --enable-shared=yes --prefix="$PREFIX" diff --git a/strata/foundation/openssh.morph b/strata/foundation/openssh.morph deleted file mode 100644 index 7d38791f..00000000 --- a/strata/foundation/openssh.morph +++ /dev/null @@ -1,32 +0,0 @@ -name: openssh -kind: chunk -configure-commands: -- autoreconf -if -- | - OPENSSL_SEEDS_ITSELF=yes ./configure \ - --prefix="$PREFIX" --sysconfdir=/etc/ssh \ - --datadir="$PREFIX/share/sshd" \ - --libexecdir="$PREFIX/lib/openssh" \ - --with-privsep-path=/var/lib/sshd \ - --with-pam -build-commands: -- make -- | - sed -e "s|@prefix@|$PREFIX|g" \ - -e 's|@STARTUP_SCRIPT_SHELL@|/bin/sh|g' \ - -e 's|@sysconfdir@|/etc/ssh|g' \ - -e 's|@COMMENT_OUT_ECC@||g' \ - sshd-keygen.in >sshd-keygen -- sed -e "s|@prefix@|$PREFIX|g" opensshd.service.in >opensshd.service -install-commands: -- make DESTDIR="$DESTDIR" install -- mkdir -p "$DESTDIR/$PREFIX/sbin" -- chmod go= "$DESTDIR"/var/lib/sshd -- install -m 744 sshd-keygen "$DESTDIR/$PREFIX/sbin/sshd-keygen" -- install -m 755 contrib/ssh-copy-id "$DESTDIR/$PREFIX/bin/ssh-copy-id" -- mkdir -p "$DESTDIR$PREFIX/lib/systemd/system/" -- install -m 644 opensshd.service "$DESTDIR$PREFIX/lib/systemd/system/opensshd.service" -system-integration: - openssh-misc: - 00-enable-opensshd-unit: - - systemctl enable opensshd diff --git a/strata/foundation/pciutils.morph b/strata/foundation/pciutils.morph deleted file mode 100644 index 03bd4a23..00000000 --- a/strata/foundation/pciutils.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: pciutils -kind: chunk -configure-commands: -- make PREFIX="$PREFIX" ZLIB=no lib/config.mk -- echo PREFIX="$PREFIX" >>lib/config.mk -- echo MANDIR="$PREFIX/share/man" >>lib/config.mk # ensure manpages are always installed in share/man -build-commands: -- make PREFIX="$PREFIX" -install-commands: -- make PREFIX="$PREFIX" DESTDIR="$DESTDIR" install -- make PREFIX="$PREFIX" DESTDIR="$DESTDIR" install-lib diff --git a/strata/foundation/rsync.morph b/strata/foundation/rsync.morph deleted file mode 100644 index 0060e386..00000000 --- a/strata/foundation/rsync.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: rsync -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" -build-commands: -- make proto -- make -install-commands: -- make install -- install -D -m 644 packaging/systemd/rsync.service "$DESTDIR$PREFIX"/lib/systemd/system/rsync.service diff --git a/strata/foundation/systemd.morph b/strata/foundation/systemd.morph deleted file mode 100644 index d0f962a8..00000000 --- a/strata/foundation/systemd.morph +++ /dev/null @@ -1,31 +0,0 @@ -name: systemd -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var - --disable-manpages - --disable-tests - --libexecdir="$PREFIX/libexec" - --enable-split-usr -post-install-commands: -- mkdir -p "$DESTDIR"/sbin -- ln -s "$PREFIX"/lib/systemd/systemd "$DESTDIR"/sbin/init -- for f in telinit runlevel shutdown poweroff reboot halt; do ln -s "$PREFIX"/bin/systemctl - "$DESTDIR/sbin/$f"; done -- touch "$DESTDIR/etc/machine-id" -- | - cat > "$DESTDIR/etc/systemd/network/10-dhcp.network" << "EOF" - [Match] - Name=e* - - [Network] - DHCP=yes - EOF -# Use the pam config systemd provides -- cp -a "$DESTDIR/$PREFIX"/share/factory/etc/pam.d/* "$DESTDIR/etc/pam.d" - -# Add pam_deny.so to the default systemd-auth pam.d config file. Without -# it, if shadow is configured to use PAM, it would be possible to login -# to a system with the wrong password. -- echo 'auth requisite pam_deny.so' >> "$DESTDIR"/etc/pam.d/system-auth diff --git a/strata/foundation/tbdiff.morph b/strata/foundation/tbdiff.morph deleted file mode 100644 index a907a109..00000000 --- a/strata/foundation/tbdiff.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: tbdiff -kind: chunk -build-system: autotools diff --git a/strata/foundation/time-zone-database.morph b/strata/foundation/time-zone-database.morph deleted file mode 100644 index 701d781a..00000000 --- a/strata/foundation/time-zone-database.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: time-zone-database -kind: chunk -description: | - Time zone database. -build-system: manual -install-commands: -# ETCDIR is actually where the 'tzselect', 'zdump' and 'zic' commands get -# installed. Note that tzselect from this chunk will overlap with and override -# the tzselect binary from GLIBC. -- make TOPDIR="$PREFIX" ETCDIR="$PREFIX/bin" TZDIR="$PREFIX/share/zoneinfo" DESTDIR="$DESTDIR" - install diff --git a/strata/geolocation.morph b/strata/geolocation.morph deleted file mode 100644 index f6d654fc..00000000 --- a/strata/geolocation.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: geolocation -kind: stratum -description: libraries/services that provides location information -build-depends: -- morph: strata/glib-common.morph -- morph: strata/libsoup-common.morph -- morph: strata/NetworkManager-common.morph -chunks: -- name: geocode-glib - repo: upstream:gnome/geocode-glib - ref: a3e183e40053b4bd0fd0b25a070f60597270397a - unpetrify-ref: master - build-system: autotools -- name: geoclue - morph: strata/geolocation/geoclue.morph - repo: upstream:geoclue - ref: ae8f7ab2f1e90f61931c652f2f65996c30c79e87 - unpetrify-ref: 2.4.0 diff --git a/strata/geolocation/geoclue.morph b/strata/geolocation/geoclue.morph deleted file mode 100644 index 3be946bb..00000000 --- a/strata/geolocation/geoclue.morph +++ /dev/null @@ -1,13 +0,0 @@ -name: geoclue -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc \ - --disable-nmea-source \ - --with-dbus-service-user=geoclue -system-integration: - geoclue-misc: - 00-add-geoclue-user: - - groupadd geoclue - - useradd -c "GeoClue Owner" -r -g geoclue -s /bin/false geoclue diff --git a/strata/glib-common.morph b/strata/glib-common.morph deleted file mode 100644 index bbeb8f3c..00000000 --- a/strata/glib-common.morph +++ /dev/null @@ -1,38 +0,0 @@ -name: glib-common -kind: stratum -description: GLib and dependencies -build-depends: -- morph: strata/python2-core.morph -- morph: strata/pcre-utils.morph -chunks: -- name: gtk-doc-stub - morph: strata/glib-common/gtk-doc-stub.morph - repo: upstream:gtk-doc-stub - ref: 58ec0d8593541ef7ae522ce42ebec6f98536c4e0 - unpetrify-ref: baserock/morph -- name: gnome-common - repo: upstream:gnome-common - ref: 5d61b55e8bea32fe2b52e21682ee4b3719b290c5 - unpetrify-ref: 3.14.0 - build-system: autotools -- name: glib - morph: strata/glib-common/glib.morph - repo: upstream:glib - ref: 90bb8778f2eabf00bee5bff1259c48f1e7b791b8 - unpetrify-ref: 2.52.3 -- name: gobject-introspection - repo: upstream:gobject-introspection - ref: 42bf17a25c7379689fe78f31f332a64e3eded5d2 - unpetrify-ref: 1.48.0 - build-system: autotools - build-depends: - - glib -- name: json-glib - repo: upstream:json-glib - ref: 19f5626b70e72a81dae7ee11b4c3a4d75779a7be - unpetrify-ref: 1.2.0 - build-system: autotools - build-depends: - - glib - - gobject-introspection - - gtk-doc-stub diff --git a/strata/glib-common/glib.morph b/strata/glib-common/glib.morph deleted file mode 100644 index cdfceed2..00000000 --- a/strata/glib-common/glib.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: glib -kind: chunk -build-system: autotools -system-integration: - glib-misc: - 01-compile-schemas: - - mkdir -p /usr/share/glib-2.0/schemas - - /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas diff --git a/strata/glib-common/gtk-doc-stub.morph b/strata/glib-common/gtk-doc-stub.morph deleted file mode 100644 index 89abc97b..00000000 --- a/strata/glib-common/gtk-doc-stub.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: gtk-doc-stub -kind: chunk -build-system: autotools - -# This package doesn't actually use Autotools, it has a hand-written -# `configure` script and Makefile. -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/graphics-common.morph b/strata/graphics-common.morph deleted file mode 100644 index f99e6093..00000000 --- a/strata/graphics-common.morph +++ /dev/null @@ -1,110 +0,0 @@ -name: graphics-common -kind: stratum -build-depends: -- morph: strata/glib-common.morph -- morph: strata/mesa-common.morph -- morph: strata/x-common.morph -- morph: strata/icu-common.morph -chunks: -- name: pixman - morph: strata/graphics-common/pixman.morph - repo: upstream:pixman - ref: 87eea99e443b389c978cf37efc52788bf03a0ee0 - unpetrify-ref: pixman-0.32.6 -- name: freetype2 - repo: upstream:freetype2 - ref: 66cf29b1bc869b44863b0de2115bd017dfcce849 - unpetrify-ref: VER-2-6-2 - build-system: autotools -- name: colm-tarball - repo: upstream:colm-tarball - ref: 404ae0f284a3b2d41fcdb53826550e4dfec5c65c - unpetrify-ref: colm-0.12.0 - build-system: autotools -- name: ragel-tarball - repo: upstream:ragel-tarball - ref: d13d67a31c451ebd78ce708a4ef85803d429f158 - unpetrify-ref: ragel-6.10 - build-system: autotools - build-depends: - - colm-tarball -- name: harfbuzz - repo: upstream:harfbuzz - ref: 432ffc47a46d41bea17d839d0d3980e654c6e638 - unpetrify-ref: 1.0.4 - build-system: autotools - build-depends: - - freetype2 - - ragel-tarball -- name: freetype2-harfbuzz - repo: upstream:freetype2 - ref: 66cf29b1bc869b44863b0de2115bd017dfcce849 - unpetrify-ref: VER-2-6-2 - build-system: autotools -- name: fontconfig - morph: strata/graphics-common/fontconfig.morph - repo: upstream:fontconfig - ref: 690f822a1b26b089d86e9843746cab80f3c07fe3 - unpetrify-ref: 2.12.3 - build-depends: - - freetype2-harfbuzz -- name: freefont-otf - morph: strata/graphics-common/freefont-otf.morph - repo: upstream:freefont-otf - ref: 75fa95a912718bb94a135d4bf6b13bb38e186ce7 - unpetrify-ref: baserock/morph -- name: ttf-alee - morph: strata/graphics-common/ttf-alee.morph - repo: upstream:ttf-alee - ref: 97ededc81c03d0a7333a15a9a1e6acc4d0e5ac50 - unpetrify-ref: fonts-alee_13.1 -- name: chinese-fonts-truetype-bkai00mp - morph: strata/graphics-common/chinese-fonts-truetype-bkai00mp.morph - repo: upstream:chinese-fonts-truetype/bkai00mp - ref: aa20d88b0ae7945f0956d7d662e8e5cf1e50b53a - unpetrify-ref: bkai00mp.ttf -- name: chinese-fonts-truetype-gkai00mp - morph: strata/graphics-common/chinese-fonts-truetype-gkai00mp.morph - repo: upstream:chinese-fonts-truetype/gkai00mp - ref: 7569dd2d8f31617a87229a4446b294a0d48055dd - unpetrify-ref: gkai00mp.ttf -- name: chinese-fonts-truetype-bsmi00lp - morph: strata/graphics-common/chinese-fonts-truetype-bsmi00lp.morph - repo: upstream:chinese-fonts-truetype/bsmi00lp - ref: 8f1febdd4f74d56670777c8a5fc25dc6d8cf972c - unpetrify-ref: bsmi00lp.ttf -- name: chinese-fonts-truetype-gbsn00lp - morph: strata/graphics-common/chinese-fonts-truetype-gbsn00lp.morph - repo: upstream:chinese-fonts-truetype/gbsn00lp - ref: be390396044728b4b535a067e3a0dca7daa0b8b6 - unpetrify-ref: gbsn00lp.ttf -- name: libpng - repo: upstream:libpng - ref: 88dd30b232362b65cca374dda39096888163dd6b - unpetrify-ref: libpng-1.6.16-signed - build-system: autotools -- name: libjpeg - repo: upstream:libjpeg - ref: f57ac58ac664ede6bc6e8cd9d88e0edaa366e21a - unpetrify-ref: baserock/morph - build-system: autotools -- name: libtiff - repo: upstream:libtiff - ref: 2f83c385ff3d5493602308b62ca6d7707725b4fd - unpetrify-ref: Release-v4-0-3 - build-system: autotools -- name: cairo - morph: strata/graphics-common/cairo.morph - repo: upstream:cairo - ref: f6fd372a8b31a0bebbdfe36090d6ffc7bab9a2f8 - unpetrify-ref: 1.14.0 - build-depends: - - fontconfig - - freetype2-harfbuzz - - pixman - - libpng -- name: libwebp - repo: upstream:libwebp - ref: fcd94e925a9377cccfcf9de6db278126a52b97a4 - unpetrify-ref: v0.4.3-rc1 - build-system: autotools diff --git a/strata/graphics-common/cairo.morph b/strata/graphics-common/cairo.morph deleted file mode 100644 index cc5a0725..00000000 --- a/strata/graphics-common/cairo.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: cairo -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-glesv2 diff --git a/strata/graphics-common/chinese-fonts-truetype-bkai00mp.morph b/strata/graphics-common/chinese-fonts-truetype-bkai00mp.morph deleted file mode 100644 index 8dcde50f..00000000 --- a/strata/graphics-common/chinese-fonts-truetype-bkai00mp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: chinese-fonts-truetype-bkai00mp -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/truetype/chinese -- install -p *.ttf "$DESTDIR"/usr/share/fonts/truetype/chinese diff --git a/strata/graphics-common/chinese-fonts-truetype-bsmi00lp.morph b/strata/graphics-common/chinese-fonts-truetype-bsmi00lp.morph deleted file mode 100644 index 8e0c060d..00000000 --- a/strata/graphics-common/chinese-fonts-truetype-bsmi00lp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: chinese-fonts-truetype-bsmi00lp -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/truetype/chinese -- install -p *.ttf "$DESTDIR"/usr/share/fonts/truetype/chinese diff --git a/strata/graphics-common/chinese-fonts-truetype-gbsn00lp.morph b/strata/graphics-common/chinese-fonts-truetype-gbsn00lp.morph deleted file mode 100644 index f1a0d15f..00000000 --- a/strata/graphics-common/chinese-fonts-truetype-gbsn00lp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: chinese-fonts-truetype-gbsn00lp -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/truetype/chinese -- install -p *.ttf "$DESTDIR"/usr/share/fonts/truetype/chinese diff --git a/strata/graphics-common/chinese-fonts-truetype-gkai00mp.morph b/strata/graphics-common/chinese-fonts-truetype-gkai00mp.morph deleted file mode 100644 index c08e0736..00000000 --- a/strata/graphics-common/chinese-fonts-truetype-gkai00mp.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: chinese-fonts-truetype-gkai00mp -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/truetype/chinese -- install -p *.ttf "$DESTDIR"/usr/share/fonts/truetype/chinese diff --git a/strata/graphics-common/fontconfig.morph b/strata/graphics-common/fontconfig.morph deleted file mode 100644 index 08a228f5..00000000 --- a/strata/graphics-common/fontconfig.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: fontconfig -kind: chunk -build-system: autotools -system-integration: - fontconfig-misc: - 00-update-fc-cache: - - fc-cache -f -v diff --git a/strata/graphics-common/freefont-otf.morph b/strata/graphics-common/freefont-otf.morph deleted file mode 100644 index f021480d..00000000 --- a/strata/graphics-common/freefont-otf.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: freefont-otf -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/opentype/freefont -- install -p *.otf "$DESTDIR"/usr/share/fonts/opentype/freefont diff --git a/strata/graphics-common/pixman.morph b/strata/graphics-common/pixman.morph deleted file mode 100644 index 7942a964..00000000 --- a/strata/graphics-common/pixman.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: pixman -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-arm-iwmmxt --disable-arm-iwmmxt2 diff --git a/strata/graphics-common/ttf-alee.morph b/strata/graphics-common/ttf-alee.morph deleted file mode 100644 index b25e699f..00000000 --- a/strata/graphics-common/ttf-alee.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: ttf-alee -kind: chunk -install-commands: -- mkdir -p "$DESTDIR"/usr/share/fonts/truetype/alee -- install -p *.ttf "$DESTDIR"/usr/share/fonts/truetype/alee diff --git a/strata/gtk-deps.morph b/strata/gtk-deps.morph deleted file mode 100644 index e1090557..00000000 --- a/strata/gtk-deps.morph +++ /dev/null @@ -1,55 +0,0 @@ -name: gtk-deps -kind: stratum -description: the GTK+ dependencies stratum -build-depends: -- morph: strata/core.morph -- morph: strata/graphics-common.morph -- morph: strata/x-common.morph -chunks: -- name: pango - repo: upstream:pango - ref: 8daf1de02f8ac7e05b4788dcd6a209ef06e6e03a - unpetrify-ref: 1.40.1 - build-system: autotools -- name: shared-mime-info - morph: strata/gtk-deps/shared-mime-info.morph - repo: upstream:shared-mime-info - ref: f4e094740c36c629b5284ac270a0b08d8c75cb85 - unpetrify-ref: Release-1-6 -- name: gdk-pixbuf - morph: strata/gtk-deps/gdk-pixbuf.morph - repo: upstream:gdk-pixbuf - ref: d8ae54bc5e3e31d43acf410a6689be2d40567b03 - unpetrify-ref: 2.36.6 -- name: atk - repo: upstream:atk - ref: 5a0a8577d29eba636aa0573c469a6200cc93db30 - unpetrify-ref: ATK_2_20_0 - build-system: autotools -- name: at-spi2-core - morph: strata/gtk-deps/at-spi2-core.morph - repo: upstream:at-spi2-core - ref: 5c3aa9275bb4d143ed9b0a94c7e7d92f88eb1520 - unpetrify-ref: AT_SPI2_CORE_2_20_1 -- name: at-spi2-atk - morph: strata/gtk-deps/at-spi2-atk.morph - repo: upstream:at-spi2-atk - ref: 176a34174403ab09cd633b04cbbb2219cfe58a9d - unpetrify-ref: AT_SPI2_ATK_2_20_1 - build-depends: - - at-spi2-core - - atk -- name: libcroco - repo: upstream:libcroco - ref: d8a1a160186a45a5852abc06916f9e452ace9e00 - unpetrify-ref: 0.6.11 - build-system: autotools -- name: librsvg - repo: upstream:librsvg - ref: e68ec17827a7116fc418189d474c5fafa08555b5 - unpetrify-ref: 2.40.16 - build-system: autotools - build-depends: - - gdk-pixbuf - - libcroco - - pango diff --git a/strata/gtk-deps/at-spi2-atk.morph b/strata/gtk-deps/at-spi2-atk.morph deleted file mode 100644 index ae15e7f1..00000000 --- a/strata/gtk-deps/at-spi2-atk.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: at-spi2-atk -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc diff --git a/strata/gtk-deps/at-spi2-core.morph b/strata/gtk-deps/at-spi2-core.morph deleted file mode 100644 index ec641284..00000000 --- a/strata/gtk-deps/at-spi2-core.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: at-spi2-core -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc diff --git a/strata/gtk-deps/gdk-pixbuf.morph b/strata/gtk-deps/gdk-pixbuf.morph deleted file mode 100644 index 92655e30..00000000 --- a/strata/gtk-deps/gdk-pixbuf.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: gdk-pixbuf -kind: chunk -build-system: autotools -system-integration: - gdk-pixbuf-misc: - 01-query-loaders: - - mkdir -p /usr/lib/gdk-pixbuf-2.0/2.10.0/ - - /usr/bin/gdk-pixbuf-query-loaders > /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache diff --git a/strata/gtk-deps/shared-mime-info.morph b/strata/gtk-deps/shared-mime-info.morph deleted file mode 100644 index 02ae5555..00000000 --- a/strata/gtk-deps/shared-mime-info.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: shared-mime-info -kind: chunk -max-jobs: 1 -build-system: autotools -system-integration: - shared-mime-info-misc: - 00-update-mime-database: - - update-mime-database /usr/share/mime diff --git a/strata/gtk2.morph b/strata/gtk2.morph deleted file mode 100644 index 4c8db88a..00000000 --- a/strata/gtk2.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: gtk2 -kind: stratum -description: the gtk2 stratum -build-depends: -- morph: strata/gtk-deps.morph -- morph: strata/x-common.morph -chunks: -- name: gtk+ - morph: strata/gtk2/gtk+.morph - repo: upstream:gtk+ - ref: b5b055721378ffe0269613e49ab5741a315eeb00 - unpetrify-ref: 2.24.28 diff --git a/strata/gtk2/gtk+.morph b/strata/gtk2/gtk+.morph deleted file mode 100644 index bdc14cc6..00000000 --- a/strata/gtk2/gtk+.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: gtk+ -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" -system-integration: - gtk2-misc: - 00-update-im2-cache: - - gtk-query-immodules-2.0 --update-cache diff --git a/strata/gtk3.morph b/strata/gtk3.morph deleted file mode 100644 index dd429739..00000000 --- a/strata/gtk3.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: gtk3 -kind: stratum -description: the gtk3 stratum -build-depends: -- morph: strata/gtk-deps.morph -- morph: strata/wayland-generic.morph -- morph: strata/x-common.morph -chunks: -- name: libxkbcommon-x11 - repo: upstream:xorg-lib-libxkbcommon - ref: 877fe59ac362b4e9afb2979b6e0bc837950a1dad - unpetrify-ref: xkbcommon-0.7.1 - build-system: autotools -- name: gtk3 - morph: strata/gtk3/gtk3.morph - repo: upstream:gtk+ - ref: 74d51e86af1e983e4eab317da87fdcfc70aac32a - unpetrify-ref: 3.22.16 - build-depends: - - libxkbcommon-x11 diff --git a/strata/gtk3/gtk3.morph b/strata/gtk3/gtk3.morph deleted file mode 100644 index 86e15e89..00000000 --- a/strata/gtk3/gtk3.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: gtk3 -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" --sysconfdir=/etc -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" -system-integration: - gtk3-misc: - 00-update-im3-cache: - - gtk-query-immodules-3.0 --update-cache diff --git a/strata/icu-common.morph b/strata/icu-common.morph deleted file mode 100644 index 3ac48524..00000000 --- a/strata/icu-common.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: icu-common -kind: stratum -build-depends: -- morph: strata/coreutils-common.morph -chunks: -- name: icu - morph: strata/icu-common/icu.morph - repo: upstream:icu - ref: e2bd11ca1374cccfa50b7d27507ba9fe581be76a - unpetrify-ref: icu4c-52_1-src diff --git a/strata/icu-common/icu.morph b/strata/icu-common/icu.morph deleted file mode 100644 index 5c269ee0..00000000 --- a/strata/icu-common/icu.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: icu -kind: chunk -configure-commands: -- | - # As per commit 8874a7c7, We issue this sed command when - # building ICU libraries on arm architectures. - case "$MORPH_ARCH" in - *arm*) - sed -e 's/LDFLAGSICUDT/#LDFLAGSICUDT/' -i source/config/mh-linux - ;; - *) - ;; - esac - cd source - ./runConfigureICU Linux --prefix=/usr --sysconfdir=/etc -build-commands: -- cd source; unset TARGET ; make -install-commands: -- cd source; unset TARGET ; make DESTDIR="$DESTDIR" install diff --git a/strata/initramfs-utils.morph b/strata/initramfs-utils.morph deleted file mode 100644 index 610997f3..00000000 --- a/strata/initramfs-utils.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: initramfs-utils -kind: stratum -description: stratum for initramfs -build-depends: -- morph: strata/build-essential.morph -chunks: -- name: initramfs-scripts - repo: baserock:baserock/initramfs-scripts - ref: e5c71f0ca075bd29ffd55ec0c25804585bc21046 - unpetrify-ref: master - build-system: autotools diff --git a/strata/input-common.morph b/strata/input-common.morph deleted file mode 100644 index c9b8fc20..00000000 --- a/strata/input-common.morph +++ /dev/null @@ -1,46 +0,0 @@ -name: input-common -kind: stratum -build-depends: -- morph: strata/device-management.morph -- morph: strata/foundation.morph -- morph: strata/glib-common.morph -- morph: strata/xorg-util-macros-common.morph -- morph: strata/x-common.morph -chunks: -- name: mtdev - repo: upstream:mtdev-git - ref: 4381b78fea54de0e775bf54952b2f95e5a06c57d - unpetrify-ref: v1.1.5 - build-system: autotools -- name: xkeyboard-config - morph: strata/input-common/xkeyboard-config.morph - repo: upstream:xkeyboard-config - ref: 26f344c93f8c6141e9233eb68088ba4fd56bc9ef - unpetrify-ref: xkeyboard-config-2.14 -- name: libevdev - repo: upstream:libevdev - ref: 6f03fd49fb949e46ebccb5dfb54489584896c791 - unpetrify-ref: libevdev-1.4.2 - build-system: autotools -- name: libwacom - repo: upstream:linuxwacom/libwacom - ref: 46774c4b0ece2ee326ca5f913303f055de240c64 - unpetrify-ref: libwacom-0.25 - build-system: autotools -- name: libinput - morph: strata/input-common/libinput.morph - repo: upstream:libinput - ref: 401728a1574ef886ddb7fa19cd8ed196420d7931 - unpetrify-ref: 1.8.0 - build-system: autotools - build-depends: - - mtdev - - libevdev - - libwacom -- name: libxkbcommon-no-x11 - repo: upstream:xorg-lib-libxkbcommon - ref: c43c3c866eb9d52cd8f61e75cbef1c30d07f3a28 - morph: strata/input-common/libxkbcommon-no-x11.morph - unpetrify-ref: xkbcommon-0.5.0 - build-depends: - - xkeyboard-config diff --git a/strata/input-common/libinput.morph b/strata/input-common/libinput.morph deleted file mode 100644 index 89ee1961..00000000 --- a/strata/input-common/libinput.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libinput -kind: chunk - -build-system: autotools - -configure-commands: - - NOCONFIGURE=1 ./autogen.sh - - ./configure --prefix="$PREFIX" --disable-documentation --disable-debug-gui --disable-tests diff --git a/strata/input-common/libxkbcommon-no-x11.morph b/strata/input-common/libxkbcommon-no-x11.morph deleted file mode 100644 index 95165aaf..00000000 --- a/strata/input-common/libxkbcommon-no-x11.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: libxkbcommon-no-x11 -kind: chunk - -description: | - xkbcommon is a library to handle keyboard descriptions. - - This version is built without X11 support. If built with X11 support, - it depends on the xcb-xkb library. - -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-x11 diff --git a/strata/input-common/xkeyboard-config.morph b/strata/input-common/xkeyboard-config.morph deleted file mode 100644 index 2195befe..00000000 --- a/strata/input-common/xkeyboard-config.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: xkeyboard-config -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-runtime-deps -install-commands: -- mkdir -p "$DESTDIR"/"$PREFIX"/share/X11/xkb/ -- make install DESTDIR="$DESTDIR" diff --git a/strata/installer-utils.morph b/strata/installer-utils.morph deleted file mode 100644 index ddc714b6..00000000 --- a/strata/installer-utils.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: installer-utils -kind: stratum -description: stratum for Baserock installer script. -build-depends: -- morph: strata/build-essential.morph -chunks: -- name: installer-scripts - morph: strata/installer-utils/installer-scripts.morph - repo: baserock:baserock/installer-scripts - ref: a1629ded9eb499b55b547cd8caa0ade8233b32f4 - unpetrify-ref: master diff --git a/strata/installer-utils/installer-scripts.morph b/strata/installer-utils/installer-scripts.morph deleted file mode 100644 index e42313a8..00000000 --- a/strata/installer-utils/installer-scripts.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: installer-scripts -kind: chunk -install-commands: -- install -D -m 755 baserock-installer "$DESTDIR/usr/lib/baserock-installer/installer" diff --git a/strata/ivi-common.morph b/strata/ivi-common.morph deleted file mode 100644 index 80c519b1..00000000 --- a/strata/ivi-common.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: ivi-common -kind: stratum -description: Components shared with different IVI systems -build-depends: -- morph: strata/cpp-common-libs.morph -- morph: strata/glib-common.morph -chunks: -- name: automotive-message-broker - morph: strata/ivi-common/automotive-message-broker.morph - repo: upstream:automotive-message-broker - ref: 5cac4bd2958ea24ac6913be5baa0dfcda6466089 - unpetrify-ref: '0.14' diff --git a/strata/ivi-common/automotive-message-broker.morph b/strata/ivi-common/automotive-message-broker.morph deleted file mode 100644 index 50428735..00000000 --- a/strata/ivi-common/automotive-message-broker.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: automotive-message-broker -kind: chunk -description: Automotive Message Broker framework -build-system: cmake -post-install-commands: -- mkdir -p "$DESTDIR/usr/lib/systemd/system" -- | - cat >"$DESTDIR/usr/lib/systemd/system/ambd.service" <"$DESTDIR/lib/systemd/system/nmb.service" - [Unit] - Description=Samba NMB Daemon - After=syslog.target network-online.target - - [Service] - Type=forking - PIDFile=/var/run/samba/nmbd.pid - EnvironmentFile=-/etc/sysconfig/samba - ExecStart=$PREFIX/sbin/nmbd \$NMBDOPTIONS - ExecReload=$PREFIX/bin/kill -HUP \$MAINPID - - [Install] - WantedBy=multi-user.target - EOF -- | - cat <"$DESTDIR/lib/systemd/system/smb.service" - [Unit] - Description=Samba SMB Daemon - After=syslog.target network-online.target nmb.service winbind.service - - [Service] - Type=forking - PIDFile=/var/run/samba/smbd.pid - EnvironmentFile=-/etc/sysconfig/samba - ExecStart=$PREFIX/sbin/smbd \$NMBDOPTIONS - ExecReload=$PREFIX/bin/kill -HUP \$MAINPID - - [Install] - WantedBy=multi-user.target - EOF -- | - cat <"$DESTDIR/lib/systemd/system/winbind.service" - [Unit] - Description=Samba winbind Daemon - After=syslog.target network-online.target nmb.service - - [Service] - Type=forking - PIDFile=/var/run/samba/winbindd.pid - EnvironmentFile=-/etc/sysconfig/samba - ExecStart=$PREFIX/sbin/winbindd \$NMBDOPTIONS - ExecReload=$PREFIX/bin/kill -HUP \$MAINPID - - [Install] - WantedBy=multi-user.target - EOF -- | - for i in nmb smb winbind - do - ln -s ../$i.service "$DESTDIR/lib/systemd/system/multi-user.target.wants/$i.service" - done -- mkdir -p "$DESTDIR/var/log/samba" -# Install a sample configuration -- mkdir -p "$DESTDIR/etc/samba" -- | - cat <"$DESTDIR/etc/samba/smb.conf" - [global] - workgroup = WORKGROUP - dns proxy = no - local master = yes - preferred master = yes - os level = 2 - log file = /var/log/samba/log.%m - max log size = 1000 - syslog = 0 - server role = standalone server - passdb backend = tdbsam - obey pam restrictions = yes - unix password sync = yes - pam password change = yes - map to guest = bad user - usershare allow guests = yes - [homes] - comment = Home Directories - browseable = no - read only = yes - create mask = 0700 - valid users = %S - ;[printers] - ;comment = All Printers - ;browseable = no - ;path = /var/spool/samba - ;printable = yes - ;guest ok = no - ;read only = yes - ;create mask = 0700 - ;[src] - ;comment = Source code - ;path = /src - ;read only = yes - ;guest ok = yes - EOF diff --git a/strata/sandboxing.morph b/strata/sandboxing.morph deleted file mode 100644 index 64de36c3..00000000 --- a/strata/sandboxing.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: sandboxing -kind: stratum -description: | - Libraries/tools for running programs/commands in a (partially) isolated - environment. -build-depends: -- morph: strata/python2-core.morph -chunks: -- name: sandboxlib - repo: upstream:sandboxlib - ref: ce30050daa10fa32801e8f798911b36aa82343a4 - unpetrify-ref: master - build-system: python-distutils -- name: linux-user-chroot - repo: upstream:linux-user-chroot - ref: 40e0b71d556414dfe150a74937f2c8a68d351d6d - unpetrify-ref: v2015.1 - build-system: autotools diff --git a/strata/secret-service.morph b/strata/secret-service.morph deleted file mode 100644 index b6f9e896..00000000 --- a/strata/secret-service.morph +++ /dev/null @@ -1,27 +0,0 @@ -name: secret-service -kind: stratum -description: Service implementing the DBus Secret Service API -build-depends: -- morph: strata/foundation.morph -- morph: strata/glib-common.morph -- morph: strata/gtk3.morph -- morph: strata/network-security.morph -- morph: strata/vala-common.morph -chunks: -- name: gcr - repo: upstream:gnome/gcr - ref: 289ba4859fd170285f51e6bbfe91f2aac3b9170d - unpetrify-ref: 3.18.0 - build-system: autotools -- name: gnome-keyring - morph: strata/secret-service/gnome-keyring.morph - repo: upstream:gnome-keyring - ref: eb16c037431da14d4f1c396357f82f2b35e76e23 - unpetrify-ref: baserock/3.18.3-5-geb16c03 - build-depends: - - gcr -- name: libsecret - morph: strata/secret-service/libsecret.morph - repo: upstream:gnome/libsecret - ref: 4d76cf7dd8e55d93bb58164a1fff38113ba97af5 - unpetrify-ref: master diff --git a/strata/secret-service/gnome-keyring.morph b/strata/secret-service/gnome-keyring.morph deleted file mode 100644 index 73fe5298..00000000 --- a/strata/secret-service/gnome-keyring.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gnome-keyring -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-selinux --enable-pam --with-pam-dir=/lib/security --disable-doc diff --git a/strata/secret-service/libsecret.morph b/strata/secret-service/libsecret.morph deleted file mode 100644 index b8af29b1..00000000 --- a/strata/secret-service/libsecret.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libsecret -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-manpages diff --git a/strata/sound-server-pulseaudio.morph b/strata/sound-server-pulseaudio.morph deleted file mode 100644 index e9f9d830..00000000 --- a/strata/sound-server-pulseaudio.morph +++ /dev/null @@ -1,74 +0,0 @@ -name: sound-server-pulseaudio -kind: stratum -description: Components required for pulseaudio. -build-depends: -- morph: strata/bluetooth.morph -chunks: -- name: libatomic_ops - repo: upstream:libatomic_ops - ref: 0a58f5d63969c10d2141af89cb7a53df786909ab - unpetrify-ref: baserock/morph - build-system: autotools -- name: alsa-lib - repo: upstream:alsa-lib - ref: 7e86c8c56fba6fd8cdb57ee97aaa731c351a8892 - # Note: ref anchored because alsa-lib is known for rebasing - # tags, and master - unpetrify-ref: baserock/v1.1.3 - build-system: autotools -- name: alsa-utils - morph: strata/sound-server-pulseaudio/alsa-utils.morph - repo: upstream:alsa-utils - ref: 84591f0de015e5c40f5bfea83ca62360b9eaa349 - # Note: ref anchored because alsa-utils is known for rebasing - # tags, and master - unpetrify-ref: baserock/v1.1.3 - build-depends: - - alsa-lib -- name: speex - repo: upstream:speex - ref: e5dc987a403426ee3d0d81768afffa0fe74e20fa - unpetrify-ref: baserock/morph - build-system: autotools -- name: libsndfile - morph: strata/sound-server-pulseaudio/libsndfile.morph - repo: upstream:libsndfile - ref: 6c05c615c95ffef7a8a5a707cde0bb52bdd74244 - unpetrify-ref: baserock/morph -- name: libdaemon - repo: upstream:libdaemon - ref: 9fcc28e0e8f84968d1fb8b6d544a42efb13803ec - unpetrify-ref: v0.14 - build-system: autotools -- name: avahi - morph: strata/sound-server-pulseaudio/avahi.morph - repo: upstream:avahi - ref: 4c0b4cbf9c597f6df6a3220dec5438f4fe9e551b - unpetrify-ref: v0.6.31 - build-depends: - - libdaemon -- name: sbc - repo: upstream:sbc - ref: 24812c660036a693f8770766aa6fdea667de05d0 - unpetrify-ref: "1.3" - build-system: autotools - build-depends: - - libsndfile -- name: webrtc-audio-processing - morph: strata/sound-server-pulseaudio/webrtc-audio-processing.morph - repo: upstream:webrtc-audio-processing - ref: 9a0e28cab06f43d10cd00b69fc14dee78a73c2d0 - unpetrify-ref: v0.2 -- name: pulseaudio - morph: strata/sound-server-pulseaudio/pulseaudio.morph - repo: upstream:pulseaudio - ref: 84952e6a092b6a0c5b153bd7a4f6e490810681c8 - unpetrify-ref: v10.0 - build-depends: - - avahi - - libsndfile - - libatomic_ops - - speex - - alsa-lib - - sbc - - webrtc-audio-processing diff --git a/strata/sound-server-pulseaudio/alsa-utils.morph b/strata/sound-server-pulseaudio/alsa-utils.morph deleted file mode 100644 index a6a1e041..00000000 --- a/strata/sound-server-pulseaudio/alsa-utils.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: alsa-utils -kind: chunk -description: ALSA utilities -build-system: autotools -configure-commands: -- autoreconf -ifv -- ./configure --prefix="$PREFIX" --disable-xmlto diff --git a/strata/sound-server-pulseaudio/avahi.morph b/strata/sound-server-pulseaudio/avahi.morph deleted file mode 100644 index a255ce1e..00000000 --- a/strata/sound-server-pulseaudio/avahi.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: avahi -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var --disable-werror \ - --with-distro=none --disable-qt3 --disable-qt4 --disable-gtk --disable-gtk3 \ - --disable-pygtk --disable-python-dbus --disable-mono --disable-manpages -system-integration: - avahi-misc: - 00-add-avahi-user: - - groupadd -fg 86 netdev - - groupadd -fg 84 avahi - - useradd -c "Avahi Daemon Owner" -d /var/run/avahi-daemon -u 84 -g avahi -s /bin/false avahi - 00-enable-avahi-service: - - systemctl enable avahi-daemon diff --git a/strata/sound-server-pulseaudio/libsndfile.morph b/strata/sound-server-pulseaudio/libsndfile.morph deleted file mode 100644 index 8d6c2fe0..00000000 --- a/strata/sound-server-pulseaudio/libsndfile.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: libsndfile -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-external-libs diff --git a/strata/sound-server-pulseaudio/pulseaudio.morph b/strata/sound-server-pulseaudio/pulseaudio.morph deleted file mode 100644 index dfaa9b0d..00000000 --- a/strata/sound-server-pulseaudio/pulseaudio.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: pulseaudio -kind: chunk -description: PulseAudio System -build-system: autotools -pre-configure-commands: -- NOCONFIGURE=1 ./bootstrap.sh -configure-commands: -- ./configure --prefix="$PREFIX" --localstatedir=/var --sysconfdir=/etc --with-database=simple - --with-systemduserunitdir=/usr/lib/systemd/user - --with-system-user=pulse --with-system-group=pulse --with-access-group=pulse-access - --enable-webrtc-aec -system-integration: - pulseaudio-misc: - 00-add-pulse-users: - - groupadd -rf pulse-access - - groupadd -rf pulse-rt - - groupadd -f -g 171 -r pulse - - useradd -r -g pulse -d /var/run/pulse -s /bin/false -c "PulseAudio System Daemon" pulse || exit 0 diff --git a/strata/sound-server-pulseaudio/webrtc-audio-processing.morph b/strata/sound-server-pulseaudio/webrtc-audio-processing.morph deleted file mode 100644 index ea8cd4e0..00000000 --- a/strata/sound-server-pulseaudio/webrtc-audio-processing.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: webrtc-audio-processing -kind: chunk -build-system: autotools -configure-commands: -- | - NOCONFIGURE=1 ./autogen.sh - - case "$MORPH_ARCH" in - x86_32) - sed -i -e "s/-O2/& -msse2/" configure - ;; - esac - - ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var diff --git a/strata/spell-checking.morph b/strata/spell-checking.morph deleted file mode 100644 index dfe8b997..00000000 --- a/strata/spell-checking.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: spell-checking -kind: stratum -description: Spell checking libraries -build-depends: -- morph: strata/glib-common.morph -chunks: -- name: enchant - repo: upstream:enchant - ref: 6d8b6bb15f09a14c90fb900eb2ecf1172d7cf6cf - unpetrify-ref: master - build-system: autotools -- name: hyphen - repo: upstream:hyphen - ref: 7f28cf7edb54cc1bc4eaa09672e0bc043b1da70b - unpetrify-ref: master - build-system: autotools diff --git a/strata/storage-management.morph b/strata/storage-management.morph deleted file mode 100644 index c972d0d3..00000000 --- a/strata/storage-management.morph +++ /dev/null @@ -1,40 +0,0 @@ -name: storage-management -kind: stratum -description: libraries/services that provides access to storage -build-depends: -- morph: strata/device-management.morph -- morph: strata/glib-common.morph -- morph: strata/privileges-management.morph -- morph: strata/secret-service.morph -chunks: -- name: libatasmart - morph: strata/storage-management/libatasmart.morph - repo: upstream:libatasmart - ref: de6258940960443038b4c1651dfda3620075e870 - unpetrify-ref: master -- name: udisks - morph: strata/storage-management/udisks.morph - repo: upstream:udisks - ref: 410cab8f3d749ad2660cda3ba38b6aece42bf10f - unpetrify-ref: master - build-depends: - - libatasmart -- name: libgphoto2 - repo: upstream:libgphoto2 - ref: 3745402108932b457d73b102cbf8b2da8d383a18 - unpetrify-ref: libgphoto2-2_5_9-release - build-system: autotools -- name: libmtp - morph: strata/storage-management/libmtp.morph - repo: upstream:libmtp - ref: 83820ced69dca750b2edd6ac6d5640f246022a10 - unpetrify-ref: libmtp-1-1-11 -- name: gvfs - morph: strata/storage-management/gvfs.morph - repo: upstream:gvfs - ref: d037b5fd56cae878ed7bb5269a40e4bd046551d7 - unpetrify-ref: master - build-depends: - - libgphoto2 - - libmtp - - udisks diff --git a/strata/storage-management/gvfs.morph b/strata/storage-management/gvfs.morph deleted file mode 100644 index bafd3158..00000000 --- a/strata/storage-management/gvfs.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gvfs -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --disable-documentation diff --git a/strata/storage-management/libatasmart.morph b/strata/storage-management/libatasmart.morph deleted file mode 100644 index e8df654e..00000000 --- a/strata/storage-management/libatasmart.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libatasmart -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh -- ./configure CFLAGS='-g -O0 -Wp,-U_FORTIFY_SOURCE' --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib --libexecdir=/usr/lib diff --git a/strata/storage-management/libmtp.morph b/strata/storage-management/libmtp.morph deleted file mode 100644 index 8dbb22ba..00000000 --- a/strata/storage-management/libmtp.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libmtp -kind: chunk -build-system: autotools -configure-commands: -# autogen.sh asks user about autoupdate config.sub and config.guess -- touch config.rpath -- autoreconf -if -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var diff --git a/strata/storage-management/udisks.morph b/strata/storage-management/udisks.morph deleted file mode 100644 index 785fab39..00000000 --- a/strata/storage-management/udisks.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: udisks -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc --enable-fhs-media --disable-gtk-doc --disable-man diff --git a/strata/swift.morph b/strata/swift.morph deleted file mode 100644 index 41fd0c75..00000000 --- a/strata/swift.morph +++ /dev/null @@ -1,53 +0,0 @@ -name: swift -kind: stratum -description: Distributed object storage -build-depends: -# openstack-common is required for simplejson, cffi, greenlet, -# eventlet, pastedeploy, netifaces -- morph: strata/openstack-common.morph -chunks: -- name: dnspython - repo: upstream:python-packages/dnspython - ref: e1369c62d14f82b80ef11197a490ace5d43bb3f3 - unpetrify-ref: v1.12.0 - build-system: python-distutils -- name: xattr - morph: strata/swift/xattr.morph - repo: upstream:python-packages/xattr - ref: dd10d44e3eb9a1d2303c1f7d5126c099d56e97fc - unpetrify-ref: v0.7.6 -- name: liberasurecode - morph: strata/swift/liberasurecode.morph - repo: upstream:liberasurecode - ref: a380246762c16ea8eb7dbfccd50d296c3743b39e - unpetrify-ref: v1.0.7 -- name: gf-complete - morph: strata/swift/gf-complete.morph - repo: upstream:gf-complete - ref: 715443661c00558fe32f004a4be5f93f341b6e59 - unpetrify-ref: v2 -- name: jerasure - repo: upstream:jerasure - ref: ff7032153ea230fb59596f1f8a0e9ad8653addfb - unpetrify-ref: v2 - build-system: autotools - build-depends: - - gf-complete -- name: pyeclib - repo: upstream:python-packages/pyeclib - ref: aa58aa887c2327e1394d6f28b3b6b7ab8f190b2b - unpetrify-ref: v1.0.7 - build-system: python-distutils - build-depends: - - liberasurecode - - gf-complete - - jerasure -- name: swift - repo: upstream:openstack/swift - ref: f8dee761bd36f857aa1288c27e095907032fad68 - unpetrify-ref: 2.3.0 - build-system: python-distutils - build-depends: - - dnspython - - xattr - - pyeclib diff --git a/strata/swift/gf-complete.morph b/strata/swift/gf-complete.morph deleted file mode 100644 index adbe5a48..00000000 --- a/strata/swift/gf-complete.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: gf-complete -kind: chunk -build-system: autotools -pre-configure-commands: -- ./autogen.sh -configure-commands: -- | - case "$MORPH_ARCH" in - x86_64) - SSE= - ;; - *) - # Disable SSE4 for any architecture which are not x86_64 bits - # see more information about architecture which support SSE in - # https://en.wikipedia.org/wiki/SSE4#Supporting_CPUs. - SSE=--disable-sse - ;; - esac - ./configure --prefix="$PREFIX" "$SSE" diff --git a/strata/swift/liberasurecode.morph b/strata/swift/liberasurecode.morph deleted file mode 100644 index 68839403..00000000 --- a/strata/swift/liberasurecode.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: liberasurecode -kind: chunk -build-system: autotools -pre-configure-commands: -- autoreconf -ivf diff --git a/strata/swift/xattr.morph b/strata/swift/xattr.morph deleted file mode 100644 index 65f47dae..00000000 --- a/strata/swift/xattr.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xattr -kind: chunk -configure-commands: -- cp -r /usr/lib/python2.7/site-packages/cffi . -build-commands: -- python setup.py build -install-commands: -- python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/strata/tools.morph b/strata/tools.morph deleted file mode 100644 index b4710f6b..00000000 --- a/strata/tools.morph +++ /dev/null @@ -1,69 +0,0 @@ -name: tools -kind: stratum -description: Various tools -build-depends: -- morph: strata/core.morph -chunks: -- name: distcc - morph: strata/tools/distcc.morph - repo: upstream:distcc - ref: c9691a9604fdf9d6711204999787d332b7141692 - unpetrify-ref: baserock/morph -- name: gdb - morph: strata/tools/gdb.morph - repo: upstream:binutils-gdb - ref: cf9e333b2158c90752a1eacd16a9443dff4a59f1 - unpetrify-ref: gdb-8.0-branch -- name: lsof - morph: strata/tools/lsof.morph - repo: upstream:lsof - ref: fffb8558208586338587027c265fd0eca44466be - unpetrify-ref: baserock/morph -- name: strace - repo: upstream:strace - ref: 6d8c0637e8dd0f65c667af33c612230552419db1 - unpetrify-ref: v4.8 - build-system: autotools -- name: u-boot - morph: strata/tools/u-boot.morph - repo: upstream:u-boot - ref: fe57382d04b46c37f34cf8d3b3ad876554fd12bf - unpetrify-ref: baserock/morph -- name: kexec-tools - morph: strata/tools/kexec-tools.morph - repo: upstream:kexec-tools - ref: f4d1d2ad474e882df13418239aa3050673a844d7 - unpetrify-ref: baserock/morph -- name: device-tree-compiler - morph: strata/tools/device-tree-compiler.morph - repo: upstream:device-tree-compiler - ref: c92f284c3cf76d471eb27a271de3a51cb45ed058 - unpetrify-ref: baserock/morph -- name: sudo - repo: upstream:sudo - ref: a4769dc7999b53260325fb89945bef85714fb338 - unpetrify-ref: baserock/morph - build-system: autotools -- name: procps-ng - morph: strata/tools/procps-ng.morph - repo: upstream:procps-ng - ref: 85fff468fa263cdd2ff1c0144579527c32333695 - unpetrify-ref: v3.3.9 -- name: ipmitool - morph: strata/tools/ipmitool.morph - repo: upstream:ipmitool - ref: be7917f9f58c8a354bc0960ed57516af5d2bd29a - unpetrify-ref: IPMITOOL_1_8_14 -- name: parted - morph: strata/tools/parted.morph - repo: upstream:parted - ref: 387e96e6eac59d84e9a688422b4b321ae9beaa20 - unpetrify-ref: baserock/v3.2 - submodules: - gnulib: - url: upstream:gnulib -- name: zip - morph: strata/tools/zip.morph - repo: upstream:zip - ref: e52e9d6a339aad5fcff464cf207da51c02996e39 - unpetrify-ref: zip30 diff --git a/strata/tools/device-tree-compiler.morph b/strata/tools/device-tree-compiler.morph deleted file mode 100644 index 8abfafc8..00000000 --- a/strata/tools/device-tree-compiler.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: device-tree-compiler -kind: chunk -build-commands: -- make all -install-commands: -- make install DESTDIR="$DESTDIR" PREFIX="$PREFIX" diff --git a/strata/tools/distcc.morph b/strata/tools/distcc.morph deleted file mode 100644 index 82adbe50..00000000 --- a/strata/tools/distcc.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: distcc -kind: chunk -build-system: autotools -pre-configure-commands: -- NOCONFIGURE=1 ./autogen.sh -# distcc doesn't use automake, so we cannot autoreconf it -- cp /usr/share/automake*/config.guess . -- cp /usr/share/automake*/config.sub . -configure-commands: -- ./configure --prefix="$PREFIX" --disable-Werror diff --git a/strata/tools/gdb.morph b/strata/tools/gdb.morph deleted file mode 100644 index 6f60da9e..00000000 --- a/strata/tools/gdb.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: gdb -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-werror --disable-gas --disable-binutils - --disable-ld --disable-gold --disable-gprof diff --git a/strata/tools/git-fat.morph b/strata/tools/git-fat.morph deleted file mode 100644 index c971b07f..00000000 --- a/strata/tools/git-fat.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: git-fat -kind: chunk -install-commands: -- install -D -m 755 git-fat "$DESTDIR/usr/bin/git-fat" diff --git a/strata/tools/ipmitool.morph b/strata/tools/ipmitool.morph deleted file mode 100644 index db0d5a3a..00000000 --- a/strata/tools/ipmitool.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: ipmitool -kind: chunk -build-system: autotools -pre-configure-commands: -- touch NEWS diff --git a/strata/tools/kexec-tools.morph b/strata/tools/kexec-tools.morph deleted file mode 100644 index 118c1ac2..00000000 --- a/strata/tools/kexec-tools.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: kexec-tools -kind: chunk -build-system: autotools -configure-commands: -- ./bootstrap -- ./configure --prefix="$PREFIX" diff --git a/strata/tools/lsof.morph b/strata/tools/lsof.morph deleted file mode 100644 index 38183ae6..00000000 --- a/strata/tools/lsof.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: lsof -kind: chunk -configure-commands: -- tar xf lsof_*_src.tar --no-same-owner -- cd lsof_*_src/ && ./Configure -n linux -build-commands: -- cd lsof_*_src/ && make -install-commands: -- mkdir -p "$DESTDIR$PREFIX"/bin -- mv lsof_*_src/lsof "$DESTDIR$PREFIX"/bin/lsof -- mkdir -p "$DESTDIR$PREFIX"/man/man8 -- mv lsof_*_src/lsof.8 "$DESTDIR$PREFIX"/man/man8 diff --git a/strata/tools/parted.morph b/strata/tools/parted.morph deleted file mode 100644 index 0f279950..00000000 --- a/strata/tools/parted.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: parted -kind: chunk -build-system: autotools -pre-configure-commands: -- sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf -- sed -i -e '/^buildreq="/,/^"/{/perl/d}' bootstrap.conf -- ./bootstrap --skip-po --no-git --gnulib-srcdir=gnulib -configure-commands: -# Disable device-mapper as it is not installed on Baserock -- ./configure --prefix="$PREFIX" --disable-device-mapper -build-commands: -- make WERROR_CFLAGS="" diff --git a/strata/tools/procps-ng.morph b/strata/tools/procps-ng.morph deleted file mode 100644 index fb742a23..00000000 --- a/strata/tools/procps-ng.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: procps-ng -kind: chunk - -description: | - Process management tools. - - procps-ng is a fork of the original procps project. - -build-system: autotools - -configure-commands: -- NOCONFIGURE=1 ./autogen.sh - # Setting exec-prefix to /usr causes a bunch of stuff to go in /usr/usr/bin - # Setting prefix to / causes files to go in /include and /share - # So don't do either of those things! -- ./configure --prefix="$PREFIX" --exec-prefix=/ diff --git a/strata/tools/u-boot.morph b/strata/tools/u-boot.morph deleted file mode 100644 index 9be30bc7..00000000 --- a/strata/tools/u-boot.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: u-boot -kind: chunk -build-commands: -- make tools -install-commands: -- mkdir -p "$DESTDIR$PREFIX/bin" -- install -m 755 tools/img2brec.sh "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/jtagconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/netconsole "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkenvimage "$DESTDIR$PREFIX/bin/." -- install -m 755 tools/mkimage "$DESTDIR$PREFIX/bin/." diff --git a/strata/tools/zip.morph b/strata/tools/zip.morph deleted file mode 100644 index 070467e0..00000000 --- a/strata/tools/zip.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: zip -kind: chunk -configure-commands: -- cp unix/Makefile . -build-commands: -- sed -i -e 's/^prefix = .*$/prefix = $$DESTDIR\/$$PREFIX/' Makefile -- make generic -install-commands: -- make install diff --git a/strata/unionfs-fuse-group.morph b/strata/unionfs-fuse-group.morph deleted file mode 100644 index acb094ea..00000000 --- a/strata/unionfs-fuse-group.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: unionfs-fuse-group -kind: stratum - -description: | - User-space union file system. - - This is used by Morph for systems which are unable to use 'overlayfs'. It is slower - than 'overlayfs', because it runs outside rather than inside the kernel, but 'overlayfs' - is only available in Linux 3.18 and newer. - -build-depends: -# Depends on foundation for 'fuse', and maybe other stuff. -- morph: strata/foundation.morph - -chunks: -- name: unionfs-fuse - morph: strata/unionfs-fuse-group/unionfs-fuse.morph - repo: upstream:unionfs-fuse - ref: efac5b7aa91ec860f8f430a8d21060fe53a07002 - unpetrify-ref: v0.26 diff --git a/strata/unionfs-fuse-group/unionfs-fuse.morph b/strata/unionfs-fuse-group/unionfs-fuse.morph deleted file mode 100644 index 98e1ce1f..00000000 --- a/strata/unionfs-fuse-group/unionfs-fuse.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: unionfs-fuse -kind: chunk - -description: User-space union file system. - -build-system: manual - -build-commands: -- make PREFIX="$PREFIX" - -install-commands: -- make PREFIX="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/strata/vala-common.morph b/strata/vala-common.morph deleted file mode 100644 index e1438de3..00000000 --- a/strata/vala-common.morph +++ /dev/null @@ -1,35 +0,0 @@ -name: vala-common -kind: stratum -description: Vala compiler -build-depends: -- morph: strata/core.morph -- morph: strata/glib-common.morph -chunks: -- name: vala-bootstrap - morph: strata/vala-common/vala-bootstrap.morph - repo: upstream:vala - ref: 4e4a02c03445336237b36723b23a91670ef7621b - unpetrify-ref: baserock/bootstrap -- name: vala - repo: upstream:vala - ref: 5f6ebe007050be12bdc4aa7c902ae4059f28874a - unpetrify-ref: 0.28.0 - build-system: autotools - build-depends: - - vala-bootstrap -- name: m4-common - repo: upstream:m4-common - ref: 6e9a4d3b35c5ce8af050e66d8caff96070c57d34 - unpetrify-ref: baserock/2015-12-15 - build-system: autotools - submodules: - autoconf-archive: - url: upstream:autoconf-archive -- name: libgee - repo: upstream:gnome/libgee - ref: 4301ab58efc217409c588a5527f68990b4e3d220 - unpetrify-ref: master - build-system: autotools - build-depends: - - m4-common - - vala diff --git a/strata/vala-common/vala-bootstrap.morph b/strata/vala-common/vala-bootstrap.morph deleted file mode 100644 index e55b1887..00000000 --- a/strata/vala-common/vala-bootstrap.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: vala-bootstrap -kind: chunk -build-system: autotools -pre-configure-commands: -- autoreconf -ivf -configure-commands: -- ./configure --prefix="$PREFIX" diff --git a/strata/virtualbox-guest-x86_64.morph b/strata/virtualbox-guest-x86_64.morph deleted file mode 100644 index fadcec92..00000000 --- a/strata/virtualbox-guest-x86_64.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: virtualbox-guest-x86_64 -kind: stratum -description: | - VirtualBox Guest Additions for x86_64 -build-depends: -- morph: strata/tools.morph -- morph: strata/bsp-x86_64-generic.morph -- morph: strata/x-common.morph -- morph: strata/x-generic.morph -chunks: -- name: yasm - morph: strata/virtualbox-guest-x86_64/yasm.morph - repo: upstream:yasm - ref: fefefe262eb29081f0bcb4d48f2d476ce5730562 - unpetrify-ref: baserock/morph -- name: vboxguest - morph: strata/virtualbox-guest-x86_64/vboxguest.morph - repo: upstream:VirtualBox - ref: 617aeb5a3c13f4a46423e8c2fb560449403ad56d - unpetrify-ref: baserock/morph - build-depends: - - yasm diff --git a/strata/virtualbox-guest-x86_64/vboxguest.morph b/strata/virtualbox-guest-x86_64/vboxguest.morph deleted file mode 100644 index 1ab7f0f1..00000000 --- a/strata/virtualbox-guest-x86_64/vboxguest.morph +++ /dev/null @@ -1,34 +0,0 @@ -name: vboxguest -kind: chunk -description: | - VirtualBox guest additions -max-jobs: 1 -build-commands: -- truncate -s0 src/VBox/Additions/common/pam/Makefile.kmk -- env PATH="${PATH}:$(pwd)/kBuild/bin/linux.amd64/" VBOX_ONLY_ADDITIONS=1 VBOX_ONLY_BUILD=1 - kmk -- cd out/linux.amd64/release/bin/additions/src/ && make M="$(pwd)" -C /usr/src/linux - modules -install-commands: -- cd out/linux.amd64/release/bin/additions/src && make M="$(pwd)" -C /usr/src/linux - INSTALL_MOD_PATH="$DESTDIR" modules_install -- install -m 755 -D -o 0 -g 0 out/linux.amd64/release/bin/additions/mount.vboxsf "$DESTDIR/sbin/mount.vboxsf" -- install -m 755 -D -o 0 -g 0 out/linux.amd64/release/bin/additions/VBoxService "$DESTDIR/sbin/VBoxService" -- install -m 755 -D -o 0 -g 0 out/linux.amd64/release/bin/additions/VBoxControl "$DESTDIR/sbin/VBoxControl" -- | - install -m 644 -D -o 0 -g 0 /proc/self/fd/0 "$DESTDIR/lib/systemd/system/virtualbox-guest.service" < "$DESTDIR/etc/modules-load.d/virtualbox-guest-filesystem.conf" -system-integration: - vboxguest-misc: - 00-depmod: - - depmod -a $(cd /usr/lib/modules; ls | head -n 1) diff --git a/strata/virtualbox-guest-x86_64/yasm.morph b/strata/virtualbox-guest-x86_64/yasm.morph deleted file mode 100644 index 437ae97d..00000000 --- a/strata/virtualbox-guest-x86_64/yasm.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: yasm -kind: chunk -max-jobs: 1 -build-system: autotools diff --git a/strata/wayland-generic.morph b/strata/wayland-generic.morph deleted file mode 100644 index 5db5868e..00000000 --- a/strata/wayland-generic.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: wayland-generic -kind: stratum -build-depends: -- morph: strata/core.morph -chunks: -- name: wayland - morph: strata/wayland-generic/wayland.morph - repo: upstream:wayland - ref: 47163797f810373c81b6e13b7a8a245eb9877785 - unpetrify-ref: 1.11.0 -- name: wayland-protocols - repo: upstream:wayland-protocols - ref: 26c99346ab5f2273fe5581bc4f6397bbb834f747 - unpetrify-ref: "1.8" - build-system: autotools - build-depends: - - wayland diff --git a/strata/wayland-generic/wayland.morph b/strata/wayland-generic/wayland.morph deleted file mode 100644 index a65afd05..00000000 --- a/strata/wayland-generic/wayland.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: wayland -kind: chunk -description: Wayland server -build-system: autotools -configure-commands: -- autoreconf -ivf -- ./configure --prefix="$PREFIX" --sysconfdir=/etc --disable-documentation diff --git a/strata/weston-common.morph b/strata/weston-common.morph deleted file mode 100644 index 93818920..00000000 --- a/strata/weston-common.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: weston-common -kind: stratum -build-depends: -- morph: strata/graphics-common.morph -- morph: strata/input-common.morph -- morph: strata/mesa-common.morph -- morph: strata/libdrm-common.morph -- morph: strata/wayland-generic.morph -chunks: -- name: weston - morph: strata/weston-common/weston.morph - repo: upstream:weston - ref: 2e5232b980eaa1074023a65dd7941e80b72a763c - unpetrify-ref: baserock/weston-1.11.0/tegra diff --git a/strata/weston-common/weston.morph b/strata/weston-common/weston.morph deleted file mode 100644 index af0844ed..00000000 --- a/strata/weston-common/weston.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: weston -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --sysconfdir=/etc - --enable-demo-clients-install - --enable-systemd-notify diff --git a/strata/x-common.morph b/strata/x-common.morph deleted file mode 100644 index a1149ae0..00000000 --- a/strata/x-common.morph +++ /dev/null @@ -1,405 +0,0 @@ -name: x-common -kind: stratum -build-depends: -- morph: strata/xorg-util-macros-common.morph -chunks: -- name: xorg-proto-bigreqsproto - repo: upstream:xorg-proto-bigreqsproto - ref: d6ed3e927a756900ad4c9fd7235f8f7f34f376db - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-compositeproto - repo: upstream:xorg-proto-compositeproto - ref: 39738dbe9438dc80fc6b9e221d9ed26a6d42da6b - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-damageproto - repo: upstream:xorg-proto-damageproto - ref: 015b980e5091492dbe681af59569768ba89fbfe0 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-dmxproto - repo: upstream:xorg-proto-dmxproto - ref: 395f6fcc0a5635907b5e45829e86b29431316184 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-fixesproto - repo: upstream:xorg-proto-fixesproto - ref: b6c6bc2aa4b83f8763c75c90e6671052272a2af2 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-fontsproto - repo: upstream:xorg-proto-fontsproto - ref: df8c05f7c0253a36589d96efa52938215eff9d4d - unpetrify-ref: fontsproto-2.1.3 - build-system: autotools -- name: xorg-proto-glproto - repo: upstream:xorg-proto-glproto - ref: f84853d97d5749308992412a215fa518b6536eb3 - unpetrify-ref: glproto-1.4.17 - build-system: autotools -- name: xorg-proto-inputproto - repo: upstream:xorg-proto-inputproto - ref: 343ff0938f592876b9d82c966f166bf45a78c3c8 - unpetrify-ref: inputproto-2.3.1 - build-system: autotools -- name: xorg-proto-kbproto - repo: upstream:xorg-proto-kbproto - ref: f7022f5775350dce3348b7151845a32390e98791 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-xineramaproto - repo: upstream:xorg-proto-xineramaproto - ref: 4e77b45e0d6b42a448dab2ec316eeb5c490ecfed - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-randrproto - repo: upstream:xorg-proto-randrproto - ref: 79b63f0e57cd5baf06ff24252d3f1675dcb64467 - unpetrify-ref: randrproto-1.5.0 - build-system: autotools -- name: xorg-proto-recordproto - repo: upstream:xorg-proto-recordproto - ref: 0fd4f8e57c1e637b2aaaaa0f539ddbac8cc50575 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-renderproto - repo: upstream:xorg-proto-renderproto - ref: 935f5ec95a3718c184ff685f5b79b467483b7844 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-resourceproto - repo: upstream:xorg-proto-resourceproto - ref: ada91f54c98b5a61d3e116fca6bf239a8604730f - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-scrnsaverproto - repo: upstream:xorg-proto-scrnsaverproto - ref: 614532026e8ec7496216316fb584d6f2af6a7f7b - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-videoproto - repo: upstream:xorg-proto-videoproto - ref: e42cf822e230cff5c6550ca2c050dfa27d2c9611 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-xcmiscproto - repo: upstream:xorg-proto-xcmiscproto - ref: 83549077a3c2140b9862709004cd873f1c55e395 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-xextproto - repo: upstream:xorg-proto-xextproto - ref: 66afec3f49e8eb0d4c2e9af7088fc3116d4bafd7 - unpetrify-ref: xextproto-7.3.0 - build-system: autotools -- name: xorg-proto-xf86bigfontproto - repo: upstream:xorg-proto-xf86bigfontproto - ref: f805b328b2195de384c0fb6b82ef5f88c179b2c0 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-xf86dgaproto - repo: upstream:xorg-proto-xf86dgaproto - ref: c52b205c3175309be7952774668c87dd2d5ce30e - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-xf86driproto - repo: upstream:xorg-proto-xf86driproto - ref: cb03b8d49bf063860859c1ed8bcecd055551e93a - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-x11proto - repo: upstream:xorg-proto-x11proto - ref: d5524e2b8d811aa03ed19c6e8fb2ee4162ca2b23 - unpetrify-ref: xproto-7.0.28 - build-system: autotools -- name: xorg-proto-dri2proto - repo: upstream:xorg-proto-dri2proto - ref: ead89ad84877551cc15d26b95cb19a3e205df71f - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-proto-dri3proto - repo: upstream:xorg-proto-dri3proto - ref: 91df0f88b70c268f3580385a7b37543ab8c544c8 - build-system: autotools -- name: xorg-proto-presentproto - repo: upstream:xorg-proto-presentproto - ref: ef84007fc4a23d3897b4776906139de9d0698c2a - build-system: autotools -- name: xcb-proto - repo: upstream:xcb-proto - ref: 4b384d2a015c50d0e93dcacda4b8260a3fd37640 - unpetrify-ref: '1.11' - build-system: autotools -- name: xorg-lib-libxshmfence - repo: upstream:xorg-lib-libxshmfence - ref: 9c4f070e1304a3503cfab08f68573443025fc4c9 - unpetrify-ref: master - build-system: autotools - build-depends: - - xorg-proto-x11proto -- name: xorg-lib-libXau - repo: upstream:xorg-lib-libXau - ref: 1a8a1b2c68967b48c07b56142799b1020f017027 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xorg-proto-x11proto -- name: xcb-libxcb - repo: upstream:xcb-libxcb - ref: d1e8ec96fca4862f37ec9f0e9407bb989c4c161a - unpetrify-ref: '1.11' - build-system: autotools - build-depends: - - xcb-proto - - xorg-lib-libXau -- name: xcb-util - repo: upstream:xcb-util - ref: 4de010f122da40e17b52866d07d1d501a66bf007 - unpetrify-ref: baserock/0.4.0 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - submodules: - m4: - url: upstream:xcb/util-common-m4 -- name: util-wm - repo: upstream:util-wm - ref: fb7afc3f291c8cc072d327cd8d97ab1db3283c21 - unpetrify-ref: baserock/0.4.1 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - submodules: - m4: - url: upstream:xcb/util-common-m4 -- name: util-keysyms - repo: upstream:util-keysyms - ref: edb763a8837d3932690b9d6d77cb7e20a9ab8013 - unpetrify-ref: baserock/0.4.0 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - submodules: - m4: - url: upstream:xcb/util-common-m4 -- name: util-image - repo: upstream:util-image - ref: f20f25a1c017c58d5d7dfffc6e9adc8d31879152 - unpetrify-ref: baserock/0.4.0 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xcb-util - submodules: - m4: - url: upstream:xcb/util-common-m4 -- name: xorg-lib-libxtrans - repo: upstream:xorg-lib-libxtrans - ref: 7cbad9fe2e61cd9d5caeaf361826a6f4bd320f03 - unpetrify-ref: xtrans-1.3.5 - build-system: autotools -- name: xorg-lib-libX11 - repo: upstream:xorg-lib-libX11 - ref: cb107760df33ffc8630677e66e2e50aa37950a5c - unpetrify-ref: libX11-1.6.2 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libxtrans - - xorg-proto-inputproto - - xorg-proto-kbproto - - xorg-proto-x11proto - - xorg-proto-xextproto - - xorg-proto-xf86bigfontproto -- name: xorg-lib-libXext - repo: upstream:xorg-lib-libXext - ref: 8eee1236041d46a21faba32e0d27c26985267d89 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libX11 - - xorg-lib-libXau - - xorg-proto-x11proto - - xorg-proto-xextproto -- name: xorg-lib-libXfixes - repo: upstream:xorg-lib-libXfixes - ref: 0cb446962381f750e05d97bfb974ca1e32481d5d - unpetrify-ref: libXfixes-5.0.1 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libXext - - xorg-proto-fixesproto -- name: xorg-lib-libXi - repo: upstream:xorg-lib-libXi - ref: f180dff710dc54d00e0e26b84de053151f8f207e - unpetrify-ref: libXi-1.7.5 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-lib-libXfixes - - xorg-proto-fixesproto - - xorg-proto-inputproto - - xorg-proto-x11proto - - xorg-proto-xextproto -- name: xorg-lib-libXcomposite - repo: upstream:xorg-lib-libXcomposite - ref: eda48b1bedaa344ada8e13930c9ab3058b836190 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXfixes - - xorg-proto-compositeproto -- name: xorg-lib-libXrender - repo: upstream:xorg-lib-libXrender - ref: 1af52cb334377611233d7dc156bc1e6f7923756d - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-proto-renderproto -- name: xorg-lib-libXrandr - repo: upstream:xorg-lib-libXrandr - ref: 99a63d10cbbab7d69a52d25d78795a3278506ea9 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-lib-libXrender - - xorg-proto-randrproto - - xorg-proto-renderproto - - xorg-proto-xextproto -- name: xorg-lib-libXinerama - repo: upstream:xorg-lib-libXinerama - ref: 470b9356af961ff7d3968b164aa73872b49a5dcc - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-proto-xextproto - - xorg-proto-xineramaproto -- name: xorg-lib-libXtst - repo: upstream:xorg-lib-libXtst - ref: 2aafac9474a0a0a0c39797862f823255918cf368 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-lib-libXi - - xorg-proto-inputproto - - xorg-proto-recordproto - - xorg-proto-xextproto -- name: xorg-lib-libXdamage - repo: upstream:xorg-lib-libXdamage - ref: 0d35761dc39409b70e04dd0786aef6537f92976a - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libXfixes - - xorg-proto-damageproto -- name: xorg-lib-libXcursor - repo: upstream:xorg-lib-libXcursor - ref: 1b98fd6a2e8c00a563187849a585e68c7344468b - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXrender - - xorg-lib-libXfixes - - xorg-proto-fixesproto - - xorg-lib-libXau - - xorg-lib-libX11 -- name: xorg-lib-libICE - repo: upstream:xorg-lib-libICE - ref: 0dfab4253e26d5c6e5f058126eb5e9f7a7732ae8 - unpetrify-ref: libICE-1.0.9 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-proto-x11proto - - xorg-lib-libxtrans -- name: xorg-lib-libSM - repo: upstream:xorg-lib-libSM - ref: 0fd7aa17da41779129a3acfdad28e07c0072a160 - unpetrify-ref: libSM-1.2.2 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-proto-x11proto - - xorg-lib-libICE - - xorg-lib-libxtrans -- name: xorg-lib-libXt - repo: upstream:xorg-lib-libXt - ref: e7411e7e5299116604ff1f01d9415802607f1051 - unpetrify-ref: libXt-1.1.5 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-proto-kbproto - - xorg-lib-libX11 - - xorg-lib-libSM - - xorg-lib-libICE -- name: xorg-lib-libXmu - repo: upstream:xorg-lib-libXmu - ref: 2539e539eafdac88177c8ee30b043c5d52f017e4 - unpetrify-ref: libXmu-1.1.2 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-lib-libXt - - xorg-proto-xextproto - - xorg-lib-libICE - - xorg-lib-libSM -- name: xorg-lib-libXv - repo: upstream:xorg-lib-libXv - ref: 736d7ac5a94c7aa6761d50ab58339a3d9a116c51 - unpetrify-ref: libXv-1.0.10 - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-lib-libXext - - xorg-proto-xextproto - - xorg-proto-videoproto -- name: xorg-lib-libxkbfile - repo: upstream:xorg-lib-libxkbfile - ref: 7381c2f9013ef7784c78091fa671e652a62ca706 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xcb-libxcb - - xorg-lib-libXau - - xorg-lib-libX11 - - xorg-proto-kbproto diff --git a/strata/x-drivers.morph b/strata/x-drivers.morph deleted file mode 100644 index faf646f2..00000000 --- a/strata/x-drivers.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: x-drivers -kind: stratum -build-depends: -- morph: strata/input-common.morph -- morph: strata/x-generic.morph -chunks: -- name: xorg-driver-xf86-video-fbdev - repo: upstream:xorg-driver-xf86-video-fbdev - ref: 679ed9a4e6b54227df191c580e3ef641e075db19 - unpetrify-ref: xf86-video-fbdev-0.4.4 - build-system: autotools -- name: xorg-driver-xf86-video-vesa - repo: upstream:xorg-driver-xf86-video-vesa - ref: b49c293e67cd88424ff40a2ca4e58b28528691d7 - unpetrify-ref: xf86-video-vesa-2.3.4 - build-system: autotools -- name: xorg-driver-xf86-video-intel - repo: upstream:xorg-driver-xf86-video-intel - ref: 57725564179b8ddb48d5c9437fde91a6c02c0740 - unpetrify-ref: 2.99.917-381-g5772556 - build-system: autotools -- name: xorg-driver-xf86-input-libinput - repo: upstream:xorg-driver-xf86-input-libinput - ref: 44f4b2ed7075d424e3621f30815e11875b364c27 - unpetrify-ref: xf86-input-libinput-0.15.0 - build-system: autotools diff --git a/strata/x-generic.morph b/strata/x-generic.morph deleted file mode 100644 index d9462426..00000000 --- a/strata/x-generic.morph +++ /dev/null @@ -1,46 +0,0 @@ -name: x-generic -kind: stratum -build-depends: -- morph: strata/foundation.morph -- morph: strata/libdrm-common.morph -- morph: strata/mesa-common.morph -- morph: strata/x-common.morph -- morph: strata/graphics-common.morph -chunks: -- name: xorg-font-util - repo: upstream:xorg-font-util - ref: 5f01ea79f1cb2328bfc4130b1e693f71be916b87 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-lib-libfontenc - repo: upstream:xorg-lib-libfontenc - ref: f5d1208172e965fdd7fae8927bd3e29b3cc3a975 - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xorg-font-util -- name: xorg-lib-libXfont - repo: upstream:xorg-lib-libXfont - ref: ad4f4d8a2d0730c0ea3c09210bf921638b4682bc - unpetrify-ref: libXfont-1.5.0 - build-system: autotools - build-depends: - - xorg-lib-libfontenc -- name: xserver - morph: strata/x-generic/xserver.morph - repo: upstream:xserver - ref: 93d4224ccf3dee5a51815a66f76c905450419b50 - unpetrify-ref: xorg-server-1.18.2 - build-depends: - - xorg-font-util - - xorg-lib-libXfont -- name: xorg-app-xkbcomp - repo: upstream:xorg-app-xkbcomp - ref: 705b9bbb426410f9510601c7010da51184919b36 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xorg-app-xinit - repo: upstream:xorg-app-xinit - ref: 4e85bce64acef1fa0ddff04d59737444e942ff12 - unpetrify-ref: baserock/morph - build-system: autotools diff --git a/strata/x-generic/xserver.morph b/strata/x-generic/xserver.morph deleted file mode 100644 index 4e15605b..00000000 --- a/strata/x-generic/xserver.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: xserver -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" \ - --disable-xvfb \ - --disable-xnest \ - --disable-xquartz \ - --disable-xwin \ - --enable-glamor \ - --enable-xwayland diff --git a/strata/xorg-util-macros-common.morph b/strata/xorg-util-macros-common.morph deleted file mode 100644 index 7e252a90..00000000 --- a/strata/xorg-util-macros-common.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: xorg-util-macros-common -kind: stratum -build-depends: -- morph: strata/core.morph -chunks: -- name: xorg-util-macros - repo: upstream:xorg-util-macros - ref: 9a54b858601bd305de2737b06e609084a2a114c2 - unpetrify-ref: util-macros-1.19.0 - build-system: autotools -- name: xcb-pthread-stubs - repo: upstream:xcb-pthread-stubs - ref: 431d2c0be218d878b9dd3862e4232243c599df4b - unpetrify-ref: baserock/morph - build-system: autotools - build-depends: - - xorg-util-macros diff --git a/systems/armv7lhf-cross-toolchain-system-x86_32.morph b/systems/armv7lhf-cross-toolchain-system-x86_32.morph deleted file mode 100644 index b0ac9cfe..00000000 --- a/systems/armv7lhf-cross-toolchain-system-x86_32.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: armv7lhf-cross-toolchain-system-x86_32 -kind: system -description: A system that contains an ARM cross compiler, intended to be used as - a sysroot. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: armv7lhf-cross-toolchain - morph: strata/armv7lhf-cross-toolchain.morph -- name: cross-tools - morph: strata/cross-tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/armv7lhf-cross-toolchain-system-x86_64.morph b/systems/armv7lhf-cross-toolchain-system-x86_64.morph deleted file mode 100644 index 1bd1adc1..00000000 --- a/systems/armv7lhf-cross-toolchain-system-x86_64.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: armv7lhf-cross-toolchain-system-x86_64 -kind: system -description: A system that contains an ARM cross compiler, intended to be used as - a sysroot. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: armv7lhf-cross-toolchain - morph: strata/armv7lhf-cross-toolchain.morph -- name: cross-tools - morph: strata/cross-tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7-highbank.morph b/systems/base-system-armv7-highbank.morph deleted file mode 100644 index 32d773e8..00000000 --- a/systems/base-system-armv7-highbank.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-armv7-highbank -kind: system -description: The set of strata required to have a minimal system for an ARM highbank - system. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-highbank - morph: strata/bsp-armv7-highbank.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7-versatile.morph b/systems/base-system-armv7-versatile.morph deleted file mode 100644 index 4f039c02..00000000 --- a/systems/base-system-armv7-versatile.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-armv7-versatile -kind: system -description: The set of strata required to have a minimal system for an ARM versatile - system. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-versatile - morph: strata/bsp-armv7-versatile.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7b-highbank.morph b/systems/base-system-armv7b-highbank.morph deleted file mode 100644 index 969967b5..00000000 --- a/systems/base-system-armv7b-highbank.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-armv7b-highbank -kind: system -description: The set of strata required to have a minimal system for an ARM highbank - system. -arch: armv7b -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7b-highbank - morph: strata/bsp-armv7b-highbank.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7b-vexpress-tc2.morph b/systems/base-system-armv7b-vexpress-tc2.morph deleted file mode 100644 index cbfedd89..00000000 --- a/systems/base-system-armv7b-vexpress-tc2.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: base-system-armv7b-vexpress-tc2 -kind: system -description: A small system for Versatile TC2 boards system. -arch: armv7b -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7b-vexpress-tc2 - morph: strata/bsp-armv7b-vexpress-tc2.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7l-altera-socfpga-devkit.morph b/systems/base-system-armv7l-altera-socfpga-devkit.morph deleted file mode 100644 index b8fe4c28..00000000 --- a/systems/base-system-armv7l-altera-socfpga-devkit.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: base-system-armv7l-altera-socfpga-devkit -kind: system -description: | - The set of strata required to have a minimal system for use on Altera SoCFPGA - development kit, using little-endian word order. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7l-altera-socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv7lhf-highbank.morph b/systems/base-system-armv7lhf-highbank.morph deleted file mode 100644 index 399931a5..00000000 --- a/systems/base-system-armv7lhf-highbank.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-armv7lhf-highbank -kind: system -description: The set of strata required to have a minimal system for an ARM highbank - system. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-highbank - morph: strata/bsp-armv7-highbank.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-armv8b64.morph b/systems/base-system-armv8b64.morph deleted file mode 100644 index d23bde9b..00000000 --- a/systems/base-system-armv8b64.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: base-system-armv8b64 -kind: system -description: | - The set of strata required to have a minimal - system for big endian 64-bit ARMv8 computers. -arch: armv8b64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8b64-generic - morph: strata/bsp-armv8b64-generic.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/moonshot-kernel -- extensions/install-essential-files diff --git a/systems/base-system-armv8l64.morph b/systems/base-system-armv8l64.morph deleted file mode 100644 index 24104a8b..00000000 --- a/systems/base-system-armv8l64.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: base-system-armv8l64 -kind: system -description: | - The set of strata required to have a minimal - system for little endian 64-bit ARMv8 computers. -arch: armv8l64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8l64-generic - morph: strata/bsp-armv8l64-generic.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/moonshot-kernel -- extensions/install-essential-files diff --git a/systems/base-system-ppc64-generic.morph b/systems/base-system-ppc64-generic.morph deleted file mode 100644 index 6da852e3..00000000 --- a/systems/base-system-ppc64-generic.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-ppc64-generic -kind: system -description: The set of strata required to have a minimal system for a 64-bit ppc64 - system. -arch: ppc64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-ppc64-generic - morph: strata/bsp-ppc64-generic.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-x86_32-generic.morph b/systems/base-system-x86_32-generic.morph deleted file mode 100644 index d89fd913..00000000 --- a/systems/base-system-x86_32-generic.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: base-system-x86_32-generic -kind: system -description: The set of strata required to have a basic system for a 32-bit x86 system. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_32-generic - morph: strata/bsp-x86_32-generic.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/base-system-x86_64-generic.morph b/systems/base-system-x86_64-generic.morph deleted file mode 100644 index aa1659b3..00000000 --- a/systems/base-system-x86_64-generic.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: base-system-x86_64-generic -kind: system -description: The set of strata required to have a minimal system for a 64-bit x86 - system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/systems/build-system-armv5l-openbmc-aspeed.morph b/systems/build-system-armv5l-openbmc-aspeed.morph deleted file mode 100644 index b8799bb0..00000000 --- a/systems/build-system-armv5l-openbmc-aspeed.morph +++ /dev/null @@ -1,49 +0,0 @@ -name: build-system-armv5l-openbmc-aspeed -kind: system -description: | - The system that should be used for building other Baserock systems - for little endian ARMv5 computers. -arch: armv5l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-armv5l-openbmc-aspeed - morph: strata/bsp-armv5l-openbmc-aspeed.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: devtools - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: mtd-utilities - morph: strata/mtd-utilities.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv7l-altera-socfpga-devkit.morph b/systems/build-system-armv7l-altera-socfpga-devkit.morph deleted file mode 100644 index 5d83cb6a..00000000 --- a/systems/build-system-armv7l-altera-socfpga-devkit.morph +++ /dev/null @@ -1,51 +0,0 @@ -name: build-system-armv7l-altera-socfpga-devkit -kind: system -description: | - The system that should be used for building other Baserock systems. For - use on Altera SoCFPGA development kit, using little-endian word order. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7l-altera-socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit.morph -- name: python2-core - morph: strata/python2-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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: devtools - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv7lhf-highbank.morph b/systems/build-system-armv7lhf-highbank.morph deleted file mode 100644 index 06262deb..00000000 --- a/systems/build-system-armv7lhf-highbank.morph +++ /dev/null @@ -1,63 +0,0 @@ -name: build-system-armv7lhf-highbank -kind: system -description: The system that should be used for building all other Baserock systems - for ARMv7 little-endian hard-float Calxeda Highbank computers. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-armv7-highbank - morph: strata/bsp-armv7-highbank.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: unionfs-fuse-group - morph: strata/unionfs-fuse-group.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv7lhf-jetson.morph b/systems/build-system-armv7lhf-jetson.morph deleted file mode 100644 index aa0deac7..00000000 --- a/systems/build-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-armv7lhf-jetson -kind: system -description: The system that should be used for building all other Baserock systems - for ARMv7 little-endian hard-float NVIDIA Jetson TK1 computers. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv7lhf-rootfs.morph b/systems/build-system-armv7lhf-rootfs.morph deleted file mode 100644 index 4c934cc9..00000000 --- a/systems/build-system-armv7lhf-rootfs.morph +++ /dev/null @@ -1,59 +0,0 @@ -name: build-system-armv7lhf-rootfs -kind: system -description: The system that should be used for building all other Baserock systems - for ARMv7 little-endian hard-float, rootfs variant. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv8b64.morph b/systems/build-system-armv8b64.morph deleted file mode 100644 index d544cebb..00000000 --- a/systems/build-system-armv8b64.morph +++ /dev/null @@ -1,63 +0,0 @@ -name: build-system-armv8b64 -kind: system -description: | - The system that should be used for building all other Baserock systems - for 64-bit ARMv8 computers running in big-endian mode. -arch: armv8b64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8b64-generic - morph: strata/bsp-armv8b64-generic.morph -- name: python2-core - morph: strata/python2-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/moonshot-kernel -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-armv8l64.morph b/systems/build-system-armv8l64.morph deleted file mode 100644 index effd0d40..00000000 --- a/systems/build-system-armv8l64.morph +++ /dev/null @@ -1,63 +0,0 @@ -name: build-system-armv8l64 -kind: system -description: | - The system that should be used for building all other Baserock systems - for little endian 64-bit ARMv8 computers. -arch: armv8l64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-armv8l64-generic - morph: strata/bsp-armv8l64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/moonshot-kernel -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-ppc64.morph b/systems/build-system-ppc64.morph deleted file mode 100644 index 2a5ca04f..00000000 --- a/systems/build-system-ppc64.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-ppc64 -kind: system -description: The system that should be used for building all other Baserock systems - for 64-bit POWER computers. -arch: ppc64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-ppc64-generic - morph: strata/bsp-ppc64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-x86_32-chroot.morph b/systems/build-system-x86_32-chroot.morph deleted file mode 100644 index 868c3213..00000000 --- a/systems/build-system-x86_32-chroot.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-x86_32-chroot -kind: system -description: The system that should be used for building all other Baserock systems - for 32-bit Intel x86 computers, chroot variant. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: bsp-x86_both-tools - morph: strata/bsp-x86_both-tools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-x86_32.morph b/systems/build-system-x86_32.morph deleted file mode 100644 index 104d9a75..00000000 --- a/systems/build-system-x86_32.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-x86_32 -kind: system -description: The system that should be used for building all other Baserock systems - for 32-bit Intel x86 computers. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-x86_32-generic - morph: strata/bsp-x86_32-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-x86_64-chroot.morph b/systems/build-system-x86_64-chroot.morph deleted file mode 100644 index 339ecfb7..00000000 --- a/systems/build-system-x86_64-chroot.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-x86_64-chroot -kind: system -description: The system that should be used for building all other Baserock systems - for 64-bit Intel x86 computers, chroot variant. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: bsp-x86_both-tools - morph: strata/bsp-x86_both-tools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/build-system-x86_64.morph b/systems/build-system-x86_64.morph deleted file mode 100644 index f006df9a..00000000 --- a/systems/build-system-x86_64.morph +++ /dev/null @@ -1,61 +0,0 @@ -name: build-system-x86_64 -kind: system -description: The system that should be used for building all other Baserock systems - for 64-bit Intel x86 computers. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: python2-core - morph: strata/python2-core.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - 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 - morph: strata/devtools.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/distbuild -- extensions/fstab -- extensions/mason -- extensions/cloud-init -- extensions/install-essential-files -- extensions/hosts diff --git a/systems/cross-bootstrap-system-armv5l-generic.morph b/systems/cross-bootstrap-system-armv5l-generic.morph deleted file mode 100644 index ff151deb..00000000 --- a/systems/cross-bootstrap-system-armv5l-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-armv5l-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: armv5l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-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-armv7lhf-generic.morph b/systems/cross-bootstrap-system-armv7lhf-generic.morph deleted file mode 100644 index 52ac2de9..00000000 --- a/systems/cross-bootstrap-system-armv7lhf-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-armv7lhf-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-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-armv8b64-generic.morph b/systems/cross-bootstrap-system-armv8b64-generic.morph deleted file mode 100644 index a3c3bc21..00000000 --- a/systems/cross-bootstrap-system-armv8b64-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-armv8b64-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: armv8b64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-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 deleted file mode 100644 index 0ea68f8a..00000000 --- a/systems/cross-bootstrap-system-armv8l64-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-armv8l64-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: armv8l64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-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 deleted file mode 100644 index 17e40242..00000000 --- a/systems/cross-bootstrap-system-ppc64-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-ppc64-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: ppc64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-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 deleted file mode 100644 index 8c597841..00000000 --- a/systems/cross-bootstrap-system-x86_64-generic.morph +++ /dev/null @@ -1,25 +0,0 @@ -name: cross-bootstrap-system-x86_64-generic -kind: system -description: A system that produces the minimum needed to build a devel system -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: cross-bootstrap - morph: strata/cross-bootstrap.morph diff --git a/systems/initramfs-x86_32.morph b/systems/initramfs-x86_32.morph deleted file mode 100644 index df817c13..00000000 --- a/systems/initramfs-x86_32.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: initramfs-x86_32 -kind: system -description: Initramfs for x86_32 -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -- name: initramfs-utils - morph: strata/initramfs-utils.morph diff --git a/systems/initramfs-x86_64.morph b/systems/initramfs-x86_64.morph deleted file mode 100644 index 4bb0020d..00000000 --- a/systems/initramfs-x86_64.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: initramfs-x86_64 -kind: system -description: Initramfs for x86_64 -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -- name: initramfs-utils - morph: strata/initramfs-utils.morph diff --git a/systems/installer-system-armv8b64.morph b/systems/installer-system-armv8b64.morph deleted file mode 100644 index ded674c5..00000000 --- a/systems/installer-system-armv8b64.morph +++ /dev/null @@ -1,41 +0,0 @@ -name: installer-system-armv8b64 -kind: system -description: The system that should be used as an Installer to install other Baserock - systems. -arch: armv8b64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python2-core - morph: strata/python2-core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8b64-generic - morph: strata/bsp-armv8b64-generic.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: installer-utils - morph: strata/installer-utils.morph -configuration-extensions: -- extensions/set-hostname -- extensions/install-files -- extensions/fstab -- extensions/installer -- extensions/moonshot-kernel -- extensions/install-essential-files diff --git a/systems/installer-system-x86_64.morph b/systems/installer-system-x86_64.morph deleted file mode 100644 index 5623f82d..00000000 --- a/systems/installer-system-x86_64.morph +++ /dev/null @@ -1,40 +0,0 @@ -name: installer-system-x86_64 -kind: system -description: The system that should be used as an Installer to install other Baserock - systems. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python2-core - morph: strata/python2-core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: installer-utils - morph: strata/installer-utils.morph -configuration-extensions: -- extensions/set-hostname -- extensions/install-files -- extensions/fstab -- extensions/installer -- extensions/install-essential-files diff --git a/systems/minimal-system-armv5l-openbmc-aspeed.morph b/systems/minimal-system-armv5l-openbmc-aspeed.morph deleted file mode 100644 index 602e05c7..00000000 --- a/systems/minimal-system-armv5l-openbmc-aspeed.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: minimal-system-armv5l-openbmc-aspeed -kind: system -description: The set of strata required to have a minimal system for armv5l -arch: armv5l -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -- name: bsp-armv5l-openbmc-aspeed - morph: strata/bsp-armv5l-openbmc-aspeed.morph - artifacts: - - bsp-armv5l-openbmc-aspeed-runtime -configuration-extensions: -- extensions/set-hostname -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/busybox-init -- extensions/install-essential-files diff --git a/systems/minimal-system-x86_32-generic.morph b/systems/minimal-system-x86_32-generic.morph deleted file mode 100644 index 2e9f79c5..00000000 --- a/systems/minimal-system-x86_32-generic.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: minimal-system-x86_32-generic -kind: system -description: The set of strata required to have a minimal system for a 32-bit x86 - system. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -- name: bsp-x86_32-generic - morph: strata/bsp-x86_32-generic.morph - artifacts: - - bsp-x86_32-generic-runtime -configuration-extensions: -- extensions/set-hostname -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/busybox-init -- extensions/install-essential-files diff --git a/systems/minimal-system-x86_64-chroot.morph b/systems/minimal-system-x86_64-chroot.morph deleted file mode 100644 index d8635a64..00000000 --- a/systems/minimal-system-x86_64-chroot.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: minimal-system-x86_64-chroot -kind: system -description: A minimal chroot system -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -configuration-extensions: -- extensions/set-hostname -- extensions/busybox-init diff --git a/systems/minimal-system-x86_64-generic.morph b/systems/minimal-system-x86_64-generic.morph deleted file mode 100644 index afd9460c..00000000 --- a/systems/minimal-system-x86_64-generic.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: minimal-system-x86_64-generic -kind: system -description: The set of strata required to have a minimal system for a 64-bit x86 - system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph - artifacts: - - build-essential-minimal -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph - artifacts: - - bsp-x86_64-generic-runtime -configuration-extensions: -- extensions/set-hostname -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/busybox-init -- extensions/install-essential-files diff --git a/trove/clusters/mason-openstack.morph b/trove/clusters/mason-openstack.morph deleted file mode 100644 index 6a854bd5..00000000 --- a/trove/clusters/mason-openstack.morph +++ /dev/null @@ -1,39 +0,0 @@ -name: mason-openstack -kind: cluster -description: | - This is a template cluster morphology that can be adapted to set up a - Mason. Masons are composed of a trove and a distbuild system. -systems: -- morph: systems/build-system-x86_64.morph - deploy-defaults: - ARTIFACT_CACHE_SERVER: example-cache-server - CONTROLLERHOST: controller-hostname - DISTBUILD_CONTROLLER: true - DISTBUILD_WORKER: true - INSTALL_FILES: install-files/distbuild/manifest - RAM_SIZE: 8G - TROVE_HOST: your-upstream-trove - TROVE_ID: your-upstream-trove-prefix - VCPUS: 2 - WORKER_SSH_KEY: ssh-keys/worker.key - deploy: - mason-openstack: - type: extensions/openstack - location: openstack-auth-url (eg example.com:5000/v2.0) - DISK_SIZE: 6G - DISTBUILD_CONTROLLER: true - HOSTNAME: controller-hostname - MASON_CLUSTER_MORPHOLOGY: clusters/ci.morph - MASON_DEFINITIONS_REF: master - MASON_DISTBUILD_ARCH: x86_64 - MASON_TEST_HOST: user@openstack-auth-url - WORKERS: controller-hostname - OPENSTACK_AUTH_URL: openstack-auth-url - OPENSTACK_USER: baserock - OPENSTACK_TENANT: baserock - OPENSTACK_TENANT_ID: 7d7ebfe23367490b973a10fa426c3aec - OPENSTACK_IMAGENAME: mason-openstack - OPENSTACK_NETWORK_ID: 71f5151a-b7c3-405d-a841-d1b07e5db099 - CLOUD_INIT: true - KERNEL_ARGS: console=ttyS0 console=tty0 - TEST_INFRASTRUCTURE_TYPE: openstack diff --git a/trove/clusters/mason.morph b/trove/clusters/mason.morph deleted file mode 100644 index f69a9e11..00000000 --- a/trove/clusters/mason.morph +++ /dev/null @@ -1,56 +0,0 @@ -name: example-mason-cluster -kind: cluster -description: | - This is a template cluster morphology that can be adapted to set up a - Mason. Masons are composed of a trove and a distbuild system. - - It is suggested that you use mason/mason-generator.sh to adapt this - template to suit your needs. It also handles the generation of - keys to let the systems communicate. -systems: -- morph: trove/systems/trove-system-x86_64.morph - deploy: - red-box-v1-trove: - type: extensions/kvm - location: kvm+ssh://vm-user@vm-host/red-box-v1-trove/vm-path/red-box-v1-trove.img - AUTOSTART: true - DISK_SIZE: 20G - HOSTNAME: red-box-v1-trove - LORRY_SSH_KEY: ssh_keys/lorry.key - MASON_SSH_PUBKEY: ssh_keys/mason.key.pub - RAM_SIZE: 8G - TROVE_ADMIN_EMAIL: adminuser@example.com - TROVE_ADMIN_NAME: Nobody - TROVE_ADMIN_SSH_PUBKEY: ssh_keys/id_rsa.pub - TROVE_ADMIN_USER: adminuser - TROVE_COMPANY: Company name goes here - TROVE_HOST: red-box-v1 - TROVE_ID: red-box-v1-trove - UPSTREAM_TROVE: upstream-trove - VCPUS: 2 - VERSION_LABEL: 45 - WORKER_SSH_PUBKEY: ssh_keys/worker.key.pub -- morph: systems/build-system-x86_64.morph - deploy-defaults: - ARTIFACT_CACHE_SERVER: red-box-v1-trove.example.com - CONTROLLERHOST: red-box-v1-controller.example.com - DISTBUILD_CONTROLLER: false - DISTBUILD_WORKER: true - INSTALL_FILES: install-files/distbuild/manifest - RAM_SIZE: 8G - TROVE_HOST: upstream-trove - TROVE_ID: upstream-trove - VCPUS: 2 - WORKER_SSH_KEY: ssh_keys/worker.key - deploy: - red-box-v1-controller: - type: extensions/kvm - location: kvm+ssh://vm-user@vm-host/red-box-v1-controller/vm-path/red-box-v1-controller.img - DISK_SIZE: 60G - DISTBUILD_CONTROLLER: true - HOSTNAME: red-box-v1-controller - MASON_CLUSTER_MORPHOLOGY: clusters/ci.morph - MASON_DEFINITIONS_REF: master - MASON_DISTBUILD_ARCH: x86_64 - MASON_TEST_HOST: vm-user@vm-host:/vm-path/ - WORKERS: red-box-v1-controller diff --git a/trove/clusters/trove-example.morph b/trove/clusters/trove-example.morph deleted file mode 100644 index 13171846..00000000 --- a/trove/clusters/trove-example.morph +++ /dev/null @@ -1,58 +0,0 @@ -name: trove-example -kind: cluster -description: | - This is an example cluster morphology for deploying a Trove, - both the initial deployment and an upgrade. - - You need some ssh keys, which you can create like this: - - mkdir ssh_keys - ssh-keygen -N '' -f ssh_keys/lorry.key - ssh-keygen -N '' -f ssh_keys/worker.key - ssh-keygen -N '' -f ssh_keys/trove-admin.key - - You may also put in your own keys instead of creating new ones. - - To do the initial deployment: - - morph deploy clusters/trove-example.morph \ - initial \ - initial.location=kvm+ssh://liw@192.168.122.1/test-trove/tmp/test-trove.img - - To do an upgrade: - - morph deploy clusters/trove-example.morph \ - upgrade upgrade.VERSION_LABEL=123 - - where `VERSION_LABEL` gets a new unique value each time. - - Remember to always specify either initial or upgrade as the - deployment name to use, otherwise morph will attempt to deploy both. - - You can find documentation for Trove at the following web address: - http://wiki.baserock.org/Trove/ -systems: -- morph: trove/systems/trove-system-x86_64.morph - deploy-defaults: - HOSTNAME: test-trove - VCPUS: 2 - RAM_SIZE: 2G - DISK_SIZE: 8G - LORRY_SSH_KEY: ssh_keys/lorry.key - WORKER_SSH_PUBKEY: ssh_keys/worker.key.pub - TROVE_ADMIN_EMAIL: adminuser@example.com - TROVE_ADMIN_NAME: Nobody - TROVE_ADMIN_SSH_PUBKEY: ssh_keys/trove-admin.key.pub - TROVE_ADMIN_USER: adminuser - TROVE_COMPANY: Company name goes here - TROVE_HOST: test-trove - TROVE_ID: test-trove - UPSTREAM_TROVE: '' - deploy: - initial: - type: extensions/kvm - location: kvm+ssh://vm-user@vm-host/test-trove/vm-path/test-trove.img - VERSION_LABEL: 1 - upgrade: - type: extensions/ssh-rsync - location: test-trove diff --git a/trove/clusters/trove.baserock.org-upgrade.morph b/trove/clusters/trove.baserock.org-upgrade.morph deleted file mode 100644 index cfd5d1cb..00000000 --- a/trove/clusters/trove.baserock.org-upgrade.morph +++ /dev/null @@ -1,19 +0,0 @@ -name: trove.baserock.org-upgrade -kind: cluster -description: | - This is a cluster morphology for deploying an UPGRADE to - git.baserock.org. It doesn't work for the initial deployment. The - deployer MUST have ssh access to root@git.baserock.org. To use: - - morph upgrade clusters/trove.baserock.org-upgrade.morph gbo.VERSION_LABEL=2014-05-29 - - Replace the value of gbo.VERSION_LABEL above with the current date. - You can add letters if you need to upgrade multiple times in a day. -systems: -- morph: trove/systems/trove-system-x86_64.morph - deploy: - gbo: - upgrade-type: extensions/ssh-rsync - upgrade-location: root@git.baserock.org - HOSTNAME: baserock - TROVE_GENERIC: True diff --git a/trove/strata/fail2ban-common.morph b/trove/strata/fail2ban-common.morph deleted file mode 100644 index 23918a66..00000000 --- a/trove/strata/fail2ban-common.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: fail2ban-common -kind: stratum -description: | - This stratum only installs fail2ban. You will need to - configure it afterwards. It's recommended to include - iptables in the system too. -build-depends: -- morph: strata/core.morph -chunks: -- name: fail2ban - morph: trove/strata/fail2ban-common/fail2ban.morph - repo: upstream:fail2ban - ref: 70ba5cb0054f0869930b8cd2dc1bb836653dd289 - unpetrify-ref: "0.9.3" diff --git a/trove/strata/fail2ban-common/fail2ban.morph b/trove/strata/fail2ban-common/fail2ban.morph deleted file mode 100644 index 2f267a5a..00000000 --- a/trove/strata/fail2ban-common/fail2ban.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: fail2ban -kind: chunk -build-system: python3-distutils -post-install-commands: -- install -D -m 640 files/fail2ban.service "$DESTDIR"/"$PREFIX"/lib/systemd/system/fail2ban.service -- install -D -m 640 files/fail2ban-tmpfiles.conf "$DESTDIR"/"$PREFIX"/lib/tmpfiles.d/fail2ban.conf diff --git a/trove/strata/lorry-controller.morph b/trove/strata/lorry-controller.morph deleted file mode 100644 index 87d3ed00..00000000 --- a/trove/strata/lorry-controller.morph +++ /dev/null @@ -1,16 +0,0 @@ -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-cliapp.morph -- morph: strata/python-wsgi.morph -chunks: -- name: lorry-controller - morph: trove/strata/lorry-controller/lorry-controller.morph - repo: baserock:baserock/lorry-controller - ref: dddd2e37953d795e4004b1d2722c25ec652135ad - unpetrify-ref: master diff --git a/trove/strata/lorry-controller/lorry-controller.morph b/trove/strata/lorry-controller/lorry-controller.morph deleted file mode 100644 index 2f90a9a1..00000000 --- a/trove/strata/lorry-controller/lorry-controller.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: lorry-controller -kind: chunk -build-system: python-distutils -post-install-commands: -- install -d 0755 "$DESTDIR/etc/lighttpd" -- install -m 0644 -D etc/lighttpd/*.conf "$DESTDIR/etc/lighttpd/." -- | - TGT="$DESTDIR/usr/lib/systemd/system" - install -d "$TGT/multi-user.target.wants" - install -m 0644 units/*.service units/*.timer "$TGT/." diff --git a/trove/strata/python3-core.morph b/trove/strata/python3-core.morph deleted file mode 100644 index afacc3da..00000000 --- a/trove/strata/python3-core.morph +++ /dev/null @@ -1,58 +0,0 @@ -name: python3-core -kind: stratum -description: | - Some "core" Python packages, for Python 3. - - The CPython interpreter for Python 3 is in core.morph. - -build-depends: -- morph: strata/core.morph - -chunks: -- name: mako - repo: upstream:python-packages/mako.git - ref: 285bc818a50ccc0f9549630f7c4f4c250585c3e7 - unpetrify-ref: rel_1_0_0 - build-system: python3-distutils - -- name: pbr - repo: upstream:pbr - ref: 6e472b4905411a39e993c81c382a27ca9c771ef5 - unpetrify-ref: 0.11.1 - build-system: python3-distutils - -- name: python-requests - repo: upstream:python-requests - ref: b83131779c701720a9ae9efae78996277d416269 - unpetrify-ref: v2.5.1 - build-system: python3-distutils - -- name: six - repo: upstream:six - ref: 8cfbff6b764af86d825086fa1637aa009e90d75a - unpetrify-ref: 1.9.0 - build-system: python3-distutils - -- name: pyyaml - morph: trove/strata/python3-core/pyyaml.morph - repo: upstream:pyyaml - ref: d9fbcceaed39d955f6871b07c61dc42f824285c1 - unpetrify-ref: baserock/morph - -- name: python-lxml - repo: upstream:python-lxml - ref: 14505bc62f5f1fc9fb0ff007955f3e67ab4562bb - unpetrify-ref: lxml-3.4.0 - build-system: python3-distutils - -- name: python-markdown - repo: upstream:python-markdown - ref: f0c5b71acbc02af60a33d67c59558bb513b25e74 - unpetrify-ref: 2.5.1-final - build-system: python3-distutils - -- name: jsonschema - repo: upstream:jsonschema - ref: 35b60f390098d3306c03eee27ceec8cf8a493579 - unpetrify-ref: v2.3.0 - build-system: python3-distutils diff --git a/trove/strata/python3-core/pyyaml.morph b/trove/strata/python3-core/pyyaml.morph deleted file mode 100644 index 001f392c..00000000 --- a/trove/strata/python3-core/pyyaml.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: pyyaml -kind: chunk -build-commands: -- python3 setup.py --without-libyaml build -install-commands: -- python3 setup.py --without-libyaml install --prefix="$PREFIX" --root "$DESTDIR" diff --git a/trove/strata/trove.morph b/trove/strata/trove.morph deleted file mode 100644 index 8306c630..00000000 --- a/trove/strata/trove.morph +++ /dev/null @@ -1,101 +0,0 @@ -name: trove -kind: stratum -description: Trove software -build-depends: -- morph: strata/python2-core.morph -- morph: strata/tools.morph -- morph: strata/morph-utils.morph -- morph: strata/pcre-utils.morph -chunks: -- name: lua - morph: trove/strata/trove/lua.morph - repo: upstream:lua - ref: 948063437e0350d9ef1649ec3a76d0c24a5c8642 - unpetrify-ref: baserock/5.1-morph -- name: lace - morph: trove/strata/trove/lace.morph - repo: upstream:gitano/lace - ref: d1b540b6d361d6a1f51e53cdaab69f053340efbb - unpetrify-ref: baserock/morph - build-depends: - - lua - submodules: - extras/luacov: - url: upstream:gitano/luacov -- name: luxio - morph: trove/strata/trove/luxio.morph - repo: upstream:luxio - ref: be9d125080b9ff2376273e21b75669b65dc88d46 - unpetrify-ref: baserock/morph - build-depends: - - lua -- name: supple - morph: trove/strata/trove/supple.morph - repo: upstream:gitano/supple - ref: 0963e5706d78d0ae7446ea91af986de1e196eb39 - unpetrify-ref: baserock/morph - build-depends: - - lua - - luxio - submodules: - extras/luacov: - url: upstream:gitano/luacov -- name: clod - morph: trove/strata/trove/clod.morph - repo: upstream:gitano/clod - ref: da15894f42f48d15db997c4355d6b672371a4163 - unpetrify-ref: baserock/morph - build-depends: - - lua - submodules: - extras/luacov: - url: upstream:gitano/luacov -- name: gall - morph: trove/strata/trove/gall.morph - repo: upstream:gitano/gall - ref: 11de77bd79c08a152932a3435d1921abc1020252 - unpetrify-ref: baserock/morph - build-depends: - - lua - - luxio - submodules: - libgit2: - url: upstream:gitano/libgit2 - luagit2: - url: upstream:gitano/luagit2 - extras/luacov: - url: upstream:gitano/luacov -- name: lrexlib-pcre - morph: trove/strata/trove/lrexlib-pcre.morph - repo: upstream:lrexlib - ref: 0524a6e3ab6d50cba63c8642a875e246de53d651 - unpetrify-ref: baserock/morph - build-depends: - - lua -- name: gitano - morph: trove/strata/trove/gitano.morph - repo: upstream:gitano/gitano - ref: 4b8ce6875266fdd6609a217dcf2924d7d4815cc2 - unpetrify-ref: baserock/morph - build-depends: - - lua -- name: cgit - morph: trove/strata/trove/cgit.morph - repo: upstream:cgit - ref: dc881acb0c857c783b611c03294d79a7553a4ec7 - unpetrify-ref: baserock/v0.12 - submodules: - git: - url: upstream:git -- name: trove-setup - morph: trove/strata/trove/trove-setup.morph - repo: baserock:baserock/trove-setup - ref: 1f2edd45b03a3e9d86d7c77847612c969b60b86f - unpetrify-ref: master -- name: lua-scrypt - morph: trove/strata/trove/lua-scrypt.morph - repo: upstream:lua-scrypt - ref: 0d7f74cd3eab7d54fbb13294194de7ea70ac34a5 - unpetrify-ref: baserock/morph - build-depends: - - lua diff --git a/trove/strata/trove/cgit.morph b/trove/strata/trove/cgit.morph deleted file mode 100644 index bd373a51..00000000 --- a/trove/strata/trove/cgit.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: cgit -kind: chunk -build-commands: -- make prefix="$PREFIX" -install-commands: -- make prefix="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/trove/strata/trove/clod.morph b/trove/strata/trove/clod.morph deleted file mode 100644 index e31ca4fb..00000000 --- a/trove/strata/trove/clod.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: clod -kind: chunk -description: Configuration Language Organised (by) Dots. -build-commands: -- make -install-commands: -- make INST_BASE="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/trove/strata/trove/gall.morph b/trove/strata/trove/gall.morph deleted file mode 100644 index c1f2fd47..00000000 --- a/trove/strata/trove/gall.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: gall -kind: chunk -description: Git Abstraction Layer for Lua -build-commands: -- make -install-commands: -- make INST_BASE="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/trove/strata/trove/gitano.morph b/trove/strata/trove/gitano.morph deleted file mode 100644 index 962224d5..00000000 --- a/trove/strata/trove/gitano.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: gitano -kind: chunk -install-commands: -- make install INST_ROOT="$PREFIX" DESTDIR="$DESTDIR" -- cp scripts/htpasswd "$DESTDIR/$PREFIX/bin" diff --git a/trove/strata/trove/lace.morph b/trove/strata/trove/lace.morph deleted file mode 100644 index 70752397..00000000 --- a/trove/strata/trove/lace.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: lace -kind: chunk -description: Lua Access Control Engine. -build-commands: -- make -install-commands: -- make INST_BASE="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/trove/strata/trove/lrexlib-pcre.morph b/trove/strata/trove/lrexlib-pcre.morph deleted file mode 100644 index 63f3b034..00000000 --- a/trove/strata/trove/lrexlib-pcre.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: lrexlib-pcre -kind: chunk -description: Lua regular expression library - PCRE build only -build-commands: -- gcc -fPIC -DPIC -DVERSION=\"2.7.2\" -o rex_pcre.so -shared src/common.c src/pcre/lpcre.c - src/pcre/lpcre_f.c -lpcre -install-commands: -- mkdir -p $DESTDIR/usr/lib/lua/5.1/ -- cp rex_pcre.so $DESTDIR/usr/lib/lua/5.1/ diff --git a/trove/strata/trove/lua-scrypt.morph b/trove/strata/trove/lua-scrypt.morph deleted file mode 100644 index 141b8ec3..00000000 --- a/trove/strata/trove/lua-scrypt.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: lua-scrypt -kind: chunk -install-commands: -- make lua-5.1-install DESTDIR="$DESTDIR" diff --git a/trove/strata/trove/lua.morph b/trove/strata/trove/lua.morph deleted file mode 100644 index 32aeb5c1..00000000 --- a/trove/strata/trove/lua.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: lua -kind: chunk -configure-commands: -- sed -e 's/defined(LUA_USE_READLINE)/0/g' src/luaconf.h.orig >src/luaconf.h -- sed -i -e '/^linux:/{n;s/-lreadline//g;s/-lhistory//g;s/-lncurses//g}' src/Makefile -build-commands: -- make debian_linux INSTALL_TOP="$PREFIX" RPATH="$PREFIX/lib" -install-commands: -- make INSTALL_TOP="$DESTDIR/$PREFIX" debian_install -- mkdir -p "$DESTDIR/$PREFIX/lib/pkgconfig" -- cp lua5.1.pc "$DESTDIR/$PREFIX/lib/pkgconfig/" diff --git a/trove/strata/trove/luxio.morph b/trove/strata/trove/luxio.morph deleted file mode 100644 index 29aabfaf..00000000 --- a/trove/strata/trove/luxio.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: luxio -kind: chunk -description: Lua Unix IO (and related stuff). -build-commands: -- make lua-5.1 -install-commands: -- make DESTDIR="$DESTDIR" lua-5.1-install diff --git a/trove/strata/trove/supple.morph b/trove/strata/trove/supple.morph deleted file mode 100644 index 6470ba28..00000000 --- a/trove/strata/trove/supple.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: supple -kind: chunk -description: Sandbox (for) Untrusted Procedure Partitioning (in) Lua Engine. -build-commands: -- make -install-commands: -- make INST_BASE="$PREFIX" DESTDIR="$DESTDIR" install diff --git a/trove/strata/trove/trove-setup.morph b/trove/strata/trove/trove-setup.morph deleted file mode 100644 index 1f49760f..00000000 --- a/trove/strata/trove/trove-setup.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: trove-setup -kind: chunk -install-commands: -- make install DESTDIR="$DESTDIR" diff --git a/trove/systems/trove-system-x86_64.morph b/trove/systems/trove-system-x86_64.morph deleted file mode 100644 index fa691d62..00000000 --- a/trove/systems/trove-system-x86_64.morph +++ /dev/null @@ -1,65 +0,0 @@ -name: trove-system-x86_64 -kind: system -description: Trove server -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: foundation - morph: strata/foundation.morph -- name: core - morph: strata/core.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python3-core - morph: trove/strata/python3-core.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: lorry - morph: strata/lorry.morph -- name: lorry-controller - morph: trove/strata/lorry-controller.morph -- name: trove - morph: trove/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 - morph: strata/cloudinit-support.morph -- name: devtools - morph: strata/devtools.morph -- name: fail2ban-common - morph: trove/strata/fail2ban-common.morph -- name: connectivity - morph: strata/connectivity.morph -configuration-extensions: -- extensions/set-hostname -- extensions/trove -- extensions/nfsboot-server -- extensions/fstab -- extensions/install-files -- extensions/cloud-init -- extensions/install-essential-files diff --git a/unmaintained/clusters/cephclient.morph b/unmaintained/clusters/cephclient.morph deleted file mode 100644 index ad680a76..00000000 --- a/unmaintained/clusters/cephclient.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: cephclient -kind: cluster -systems: -- morph: unmaintained/systems/ceph-service-x86_64-generic.morph - deploy: - ceph-node-virtualbox-image: - type: extensions/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: install-files/chef/manifest diff --git a/unmaintained/clusters/example-ceph-cluster-on-openstack.morph b/unmaintained/clusters/example-ceph-cluster-on-openstack.morph deleted file mode 100644 index 73f6729c..00000000 --- a/unmaintained/clusters/example-ceph-cluster-on-openstack.morph +++ /dev/null @@ -1,55 +0,0 @@ -name: example-ceph-cluster-on-openstack -kind: cluster -description: | - This cluster morphology will deploy a 3 node ceph storage cluster to an - openstack server. - - It was written for use with the following guide on the baserock wiki: - http://wiki.baserock.org/guides/ceph-cluster-deploy/ - - See this guide for more information. - - See the ceph.configure file for more informatiion on the ceph - specific fields used in this cluster morphology. - -systems: -- morph: unmaintained/systems/ceph-service-x86_64-generic.morph - deploy: - ceph-mon-0-openstack: - # openstack info - <<: &common-config - type: openstack - location: http://:5000/v2.0/ - OPENSTACK_USER: demo - OPENSTACK_PASSWORD: demo - OPENSTACK_TENANT: demo - CLOUD_INIT: true - KERNEL_ARGS: console=ttyS0 console=tty0 - CEPH_CLUSTER: ceph - CEPH_CONF: ceph.conf - CEPH_CLIENT_ADMIN: ceph.client.admin.keyring - CEPH_MON_IP: - CEPH_CLUSTER_FSID: - - OPENSTACK_IMAGENAME: mon-0-nd - DISK_SIZE: 10G - # Ceph info - HOSTNAME: mon-0 - CEPH_MON: - ceph-osd-0-openstack: - <<: *common-config - OPENSTACK_IMAGENAME: osd-0 - DISK_SIZE: 7G - # ceph info - HOSTNAME: osd-0 - CEPH_OSD: - CEPH_OSD_STORAGE_DEV: /dev/vdb - ceph-osd-1-openstack: - <<: *common-config - OPENSTACK_IMAGENAME: osd-1 - DISK_SIZE: 7G - # ceph info - HOSTNAME: osd-1 - - CEPH_OSD: - CEPH_OSD_STORAGE_DEV: /dev/vdb diff --git a/unmaintained/clusters/example-swift-storage-cluster.morph b/unmaintained/clusters/example-swift-storage-cluster.morph deleted file mode 100644 index 42f52d8a..00000000 --- a/unmaintained/clusters/example-swift-storage-cluster.morph +++ /dev/null @@ -1,62 +0,0 @@ -name: example-swift-storage-cluster -kind: cluster -systems: -- morph: unmaintained/systems/swift-system-x86_64.morph - deploy-defaults: - INSTALL_FILES: install-files/swift/manifest - - CONTROLLER_HOST_ADDRESS: - - SWIFT_PART_POWER: 10 - SWIFT_REPLICAS: 3 - SWIFT_MIN_PART_HOURS: 1 - - SWIFT_STORAGE_DEVICES: - - {ip: , device: sdb, weight: 100} - - {ip: , device: sdc, weight: 100} - - {ip: , device: sdd, weight: 100} - - {ip: , device: sdb, weight: 100} - - {ip: , device: sdc, weight: 100} - - {ip: , device: sdd, weight: 100} - - # This value can be any random string or number - # but each node in your swift cluster must have the same value - SWIFT_REBALANCE_SEED: 3828 - - # NOTE: Replace SWIFT_HASH_PATH_PREFIX and SWIFT_HASH_PATH_SUFFIX - # with your own unique values, - # - # `openssl rand -hex 10' can be used to generate unique values - # - # These values should be kept secret, do not lose them. - # - SWIFT_HASH_PATH_PREFIX: 041fc210e4e1d333ce1d - SWIFT_HASH_PATH_SUFFIX: 4d6f5362a356dda7fb7d - - FSTAB_SDB: /dev/sdb /srv/node/sdb xfs defaults,user,rw 0 0 - FSTAB_SDC: /dev/sdc /srv/node/sdc xfs defaults,user,rw 0 0 - FSTAB_SDD: /dev/sdd /srv/node/sdd xfs defaults,user,rw 0 0 - - deploy: - node0: - type: extensions/kvm - location: kvm+ssh://user@host/swift-storage-0/home/user/swift-storage-0.img - DISK_SIZE: 10G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: swift-storage-0 - NIC_CONFIG: network=default - NETWORK_CONFIG: ens3:static,address=,netmask=255.255.255.0 - MANAGEMENT_INTERFACE_IP_ADDRESS: - ATTACH_DISKS: /dev/node0_sdb:/dev/node0_sdc:/dev/node0_sdd - node1: - type: extensions/kvm - location: kvm+ssh://user@host/swift-storage-1/home/user/swift-storage-1.img - DISK_SIZE: 10G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: swift-storage-1 - NIC_CONFIG: network=default - NETWORK_CONFIG: ens3:static,address=,netmask=255.255.255.0 - MANAGEMENT_INTERFACE_IP_ADDRESS: - ATTACH_DISKS: /dev/node1_sdb:/dev/node1_sdc:/dev/node1_sdd diff --git a/unmaintained/clusters/jetson-upgrade.morph b/unmaintained/clusters/jetson-upgrade.morph deleted file mode 100644 index fb1fc1b4..00000000 --- a/unmaintained/clusters/jetson-upgrade.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: jetson-upgrade -kind: cluster -systems: -- morph: unmaintained/systems/devel-system-armv7lhf-jetson.morph - deploy-defaults: - BOOT_DEVICE: /dev/mmcblk0p1 - ROOT_DEVICE: /dev/mmcblk0p2 - DTB_PATH: boot/tegra124-jetson-tk1.dtb - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 - nouveau.pstate=1 - FSTAB_SRC: LABEL=src /src auto defaults,rw,noatime,nofail 0 2 - deploy: - self: - upgrade-type: extensions/ssh-rsync - upgrade-location: root@127.0.0.1 diff --git a/unmaintained/clusters/moonshot-m2-armv8b64.morph b/unmaintained/clusters/moonshot-m2-armv8b64.morph deleted file mode 100644 index 9c68248b..00000000 --- a/unmaintained/clusters/moonshot-m2-armv8b64.morph +++ /dev/null @@ -1,56 +0,0 @@ -name: moonshot-m2-armv8b64 -kind: cluster -description: | - Install a build armv8b64 system into the M.2 SSD storage of an HP - Moonshot node, using a combination of the pxeboot.write extension and - the installer system. -systems: -- morph: systems/installer-system-armv8b64.morph - deploy: - installer: - type: extensions/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/ - PXEBOOT_PXE_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot pxe c31n1 - # Nodes are powered on twice as sometimes powering them on - # once is not enough - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - PXEBOOT_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot m.2 c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - - INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda - INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INSTALLER_POST_INSTALL_COMMAND: | - while : ; do - echo "enter 'installed' in your deployment machine to finish the installation" - sleep 2 - done - INSTALLER_CREATE_BOOT_PARTITION: true - - HOSTNAME: installer-system-c31n1 - DTB_PATH: boot/m400-1003.dtb - KERNEL_ARGS: console=ttyS0,9600n8r init=/usr/lib/baserock-installer/installer - INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: true - subsystems: - - morph: unmaintained/systems/devel-system-armv8b64.morph - deploy: - to-install: - type: extensions/sysroot - location: /rootfs - HOSTNAME: baserock-c31n1 - DTB_PATH: boot/m400-1003.dtb - INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: true - BOOT_DEVICE: /dev/sda1 - ROOT_DEVICE: /dev/sda2 - BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: none diff --git a/unmaintained/clusters/moonshot-pxe-armv8b64.morph b/unmaintained/clusters/moonshot-pxe-armv8b64.morph deleted file mode 100644 index d97dcbef..00000000 --- a/unmaintained/clusters/moonshot-pxe-armv8b64.morph +++ /dev/null @@ -1,30 +0,0 @@ -name: moonshot-pxe-armv8b64 -kind: cluster -description: | - Deploy a big-endian armv8b64 devel system onto an HP Moonshot node - - The system will be configured to boot through PXE from existing DHCP, - TFTP and NFS servers. -systems: -- morph: unmaintained/systems/devel-system-armv8b64.morph - deploy: - netboot: - type: extensions/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/ - PXEBOOT_PXE_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot pxe c31n1 - # Nodes are powered on twice as sometimes powering them on - # once is not enough - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - PXE_INSTALLER: false - - HOSTNAME: baserock-c31n1 - DTB_PATH: boot/m400-1003.dtb - KERNEL_ARGS: console=ttyS0,9600n8r rw - INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: true diff --git a/unmaintained/clusters/moonshot-pxe-armv8l64.morph b/unmaintained/clusters/moonshot-pxe-armv8l64.morph deleted file mode 100644 index 531c7428..00000000 --- a/unmaintained/clusters/moonshot-pxe-armv8l64.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: moonshot-pxe-armv8l64 -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: unmaintained/systems/devel-system-armv8l64.morph - deploy: - netboot: - type: extensions/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: true - INSTALL_FILES: install-files/moonshot/manifest - PXE_INSTALLER: false diff --git a/unmaintained/clusters/openstack-one-node-swift.morph b/unmaintained/clusters/openstack-one-node-swift.morph deleted file mode 100644 index b9d6502b..00000000 --- a/unmaintained/clusters/openstack-one-node-swift.morph +++ /dev/null @@ -1,142 +0,0 @@ -name: openstack-one-node-swift -kind: cluster -description: | - This is a cluster morphology for deploying a x86_64 OpenStack system - all-in-one-node. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET - - Setting NOVA_BAREMETAL_SCHEDULING with an YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. - -systems: -- morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - release: - type: extensions/rawdisk - location: baserock-openstack-system-x86_64.img - DISK_SIZE: 10G - INSTALL_FILES: install-files/openstack/manifest install-files/swift/manifest - - HOSTNAME: onenode - - ######################################################################### - ## Swift config options - ######################################################################### - - SWIFT_CONTROLLER: true - - SWIFT_ADMIN_PASSWORD: insecure - - SWIFT_PART_POWER: 10 - SWIFT_REPLICAS: 3 - SWIFT_MIN_PART_HOURS: 1 - - SWIFT_STORAGE_DEVICES: - - {ip: , device: sdb, weight: 100} - - {ip: , device: sdc, weight: 100} - - {ip: , device: sdd, weight: 100} - - {ip: , device: sdb, weight: 100} - - {ip: , device: sdc, weight: 100} - - {ip: , device: sdd, weight: 100} - - # This value can be any random string or number - # but each node in your swift cluster must have the same values - SWIFT_REBALANCE_SEED: 3828 - - # NOTE: Replace SWIFT_HASH_PATH_PREFIX and SWIFT_HASH_PATH_SUFFIX - # with your own unique values, - # - # `openssl rand -hex 10' can be used to generate unique values - # - # These values should be kept secret, do not lose them. - # - SWIFT_HASH_PATH_PREFIX: 041fc210e4e1d333ce1d - SWIFT_HASH_PATH_SUFFIX: 4d6f5362a356dda7fb7d - - ######################################################################### - - RABBITMQ_HOST: onenode - RABBITMQ_PORT: 5672 - RABBITMQ_USER: rabbitmq - RABBITMQ_PASSWORD: veryinsecure - - CONTROLLER_HOST_ADDRESS: onenode - MANAGEMENT_INTERFACE_IP_ADDRESS: - - KEYSTONE_ENABLE_SERVICE: true - KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 - KEYSTONE_ADMIN_PASSWORD: veryinsecure - KEYSTONE_DB_USER: keystoneDB - KEYSTONE_DB_PASSWORD: veryinsecure - - GLANCE_ENABLE_SERVICE: true - GLANCE_SERVICE_USER: glance - GLANCE_SERVICE_PASSWORD: veryinsecure - GLANCE_DB_USER: glanceDB - GLANCE_DB_PASSWORD: veryinsecure - - NOVA_SERVICE_USER: nova - NOVA_SERVICE_PASSWORD: veryinsecure - NOVA_DB_USER: novaDB - NOVA_DB_PASSWORD: veryinsecure - NOVA_VIRT_TYPE: qemu - NOVA_BAREMETAL_SCHEDULING: false - - CINDER_SERVICE_USER: cinder - CINDER_SERVICE_PASSWORD: veryinsecure - CINDER_DB_USER: cinderDB - CINDER_DB_PASSWORD: veryinsecure - # Storage device to be used by Cinder - CINDER_DEVICE: /dev/sdb - - NEUTRON_SERVICE_USER: neutron - NEUTRON_SERVICE_PASSWORD: veryinsecure - NEUTRON_DB_USER: neutronDB - NEUTRON_DB_PASSWORD: veryinsecure - METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - - IRONIC_ENABLE_SERVICE: true - IRONIC_SERVICE_USER: ironic - IRONIC_SERVICE_PASSWORD: veryinsecure - IRONIC_DB_USER: ironicDB - IRONIC_DB_PASSWORD: veryinsecure - - CEILOMETER_SERVICE_USER: ceilometer - CEILOMETER_SERVICE_PASSWORD: veryinsecure - CEILOMETER_DB_USER: ceilometerDB - CEILOMETER_DB_PASSWORD: veryinsecure - METERING_SECRET: insecureceilometersecret - - HOSTS_CONTROLLER: onenode - - # Network interface to be used, only needed if there are more - # than one available. - # EXTERNAL_INTERFACE: eno1 diff --git a/unmaintained/clusters/openstack-one-node.morph b/unmaintained/clusters/openstack-one-node.morph deleted file mode 100644 index ddecb6fc..00000000 --- a/unmaintained/clusters/openstack-one-node.morph +++ /dev/null @@ -1,104 +0,0 @@ -name: openstack-one-node -kind: cluster -description: | - This is a cluster morphology for deploying a x86_64 OpenStack system - all-in-one-node. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET - - Setting NOVA_BAREMETAL_SCHEDULING with an YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. - -systems: -- morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - release: - type: extensions/rawdisk - location: baserock-openstack-system-x86_64.img - DISK_SIZE: 10G - INSTALL_FILES: install-files/openstack/manifest - - HOSTNAME: onenode - - RABBITMQ_HOST: onenode - RABBITMQ_PORT: 5672 - RABBITMQ_USER: rabbitmq - RABBITMQ_PASSWORD: veryinsecure - - CONTROLLER_HOST_ADDRESS: onenode - MANAGEMENT_INTERFACE_IP_ADDRESS: - - KEYSTONE_ENABLE_SERVICE: true - KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 - KEYSTONE_ADMIN_PASSWORD: veryinsecure - KEYSTONE_DB_USER: keystoneDB - KEYSTONE_DB_PASSWORD: veryinsecure - - GLANCE_ENABLE_SERVICE: true - GLANCE_SERVICE_USER: glance - GLANCE_SERVICE_PASSWORD: veryinsecure - GLANCE_DB_USER: glanceDB - GLANCE_DB_PASSWORD: veryinsecure - - NOVA_SERVICE_USER: nova - NOVA_SERVICE_PASSWORD: veryinsecure - NOVA_DB_USER: novaDB - NOVA_DB_PASSWORD: veryinsecure - NOVA_VIRT_TYPE: qemu - NOVA_BAREMETAL_SCHEDULING: false - - CINDER_SERVICE_USER: cinder - CINDER_SERVICE_PASSWORD: veryinsecure - CINDER_DB_USER: cinderDB - CINDER_DB_PASSWORD: veryinsecure - # Storage device to be used by Cinder - CINDER_DEVICE: /dev/sdb - - NEUTRON_SERVICE_USER: neutron - NEUTRON_SERVICE_PASSWORD: veryinsecure - NEUTRON_DB_USER: neutronDB - NEUTRON_DB_PASSWORD: veryinsecure - METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - - IRONIC_ENABLE_SERVICE: true - IRONIC_SERVICE_USER: ironic - IRONIC_SERVICE_PASSWORD: veryinsecure - IRONIC_DB_USER: ironicDB - IRONIC_DB_PASSWORD: veryinsecure - - CEILOMETER_SERVICE_USER: ceilometer - CEILOMETER_SERVICE_PASSWORD: veryinsecure - CEILOMETER_DB_USER: ceilometerDB - CEILOMETER_DB_PASSWORD: veryinsecure - METERING_SECRET: insecureceilometersecret - - # Network interface to be used, only needed if there are more - # than one available. - # EXTERNAL_INTERFACE: eno1 diff --git a/unmaintained/clusters/openstack-three-node-installer.morph b/unmaintained/clusters/openstack-three-node-installer.morph deleted file mode 100644 index 9274f9bf..00000000 --- a/unmaintained/clusters/openstack-three-node-installer.morph +++ /dev/null @@ -1,238 +0,0 @@ -name: openstack-three-node-installer -kind: cluster -description: | - This is a cluster morphology for deploying an installer for an x86_64 - OpenStack system spread across three nodes. - - This cluster creates disk images that may be `dd`'d onto install media to - produce an OpenStack cluster when instantiated. - - Alternatively it may be used to install directly onto a physical disk by - running: - - morph deploy clusters/openstack-three-node-installer.morph \ - network-installer network-installer.location=/dev/vdb - - Substituting network-installer for either compute-installer or - controller-installer will produce different configurations, and it is possible - to substitue /dev/vdb for a different path to a disk image to install to a - different disk image. - - Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, - MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to - match your hardware and networking configuration. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET. - - Setting NOVA_BAREMETAL_SCHEDULING with an YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. - -systems: -- morph: systems/installer-system-x86_64.morph - deploy: - network-installer: &installer - type: extensions/rawdisk - location: installer-openstack-network-x86_64.img - KERNEL_ARGS: init=/usr/lib/baserock-installer/installer - DISK_SIZE: 6G - HOSTNAME: installer-x86_64 - INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda - INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INSTALLER_POST_INSTALL_COMMAND: sync; poweroff -f - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - network-initramfs: &initramfs - type: extensions/initramfs - location: boot/initramfs.gz - - morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - network-to-install: &stack-node - type: extensions/sysroot - location: rootfs - INSTALL_FILES: install-files/openstack/manifest - INITRAMFS_PATH: boot/initramfs.gz - - HOSTNAME: threenode-network - - RABBITMQ_HOST: threenode-controller.os-mgmt - RABBITMQ_PORT: 5672 - RABBITMQ_USER: rabbitmq - RABBITMQ_PASSWORD: veryinsecure - - # This token needs to be unique and secret - KEYSTONE_ENABLE_SERVICE: false - KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 - KEYSTONE_ADMIN_PASSWORD: veryinsecure - KEYSTONE_DB_USER: keystoneDB - KEYSTONE_DB_PASSWORD: veryinsecure - - GLANCE_ENABLE_SERVICE: false - GLANCE_SERVICE_USER: glance - GLANCE_SERVICE_PASSWORD: veryinsecure - GLANCE_DB_USER: glanceDB - GLANCE_DB_PASSWORD: veryinsecure - - NOVA_ENABLE_CONTROLLER: false - NOVA_ENABLE_COMPUTE: false - NOVA_SERVICE_USER: nova - NOVA_SERVICE_PASSWORD: veryinsecure - NOVA_DB_USER: novaDB - NOVA_DB_PASSWORD: veryinsecure - NOVA_VIRT_TYPE: kvm - NOVA_BAREMETAL_SCHEDULING: false - - CINDER_ENABLE_CONTROLLER: false - CINDER_ENABLE_COMPUTE: false - CINDER_ENABLE_STORAGE: false - CINDER_SERVICE_USER: cinder - CINDER_SERVICE_PASSWORD: veryinsecure - CINDER_DB_USER: cinderDB - CINDER_DB_PASSWORD: veryinsecure - # Storage device to be used by Cinder - CINDER_DEVICE: /dev/sdb - - NEUTRON_ENABLE_AGENT: false - NEUTRON_ENABLE_MANAGER: true - NEUTRON_ENABLE_CONTROLLER: false - NEUTRON_SERVICE_USER: neutron - NEUTRON_SERVICE_PASSWORD: veryinsecure - NEUTRON_DB_USER: neutronDB - NEUTRON_DB_PASSWORD: veryinsecure - METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - - IRONIC_ENABLE_SERVICE: false - IRONIC_SERVICE_USER: ironic - IRONIC_SERVICE_PASSWORD: veryinsecure - IRONIC_DB_USER: ironicDB - IRONIC_DB_PASSWORD: veryinsecure - - CEILOMETER_SERVICE_USER: ceilometer - CEILOMETER_SERVICE_PASSWORD: veryinsecure - CEILOMETER_DB_USER: ceilometerDB - CEILOMETER_DB_PASSWORD: veryinsecure - CEILOMETER_ENABLE_CONTROLLER: false - CEILOMETER_ENABLE_COMPUTE: false - METERING_SECRET: insecureceilometersecret - - CONTROLLER_HOST_ADDRESS: threenode-controller.os-mgmt - MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.1 - - HOSTS_NETWORK: 10.0.0.1 threenode-network.os-mgmt - HOSTS_CONTROL: 10.0.0.2 threenode-controller.os-mgmt - HOSTS_COMPUTE: 10.0.0.3 threenode-compute.os-mgmt - - EXTERNAL_INTERFACE: enp3s0 - NETWORK_CONFIG: enp3s0:dhcp;enp2s0:static,address=10.0.0.1,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: true - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - network-to-install-initramfs: *initramfs -- morph: systems/installer-system-x86_64.morph - deploy: - controller-installer: - <<: *installer - location: installer-openstack-controller-x86_64.img - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - controller-initramfs: *initramfs - - morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - controller-to-install: - <<: *stack-node - HOSTNAME: threenode-controller - - KEYSTONE_ENABLE_SERVICE: true - - GLANCE_ENABLE_SERVICE: true - - NOVA_ENABLE_CONTROLLER: true - - CINDER_ENABLE_CONTROLLER: true - CINDER_ENABLE_COMPUTE: false - CINDER_ENABLE_STORAGE: false - - NEUTRON_ENABLE_AGENT: false - NEUTRON_ENABLE_MANAGER: false - NEUTRON_ENABLE_CONTROLLER: true - METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - - IRONIC_ENABLE_SERVICE: true - - CEILOMETER_ENABLE_CONTROLLER: true - CEILOMETER_ENABLE_COMPUTE: false - - MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.2 - EXTERNAL_INTERFACE: enp2s0 - NETWORK_CONFIG: enp2s0:dhcp;enp0s26u1u2:static,address=10.0.0.2,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: false - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - controller-to-install-initramfs: *initramfs -- morph: systems/installer-system-x86_64.morph - deploy: - compute-installer: - <<: *installer - location: installer-openstack-compute-x86_64.img - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - compute-initramfs: *initramfs - - morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - compute-to-install: - <<: *stack-node - HOSTNAME: threenode-compute - - NOVA_ENABLE_COMPUTE: true - - CINDER_ENABLE_CONTROLLER: false - CINDER_ENABLE_COMPUTE: true - CINDER_ENABLE_STORAGE: true - - NEUTRON_ENABLE_AGENT: true - NEUTRON_ENABLE_MANAGER: false - NEUTRON_ENABLE_CONTROLLER: false - - CEILOMETER_ENABLE_CONTROLLER: false - CEILOMETER_ENABLE_COMPUTE: true - - MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.3 - EXTERNAL_INTERFACE: eno1 - NETWORK_CONFIG: eno1:dhcp;enp0s29u1u3:static,address=10.0.0.3,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: true - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - compute-to-install-initramfs: *initramfs diff --git a/unmaintained/clusters/openstack-two-node-installer.morph b/unmaintained/clusters/openstack-two-node-installer.morph deleted file mode 100644 index e75b5a5e..00000000 --- a/unmaintained/clusters/openstack-two-node-installer.morph +++ /dev/null @@ -1,199 +0,0 @@ -name: openstack-two-node-installer -kind: cluster -description: | - This is a cluster morphology for deploying an installer for an x86_64 - OpenStack system spread across three nodes. - - This cluster creates disk images that may be `dd`'d onto install media to - produce an OpenStack cluster when instantiated. - - Alternatively it may be used to install directly onto a physical disk by - running: - - morph deploy clusters/openstack-two-node-installer.morph \ - controller-installer controller-installer.location=/dev/vdb - - Substituting contrller-installer for compute-installer will produce - different configurations, and it is possible to substitue /dev/vdb for a - different path to a disk image to install to a different disk image. - - Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, - MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to - match your hardware and networking configuration. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET. - - Setting NOVA_BAREMETAL_SCHEDULING with a YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. - -systems: -- morph: systems/installer-system-x86_64.morph - deploy: - controller-installer: &installer - type: extensions/rawdisk - location: installer-openstack-controller-x86_64.img - KERNEL_ARGS: init=/usr/lib/baserock-installer/installer - DISK_SIZE: 6G - HOSTNAME: installer-x86_64 - INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda - INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INSTALLER_POST_INSTALL_COMMAND: sync; poweroff -f - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - controller-initramfs: &initramfs - type: extensions/initramfs - location: boot/initramfs.gz - - morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - controller-to-install: &stack-node - type: extensions/sysroot - location: rootfs - INSTALL_FILES: install-files/openstack/manifest - INITRAMFS_PATH: boot/initramfs.gz - - HOSTNAME: twonode-controller - - RABBITMQ_HOST: twonode-controller.os-mgmt - RABBITMQ_PORT: 5672 - RABBITMQ_USER: rabbitmq - RABBITMQ_PASSWORD: veryinsecure - - # This token needs to be unique and secret - KEYSTONE_ENABLE_SERVICE: true - KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 - KEYSTONE_ADMIN_PASSWORD: veryinsecure - KEYSTONE_DB_USER: keystoneDB - KEYSTONE_DB_PASSWORD: veryinsecure - - GLANCE_ENABLE_SERVICE: true - GLANCE_SERVICE_USER: glance - GLANCE_SERVICE_PASSWORD: veryinsecure - GLANCE_DB_USER: glanceDB - GLANCE_DB_PASSWORD: veryinsecure - - NOVA_ENABLE_CONTROLLER: true - NOVA_ENABLE_COMPUTE: false - NOVA_SERVICE_USER: nova - NOVA_SERVICE_PASSWORD: veryinsecure - NOVA_DB_USER: novaDB - NOVA_DB_PASSWORD: veryinsecure - NOVA_VIRT_TYPE: kvm - NOVA_BAREMETAL_SCHEDULING: false - - CINDER_ENABLE_CONTROLLER: true - CINDER_ENABLE_COMPUTE: false - CINDER_ENABLE_STORAGE: false - CINDER_SERVICE_USER: cinder - CINDER_SERVICE_PASSWORD: veryinsecure - CINDER_DB_USER: cinderDB - CINDER_DB_PASSWORD: veryinsecure - # Storage device to be used by Cinder - CINDER_DEVICE: /dev/sdb - - NEUTRON_ENABLE_AGENT: false - NEUTRON_ENABLE_MANAGER: true - NEUTRON_ENABLE_CONTROLLER: true - NEUTRON_SERVICE_USER: neutron - NEUTRON_SERVICE_PASSWORD: veryinsecure - NEUTRON_DB_USER: neutronDB - NEUTRON_DB_PASSWORD: veryinsecure - METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - - IRONIC_ENABLE_SERVICE: true - IRONIC_SERVICE_USER: ironic - IRONIC_SERVICE_PASSWORD: veryinsecure - IRONIC_DB_USER: ironicDB - IRONIC_DB_PASSWORD: veryinsecure - - CEILOMETER_SERVICE_USER: ceilometer - CEILOMETER_SERVICE_PASSWORD: veryinsecure - CEILOMETER_DB_USER: ceilometerDB - CEILOMETER_DB_PASSWORD: veryinsecure - CEILOMETER_ENABLE_CONTROLLER: true - CEILOMETER_ENABLE_COMPUTE: false - METERING_SECRET: insecureceilometersecret - - CONTROLLER_HOST_ADDRESS: twonode-controller.os-mgmt - MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.1 - - HOSTS_CONTROL: 10.0.0.1 twonode-controller.os-mgmt - HOSTS_COMPUTE: 10.0.0.3 twonode-compute.os-mgmt - EXTERNAL_INTERFACE: enp3s0 - NETWORK_CONFIG: enp3s0:dhcp;enp2s0:static,address=10.0.0.1,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: false - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - controller-to-install-initramfs: *initramfs -- morph: systems/installer-system-x86_64.morph - deploy: - compute-installer: - <<: *installer - location: installer-openstack-compute-x86_64.img - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - compute-initramfs: *initramfs - - morph: unmaintained/systems/openstack-system-x86_64.morph - deploy: - compute-to-install: - <<: *stack-node - HOSTNAME: twonode-compute - - KEYSTONE_ENABLE_SERVICE: false - - GLANCE_ENABLE_SERVICE: false - - NOVA_ENABLE_COMPUTE: true - NOVA_ENABLE_CONTROLLER: false - - CINDER_ENABLE_CONTROLLER: false - CINDER_ENABLE_COMPUTE: true - CINDER_ENABLE_STORAGE: true - - NEUTRON_ENABLE_AGENT: true - NEUTRON_ENABLE_MANAGER: false - NEUTRON_ENABLE_CONTROLLER: false - - IRONIC_ENABLE_SERVICE: false - - CEILOMETER_ENABLE_CONTROLLER: false - CEILOMETER_ENABLE_COMPUTE: true - - MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.3 - EXTERNAL_INTERFACE: eno1 - NETWORK_CONFIG: eno1:dhcp;enp0s29u1u3:static,address=10.0.0.3,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: true - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - compute-to-install-initramfs: *initramfs diff --git a/unmaintained/clusters/sdk-example-cluster.morph b/unmaintained/clusters/sdk-example-cluster.morph deleted file mode 100644 index 35d47508..00000000 --- a/unmaintained/clusters/sdk-example-cluster.morph +++ /dev/null @@ -1,46 +0,0 @@ -name: sdk-example-cluster -kind: cluster -description: | - An example of creating a cross-compile SDK for an embedded Baserock system. - - This cluster demonstrates how you can use the 'sdk' write extension to - produce a cross-compile SDK tarball for an Baserock applicance. In this - example the system is assumed to run on ARMv7, and the SDK is built to - run on any x86_32 GNU/Linux system. - - The SDK is a Baserock system itself, containing just 'build-essential' and a - 'cross-toolchain' stratum. The SDK system also includes the target - appliance's system, as a 'subsystem', so that the libraries and headers are - available when building. - - This cluster deploys the SDK system using the 'sdk' write extension, which - produces a tarball with a small shell header. When the shell header is - executed, and passed a directory name on the commandline, it extracts the SDK - to that path and patches the binaries so that they execute correctly from - that directory. - - Deploying the applicate system artifact to the target device should be - done with a separate cluster morphology, because you will often want to - do this without rebuilding the SDK. - - You must build each system with `morph build` before deploying. We recommend - doing this all from your Baserock development machine, using a Baserock - ARM distributed build network to produce the system artifact. Once both - system artifacts are cached locally, the `morph deploy` command will produce - a self-extracting shell script/tarball following the 'location' field. - - See the documentation of the sdk.write extension for more information. -systems: -- morph: systems/armv7lhf-cross-toolchain-system-x86_64.morph - deploy: - sdk: - type: extensions/sdk - location: armv7lhf-cross-toolchain-system-x86_64.sh - PREFIX: /usr - TARGET: armv7lhf-baserock-linux-gnueabi - subsystems: - - morph: unmaintained/systems/devel-system-armv7lhf-highbank.morph - deploy: - sysroot: - type: extensions/sysroot - location: usr/armv7lhf-baserock-linux-gnueabi/sys-root diff --git a/unmaintained/clusters/upgrade-devel.morph b/unmaintained/clusters/upgrade-devel.morph deleted file mode 100644 index 44759ac2..00000000 --- a/unmaintained/clusters/upgrade-devel.morph +++ /dev/null @@ -1,39 +0,0 @@ -name: upgrade-devel -kind: cluster -description: | - This is a cluster morphology that can be used to deploy systems to a - an existing Baserock devel system, as an upgrade of the running system. - - This method is for users who deployed a system manually from one of the - images provided on http://download.baserock.org. IT IS ONLY POSSIBLE TO - UPGRADE BASEROCK 14 RELEASES OR NEWER. - - If you deployed your system using `morph deploy` then you should reuse the - cluster morphology you did the initial deployment with, instead of this one, - so that the configuration is preserved in the new system. - - Ensure that your root user has passwordless SSH access to localhost with - `ssh root@localhost whoami`. If not, run `ssh-copy-id root@localhost`. - Make sure the 'morph' field below matches the system you are upgrading. - - To upgrade, select a sensible a value for VERSION_LABEL and run: - - morph upgrade clusters/upgrade-devel.morph self.HOSTNAME=$(hostname) self.VERSION_LABEL=$VERSION_LABEL - - Your configuration in /etc should be propagated to the new system, but there - may be merge conflicts. Check /etc for files named '.rej' and '.orig' in the - new system, which will indicate that there are changes from the old system - that must be merged manually. You can get a nice diff from the old /etc as - follows: - - mount /dev/sda /mnt - git diff --no-index /mnt/systems/factory/run/etc /mnt/systems/$VERSION_LABEL/run/etc - - On a base system, use 'diff -r' instead of 'git diff --no-index'. It will - not be as colourful. -systems: -- morph: unmaintained/systems/devel-system-x86_64-generic.morph - deploy: - self: - upgrade-type: extensions/ssh-rsync - upgrade-location: root@127.0.0.1 diff --git a/unmaintained/clusters/xfce-system-x86_64-deploy.morph b/unmaintained/clusters/xfce-system-x86_64-deploy.morph deleted file mode 100644 index 465ba1d0..00000000 --- a/unmaintained/clusters/xfce-system-x86_64-deploy.morph +++ /dev/null @@ -1,23 +0,0 @@ -name: xfce-system-x86_64-deploy -kind: cluster -description: | - Deploy a stock XFCE system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: unmaintained/systems/xfce-system-x86_64.morph - deploy: - xfce-system-x86_64: - type: extensions/rawdisk - location: /xfce-system-x86_64.img - DISK_SIZE: 6G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/unmaintained/clusters/zookeeper.morph b/unmaintained/clusters/zookeeper.morph deleted file mode 100644 index ba859bc1..00000000 --- a/unmaintained/clusters/zookeeper.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: zookeeper -kind: cluster -systems: -- morph: unmaintained/systems/zookeeper-client-x86_64.morph - deploy: - my-client-system: - type: extensions/kvm - location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-client.img - DISK_SIZE: 4G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: zkclient -- morph: unmaintained/systems/zookeeper-server-x86_64.morph - deploy: - my-server-system: - type: extensions/kvm - location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-server.img - DISK_SIZE: 4G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: zkserver diff --git a/unmaintained/strata/apache-httpd-server.morph b/unmaintained/strata/apache-httpd-server.morph deleted file mode 100644 index e434ca6f..00000000 --- a/unmaintained/strata/apache-httpd-server.morph +++ /dev/null @@ -1,41 +0,0 @@ -name: apache-httpd-server -kind: stratum -description: apache http web server and some utilities related to it -build-depends: -- morph: strata/tools.morph -- morph: strata/pcre-utils.morph -- morph: strata/python2-core.morph -chunks: -- name: apr - morph: unmaintained/strata/apache-httpd-server/apr.morph - repo: upstream:apache/apr - ref: 3c818c6d7351f0130282d212a69035642f5fecad - unpetrify-ref: trunk -- name: httpd-server - morph: unmaintained/strata/apache-httpd-server/httpd-server.morph - repo: upstream:apache/httpd - ref: 6d8e0b2fd95268fcba96326ba9dce7bb8f712c19 - unpetrify-ref: 2.4.10 - build-depends: - - apr -- name: psutil - repo: upstream:python-packages/psutil - ref: 2bc8555f0428af81c2d067aa76168ed7bc5e0179 - unpetrify-ref: release-2.2.0 - build-system: python-distutils -- name: mod_wsgi-metrics - repo: upstream:python-packages/mod_wsgi-metrics - ref: ec715eb593255229f9f45f3f323edbb845c691d8 - unpetrify-ref: 1.1.1 - build-system: python-distutils - build-depends: - - psutil -- name: mod_wsgi - morph: unmaintained/strata/apache-httpd-server/mod_wsgi.morph - repo: upstream:python-packages/mod_wsgi - ref: 1be8b37aaf07d8cb3083da99d6fda12375221b07 - unpetrify-ref: 4.4.5 - build-depends: - - apr - - httpd-server - - mod_wsgi-metrics diff --git a/unmaintained/strata/apache-httpd-server/apr.morph b/unmaintained/strata/apache-httpd-server/apr.morph deleted file mode 100644 index aaba1954..00000000 --- a/unmaintained/strata/apache-httpd-server/apr.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: apr -kind: chunk -build-system: autotools -configure-commands: -- ./buildconf -- | - ./configure --prefix="$PREFIX" \ - --disable-static \ - --enable-threads \ - --with-installbuilddir="$PREFIX"/share/apr-1/build -post-install-commands: -# Install files required for apr-util and httpd -- | - for file in find_apr.m4 apr_common.m4 install.sh gen-build.py get-version.sh \ - config.guess config.sub; do - cp build/"$file" "$DESTDIR$PREFIX"/share/apr-1/build/"$file"; - done -# Create a symlink in the build directory to the include directory (this is needed for httpd) -- ln -sf /usr/include/apr-2 "$DESTDIR$PREFIX"/share/apr-1/build/ -# Copy apr headers needed for mod_wsgi -- cp include/private/apr_support.h "$DESTDIR$PREFIX"/include/apr-2 -- cp include/arch/unix/apr_private.h "$DESTDIR$PREFIX"/include/apr-2 diff --git a/unmaintained/strata/apache-httpd-server/httpd-server.morph b/unmaintained/strata/apache-httpd-server/httpd-server.morph deleted file mode 100644 index 41f0c36b..00000000 --- a/unmaintained/strata/apache-httpd-server/httpd-server.morph +++ /dev/null @@ -1,67 +0,0 @@ -name: httpd-server -kind: chunk -build-system: autotools -configure-commands: -- ./buildconf --with-apr=/usr/share/apr-1 -# We override --libexecdir with the same value as --enable-layout=RPM -# ought to provide, because otherwise there is a bug where when mod_wsgi -# calls apxs, it fails as follows because the variable is empty. -# -#/usr/share/apr-1/build/libtool --silent --mode=link gcc -std=gnu99 -# -o src/server/mod_wsgi.la -rpath # -module -avoid-version -# src/server/wsgi_validate.lo src/server/wsgi_stream.lo -# src/server/wsgi_server.lo src/server/wsgi_restrict.lo -# src/server/wsgi_metrics.lo src/server/wsgi_logger.lo -# src/server/wsgi_interp.lo src/server/wsgi_daemon.lo -# src/server/wsgi_convert.lo src/server/wsgi_buckets.lo -# src/server/wsgi_apache.lo src/server/mod_wsgi.lo -# -L/usr/lib -L/usr/lib/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm -# libtool: error: only absolute run-paths are allowed -# apxs:Error: Command failed with rc=65536 -# -- | - ./configure --prefix="$PREFIX" \ - --libexecdir="$PREFIX"/lib/httpd/modules \ - --enable-layout=RPM \ - --enable-mpms-shared=all \ - --with-apr="$PREFIX"/bin/apr-2-config \ - --enable-suexec --with-suexec \ - --with-suexec-caller=apache \ - --with-suexec-docroot=/var/www \ - --with-suexec-logfile=/var/log/httpd/suexec.log \ - --with-suexec-bin="$PREFIX"/sbin/suexec \ - --with-suexec-uidmin=500 --with-suexec-gidmin=100\ - --with-suexec-userdir=public_html \ - --enable-pie \ - --with-pcre \ - --enable-mods-shared=all \ - --enable-ssl --with-ssl \ - --enable-case-filter --enable-case-filter-in \ - --enable-cgid --enable-cgi\ - --enable-so -post-install-commands: -# Add perl interpreter path to apxs script, required for loading mod_wsgi. -- | - sed -i 's|#!/replace/with/path/to/perl/interpreter -w|#!/usr/bin/perl -w|g' \ - "$DESTDIR$PREFIX"/bin/apxs -# Add conf.d directory where apache will look for other configurations to load. -- mkdir -p "$DESTDIR"/etc/httpd/conf.d -- echo 'Include /etc/httpd/conf.d/*.conf' >> "$DESTDIR"/etc/httpd/conf/httpd.conf -#################################################################################### -# This chunk should add an apache user and an apache group, create the apache home -# directory and move suexec to /usr/lib/httpd/suexec as system-integration time. -# This is not possible because linux-user-chroot drops all capabilities for security so -# it does not allow to change the owners of directories or files. -# So for now you should create a script which includes the following commands: -# - mkdir -p /var/www -# - groupadd -r apache -# - | -# useradd -c "Apache Server" -d /var/www -g apache \ -# -s /bin/false apache -# -# - mkdir -p /usr/lib/httpd -# - mv -v /usr/bin/suexec /usr/lib/httpd/suexec -# - chgrp apache /usr/lib/httpd/suexec -# - chmod 4754 /usr/lib/httpd/suexec -# - chown -R apache:apache /var/www -#################################################################################### diff --git a/unmaintained/strata/apache-httpd-server/mod_wsgi.morph b/unmaintained/strata/apache-httpd-server/mod_wsgi.morph deleted file mode 100644 index 86004ad3..00000000 --- a/unmaintained/strata/apache-httpd-server/mod_wsgi.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: mod_wsgi -kind: chunk -build-system: autotools -configure-commands: -- | - ./configure --prefix="$PREFIX" \ - --with-apxs=/usr/bin/apxs -post-install-commands: -- | - install -D -m 644 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/httpd/conf.d/wsgi.conf - # NOTE: mod_wsgi can not coexist in the same apache process as - # mod_wsgi_python3. Only load if mod_wsgi_python3 is not - # already loaded. - - - LoadModule wsgi_module /usr/lib/httpd/modules/mod_wsgi.so - - EOF diff --git a/unmaintained/strata/ceph-service.morph b/unmaintained/strata/ceph-service.morph deleted file mode 100644 index 4daf2b38..00000000 --- a/unmaintained/strata/ceph-service.morph +++ /dev/null @@ -1,73 +0,0 @@ -name: ceph-service -kind: stratum -build-depends: -- morph: strata/cpp-common-libs.morph -- morph: strata/foundation.morph -- morph: strata/network-security.morph -chunks: -- name: libaio - morph: unmaintained/strata/ceph-service/libaio.morph - repo: upstream:libaio - ref: 08f50baec0e7731116d3f665c6155d7829edf5d7 - unpetrify-ref: libaio-0.3.110-1 -- name: keyutils - morph: unmaintained/strata/ceph-service/keyutils.morph - repo: upstream:keyutils - ref: 9209a0c8fd63afc59f644e078b40cec531409c30 - unpetrify-ref: v1.5.9 -- name: libunwind - repo: upstream:libunwind - ref: d7322f0f64dab715c4feb5f08edef5660d8719c0 - unpetrify-ref: v1.1 - build-system: autotools -- name: gperftools - repo: upstream:gperftools - ref: 846b775dfadb77901202ae7ddbac30ad1de7df01 - unpetrify-ref: gperftools-2.2 - build-system: autotools - build-depends: - - libunwind -- name: snappy - repo: upstream:snappy-git - ref: 1ff9be9b8fafc8528ca9e055646f5932aa5db9c4 - unpetrify-ref: master - build-system: autotools -- name: leveldb - morph: unmaintained/strata/ceph-service/leveldb.morph - repo: upstream:leveldb - ref: e353fbc7ea81f12a5694991b708f8f45343594b1 - unpetrify-ref: v1.17 - build-depends: - - snappy - - gperftools -- name: libeditline - repo: upstream:libeditline-tarball - ref: 7503ff5f8610734521f40e276b59b3b6291830e7 - unpetrify-ref: baserock/morph - build-system: autotools -- name: ceph - morph: unmaintained/strata/ceph-service/ceph.morph - repo: upstream:ceph - ref: f4f12a634b0a92938d54d77910134dbbcdf864e6 - unpetrify-ref: v0.94.1.1 - build-depends: - - libaio - - gperftools - - leveldb - - libeditline - - keyutils - submodules: - src/erasure-code/jerasure/gf-complete: - url: https://github.com/ceph/gf-complete.git - src/civetweb: - url: https://github.com/ceph/civetweb - ceph-erasure-code-corpus: - url: https://github.com/ceph/ceph-erasure-code-corpus.git - src/rocksdb: - url: https://github.com/ceph/rocksdb - src/erasure-code/jerasure/jerasure: - url: https://github.com/ceph/jerasure.git - src/libs3: - url: https://github.com/ceph/libs3.git - ceph-object-corpus: - url: https://github.com/ceph/ceph-object-corpus.git diff --git a/unmaintained/strata/ceph-service/ceph.morph b/unmaintained/strata/ceph-service/ceph.morph deleted file mode 100644 index 56d30ead..00000000 --- a/unmaintained/strata/ceph-service/ceph.morph +++ /dev/null @@ -1,26 +0,0 @@ -name: ceph -kind: chunk -build-system: autotools -configure-commands: -- NOCONFIGURE=1 ./autogen.sh -- ./configure --with-nss --prefix="$PREFIX" --sysconfdir=/etc --without-fuse --without-libatomic-ops - --without-libxfs -build-commands: -- make -install-commands: -- make install -- install -D -m 755 src/init-ceph.in "$DESTDIR"/etc/init.d/ceph-SysV -- install -D -m 755 systemd/ceph "$DESTDIR"/etc/systemd/system/ceph -- install -D -m 644 systemd/ceph-mon@.service "$DESTDIR"/etc/systemd/system/ceph-mon@.service -- install -D -m 644 systemd/ceph-osd@.service "$DESTDIR"/etc/systemd/system/ceph-osd@.service -- install -D -m 644 systemd/ceph-mds@.service "$DESTDIR"/etc/systemd/system/ceph-mds@.service -- install -D -m 644 systemd/ceph.target "$DESTDIR"/etc/systemd/system/ceph.target -- install -d "$DESTDIR"/etc/ceph -- install -D -d "$DESTDIR"/var/lib/ceph -- install -d "$DESTDIR"/var/lib/ceph/mon -- install -d "$DESTDIR"/var/lib/ceph/osd -- install -d "$DESTDIR"/var/lib/ceph/mds -- install -d "$DESTDIR"/var/lib/ceph/tmp -- install -d "$DESTDIR"/var/lib/ceph/bootstrap-mds -- install -d "$DESTDIR"/var/lib/ceph/bootstrap-osd -- install -D -d "$DESTDIR"/var/log/ceph diff --git a/unmaintained/strata/ceph-service/keyutils.morph b/unmaintained/strata/ceph-service/keyutils.morph deleted file mode 100644 index 4d47e265..00000000 --- a/unmaintained/strata/ceph-service/keyutils.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: keyutils -kind: chunk -build-commands: -- make clean -- make -install-commands: -- make DESTDIR="$DESTDIR" LIBDIR="$PREFIX/lib" USRLIBDIR="$PREFIX/lib" install diff --git a/unmaintained/strata/ceph-service/leveldb.morph b/unmaintained/strata/ceph-service/leveldb.morph deleted file mode 100644 index 2b97c6e6..00000000 --- a/unmaintained/strata/ceph-service/leveldb.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: leveldb -kind: chunk -build-commands: -- make -install-commands: -- mkdir -p "$DESTDIR$PREFIX"/lib -- mkdir -p "$DESTDIR$PREFIX"/include -- cp --preserve=links libleveldb.* "$DESTDIR$PREFIX"/lib -- cp -r include/leveldb "$DESTDIR$PREFIX"/include diff --git a/unmaintained/strata/ceph-service/libaio.morph b/unmaintained/strata/ceph-service/libaio.morph deleted file mode 100644 index 62c24d37..00000000 --- a/unmaintained/strata/ceph-service/libaio.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: libaio -kind: chunk -build-commands: -- make clean -- make -install-commands: -- make prefix="$DESTDIR$PREFIX" install diff --git a/unmaintained/strata/chef.morph b/unmaintained/strata/chef.morph deleted file mode 100644 index feceac6e..00000000 --- a/unmaintained/strata/chef.morph +++ /dev/null @@ -1,193 +0,0 @@ -name: chef -kind: stratum -description: Autogenerated by Baserock import tool -build-depends: -- morph: strata/ruby.morph -- morph: strata/core.morph -chunks: -- name: yajl - morph: unmaintained/strata/chef/yajl.morph - repo: upstream:yajl - ref: a0ecdde0c042b9256170f2f8890dd9451a4240aa - unpetrify-ref: 2.1.0 -- name: libyajl2-1.0.1 - morph: unmaintained/strata/chef/libyajl2-1.0.1.morph - repo: upstream:ruby-gems/libyajl2-gem - ref: 98aef032f536d13775bc7b3b69a25ebac9bdee0a - unpetrify-ref: 1.0.1 - build-depends: - - yajl - submodules: - ext/libyajl2/vendor/yajl: - url: https://github.com/lloyd/yajl.git -- name: chef-12.0.0.alpha.0 - morph: unmaintained/strata/chef/chef-12.0.0.alpha.0.morph - repo: upstream:ruby-gems/chef - ref: 9841bc9c6271c6d9add3aff0c2e11239cfb129ca - unpetrify-ref: 12.0.3 -- name: chef-zero-2.2 - morph: unmaintained/strata/chef/chef-zero-2.2.morph - repo: upstream:ruby-gems/chef-zero - ref: 231c3abd052e606820297a97e4bc32bdab656a02 - unpetrify-ref: v2.2 -- name: coderay-1.1.0.rc1 - morph: unmaintained/strata/chef/coderay-1.1.0.morph - repo: upstream:ruby-gems/coderay - ref: a48037b85a12228431b32103786456f36beb355f - unpetrify-ref: v1.1.0 -- name: erubis-master - morph: unmaintained/strata/chef/erubis-master.morph - repo: upstream:ruby-gems/erubis - ref: 14d3eab57fbc361312c8f3af350cbf9a5bafce17 - unpetrify-ref: master -- name: ffi-1.9.3 - morph: unmaintained/strata/chef/ffi-1.9.3.morph - repo: upstream:ruby-gems/ffi - ref: d982b7049336106c04f7721045dc5613b16d3545 - unpetrify-ref: 1.9.3 -- name: ffi-yajl-1.0.2 - morph: unmaintained/strata/chef/ffi-yajl-1.0.2.morph - repo: upstream:ruby-gems/ffi-yajl - ref: 3a4bc4259fd67af0ff4a8c1d3d71cfbaed9c112f - unpetrify-ref: master - build-depends: - - libyajl2-1.0.1 - submodules: - ext/libyajl2/vendored: - url: https://github.com/lloyd/yajl -- name: hashie-2.1.2 - morph: unmaintained/strata/chef/hashie-2.1.2.morph - repo: upstream:ruby-gems/hashie - ref: 95b97fbff2cac643d56ec718cb708665500682e5 - unpetrify-ref: v2.1.2 -- name: highline-1.6.21 - morph: unmaintained/strata/chef/highline-1.6.21.morph - repo: upstream:ruby-gems/highline - ref: 51de22e436e6d45696759d673d7b9ceba16cae39 - unpetrify-ref: master -- name: hoe-master - morph: unmaintained/strata/chef/hoe-master.morph - repo: upstream:ruby-gems/hoe - ref: d94b26b4687be0a24d04b7cb582753fbec33d7e4 - unpetrify-ref: master -- name: diff-lcs-1.2.5 - morph: unmaintained/strata/chef/diff-lcs-1.2.5.morph - repo: upstream:ruby-gems/diff-lcs - ref: d53e92242b9dd6745e56a0ff4ba15d2f62052b91 - unpetrify-ref: v1.2.5 - build-depends: - - hoe-master -- name: ipaddress-0.8.0 - morph: unmaintained/strata/chef/ipaddress-0.8.0.morph - repo: upstream:ruby-gems/ipaddress - ref: dae93ad0e4fb9a5d547a15dae0c3f2417078c845 - unpetrify-ref: master -- name: json-1.8.1 - morph: unmaintained/strata/chef/json-1.8.1.morph - repo: upstream:ruby-gems/json - ref: 92a96dea2b24b9c68856004d69491f46aedd0925 - unpetrify-ref: v1.8.1 -- name: method_source-0.8.1 - morph: unmaintained/strata/chef/method_source-0.8.2.morph - repo: upstream:ruby-gems/method_source - ref: 1b1f8323a7c25f29331fe32511f50697e5405dbd - unpetrify-ref: v0.8.2 -- name: mime-types-1.25.1 - morph: unmaintained/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: unmaintained/strata/chef/mixlib-authentication-1.3.0.morph - repo: upstream:ruby-gems/mixlib-authentication - ref: db24a56c6f5b99114998a50942220a7023060229 - unpetrify-ref: 1.3.0 -- name: mixlib-cli-1.5.0 - morph: unmaintained/strata/chef/mixlib-cli-1.5.0.morph - repo: upstream:ruby-gems/mixlib-cli - ref: b3b3c12141b5380ec61945770690fc1ae31d92b0 - unpetrify-ref: 1.5.0 -- name: mixlib-config-2.1.0 - morph: unmaintained/strata/chef/mixlib-config-2.1.0.morph - repo: upstream:ruby-gems/mixlib-config - ref: c5e2dee2beb5fdd17442ff92e520f2ef01d17ee5 - unpetrify-ref: v2.1.0 -- name: mixlib-log-1.6.0 - morph: unmaintained/strata/chef/mixlib-log-1.6.0.morph - repo: upstream:ruby-gems/mixlib-log - ref: 50ec55964ce19d3a8a14050be9a23c4b8990e2f0 - unpetrify-ref: master -- name: mixlib-shellout-1.4.0 - morph: unmaintained/strata/chef/mixlib-shellout-1.4.0.morph - repo: upstream:ruby-gems/mixlib-shellout - ref: a04ce6db22edf0575c50e18ae2db09adced7dedc - unpetrify-ref: 1.4.0 -- name: net-dhcp-1.2.1 - morph: unmaintained/strata/chef/net-dhcp-1.2.1.morph - repo: upstream:net-dhcp-ruby - ref: b644922a08aa09e2ce75f8f9f9fa1f0b8cecb2e9 - unpetrify-ref: v1.2.1 -- name: net-ssh-2.9.1 - morph: unmaintained/strata/chef/net-ssh-2.9.1.morph - repo: upstream:ruby-gems/net-ssh - ref: 9f8607984d8e904f211cc5edb39ab2a2ca94008e - unpetrify-ref: v2.9.1 -- name: net-ssh-gateway-1.2.0 - morph: unmaintained/strata/chef/net-ssh-gateway-1.2.0.morph - repo: upstream:ruby-gems/net-ssh-gateway - ref: 1de7611a7f7cedbe7a4c6cf3798c88d00637582d - unpetrify-ref: v1.2.0 -- name: net-ssh-multi-1.2.0 - morph: unmaintained/strata/chef/net-ssh-multi-1.2.0.morph - repo: upstream:ruby-gems/net-ssh-multi - ref: b659f2884b2c9abdbe3bbf3c844937a0799ed5ac - unpetrify-ref: v1.2.0 -- name: ohai-7.4.0.dev - morph: unmaintained/strata/chef/ohai-7.4.0.dev.morph - repo: upstream:ruby-gems/ohai - ref: 0bf2ed32744445a253082910ee4e07b2b38023a7 - unpetrify-ref: master -- name: plist-master - morph: unmaintained/strata/chef/plist-master.morph - repo: upstream:ruby-gems/plist - ref: 12eb82d283cab148183c37c07e3f75a309969dec - unpetrify-ref: master -- name: pry-0.10.1 - morph: unmaintained/strata/chef/pry-0.10.1.morph - repo: upstream:ruby-gems/pry - ref: 6d5eb0831b50ec729d2dc3356255b49535535e37 - unpetrify-ref: master -- name: rack-1.5.2 - morph: unmaintained/strata/chef/rack-1.5.2.morph - repo: upstream:ruby-gems/rack - ref: ac590d055c936bb9a618e955a690dc836c625211 - unpetrify-ref: 1.5.2 -- name: slop-3.6.0 - morph: unmaintained/strata/chef/slop-3.6.0.morph - repo: upstream:ruby-gems/slop - ref: c3f84e7e794004f9ae6958c13ef3dd3038c2c0eb - unpetrify-ref: v3.6.0 -- name: systemu-2.6.4 - morph: unmaintained/strata/chef/systemu-2.6.4.morph - repo: upstream:ruby-gems/systemu - ref: 35340f1e91941af47988b1b9d77705493b96d3db - unpetrify-ref: master -- name: wmi-lite-1.0.0 - morph: unmaintained/strata/chef/wmi-lite-1.0.0.morph - repo: upstream:ruby-gems/wmi-lite - ref: 9377836dc0a5487474038ec727f02f9b33facfa6 - unpetrify-ref: 1.0.0 -- name: libpopt - morph: unmaintained/strata/chef/libpopt.morph - repo: upstream:libpopt - ref: c224abf28f4ff9bbf292908324359cb5905addf8 - unpetrify-ref: master -- name: sgdisk - morph: unmaintained/strata/chef/sgdisk.morph - repo: upstream:sgdisk - ref: a920398fa393f9d6301b32b191bc01e086ab8bc8 - unpetrify-ref: master - build-depends: - - libpopt diff --git a/unmaintained/strata/chef/chef-12.0.0.alpha.0.morph b/unmaintained/strata/chef/chef-12.0.0.alpha.0.morph deleted file mode 100644 index 61c12ca0..00000000 --- a/unmaintained/strata/chef/chef-12.0.0.alpha.0.morph +++ /dev/null @@ -1,20 +0,0 @@ -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/unmaintained/strata/chef/chef-zero-2.2.morph b/unmaintained/strata/chef/chef-zero-2.2.morph deleted file mode 100644 index 11407ae3..00000000 --- a/unmaintained/strata/chef/chef-zero-2.2.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/coderay-1.1.0.morph b/unmaintained/strata/chef/coderay-1.1.0.morph deleted file mode 100644 index a380b911..00000000 --- a/unmaintained/strata/chef/coderay-1.1.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/diff-lcs-1.2.5.morph b/unmaintained/strata/chef/diff-lcs-1.2.5.morph deleted file mode 100644 index 3585467f..00000000 --- a/unmaintained/strata/chef/diff-lcs-1.2.5.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/erubis-master.morph b/unmaintained/strata/chef/erubis-master.morph deleted file mode 100644 index 05d1a9f9..00000000 --- a/unmaintained/strata/chef/erubis-master.morph +++ /dev/null @@ -1,19 +0,0 @@ -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/unmaintained/strata/chef/ffi-1.9.3.morph b/unmaintained/strata/chef/ffi-1.9.3.morph deleted file mode 100644 index 672f0bd7..00000000 --- a/unmaintained/strata/chef/ffi-1.9.3.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/ffi-yajl-1.0.2.morph b/unmaintained/strata/chef/ffi-yajl-1.0.2.morph deleted file mode 100644 index 5d3c0792..00000000 --- a/unmaintained/strata/chef/ffi-yajl-1.0.2.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/hashie-2.1.2.morph b/unmaintained/strata/chef/hashie-2.1.2.morph deleted file mode 100644 index a4fb46f6..00000000 --- a/unmaintained/strata/chef/hashie-2.1.2.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/highline-1.6.21.morph b/unmaintained/strata/chef/highline-1.6.21.morph deleted file mode 100644 index 5615f6b2..00000000 --- a/unmaintained/strata/chef/highline-1.6.21.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/hoe-master.morph b/unmaintained/strata/chef/hoe-master.morph deleted file mode 100644 index 1a468789..00000000 --- a/unmaintained/strata/chef/hoe-master.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/ipaddress-0.8.0.morph b/unmaintained/strata/chef/ipaddress-0.8.0.morph deleted file mode 100644 index fdaa5de6..00000000 --- a/unmaintained/strata/chef/ipaddress-0.8.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/json-1.8.1.morph b/unmaintained/strata/chef/json-1.8.1.morph deleted file mode 100644 index cf25abca..00000000 --- a/unmaintained/strata/chef/json-1.8.1.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/libpopt.morph b/unmaintained/strata/chef/libpopt.morph deleted file mode 100644 index 6adde30c..00000000 --- a/unmaintained/strata/chef/libpopt.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: libpopt -kind: chunk -build-system: autotools -configure-commands: -- autoreconf -if -- ./configure diff --git a/unmaintained/strata/chef/libyajl2-1.0.1.morph b/unmaintained/strata/chef/libyajl2-1.0.1.morph deleted file mode 100644 index 7a21831d..00000000 --- a/unmaintained/strata/chef/libyajl2-1.0.1.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/method_source-0.8.2.morph b/unmaintained/strata/chef/method_source-0.8.2.morph deleted file mode 100644 index 5ba20da6..00000000 --- a/unmaintained/strata/chef/method_source-0.8.2.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mime-types-1.25.1.morph b/unmaintained/strata/chef/mime-types-1.25.1.morph deleted file mode 100644 index 453c42d5..00000000 --- a/unmaintained/strata/chef/mime-types-1.25.1.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mixlib-authentication-1.3.0.morph b/unmaintained/strata/chef/mixlib-authentication-1.3.0.morph deleted file mode 100644 index 8792ff2c..00000000 --- a/unmaintained/strata/chef/mixlib-authentication-1.3.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mixlib-cli-1.5.0.morph b/unmaintained/strata/chef/mixlib-cli-1.5.0.morph deleted file mode 100644 index 84f3a4b7..00000000 --- a/unmaintained/strata/chef/mixlib-cli-1.5.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mixlib-config-2.1.0.morph b/unmaintained/strata/chef/mixlib-config-2.1.0.morph deleted file mode 100644 index cc6077a5..00000000 --- a/unmaintained/strata/chef/mixlib-config-2.1.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mixlib-log-1.6.0.morph b/unmaintained/strata/chef/mixlib-log-1.6.0.morph deleted file mode 100644 index ddd956c1..00000000 --- a/unmaintained/strata/chef/mixlib-log-1.6.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/mixlib-shellout-1.4.0.morph b/unmaintained/strata/chef/mixlib-shellout-1.4.0.morph deleted file mode 100644 index 7087c1c6..00000000 --- a/unmaintained/strata/chef/mixlib-shellout-1.4.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/net-dhcp-1.2.1.morph b/unmaintained/strata/chef/net-dhcp-1.2.1.morph deleted file mode 100644 index 88eb4963..00000000 --- a/unmaintained/strata/chef/net-dhcp-1.2.1.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/net-ssh-2.9.1.morph b/unmaintained/strata/chef/net-ssh-2.9.1.morph deleted file mode 100644 index c06495d5..00000000 --- a/unmaintained/strata/chef/net-ssh-2.9.1.morph +++ /dev/null @@ -1,15 +0,0 @@ -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/unmaintained/strata/chef/net-ssh-gateway-1.2.0.morph b/unmaintained/strata/chef/net-ssh-gateway-1.2.0.morph deleted file mode 100644 index c0425002..00000000 --- a/unmaintained/strata/chef/net-ssh-gateway-1.2.0.morph +++ /dev/null @@ -1,15 +0,0 @@ -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/unmaintained/strata/chef/net-ssh-multi-1.2.0.morph b/unmaintained/strata/chef/net-ssh-multi-1.2.0.morph deleted file mode 100644 index fc433a37..00000000 --- a/unmaintained/strata/chef/net-ssh-multi-1.2.0.morph +++ /dev/null @@ -1,15 +0,0 @@ -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/unmaintained/strata/chef/ohai-7.4.0.dev.morph b/unmaintained/strata/chef/ohai-7.4.0.dev.morph deleted file mode 100644 index f47dda35..00000000 --- a/unmaintained/strata/chef/ohai-7.4.0.dev.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/plist-master.morph b/unmaintained/strata/chef/plist-master.morph deleted file mode 100644 index 7cf7cbb6..00000000 --- a/unmaintained/strata/chef/plist-master.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/pry-0.10.1.morph b/unmaintained/strata/chef/pry-0.10.1.morph deleted file mode 100644 index 07ebca7a..00000000 --- a/unmaintained/strata/chef/pry-0.10.1.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/rack-1.5.2.morph b/unmaintained/strata/chef/rack-1.5.2.morph deleted file mode 100644 index 50fd960c..00000000 --- a/unmaintained/strata/chef/rack-1.5.2.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/sgdisk.morph b/unmaintained/strata/chef/sgdisk.morph deleted file mode 100644 index e792f9d9..00000000 --- a/unmaintained/strata/chef/sgdisk.morph +++ /dev/null @@ -1,7 +0,0 @@ -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/unmaintained/strata/chef/slop-3.6.0.morph b/unmaintained/strata/chef/slop-3.6.0.morph deleted file mode 100644 index 32101078..00000000 --- a/unmaintained/strata/chef/slop-3.6.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/systemu-2.6.4.morph b/unmaintained/strata/chef/systemu-2.6.4.morph deleted file mode 100644 index 3cc0a5e2..00000000 --- a/unmaintained/strata/chef/systemu-2.6.4.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/wmi-lite-1.0.0.morph b/unmaintained/strata/chef/wmi-lite-1.0.0.morph deleted file mode 100644 index bb4b4127..00000000 --- a/unmaintained/strata/chef/wmi-lite-1.0.0.morph +++ /dev/null @@ -1,13 +0,0 @@ -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/unmaintained/strata/chef/yajl.morph b/unmaintained/strata/chef/yajl.morph deleted file mode 100644 index 9dbc8dbf..00000000 --- a/unmaintained/strata/chef/yajl.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: yajl -kind: chunk -description: YAJL JSON parsing library -build-system: cmake -max-jobs: 1 - diff --git a/unmaintained/strata/cxmanage.morph b/unmaintained/strata/cxmanage.morph deleted file mode 100644 index e991794e..00000000 --- a/unmaintained/strata/cxmanage.morph +++ /dev/null @@ -1,36 +0,0 @@ -name: cxmanage -kind: stratum -description: All the tools for calxeda management -build-depends: -- morph: strata/tools.morph -chunks: -- name: ipmitool - repo: upstream:ipmitool - ref: 830d5a3787b265e5dde154d2f0e08b10ae9a7bcd - unpetrify-ref: baserock/morph - build-system: autotools -- name: pexpect - morph: unmaintained/strata/cxmanage/pexpect.morph - repo: upstream:pexpect - ref: 7a8455f21bb45020f3594c59fc8c85cf738e147c - unpetrify-ref: baserock/morph -- name: pyipmi - repo: upstream:pyipmi - ref: bb7dba84578c05ba87db3c4186a2989c89e4e519 - unpetrify-ref: baserock/morph - build-system: python-distutils -- name: tftpy - repo: upstream:tftpy - ref: f3d2fc4c62c1e64dd49adfaf8e65097eb8ea307b - unpetrify-ref: baserock/morph - build-system: python-distutils -- name: cxmanage - repo: upstream:cxmanage - ref: 54116d3c486ed7aa49f284e4cad9e6e7c293bea6 - unpetrify-ref: baserock/morph - build-system: python-distutils - build-depends: - - ipmitool - - pexpect - - pyipmi - - tftpy diff --git a/unmaintained/strata/cxmanage/pexpect.morph b/unmaintained/strata/cxmanage/pexpect.morph deleted file mode 100644 index 09254350..00000000 --- a/unmaintained/strata/cxmanage/pexpect.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: pexpect -kind: chunk -description: | - Pexpect is a pure Python module that accomplishes behaviour similar to Expect -configure-commands: -- cd pexpect && make -build-commands: -- cd pexpect && python setup.py build -install-commands: -- cd pexpect && python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/unmaintained/strata/databases.morph b/unmaintained/strata/databases.morph deleted file mode 100644 index a1cbaba8..00000000 --- a/unmaintained/strata/databases.morph +++ /dev/null @@ -1,35 +0,0 @@ -name: databases -kind: stratum -description: some popular databases and some utils related to databases -build-depends: -- morph: strata/tools.morph -- morph: strata/nfs.morph -- morph: strata/python2-core.morph -chunks: -- name: postgresql - repo: upstream:postgresql - ref: f8252b6418262884dc504c93597a54cf2c334802 - unpetrify-ref: REL_10_STABLE - build-system: autotools -- name: redis - morph: unmaintained/strata/databases/redis.morph - repo: upstream:redis - ref: 9ee59fca9c5c429185d35779c2d5db64005091b0 - unpetrify-ref: baserock/3.0 -- name: memcached - morph: unmaintained/strata/databases/memcached.morph - repo: upstream:memcached - ref: c5530027c8ea28674358327ab8212ebaf014c848 - unpetrify-ref: 1.4.22 -- name: psycopg2 - repo: upstream:python-packages/psycopg2 - ref: 980145eaee13f5014e929816058b83db78cb0833 # 2_7_3_2 - unpetrify-ref: master - build-system: python-distutils - build-depends: - - postgresql -- name: python-memcached - repo: upstream:python-packages/python-memcached - ref: 156ee975ff6e5c69e1d6c58b09bedf03c182c5db - unpetrify-ref: master - build-system: python-distutils diff --git a/unmaintained/strata/databases/memcached.morph b/unmaintained/strata/databases/memcached.morph deleted file mode 100644 index e81a8be1..00000000 --- a/unmaintained/strata/databases/memcached.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: memcached -kind: chunk -build-system: autotools -configure-commands: -- perl version.pl -- touch README -- autoreconf -fvi -- ./configure --prefix="$PREFIX" -install-commands: -- make install -- install -D -m 644 scripts/memcached.service "$DESTDIR$PREFIX"/lib/systemd/system/memcached.service -post-install-commands: -- mkdir -p "$DESTDIR"/etc/sysconfig -- | - cat < "$DESTDIR"/etc/sysconfig/memcached - PORT="11211" - USER="nobody" - MAXCONN="1024" - CACHESIZE="64" - OPTIONS="" - EOF diff --git a/unmaintained/strata/databases/redis.morph b/unmaintained/strata/databases/redis.morph deleted file mode 100644 index 51f602dd..00000000 --- a/unmaintained/strata/databases/redis.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: redis -kind: chunk -build-commands: -- make -install-commands: -- make PREFIX="$DESTDIR/$PREFIX" install diff --git a/unmaintained/strata/django.morph b/unmaintained/strata/django.morph deleted file mode 100644 index 01f471f2..00000000 --- a/unmaintained/strata/django.morph +++ /dev/null @@ -1,37 +0,0 @@ -name: django -kind: stratum -description: Stratum with Django and its plugins and dependencies. -build-depends: -- morph: strata/foundation.morph -- morph: strata/python2-core.morph -chunks: -- name: django - repo: upstream:python-packages/django - ref: 811508b0512d3fa6b2328f8647fbf9eace68eceb - unpetrify-ref: 1.6.8 - build-system: python-distutils -- name: django-appconf - repo: upstream:python-packages/django-appconf - ref: 0c9835f95b44db1b3eb1a9409f95a3ecd63b8ff5 - unpetrify-ref: "0.6" - build-system: python-distutils -- name: django-compressor - repo: upstream:python-packages/django-compressor - ref: e747dce3d7e04fe595bbfed54f9554c2725eb757 - unpetrify-ref: "1.4" - build-system: python-distutils - build-depends: - - django-appconf -- name: pyscss - repo: upstream:python-packages/pyscss - ref: 85e8806e39e840c4402ee813c3e38fefaf9212b4 - unpetrify-ref: 1.2.1 - build-system: python-distutils -- name: django-pyscss - repo: upstream:python-packages/django-pyscss - ref: 665270b54eea5de5aca379a78673b411ed6b1f04 - unpetrify-ref: v1.0.6 - build-system: python-distutils - build-depends: - - django - - pyscss diff --git a/unmaintained/strata/enlightenment.morph b/unmaintained/strata/enlightenment.morph deleted file mode 100644 index baba8622..00000000 --- a/unmaintained/strata/enlightenment.morph +++ /dev/null @@ -1,80 +0,0 @@ -name: enlightenment -kind: stratum -description: Enlightenment Desktop and Window Manager -build-depends: -- morph: strata/tools.morph -- morph: strata/x-generic.morph -- morph: unmaintained/strata/lua51.morph -- morph: strata/bluetooth.morph -- morph: strata/multimedia-gstreamer.morph -- morph: strata/connman-common.morph -chunks: -- name: fribidi - repo: upstream:fribidi - ref: c9916f2ab289126a32febcc4754efc73a011fb0c - unpetrify-ref: baserock/morph/0.19.6 - build-system: autotools -- name: bullet3 - morph: unmaintained/strata/enlightenment/bullet3.morph - repo: upstream:bullet3 - ref: 940059ddb3c4476bb9860f79f35b0b1230857f54 - unpetrify-ref: baserock/morph -- name: efl - morph: unmaintained/strata/enlightenment/efl.morph - repo: upstream:enlightenment/efl - ref: 3013a7c5cbd728dd9bc5516ffb4bd4f505888bd4 - unpetrify-ref: v1.12.0 - build-depends: - - bullet3 - - fribidi -- name: elementary - morph: unmaintained/strata/enlightenment/elementary.morph - repo: upstream:enlightenment/elementary - ref: c4fbbbf984b7bd1553191c26459bce4589122ad5 - unpetrify-ref: v1.12.0 - build-depends: - - efl -- name: evas_generic_loaders - morph: unmaintained/strata/enlightenment/evas_generic_loaders.morph - repo: upstream:enlightenment/evas_generic_loaders - ref: 5d4415ec1e64930452f7d17cbec4c28a0efa8402 - unpetrify-ref: v1.12.0 - build-depends: - - efl -- name: enlightenment - morph: unmaintained/strata/enlightenment/enlightenment.morph - repo: upstream:enlightenment/enlightenment - ref: 55165e2576823780a1053b03c5230cc8df8957b5 - unpetrify-ref: v0.19.1 - build-depends: - - efl - - elementary -- name: imlib2 - morph: unmaintained/strata/enlightenment/imlib2.morph - repo: upstream:enlightenment/imlib2 - ref: f2f20dc5791a175be398a17fcdc4852a79079d47 - unpetrify-ref: baserock/1.4.6 - build-depends: - - efl - - elementary - - enlightenment -- name: libast - morph: unmaintained/strata/enlightenment/libast.morph - repo: upstream:enlightenment/libast - ref: 0dbc0a5df55474bf61ca166be40e8de2d9e3a031 - build-depends: - - efl - - elementary - - enlightenment - - imlib2 -- name: eterm - morph: unmaintained/strata/enlightenment/eterm.morph - repo: upstream:enlightenment/eterm - ref: 097234f1f27709ff2444e303350764ea3b80b3ad - unpetrify-ref: baserock/morph - build-depends: - - efl - - elementary - - enlightenment - - libast - - imlib2 diff --git a/unmaintained/strata/enlightenment/bullet3.morph b/unmaintained/strata/enlightenment/bullet3.morph deleted file mode 100644 index 357e1f67..00000000 --- a/unmaintained/strata/enlightenment/bullet3.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: bullet3 -kind: chunk -configure-commands: -- cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=ON -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/efl.morph b/unmaintained/strata/enlightenment/efl.morph deleted file mode 100644 index b2a013ae..00000000 --- a/unmaintained/strata/enlightenment/efl.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: efl -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr --with-tests=none --disable-image-loader-gif --enable-systemd - --disable-image-loader-tiff -build-commands: -- make VPATH=/usr/lib64 -install-commands: -- make DESTDIR="$DESTDIR" VPATH=/usr/lib64 install diff --git a/unmaintained/strata/enlightenment/elementary.morph b/unmaintained/strata/enlightenment/elementary.morph deleted file mode 100644 index 3c0bda0d..00000000 --- a/unmaintained/strata/enlightenment/elementary.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: elementary -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/enlightenment.morph b/unmaintained/strata/enlightenment/enlightenment.morph deleted file mode 100644 index 90f0c646..00000000 --- a/unmaintained/strata/enlightenment/enlightenment.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: enlightenment -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/eterm.morph b/unmaintained/strata/enlightenment/eterm.morph deleted file mode 100644 index 9a98d193..00000000 --- a/unmaintained/strata/enlightenment/eterm.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: eterm -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/evas_generic_loaders.morph b/unmaintained/strata/enlightenment/evas_generic_loaders.morph deleted file mode 100644 index ef36a40b..00000000 --- a/unmaintained/strata/enlightenment/evas_generic_loaders.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: evas_generic_loaders -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/imlib2.morph b/unmaintained/strata/enlightenment/imlib2.morph deleted file mode 100644 index 82617ad2..00000000 --- a/unmaintained/strata/enlightenment/imlib2.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: imlib2 -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/enlightenment/libast.morph b/unmaintained/strata/enlightenment/libast.morph deleted file mode 100644 index c44e274c..00000000 --- a/unmaintained/strata/enlightenment/libast.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libast -kind: chunk -configure-commands: -- ./autogen.sh --prefix=/usr -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/java.morph b/unmaintained/strata/java.morph deleted file mode 100644 index 05f7a925..00000000 --- a/unmaintained/strata/java.morph +++ /dev/null @@ -1,22 +0,0 @@ -name: java -kind: stratum -description: | - This stratum contains everything necessary to compile and run Java applications - and build OpenJDK from source. -build-depends: -- morph: strata/core.morph -- morph: strata/x-common.morph -- morph: strata/graphics-common.morph -chunks: -- name: java-binary - morph: unmaintained/strata/java/java-binary.morph - repo: github:jmacarthur/openjdk-binary - ref: 6f53762e2632c4b9f9afdfa6995a2c696bb9fd43 - unpetrify-ref: master -- name: java-ant - morph: unmaintained/strata/java/java-ant.morph - repo: upstream:java/ant - ref: b3509fc3250b0f868076c846d29da80cbdc20681 - unpetrify-ref: ANT_194 - build-depends: - - java-binary diff --git a/unmaintained/strata/java/java-ant.morph b/unmaintained/strata/java/java-ant.morph deleted file mode 100644 index 13c490d4..00000000 --- a/unmaintained/strata/java/java-ant.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: java-ant -kind: chunk -build-commands: -- | - export JAVA_HOME=/usr/lib/java-8-openjdk - sh build.sh -Ddist.dir="$DESTDIR/usr/lib/ant" dist -- mkdir -p "${DESTDIR}${PREFIX}/bin" -- ln -sf "${PREFIX}/lib/ant/bin/ant" "${DESTDIR}${PREFIX}/bin/ant" diff --git a/unmaintained/strata/java/java-binary.morph b/unmaintained/strata/java/java-binary.morph deleted file mode 100644 index c75f39b7..00000000 --- a/unmaintained/strata/java/java-binary.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: java-binary -description: | - This is a temporary solution to the OpenJDK build problem. In the future - we expect to be able to build fully from scratch using IcedTea, but for now - we need an existing OpenJDK binary to build OpenJDK. -kind: chunk -configure-commands: [] -build-commands: -- cat j2sdk-image-jdk8build.tar.gz_* > jdk-8u20-linux-x64.tar.gz -install-commands: -- mkdir -p "$DESTDIR$PREFIX"/bin -- mkdir -p "$DESTDIR$PREFIX"/lib -- tar zxf jdk-8u20-linux-x64.tar.gz -C "$DESTDIR$PREFIX"/lib --no-same-owner -- ln -sfn "$PREFIX"/lib/j2sdk-image "$DESTDIR$PREFIX"/lib/java-8-openjdk -- ln -sfn "$PREFIX"/lib/j2sdk-image/jre/bin/java "$DESTDIR$PREFIX"/bin/ -- ln -sfn "$PREFIX"/lib/j2sdk-image/jre/bin/javac "$DESTDIR$PREFIX"/bin/ diff --git a/unmaintained/strata/lua51.morph b/unmaintained/strata/lua51.morph deleted file mode 100644 index d497cf8a..00000000 --- a/unmaintained/strata/lua51.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: lua51 -kind: stratum -description: Interpreter for the lua scripting language. -build-depends: -- morph: strata/tools.morph -chunks: -- name: lua51 - morph: unmaintained/strata/lua51/lua51.morph - repo: upstream:lua - ref: 948063437e0350d9ef1649ec3a76d0c24a5c8642 - unpetrify-ref: baserock/5.1-morph -- name: luajit2 - morph: unmaintained/strata/lua51/luajit2.morph - repo: upstream:luajit2 - ref: 880ca300e8fb7b432b9d25ed377db2102e4cb63d - unpetrify-ref: v2.0.3 diff --git a/unmaintained/strata/lua51/lua51.morph b/unmaintained/strata/lua51/lua51.morph deleted file mode 100644 index c8f7daa4..00000000 --- a/unmaintained/strata/lua51/lua51.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: lua51 -kind: chunk -configure-commands: -- sed -e 's/defined(LUA_USE_READLINE)/0/g' src/luaconf.h.orig >src/luaconf.h -- sed -i -e '/^linux:/{n;s/-lreadline//g;s/-lhistory//g;s/-lncurses//g}' src/Makefile -build-commands: -- make debian_linux INSTALL_TOP="$PREFIX" RPATH="$PREFIX/lib" -install-commands: -- make INSTALL_TOP="$DESTDIR/$PREFIX" debian_install -- mkdir -p "$DESTDIR/$PREFIX/lib/pkgconfig" -- cp lua5.1.pc "$DESTDIR/$PREFIX/lib/pkgconfig/" diff --git a/unmaintained/strata/lua51/luajit2.morph b/unmaintained/strata/lua51/luajit2.morph deleted file mode 100644 index 72f34f02..00000000 --- a/unmaintained/strata/lua51/luajit2.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: luajit2 -kind: chunk -build-commands: -- make PREFIX="$PREFIX" -install-commands: -- make install PREFIX="$PREFIX" DESTDIR="$DESTDIR" - diff --git a/unmaintained/strata/lvm.morph b/unmaintained/strata/lvm.morph deleted file mode 100644 index aa68dd50..00000000 --- a/unmaintained/strata/lvm.morph +++ /dev/null @@ -1,15 +0,0 @@ -name: lvm -kind: stratum -description: | - LVM userland tools. - - LVM is a logical volume manager for the Linux kernel. This stratum contains - the tools necessary to manage volumes with LVM. -build-depends: -- morph: strata/foundation.morph -chunks: -- name: lvm2 - morph: unmaintained/strata/lvm/lvm2.morph - repo: upstream:lvm2 - ref: fa01faaa4aa96de834ba7e8fbb9d9aff908571c3 - unpetrify-ref: v2_02_115 diff --git a/unmaintained/strata/lvm/lvm2.morph b/unmaintained/strata/lvm/lvm2.morph deleted file mode 100644 index d9633bb9..00000000 --- a/unmaintained/strata/lvm/lvm2.morph +++ /dev/null @@ -1,32 +0,0 @@ -name: lvm2 -kind: chunk -build-system: autotools - -configure-commands: -# We specify --sbindir explicitly due to a bug in .service file generation: -# if left to the default, @sbindir@ is expanded to the literal string -# '${exec_prefix}/sbin' in the generated .service files. -# -# udev rules *must* go in wherever Systemd is configured to look at. We don't expect -# Systemd to change anymore. -- | - ./configure --prefix="$PREFIX" \ - --sbindir="$PREFIX"/sbin \ - --with-udev-prefix="$PREFIX" \ - --with-systemdsystemunitdir="$PREFIX"/lib/systemd/system \ - --enable-applib --enable-cmdlib --enable-pkgconfig --enable-lvmetad \ - --enable-dmeventd --enable-udev_sync - -install-commands: -- make DESTDIR="$DESTDIR" install -- make DESTDIR="$DESTDIR" install_system_dirs -- make DESTDIR="$DESTDIR" install_systemd_generators -- make DESTDIR="$DESTDIR" install_systemd_units -- make DESTDIR="$DESTDIR" install_tmpfiles_configuration - -# Use lvmetad by default. This means we don't have to use the -# `lvm2-activation-generator` systemd generator, which is a good thing -# because I have seen it cause systems to completely fail to boot. Fedora -# does something similar, see: -# http://pkgs.fedoraproject.org/cgit/lvm2.git/tree/lvm2-enable-lvmetad-by-default.patch -- sed -e 's/use_lvmetad = 0/use_lvmetad = 1/' -i "$DESTDIR"/etc/lvm/lvm.conf diff --git a/unmaintained/strata/multimedia-gstreamer-0.10.morph b/unmaintained/strata/multimedia-gstreamer-0.10.morph deleted file mode 100644 index 3778070b..00000000 --- a/unmaintained/strata/multimedia-gstreamer-0.10.morph +++ /dev/null @@ -1,38 +0,0 @@ -name: multimedia-gstreamer-0.10 -kind: stratum -description: Codecs -build-depends: -- morph: strata/core.morph -- morph: strata/foundation.morph -- morph: strata/multimedia-common.morph -- morph: strata/sound-server-pulseaudio.morph -chunks: -- name: gstreamer@0.10 - repo: upstream:gstreamer - ref: 76fc67b18c38e7f6c9cfacc4e4d0ed11d3b2c548 - unpetrify-ref: "0.10" - build-system: autotools - submodules: - common: - url: upstream:gstreamer-common -- name: gstreamer-plugins-base@0.10 - repo: upstream:gstreamer-plugins-base - morph: unmaintained/strata/multimedia-gstreamer-0.10/gstreamer-plugins-base@0.10.morph - ref: 1e1e6eaf3f0dd11f6618154d9739cbe3e007d206 - unpetrify-ref: "0.10" - build-depends: - - gstreamer@0.10 - submodules: - common: - url: upstream:gstreamer-common -- name: gstreamer-plugins-good@0.10 - repo: upstream:gstreamer-plugins-good - ref: 43185275636cf1b52cc12b52fe6dbbc6886f6347 - unpetrify-ref: baserock/0.10+v4l_fix - build-system: autotools - build-depends: - - gstreamer@0.10 - - gstreamer-plugins-base@0.10 - submodules: - common: - url: upstream:gstreamer-common diff --git a/unmaintained/strata/multimedia-gstreamer-0.10/gstreamer-plugins-base@0.10.morph b/unmaintained/strata/multimedia-gstreamer-0.10/gstreamer-plugins-base@0.10.morph deleted file mode 100644 index b5586fd9..00000000 --- a/unmaintained/strata/multimedia-gstreamer-0.10/gstreamer-plugins-base@0.10.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: gstreamer-plugins-base@0.10 -kind: chunk -build-system: autotools -configure-commands: -- | - NOCONFIGURE=1 ./autogen.sh - - case "$MORPH_ARCH" in - x86_32) - sed -i -e "s/-O2/& -msse2/" configure - ;; - esac - - ./configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var --disable-gtk-doc diff --git a/unmaintained/strata/networking-utils.morph b/unmaintained/strata/networking-utils.morph deleted file mode 100644 index da46c629..00000000 --- a/unmaintained/strata/networking-utils.morph +++ /dev/null @@ -1,105 +0,0 @@ -name: networking-utils -kind: stratum -description: | - Stratum which contains utils to works with networks: create, enable, filter... - - This stratum requires kernel config flags which are not enabled in the default - Baserock kernel found in the BSP strata. See the Openstack BSP stratum to get - an idea of what is needed. -build-depends: -- morph: strata/foundation.morph -chunks: -- name: ebtables - morph: unmaintained/strata/networking-utils/ebtables.morph - repo: upstream:ebtables - ref: f4bdc80ae8c1a79b4ab5dcb8431ad85aea618d66 - unpetrify-ref: master -- name: iproute2 - morph: unmaintained/strata/networking-utils/iproute2.morph - repo: upstream:iproute2 - ref: 50231ad2a554fcb02462bed6405c970833c1baee - unpetrify-ref: v3.17.0 -- name: libmnl - repo: upstream:libmnl - ref: c9f19b98cd8e108617e825e071091df14f78c53a - unpetrify-ref: master - build-system: autotools -- name: ipset - morph: unmaintained/strata/networking-utils/ipset.morph - repo: upstream:ipset - ref: cf25c4c50e9996af30499e5b1c3354ab53be7237 - unpetrify-ref: v6.24 - build-depends: - - libmnl -- name: libpcap - morph: unmaintained/strata/networking-utils/libpcap.morph - repo: upstream:libpcap - ref: 098a643f817e8a9929c70dfba157e4d399398375 - unpetrify-ref: libpcap-1.7 -- name: tcpdump - morph: unmaintained/strata/networking-utils/tcpdump.morph - repo: upstream:tcpdump - ref: 8aa5edea1b8846740514dee4158b6c707d38fc13 - unpetrify-ref: tcpdump-4.7 - build-depends: - - libpcap -- name: libnet - morph: unmaintained/strata/networking-utils/libnet.morph - repo: upstream:libnet - ref: 05df365769597e1d64d02af931d6127762ff2658 - unpetrify-ref: libnet-1.2 -- name: iputils - morph: unmaintained/strata/networking-utils/iputils.morph - repo: upstream:iputils - ref: d25e54e25107bc7c5d14737ed65f5f52b54f1472 - unpetrify-ref: s20140519 - build-depends: - - libpcap - - libnet -- name: libnfnetlink - morph: unmaintained/strata/networking-utils/libnfnetlink.morph - repo: upstream:libnfnetlink - ref: 1166116e34af868bc814aea338c246e49a7a8748 - unpetrify-ref: libnfnetlink-1.0.1 -- name: libnetfilter_conntrack - morph: unmaintained/strata/networking-utils/libnetfilter_conntrack.morph - repo: upstream:libnetfilter_conntrack - ref: 5ad6ecff6edffd925022372323e42264f61e850d - unpetrify-ref: libnetfilter_conntrack-1.0.4 - build-depends: - - libnfnetlink - - libmnl -- name: libnetfilter_cthelper - morph: unmaintained/strata/networking-utils/libnetfilter_cthelper.morph - repo: upstream:libnetfilter_cthelper - ref: b8df12f352db62d26e5116e960d24774d5c9f3b7 - unpetrify-ref: libnetfilter_cthelper-1.0.0 - build-depends: - - libmnl -- name: libnetfilter_cttimeout - morph: unmaintained/strata/networking-utils/libnetfilter_cttimeout.morph - repo: upstream:libnetfilter_cttimeout - ref: 329652bef21c831dae1a9a79084b999d40b4eb5b - unpetrify-ref: libnetfilter_cttimeout-1.0.0 - build-depends: - - libmnl -- name: libnetfilter_queue - morph: unmaintained/strata/networking-utils/libnetfilter_queue.morph - repo: upstream:libnetfilter_queue - ref: f5d092dd3145d427c7c2ed668e3ac899875c9612 - unpetrify-ref: libnetfilter_queue-1.0.2 - build-depends: - - libnfnetlink - - libmnl -- name: conntrack-tools - morph: unmaintained/strata/networking-utils/conntrack-tools.morph - repo: upstream:conntrack-tools - ref: fbe3181be4f2e33509b1c20b95fd55eb3e7075d7 - unpetrify-ref: conntrack-tools-1.4.2 - build-depends: - - libnfnetlink - - libmnl - - libnetfilter_conntrack - - libnetfilter_cttimeout - - libnetfilter_cthelper - - libnetfilter_queue diff --git a/unmaintained/strata/networking-utils/conntrack-tools.morph b/unmaintained/strata/networking-utils/conntrack-tools.morph deleted file mode 100644 index e0ef7234..00000000 --- a/unmaintained/strata/networking-utils/conntrack-tools.morph +++ /dev/null @@ -1,4 +0,0 @@ -name: conntrack-tools -kind: chunk -build-system: autotools -max-jobs: 1 diff --git a/unmaintained/strata/networking-utils/ebtables.morph b/unmaintained/strata/networking-utils/ebtables.morph deleted file mode 100644 index a4d9fc76..00000000 --- a/unmaintained/strata/networking-utils/ebtables.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: ebtables -kind: chunk -build-system: manual -build-commands: -- make -install-commands: -- make install DESTDIR="$DESTDIR" BINDIR="$PREFIX/sbin" diff --git a/unmaintained/strata/networking-utils/iproute2.morph b/unmaintained/strata/networking-utils/iproute2.morph deleted file mode 100644 index 7ba04db6..00000000 --- a/unmaintained/strata/networking-utils/iproute2.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: iproute2 -kind: chunk -build-commands: -# arpd binary is dependent on Berkeley DB, which is licensed by Oracle -# as arpd is not needed for Openstack systems, arpd will not be compiled -# or installed. -- sed -i '/^TARGETS/s@arpd@@g' misc/Makefile -- make -install-commands: -- DESTDIR="$DESTDIR" PREFIX="$PREFIX" make install diff --git a/unmaintained/strata/networking-utils/ipset.morph b/unmaintained/strata/networking-utils/ipset.morph deleted file mode 100644 index 7fe8c6dc..00000000 --- a/unmaintained/strata/networking-utils/ipset.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: ipset -kind: chunk -build-system: autotools -configure-commands: -- ./autogen.sh -- ./configure --prefix="$PREFIX" --enable-static=no --with-kmod=no diff --git a/unmaintained/strata/networking-utils/iputils.morph b/unmaintained/strata/networking-utils/iputils.morph deleted file mode 100644 index c9736cc8..00000000 --- a/unmaintained/strata/networking-utils/iputils.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: iputils -kind: chunk -build-system: manual -pre-configure-commands: -# gnutls is not currently integrated in definitions so, disabling this -# is required in order to build ping6. If this is not disabled, it will try -# to find gnutls/openssl.h header failing to compile ping6. -- sed -i "s/USE_GNUTLS=yes/USE_GNUTLS=no/" Makefile -build-commands: -- make -- make ninfod -install-commands: -- install -D -m 755 clockdiff "$DESTDIR$PREFIX"/bin/clockdiff -- install -D -m 755 rdisc "$DESTDIR$PREFIX"/bin/rdisc -- install -D -m 755 tracepath "$DESTDIR$PREFIX"/bin/tracepath -- install -D -m 755 tracepath6 "$DESTDIR$PREFIX"/bin/tracepath6 -- install -D -m 755 ninfod/ninfod "$DESTDIR$PREFIX"/bin/ninfod -- install -D -m 755 rarpd "$DESTDIR$PREFIX"/bin/rarpd -# The following binaries are installed to overwrite busybox binaries. -- install -D -m 755 traceroute6 "$DESTDIR$PREFIX"/bin/traceroute6 -- install -D -m 755 arping "$DESTDIR$PREFIX"/sbin/arping -- install -D -m 755 tftpd "$DESTDIR$PREFIX"/sbin/tftpd -- install -D -m 755 ping "$DESTDIR"/bin/ping -- install -D -m 755 ping6 "$DESTDIR"/bin/ping6 diff --git a/unmaintained/strata/networking-utils/libnet.morph b/unmaintained/strata/networking-utils/libnet.morph deleted file mode 100644 index ddb2cf3e..00000000 --- a/unmaintained/strata/networking-utils/libnet.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: libnet -kind: chunk -build-system: manual -pre-configure-commands: -# Avoid building the docs as they require doxygen -- sed -i 's@doc @@' libnet/Makefile.am -- sed -i 's@doc/.*Makefile@@' libnet/configure.ac - -- cd libnet && ./autogen.sh -configure-commands: -- cd libnet && ./configure --prefix="$PREFIX" --disable-samples --enable-shared=yes - --with-pic -build-commands: -- cd libnet && make -install-commands: -- cd libnet && make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/networking-utils/libnetfilter_conntrack.morph b/unmaintained/strata/networking-utils/libnetfilter_conntrack.morph deleted file mode 100644 index ef6ebb48..00000000 --- a/unmaintained/strata/networking-utils/libnetfilter_conntrack.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libnetfilter_conntrack -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/libnetfilter_cthelper.morph b/unmaintained/strata/networking-utils/libnetfilter_cthelper.morph deleted file mode 100644 index 7f410a4a..00000000 --- a/unmaintained/strata/networking-utils/libnetfilter_cthelper.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libnetfilter_cthelper -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/libnetfilter_cttimeout.morph b/unmaintained/strata/networking-utils/libnetfilter_cttimeout.morph deleted file mode 100644 index b2281a5b..00000000 --- a/unmaintained/strata/networking-utils/libnetfilter_cttimeout.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libnetfilter_cttimeout -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/libnetfilter_queue.morph b/unmaintained/strata/networking-utils/libnetfilter_queue.morph deleted file mode 100644 index d2b80d38..00000000 --- a/unmaintained/strata/networking-utils/libnetfilter_queue.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libnetfilter_queue -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/libnfnetlink.morph b/unmaintained/strata/networking-utils/libnfnetlink.morph deleted file mode 100644 index f4fe79ab..00000000 --- a/unmaintained/strata/networking-utils/libnfnetlink.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libnfnetlink -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/libpcap.morph b/unmaintained/strata/networking-utils/libpcap.morph deleted file mode 100644 index 7c5ee932..00000000 --- a/unmaintained/strata/networking-utils/libpcap.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: libpcap -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/networking-utils/tcpdump.morph b/unmaintained/strata/networking-utils/tcpdump.morph deleted file mode 100644 index 7a974dab..00000000 --- a/unmaintained/strata/networking-utils/tcpdump.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: tcpdump -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/ntpd.morph b/unmaintained/strata/ntpd.morph deleted file mode 100644 index b4f2b857..00000000 --- a/unmaintained/strata/ntpd.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: ntpd -kind: stratum -build-depends: -- morph: strata/foundation.morph -chunks: -- name: ntpd - morph: unmaintained/strata/ntpd/ntpd.morph - repo: upstream:ntp - ref: b2ccf8dd31d1457ae9f0ae270054117179220370 - unpetrify-ref: ntp-4.2.8p2 diff --git a/unmaintained/strata/ntpd/ntpd.morph b/unmaintained/strata/ntpd/ntpd.morph deleted file mode 100644 index 762762c7..00000000 --- a/unmaintained/strata/ntpd/ntpd.morph +++ /dev/null @@ -1,51 +0,0 @@ -name: ntpd -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --enable-linuxcaps -post-install-commands: -- | - cat > ntpd.service << EOF - [Unit] - Description=Network Time Service - After=network.target nss-lookup.target - Conflicts=systemd-timesyncd.service - - [Service] - Type=forking - ExecStart=/usr/bin/ntpd -u ntp:ntp -Ng - PrivateTmp=True - Restart=on-failure - - [Install] - WantedBy=multi-user.target - EOF -- install -D -m 644 ntpd.service "$DESTDIR"/lib/systemd/system/ntpd.service -- mkdir -p "$DESTDIR"/lib/systemd/system/multi-user.target.wants -- ln -s /lib/systemd/system/ntpd.service "$DESTDIR"/lib/systemd/system/multi-user.target.wants/ntpd.service -- | - cat > ntp.conf << EOF - # We use iburst here to reduce the potential initial delay to set the clock - server 0.pool.ntp.org iburst - server 1.pool.ntp.org iburst - server 2.pool.ntp.org iburst - server 3.pool.ntp.org iburst - - # kod - notify client when packets are denied service, - # rather than just dropping the packets - # - # nomodify - deny queries which attempt to modify the state of the server - # - # notrap - decline to provide mode 6 control message trap service to - # matching hosts - # - # see ntp.conf(5) for more details - restrict -4 default limit kod notrap nomodify - restrict -6 default limit kod notrap nomodify - EOF -- install -D -m 644 ntp.conf "$DESTDIR"/etc/ntp.conf -system-integration: - ntpd-misc: - 00-add-ntpd-user: - - groupadd -r ntp - - useradd -g ntp -d /home/ntp -s /bin/false -r ntp diff --git a/unmaintained/strata/ocaml-language.morph b/unmaintained/strata/ocaml-language.morph deleted file mode 100644 index 68e276cc..00000000 --- a/unmaintained/strata/ocaml-language.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: ocaml-language -kind: stratum -description: | - OCaml -build-depends: -- morph: strata/core.morph -chunks: -- name: ocaml - morph: unmaintained/strata/ocaml-language/ocaml.morph - repo: upstream:ocaml - ref: fa7961d5fada53056f38a9ae36615df26352028a diff --git a/unmaintained/strata/ocaml-language/ocaml.morph b/unmaintained/strata/ocaml-language/ocaml.morph deleted file mode 100644 index 00e36767..00000000 --- a/unmaintained/strata/ocaml-language/ocaml.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: ocaml -kind: chunk -configure-commands: -- ./configure --prefix "$PREFIX" -build-commands: -- make world.opt -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/openstack-clients/appdirs.morph b/unmaintained/strata/openstack-clients/appdirs.morph deleted file mode 100644 index 53d0e476..00000000 --- a/unmaintained/strata/openstack-clients/appdirs.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: appdirs -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/argparse.morph b/unmaintained/strata/openstack-clients/argparse.morph deleted file mode 100644 index 499df5f5..00000000 --- a/unmaintained/strata/openstack-clients/argparse.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: argparse -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/cliff-tablib.morph b/unmaintained/strata/openstack-clients/cliff-tablib.morph deleted file mode 100644 index 4b48ba14..00000000 --- a/unmaintained/strata/openstack-clients/cliff-tablib.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: cliff-tablib -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/os-client-config.morph b/unmaintained/strata/openstack-clients/os-client-config.morph deleted file mode 100644 index 13c473d2..00000000 --- a/unmaintained/strata/openstack-clients/os-client-config.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: os-client-config -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/pyparsing.morph b/unmaintained/strata/openstack-clients/pyparsing.morph deleted file mode 100644 index 60088544..00000000 --- a/unmaintained/strata/openstack-clients/pyparsing.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: pyparsing -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/unmaintained/strata/openstack-clients/python-ironicclient.morph b/unmaintained/strata/openstack-clients/python-ironicclient.morph deleted file mode 100644 index 95be0bd8..00000000 --- a/unmaintained/strata/openstack-clients/python-ironicclient.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: python-ironicclient -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/python-openstackclient.morph b/unmaintained/strata/openstack-clients/python-openstackclient.morph deleted file mode 100644 index a4c9fae7..00000000 --- a/unmaintained/strata/openstack-clients/python-openstackclient.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: python-openstackclient -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-clients/tablib.morph b/unmaintained/strata/openstack-clients/tablib.morph deleted file mode 100644 index 821ceb95..00000000 --- a/unmaintained/strata/openstack-clients/tablib.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: tablib -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-services.morph b/unmaintained/strata/openstack-services.morph deleted file mode 100644 index 9bdbf482..00000000 --- a/unmaintained/strata/openstack-services.morph +++ /dev/null @@ -1,806 +0,0 @@ -name: openstack-services -kind: stratum -description: Openstack clients and services -build-depends: -- morph: strata/erlang.morph -- morph: unmaintained/strata/django.morph -- morph: unmaintained/strata/xstatic.morph -- morph: strata/openstack-clients.morph -- morph: unmaintained/strata/test-tools.morph -- morph: strata/python-tools.morph -chunks: -- name: erlang-sd_notify - morph: unmaintained/strata/openstack-services/erlang-sd_notify.morph - repo: upstream:erlang-modules/erlang-sd_notify - ref: 99f4689c2c18570680329f822591f95f9341ca10 - unpetrify-ref: '0.1' -- name: rabbitmq-codegen - morph: unmaintained/strata/openstack-services/rabbitmq-codegen.morph - ref: 4dc5ccde2a0b3d638e5754b00abf94196fe9ca32 - unpetrify-ref: rabbitmq_v3_4_1 - repo: upstream:rabbitmq-codegen -- name: rabbitmq-server - morph: unmaintained/strata/openstack-services/rabbitmq-server.morph - ref: 9afcf9b95d2c53f866e9a33ddce46562f8950ded - unpetrify-ref: baserock/master - repo: upstream:rabbitmq-server - build-depends: - - rabbitmq-codegen -- name: oslo-rootwrap - repo: upstream:openstack/oslo-rootwrap - ref: f485b93f475b119e3b8fa6c9cf740207e2d2d7ac - unpetrify-ref: 1.6.0 - build-system: python-distutils -- name: py-amqp - repo: upstream:python-packages/py-amqp - ref: 875b10d1715def640042c7ff2f42c00a6c07eed1 - unpetrify-ref: 1.4.6 - build-system: python-distutils -- name: librabbitmq - morph: unmaintained/strata/openstack-services/librabbitmq.morph - repo: upstream:python-packages/librabbitmq - ref: ecccbd2c7d92f6e189e362b26def8d980fa50e3b - unpetrify-ref: baserock/v1.6.1 - build-depends: - - py-amqp - submodules: - rabbitmq-codegen: - url: upstream:rabbitmq-codegen.git - rabbitmq-c: - url: upstream:python-packages/rabbitmq-c-github-ask.git -- name: anyjson - repo: upstream:python-packages/anyjson - ref: 016506078e94718e1fe750eb5083ab5ba07498c8 - unpetrify-ref: 0.3.3 - build-system: python-distutils -- name: kombu - repo: upstream:python-packages/kombu - ref: 0287b11ab0698d9c52ef1b1683ced23123d43ba4 - unpetrify-ref: v3.0.26 - build-system: python-distutils - build-depends: - - anyjson - - py-amqp - - librabbitmq -- name: sqlalchemy - repo: upstream:python-packages/sqlalchemy - ref: ff34c480dfd2b8b7c72339d196f5477980a5124c - unpetrify-ref: rel_0_9_8 - build-system: python-distutils -- name: alembic - repo: upstream:python-packages/alembic - ref: 6ae4196acc0170ebef29f617b49376b371a8923c - unpetrify-ref: rel_0_7_6 - build-system: python-distutils - build-depends: - - sqlalchemy -- name: lockfile - repo: upstream:python-packages/lockfile - ref: 777758cdf4520271370b3338b86b5c66f9b104f0 - unpetrify-ref: master - build-system: python-distutils -- name: dogpile-core - repo: upstream:python-packages/dogpile-core - ref: 3e6f0f86b4161b48898e656039154092426e5cc8 - unpetrify-ref: rel_0_4_1 - build-system: python-distutils -- name: dogpile-cache - repo: upstream:python-packages/dogpile-cache - ref: 1c753914b335b4391bc5847a87b7c52ca81c2bc6 - unpetrify-ref: rel_0_5_4 - build-system: python-distutils - build-depends: - - dogpile-core -- name: pyjwt - repo: upstream:python-packages/pyjwt - ref: 739efeff4c6c1fc30ab5cf5eb0ac337e8ee107d7 - unpetrify-ref: 0.2.3 - build-system: python-distutils -- name: creole - repo: upstream:python-packages/creole - ref: 6390231688adb5d8678a71cd33204e9bca555d4a - unpetrify-ref: v1.2.1 - build-system: python-distutils -- name: pygments - repo: upstream:python-packages/pygments - ref: f41e8c594e76855611b3b3dfca300894bd29f1c4 - unpetrify-ref: 2.0rc1 - build-system: python-distutils -- name: docutils - repo: upstream:python-packages/docutils - ref: 1976ba91eff979abc3e13e5d8cb68324833af6a0 - unpetrify-ref: docutils-0.12 - build-system: python-distutils -- name: snowballstemmer - repo: upstream:python-packages/snowballstemmer.git - ref: f0d81ce1606d685029302ea073b59d9437d12569 - unpetrify-ref: master - build-system: python-distutils -- name: sphinx - repo: upstream:python-packages/sphinx - ref: e76c9771bad16e68cdb7deb18b4d13de0a718c68 - unpetrify-ref: 1.3b1 - build-system: python-distutils - build-depends: - - pygments - - docutils - - snowballstemmer -- name: pystache - repo: upstream:python-packages/pystache.git - ref: cce3ebd658f28aeb7dd54561554dedf5259303dc - unpetrify-ref: baserock/v0.5.4 - build-system: python-distutils - submodules: - ext/spec: - url: upstream:mustache-spec -- name: pies - repo: upstream:python-packages/pies.git - ref: 593dcce07fdb3e8d0053a863a7aba7f2ce8a6c9c - unpetrify-ref: 2.6.1 - build-system: python-distutils -- name: natsort - repo: upstream:python-packages/natsort.git - ref: ce94d418c3849e891f0508b41f5bccc4ae1d4e4d - unpetrify-ref: 3.5.1 - build-system: python-distutils -- name: isort - repo: upstream:python-packages/isort.git - ref: 9d1b03b6e1fd2f87be1c635d6159a76a131f8155 - unpetrify-ref: 3.9.0 - build-system: python-distutils - build-depends: - - pies - - natsort -- name: pep8 - repo: upstream:python-packages/pep8.git - ref: 164066c4d85f212f5f4a11699b848942c678b947 - unpetrify-ref: 1.5.7 - build-system: python-distutils -- name: pyflakes - repo: upstream:python-packages/pyflakes.git - ref: 71b7b6776856912d50a0b9a85a8ea2a1dc7eb75c - unpetrify-ref: 0.8.1 - build-system: python-distutils -- name: smartypants - repo: upstream:python-packages/smartypants.git - ref: e89b6e7e119694edcd414a556c634d5ca85bff76 - unpetrify-ref: v1.8.6 - build-system: python-distutils - build-depends: - - isort - - pep8 - - pyflakes -- name: pycco - repo: upstream:python-packages/pycco - ref: 22e157e525760e843dba391ca85fbe9bd35fdc5b - unpetrify-ref: master - build-system: python-distutils - build-depends: - - pygments - - pystache - - smartypants -- name: dateutil - repo: upstream:python-packages/dateutil - ref: 8c6026ba09716a4e164f5420120bfe2ebb2d9d82 - unpetrify-ref: trunk - build-system: python-distutils -- name: posix-ipc-tarball - repo: upstream:python-packages/posix-ipc-tarball - ref: f3765db04b903b3671733e07cf1541a51966dd14 - unpetrify-ref: posix_ipc-0.9.8 - build-system: python-distutils -- name: paste - repo: upstream:python-packages/paste - ref: 4c177fce89fee925f0f4fbfde00ce2e1252562c0 - unpetrify-ref: master - build-system: python-distutils -- name: repoze-lru - repo: upstream:python-packages/repoze-lru - ref: 29c8281dee7fe8dae8c66c7c40ce7c058ec2ab0f - unpetrify-ref: '0.6' - build-system: python-distutils -- name: routes - repo: upstream:python-packages/routes - ref: 745a9207d9e48e309e292172543bc21075e65e09 - unpetrify-ref: v2.1 - build-system: python-distutils - build-depends: - - repoze-lru -- name: passlib - repo: upstream:python-packages/passlib - ref: f407312597727a08440e41bc8e31d3b3b334c66f - unpetrify-ref: 1.6.2 - build-system: python-distutils -- name: tempita - repo: upstream:python-packages/tempita - ref: b2b67795a009e9f825cbd855d766b78a00273f10 - unpetrify-ref: '0.5' - build-system: python-distutils -- name: numpy - repo: upstream:python-packages/numpy.git - ref: 65293874fb101907e1648e6b4fafd30d0aa1172a - unpetrify-ref: baserock/v1.9.0 - build-system: python-distutils - build-depends: - - sphinx - submodules: - doc/sphinxext: - url: upstream:numpydoc.git - doc/scipy-sphinx-theme: - url: upstream:scipy-sphinx-theme.git -- name: websockify - repo: upstream:python-packages/websockify - ref: 2f025741f86419d4ad5702dabf5903db3dbfe77c - unpetrify-ref: baserock/v0.6.1-1-g2f02574 - build-system: python-distutils - build-depends: - - numpy - submodules: - include/web-socket-js-project: - url: upstream:web-socket-js.git -- name: httplib2 - repo: upstream:python-packages/httplib2 - ref: f9f797223d075874b0031aea832152688ec23fef - unpetrify-ref: v0.9.1 - build-system: python-distutils -- name: suds - repo: upstream:python-packages/suds - ref: e7a317f1a20a4d3c86ac85785bb32d24c3d1078f - unpetrify-ref: baserock/release-0.4 - build-system: python-distutils -- name: jsonrpclib - repo: upstream:python-packages/jsonrpclib - ref: 53c8ffcfe4dd1718086cc551dce8ac459e8abc67 - unpetrify-ref: master - build-system: python-distutils -- name: rtslib-fb - repo: upstream:python-packages/rtslib-fb - ref: 8ffb4739d596fb1aac5d62d173d1e6f80270af9d - unpetrify-ref: v2.1.fb52 - morph: unmaintained/strata/openstack-services/rtslib-fb.morph -- name: python-pexpect - repo: upstream:python-packages/pexpect - ref: 671417beb41c21f772687c565196fdde444b053b - unpetrify-ref: '3.3' - build-system: python-distutils -- name: ply - repo: upstream:python-packages/ply.git - ref: 6513f3537d80f483ec9c7e36d52e87f107a57f23 - unpetrify-ref: master - build-system: python-distutils -- name: jsonpath-rw - repo: upstream:python-packages/jsonpath-rw - ref: f4cfe56b8e8370116c5275ddcea970e9a68fd75d - unpetrify-ref: 1.2.3 - build-system: python-distutils - build-depends: - - ply -- name: logutils - repo: upstream:python-packages/logutils.git - ref: 095f14efbaaf838b7772bffd36a466abb9668efe - unpetrify-ref: 0.3.3 - build-system: python-distutils -- name: pecan - repo: upstream:python-packages/pecan - ref: c7f241fd6bb8a0b10e02b8b43aaf1810c312cfbf - unpetrify-ref: 0.8.0 - build-system: python-distutils - build-depends: - - logutils -- name: croniter - repo: upstream:python-packages/croniter - ref: 0c3aeac05791cb4ece9e30da29442e9cd5b22f36 - unpetrify-ref: 0.3.5 - build-system: python-distutils - build-depends: - - dateutil -- name: msgpack-python - repo: upstream:python-packages/msgpack-python - ref: 61bac2f586e82313a0e618093bfed2435cd18983 - unpetrify-ref: 0.4.2 - build-system: python-distutils -- name: qpid-python - morph: unmaintained/strata/openstack-services/qpid-python.morph - repo: upstream:python-packages/qpid-python - ref: 587b0febaf1996db1e483137ed6addb45580ee9e - unpetrify-ref: '0.30' -- name: simplegeneric-tarball - repo: upstream:python-packages/simplegeneric-tarball - ref: 601fab9b154c557dfd848d531a8969f4697d1aa2 - unpetrify-ref: simplegeneric_0.8.1.orig - build-system: python-distutils -- name: ipaddr-py - morph: unmaintained/strata/openstack-services/ipaddr-py.morph - ref: c813f4790d1092b1515ee18fe8270180ed3cc5cb - unpetrify-ref: master - repo: upstream:python-packages/ipaddr-py -- name: wsme - repo: upstream:python-packages/wsme - ref: 99d7668789cc6252398222549599d1363cddb081 - unpetrify-ref: 0.6.1 - build-system: python-distutils - build-depends: - - ipaddr-py - - simplegeneric-tarball -- name: pysnmp - repo: upstream:python-packages/pysnmp - ref: 1b377afeaf9ee96ab1d48aeebb2b7a6d65a4ac9d - unpetrify-ref: release_4_2_5_tag - build-system: python-distutils -- name: thrift - morph: unmaintained/strata/openstack-services/thrift.morph - repo: upstream:thrift - ref: 591e20f9636c37527a70dc03598218c3468a0eff - unpetrify-ref: 0.9.2 -- name: retrying - repo: upstream:python-packages/retrying - ref: cab083eb5791615fadbc0c98ad77a70d64b77d0d - unpetrify-ref: v1.3.1 - build-system: python-distutils -- name: oslo-context - repo: upstream:openstack/oslo-context - ref: 1c4757a9fb41e47867bd9b8d390057ad7636b76f - unpetrify-ref: 0.2.0 - build-system: python-distutils -- name: oslo-middleware - repo: upstream:openstack/oslo-middleware - ref: bff184a2b5b1a0d3d22508a7544075378aca9e13 - unpetrify-ref: 1.2.0 - build-system: python-distutils - build-depends: - - oslo-context -- name: oslo-messaging - repo: upstream:openstack/oslo-messaging - ref: 562c41bb78f578ff9c27633c04ac6dd914c55f5a - unpetrify-ref: 1.8.2 - build-system: python-distutils - build-depends: - - kombu -- name: ordereddict - repo: upstream:python-packages/ordereddict-tarball - ref: 332cd0213829089dd827a32e7c5e64c41ce79cbc - unpetrify-ref: ordereddict-1.1 - build-system: python-distutils -- name: trollius - repo: upstream:python-packages/trollius - ref: fe6f8d61b1257bc01cdf4f789aaf4a8ec3d6f8ec - unpetrify-ref: trollius-1.0.4 - build-system: python-distutils - build-depends: - - ordereddict -- name: aioeventlet - repo: upstream:python-packages/aioeventlet - ref: 3cac0d7740592a380a7dadb2ddcdda000cae2bda - unpetrify-ref: '0.4' - build-system: python-distutils - build-depends: - - trollius -- name: urllib3 - repo: upstream:python-packages/urllib3 - ref: 8434c77d845255c4002b505c6c2d79c3b35def0d - unpetrify-ref: 1.10.4 - build-system: python-distutils -- name: oslo-concurrency - repo: upstream:openstack/oslo-concurrency - ref: a2473ed0a59e4553766ffcb1ee8f06cb98b14a48 - unpetrify-ref: 1.8.0 - build-system: python-distutils - build-depends: - - posix-ipc-tarball - - retrying -- name: oslo-vmware - repo: upstream:openstack/oslo-vmware - ref: 5de2c31e9d24f40fc7d33ddb1ce407ffdc6f366c - unpetrify-ref: 0.11.1 - build-system: python-distutils - build-depends: - - oslo-concurrency - - suds - - urllib3 - - httplib2 -- name: taskflow - repo: upstream:openstack/taskflow - ref: 28bece7c7c97199b8d941b16865c3670c323589a - unpetrify-ref: 0.7.1 - build-system: python-distutils -- name: sqlalchemy-migrate - repo: upstream:python-packages/sqlalchemy-migrate - ref: e57ee4c3a4247c634980cbeba74d04a01253967d - unpetrify-ref: 0.9.6 - build-system: python-distutils - build-depends: - - sqlalchemy - - tempita -- name: oauthlib - repo: upstream:python-packages/oauthlib - ref: fd239fca84644896b1971cf24bc6213d065adb86 - unpetrify-ref: 0.7.2 - build-system: python-distutils - build-depends: - - docutils - - creole - - pycco - - sphinx - - pyjwt -- name: happybase - repo: upstream:python-packages/happybase - ref: 90a4b7ef741f0ecfe5145693f64c6f7180b9ba3d - unpetrify-ref: '0.8' - build-system: python-distutils - build-depends: - - thrift -- name: osprofiler - repo: upstream:python-packages/osprofiler - ref: bbe39b517263017c9db56ae1d904d08846eacff7 - unpetrify-ref: 0.3.0 - build-system: python-distutils -- name: pycadf - repo: upstream:python-packages/pycadf - ref: 9501f4f74c5d800ae43edbe52680e285cf98c710 - unpetrify-ref: 0.9.0 - build-system: python-distutils - build-depends: - - oslo-context - - oslo-messaging - - posix-ipc-tarball -- name: keystonemiddleware - repo: upstream:openstack/keystonemiddleware - ref: 0e63b0e13d0a7919fddd7576c99bc15a45d31a9f - unpetrify-ref: 1.5.1 - build-system: python-distutils - build-depends: - - pycadf - - oslo-context -- name: oslo-db - repo: upstream:openstack/oslo-db - ref: 3e6a30c396aa42ef0eccb5b3625af728d8d3f437 - unpetrify-ref: 1.7.1 - build-system: python-distutils - build-depends: - - alembic - - sqlalchemy - - sqlalchemy-migrate -- name: glance_store - repo: upstream:openstack/glance_store.git - ref: ea88e503b617a7ac9a0ae7e537d6517e9992a104 - unpetrify-ref: 0.4.0 - build-system: python-distutils - build-depends: - - ordereddict - - oslo-concurrency -- name: oslo-log - repo: upstream:openstack/oslo-log - ref: 54e3d0e705accfaa4c73a01fc2ea1480fcc0024e - unpetrify-ref: 1.0.0 - build-system: python-distutils - build-depends: - - oslo-context -- name: oslo-policy - repo: upstream:openstack/oslo-policy - ref: 4c8f38cd1d088c46be314b47f6774e721813c6d9 - unpetrify-ref: 0.3.2 - build-system: python-distutils -- name: semantic-version - repo: upstream:python-packages/semantic-version - ref: 2174bdcae6e46f5f68f5b8ea984a695db9f41bcf - unpetrify-ref: v2.4.1 - build-system: python-distutils -- name: glance - morph: unmaintained/strata/openstack-services/glance.morph - repo: upstream:openstack/glance - ref: 93b0d5fce3a41e4a3a549f98f78b6681cbc3ea95 - unpetrify-ref: 2015.1.0 - build-depends: - - sqlalchemy - - anyjson - - routes - - sqlalchemy-migrate - - httplib2 - - kombu - - keystonemiddleware - - wsme - - oslo-vmware - - oslo-concurrency - - oslo-context - - oslo-log - - oslo-policy - - paste - - oslo-db - - oslo-messaging - - retrying - - osprofiler - - ordereddict - - glance_store - - semantic-version - - taskflow - - posix-ipc-tarball -- name: sqlparse - repo: upstream:python-packages/sqlparse - ref: 991e7348075accae6d08025212251af21e92e664 - unpetrify-ref: 0.1.13 - build-system: python-distutils -- name: pysaml2 - repo: upstream:python-packages/pysaml2.git - ref: 13ff5e8899300c9b359fa1bdfdb3d412be0d7356 - unpetrify-ref: 2.4.0 - build-system: python-distutils -- name: keystone - morph: unmaintained/strata/openstack-services/keystone.morph - repo: upstream:openstack/keystone - ref: 5d3b31f9c3d34599ff8a83eeb7530fc6e0b1b67b - unpetrify-ref: 2015.1.0 - build-depends: - - paste - - routes - - sqlalchemy - - sqlalchemy-migrate - - passlib - - keystonemiddleware - - oslo-concurrency - - oslo-messaging - - oslo-db - - oslo-log - - oslo-middleware - - oslo-policy - - oauthlib - - dogpile-cache - - pycadf - - posix-ipc-tarball - - pysaml2 -- name: neutron - morph: unmaintained/strata/openstack-services/neutron.morph - repo: upstream:openstack/neutron - ref: 7260e0e3fc2ea479e80e0962624aca7fd38a1f60 - unpetrify-ref: 2015.1.0 - build-depends: - - paste - - routes - - httplib2 - - jsonrpclib - - keystonemiddleware - - sqlalchemy - - alembic - - retrying - - oslo-db - - oslo-messaging - - oslo-rootwrap - - oslo-concurrency - - oslo-context - - oslo-log - - oslo-middleware -- name: wsgiref - repo: upstream:python-packages/wsgiref.git - ref: e8360785eef259394e13b2062407edc3c2cbc1e0 - unpetrify-ref: baserock/master - build-system: python-distutils -- name: rfc3986 - repo: upstream:python-packages/python-rfc3986.git - ref: 9817ec3e47bca8fba9a7cac56d785e9d644f7473 - unpetrify-ref: rfc3986-0.2.0 - build-system: python-distutils -- name: urwid - repo: upstream:python-packages/urwid - ref: 838839f7a300a774240d52f943aafd6ff44b2413 - unpetrify-ref: release-1.3.0 - build-system: python-distutils -- name: configshell-fb - repo: upstream:python-packages/configshell-fb - ref: 8c151ccdd75956da60b2304417c41a60a2c28231 - unpetrify-ref: v1.1.fb17 - build-system: python-distutils -- name: targetcli-fb - repo: upstream:python-packages/targetcli - ref: c62610f3c2da6b4d364028c18bcc7f0d3da54477 - unpetrify-ref: v2.1.fb39 - build-system: python-distutils - build-depends: - - configshell-fb - - rtslib-fb -- name: sysfsutils - morph: unmaintained/strata/openstack-services/sysfsutils.morph - repo: upstream:sysfsutils - ref: 237bf36e664db92f95b75067bf0f246726993254 - unpetrify-ref: sysfsutils-2_1_0 - build-system: autotools -- name: open-iscsi - morph: unmaintained/strata/openstack-services/open-iscsi.morph - repo: upstream:open-iscsi - ref: 8da14e6f9eeeb4fd03938d40fe1126fe0d110b68 - unpetrify-ref: master -- name: nova - morph: unmaintained/strata/openstack-services/nova.morph - repo: upstream:openstack/nova - ref: 8397b6464af520903f546ce4c6d51a2eb5b4c8a8 - unpetrify-ref: 2015.1.0 - build-depends: - - sqlalchemy - - keystonemiddleware - - routes - - paste - - sqlalchemy-migrate - - websockify - - oslo-db - - oslo-rootwrap - - oslo-messaging - - rfc3986 - - oslo-concurrency - - oslo-context - - oslo-log - - oslo-messaging -- name: cinder - morph: unmaintained/strata/openstack-services/cinder.morph - repo: upstream:openstack/cinder - ref: 5987bb2290f629e59b0bcced2f8fe22cdeb9cc6d - unpetrify-ref: 2015.1.0 - build-depends: - - anyjson - - keystonemiddleware - - kombu - - oslo-concurrency - - oslo-context - - oslo-db - - oslo-log - - oslo-messaging - - oslo-middleware - - oslo-rootwrap - - osprofiler - - paste - - retrying - - routes - - taskflow - - rtslib-fb - - sqlalchemy - - sqlalchemy-migrate - - suds - - oslo-vmware -- name: pymemcache - repo: upstream:python-packages/pymemcache - ref: 0646937c2bfebdb557ec2c01f0e42a9af79ad49d - unpetrify-ref: v1.2.9 - build-system: python-distutils -- name: sysv_ipc-tarball - repo: upstream:python-packages/sysv-ipc-tarball.git - ref: a77e3a63f004e6ee789fa05e4a5bbc333b1529f1 - unpetrify-ref: sysv_ipc-0.6.8 - build-system: python-distutils -- name: redis-py - repo: upstream:python-packages/redis-py - ref: 4d0b0afe9c9a431ed50c3e9fb95a0aa88b1f1038 - unpetrify-ref: 2.10.3 - build-system: python-distutils -- name: tooz - repo: upstream:python-packages/tooz - ref: 8086661f404e61c22f0dd1d07b57a864862a0869 - unpetrify-ref: 0.13.2 - build-system: python-distutils - build-depends: - - pymemcache - - msgpack-python - - retrying - - redis-py -- name: kafka-python - repo: upstream:python-packages/kafka-python - ref: 8675c3e3e620df5ba9fd7e570c554b773429bd78 - unpetrify-ref: v0.9.3 - build-system: python-distutils -- name: werkzeug - repo: upstream:python-packages/werkzeug - ref: 96e49709d627a7766077cff4c98ebf3cad868ceb - unpetrify-ref: v0.10.4 - build-system: python-distutils -- name: requests-aws - repo: upstream:python-packages/python-requests-aws - ref: 48fe401c78eb1b1048cd20e2d26015585a7986cb - unpetrify-ref: master - build-system: python-distutils -- name: ceilometer - repo: upstream:openstack/ceilometer - morph: unmaintained/strata/openstack-services/ceilometer.morph - ref: b0447ed8e7bee371bf7095c86e47d717abe89edc - unpetrify-ref: 2014.1.0 - build-depends: - - retrying - - alembic - - croniter - - jsonpath-rw - - kafka-python - - keystonemiddleware - - msgpack-python - - oslo-context - - oslo-db - - oslo-concurrency - - oslo-policy - - oslo-rootwrap - - pecan - - posix-ipc-tarball - - oslo-messaging - - oslo-middleware - - pysnmp - - sqlalchemy - - sqlalchemy-migrate - - tooz - - werkzeug - - wsme - - requests-aws -- name: django-openstack-auth - repo: upstream:openstack/django_openstack_auth - ref: 0e1f7b78277850634992a594132921efb83256e0 - unpetrify-ref: 1.2.0 - build-system: python-distutils -- name: pint - repo: upstream:python-packages/pint - ref: e7e7de5ca2e1c19963be8a918369fb19186f9a73 - unpetrify-ref: '0.6' - build-system: python-distutils -- name: horizon - morph: unmaintained/strata/openstack-services/horizon.morph - repo: upstream:openstack/horizon - ref: b99cf48ff346494198fb9740495eacc14fa406bf - unpetrify-ref: 2015.1.0 - build-depends: - - pint - - django-openstack-auth - - kombu - - oslo-concurrency -- name: novnc - morph: unmaintained/strata/openstack-services/novnc.morph - repo: upstream:novnc - ref: 97be997f62d59c028fc45323b00e3b93fafe4eb4 - unpetrify-ref: baserock/v0.5.1 - submodules: - include/web-socket-js-project: - url: upstream:web-socket-js -- name: pyserial - repo: upstream:python-packages/pyserial - ref: bcfc1ec2fdb9a8c9c867481d7673e85fe512e667 - unpetrify-ref: release2_7 - build-system: python-distutils -- name: tempest-lib - repo: upstream:openstack/tempest-lib - ref: c307ffc525d896e2071319c8067aec805804f92b - unpetrify-ref: 0.5.0 - build-system: python-distutils -- name: tempest - morph: unmaintained/strata/openstack-services/tempest.morph - repo: upstream:openstack/tempest - ref: 26149b612d01ad605e4d0f41a2d67280c8088cda - unpetrify-ref: '4' - build-depends: - - tempest-lib -- name: tftp-hpa - morph: unmaintained/strata/openstack-services/tftp-hpa.morph - repo: upstream:tftp-hpa - ref: 4faf178a509d8091b7ba1e1fa3d13bc68c5ff55f - unpetrify-ref: tftp-hpa-5.2 -- name: singledispatch - morph: unmaintained/strata/openstack-services/singledispatch.morph - repo: upstream:python-packages/singledispatch - ref: 92175ba65602a03086d2b1f770f45d88af93fc3e - unpetrify-ref: 3.4.0.3 -- name: pysendfile - morph: unmaintained/strata/openstack-services/pysendfile.morph - repo: upstream:python-packages/pysendfile - ref: 6775b2938ef74255239c8e08458369921297b311 - unpetrify-ref: release-2.0.0 -- name: ironic - morph: unmaintained/strata/openstack-services/ironic.morph - repo: upstream:openstack/ironic - ref: dee609cb7976e9b3cc07c3d342a271c4a347f69f - unpetrify-ref: 2015.1.0 - build-depends: - - sqlalchemy - - alembic - - sqlalchemy-migrate - - pysendfile - - websockify - - oslo-concurrency - - oslo-context - - oslo-db - - oslo-rootwrap - - oslo-policy - - pecan - - wsme - - keystonemiddleware - - oslo-messaging - - retrying - - posix-ipc-tarball diff --git a/unmaintained/strata/openstack-services/ceilometer.morph b/unmaintained/strata/openstack-services/ceilometer.morph deleted file mode 100644 index f120ce9e..00000000 --- a/unmaintained/strata/openstack-services/ceilometer.morph +++ /dev/null @@ -1,23 +0,0 @@ -name: ceilometer -kind: chunk -build-system: python-distutils -post-install-commands: -# Install the configuration files required to -- mkdir -p "$DESTDIR"/etc/ceilometer -- install -D -m 644 etc/ceilometer/*.json "$DESTDIR"/etc/ceilometer -- install -D -m 644 etc/ceilometer/*.yaml "$DESTDIR"/etc/ceilometer -- install -D -m 644 etc/ceilometer/api_paste.ini "$DESTDIR"/etc/ceilometer/api_paste.ini -# Install rootwrap.conf -- install -D -m 640 etc/ceilometer/rootwrap.conf "$DESTDIR"/etc/ceilometer/rootwrap.conf -# Move rootwrap files to a proper location -- mkdir -p "$DESTDIR"/etc/ceilometer/rootwrap.d -- install -D -m 644 etc/ceilometer/rootwrap.d/* "$DESTDIR"/etc/ceilometer/rootwrap.d/ -# Add ceilometer to sudoers controlling which commands will run as a root -# using the openstack rootwrap. -- mkdir -p "$DESTDIR"/etc/sudoers.d -- | - install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/ceilometer-rootwrap - Defaults:ceilometer !requiretty - - ceilometer ALL=(root) NOPASSWD: /usr/bin/ceilometer-rootwrap /etc/ceilometer/rootwrap.conf * - EOF diff --git a/unmaintained/strata/openstack-services/cinder.morph b/unmaintained/strata/openstack-services/cinder.morph deleted file mode 100644 index a0fc879f..00000000 --- a/unmaintained/strata/openstack-services/cinder.morph +++ /dev/null @@ -1,21 +0,0 @@ -name: cinder -kind: chunk -build-system: python-distutils -post-install-commands: -# Install some default configuration files -- install -D -m 644 etc/cinder/logging_sample.conf "$DESTDIR"/etc/cinder/logging.conf -- install -D -m 644 etc/cinder/api-paste.ini "$DESTDIR"/etc/cinder/api-paste.ini -- install -D -m 644 etc/cinder/policy.json "$DESTDIR"/etc/cinder/policy.json -- install -D -m 640 etc/cinder/rootwrap.conf "$DESTDIR"/etc/cinder/rootwrap.conf -# Move rootwrap files to a proper location -- mkdir -p "$DESTDIR"/etc/cinder/rootwrap.d -- install -D -m 644 etc/cinder/rootwrap.d/* "$DESTDIR"/etc/cinder/rootwrap.d/ -# Add cinder to sudoers controlling which commands will run as a root -# using the openstack rootwrap. -- mkdir -p "$DESTDIR"/etc/sudoers.d -- | - install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/cinder-rootwrap - Defaults:cinder !requiretty - - cinder ALL=(root) NOPASSWD: /usr/bin/cinder-rootwrap /etc/cinder/rootwrap.conf * - EOF diff --git a/unmaintained/strata/openstack-services/erlang-sd_notify.morph b/unmaintained/strata/openstack-services/erlang-sd_notify.morph deleted file mode 100644 index dd3f66ca..00000000 --- a/unmaintained/strata/openstack-services/erlang-sd_notify.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: erlang-sd_notify -kind: chunk -build-commands: -- LDFLAGS=-lsystemd REBAR_FLAGS="--verbose 2" make -install-commands: -- install -D -m 644 -p ebin/sd_notify.app "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/ebin/sd_notify.app -- install -D -m 644 -p ebin/sd_notify.beam "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/ebin/sd_notify.beam -- install -D -m 755 -p priv/sd_notify_drv.so "$DESTDIR$PREFIX"/lib/erlang/lib/sd_notify-0.1/priv/sd_notify_drv.so diff --git a/unmaintained/strata/openstack-services/glance.morph b/unmaintained/strata/openstack-services/glance.morph deleted file mode 100644 index 3f81a505..00000000 --- a/unmaintained/strata/openstack-services/glance.morph +++ /dev/null @@ -1,29 +0,0 @@ -name: glance -kind: chunk -build-system: python-distutils -post-install-commands: -# Install some default configuration files -- mkdir -p "$DESTDIR"/etc/glance -- install -m 644 etc/glance-api-paste.ini "$DESTDIR"/etc/glance/ -- install -m 644 etc/glance-registry-paste.ini "$DESTDIR"/etc/glance/ -- install -m 644 etc/glance-search-paste.ini "$DESTDIR"/etc/glance/ -- install -m 644 etc/policy.json "$DESTDIR"/etc/glance/ -- install -m 644 etc/schema-image.json "$DESTDIR"/etc/glance/ -- install -m 644 etc/search-policy.json "$DESTDIR"/etc/glance/ -# Install predefined namespaces for Glance Metadata Definitions -# Catalog (see more info in its README) -- cp -r etc/metadefs "$DESTDIR"/etc/glance/ -# Install conf files which are not modified by -- install -m 644 etc/glance-scrubber.conf "$DESTDIR"/etc/glance/ -- install -m 644 etc/glance-cache.conf "$DESTDIR"/etc/glance/ -- install -m 644 etc/glance-search.conf "$DESTDIR"/etc/glance/ -- | - install -m 644 etc/glance-swift.conf.sample \ - "$DESTDIR"/etc/glance/glance-swift.conf -- install -m 644 etc/glance-manage.conf "$DESTDIR"/etc/glance/ -- | - install -m 644 etc/property-protections-policies.conf.sample \ - "$DESTDIR"/etc/glance/property-protections-policies.conf -- | - install -m 644 etc/property-protections-roles.conf.sample \ - "$DESTDIR"/etc/glance/property-protections-roles.conf diff --git a/unmaintained/strata/openstack-services/horizon.morph b/unmaintained/strata/openstack-services/horizon.morph deleted file mode 100644 index 74930a1e..00000000 --- a/unmaintained/strata/openstack-services/horizon.morph +++ /dev/null @@ -1,63 +0,0 @@ -name: horizon -kind: chunk -configure-commands: -# Remove unnecessary .mo files they will be generated -# later during package build. -- find . -name "django*.mo" -exec rm -f '{}' \; -build-commands: -# Compile message strings -- cd horizon && django-admin.py compilemessages -- cd openstack_dashboard && django-admin.py compilemessages -- python setup.py build - -# Use the local_settings.py example to compile and compress the css, js, etc files. -# This is a hack to make SECRET_KEY work. -- | - cp openstack_dashboard/local/local_settings.py.example \ - openstack_dashboard/local/local_settings.py -# Collect the static files and compress them. -- python manage.py collectstatic --noinput -- python manage.py compress --force -install-commands: -# Install horizon in a temporary folder first, and then move things to the -# right place in $DESTDIR -- mkdir temproot -- python setup.py install -O1 --skip-build --prefix "$PREFIX" --root temproot -# Remove unnecessary .po files -- find temproot -name django.po -exec rm '{}' \; -- find temproot -name djangojs.po -exec rm '{}' \; - -# Move openstack_dashboard to /var/lib/horizon -- mkdir -p "$DESTDIR"/var/lib/horizon/ -- | - mv temproot/"$PREFIX"/lib/python*/site-packages/openstack_dashboard \ - "$DESTDIR"/var/lib/horizon/ -- cp manage.py "$DESTDIR"/var/lib/horizon/openstack_dashboard/ - -# Copy the rest to $DESTDIR -- cp -a temproot/* "$DESTDIR" - -# Copy local_settings to /etc/horizon/openstack_dashboard, so that they -# can be modified, and link them where openstack_dashboard is installed. -- mkdir -p "$DESTDIR"/etc/horizon/openstack_dashboard/ -- | - cp openstack_dashboard/local/local_settings.py.example \ - "$DESTDIR"/etc/horizon/openstack_dashboard/local_settings.py -# Set COMPRESS_OFFLINE=True -- | - echo "COMPRESS_OFFLINE=True" >> \ - "$DESTDIR"/etc/horizon/openstack_dashboard/local_settings.py - -- mkdir -p "$DESTDIR"/var/lib/horizon/openstack_dashboard/local -- | - ln -sf /etc/horizon/openstack_dashboard/local_settings.py \ - "$DESTDIR"/var/lib/horizon/openstack_dashboard/local/local_settings.py - -# Create the static directory (STATIC_ROOT) used in local_settings.py to keep -# the static objects like css files. -- mkdir -p "$DESTDIR"/var/lib/horizon/static -# Copy the compressed static files to horizon. -- cp -a static/* "$DESTDIR"/var/lib/horizon/static - -# Create the horizon document root for apache configuration -- mkdir -p "$DESTDIR"/var/lib/horizon/.blackhole diff --git a/unmaintained/strata/openstack-services/ipaddr-py.morph b/unmaintained/strata/openstack-services/ipaddr-py.morph deleted file mode 100644 index f6691ab7..00000000 --- a/unmaintained/strata/openstack-services/ipaddr-py.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: ipaddr-py -kind: chunk -build-commands: -- cd trunk && python setup.py build -install-commands: -- cd trunk && python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/unmaintained/strata/openstack-services/ironic.morph b/unmaintained/strata/openstack-services/ironic.morph deleted file mode 100644 index 8003dd17..00000000 --- a/unmaintained/strata/openstack-services/ironic.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: ironic -kind: chunk -build-system: python-distutils -post-install-commands: -- | - mkdir -p "$DESTDIR"/etc/ironic - install -m 644 etc/ironic/policy.json "$DESTDIR"/etc/ironic - install -m 644 etc/ironic/rootwrap.conf "$DESTDIR"/etc/ironic - mkdir -p "$DESTDIR"/etc/ironic/rootwrap.d - install -m 644 etc/ironic/rootwrap.d/* "$DESTDIR"/etc/ironic/rootwrap.d/ - - # Add ironic to sudoers controlling which commands will run as a root - # using the openstack rootwrap. - install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/ironic-rootwrap - Defaults:ironic !requiretty - - ironic ALL=(root) NOPASSWD: /usr/bin/ironic-rootwrap /etc/ironic/rootwrap.conf * - EOF diff --git a/unmaintained/strata/openstack-services/keystone.morph b/unmaintained/strata/openstack-services/keystone.morph deleted file mode 100644 index 836b5d47..00000000 --- a/unmaintained/strata/openstack-services/keystone.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: keystone -kind: chunk -build-system: python-distutils -post-install-commands: -# Install some default configuration files -- mkdir -p "$DESTDIR"/etc/keystone -- install -m 644 etc/keystone-paste.ini "$DESTDIR"/etc/keystone/ -- install -m 644 etc/policy.json "$DESTDIR"/etc/keystone/ -- install -m 644 etc/logging.conf.sample "$DESTDIR"/etc/keystone/logging.conf diff --git a/unmaintained/strata/openstack-services/librabbitmq.morph b/unmaintained/strata/openstack-services/librabbitmq.morph deleted file mode 100644 index b87ce369..00000000 --- a/unmaintained/strata/openstack-services/librabbitmq.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: librabbitmq -kind: chunk -build-system: python-distutils -configure-commands: -- (cd rabbitmq-c; rm -rf codegen; ln -sf ../rabbitmq-codegen ./codegen) -- (cd rabbitmq-c; autoreconf -fvi) -- (cd rabbitmq-c; automake --add-missing) -- (cd rabbitmq-c; ./configure --disable-tools --disable-docs) -- (cd rabbitmq-c; make distdir) -- mv rabbitmq-c/rabbitmq-c-0.5.3 clib diff --git a/unmaintained/strata/openstack-services/neutron.morph b/unmaintained/strata/openstack-services/neutron.morph deleted file mode 100644 index 6e203922..00000000 --- a/unmaintained/strata/openstack-services/neutron.morph +++ /dev/null @@ -1,27 +0,0 @@ -name: neutron -kind: chunk -build-system: python-distutils -post-install-commands: -- | - # Move the configuration files to a proper location - mkdir "$DESTDIR"/etc - mv "$DESTDIR/$PREFIX"/etc/neutron "$DESTDIR"/etc - - # Remove unused start/stop script - rm "$DESTDIR/$PREFIX"/etc/init.d/neutron-server - - # Remove configuration files which will be added by Ansible - rm "$DESTDIR"/etc/neutron/neutron.conf - rm "$DESTDIR"/etc/neutron/metadata_agent.ini - rm "$DESTDIR"/etc/neutron/plugins/ml2/ml2_conf.ini - rm "$DESTDIR"/etc/neutron/dhcp_agent.ini - rm "$DESTDIR"/etc/neutron/l3_agent.ini - - # Add neutron to sudoers controlling which commands is running as a - # root using the openstack rootwrap. - mkdir -p "$DESTDIR"/etc/sudoers.d - install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/neutron-rootwrap - Defaults:neutron !requiretty - - neutron ALL=(root) NOPASSWD: /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf * - EOF diff --git a/unmaintained/strata/openstack-services/nova.morph b/unmaintained/strata/openstack-services/nova.morph deleted file mode 100644 index e5a87daf..00000000 --- a/unmaintained/strata/openstack-services/nova.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: nova -kind: chunk -build-system: python-distutils -post-install-commands: -# Install some default configuration files -- mkdir -p "$DESTDIR"/etc/nova -- install -m 644 etc/nova/api-paste.ini "$DESTDIR"/etc/nova/ -- install -m 644 etc/nova/cells.json "$DESTDIR"/etc/nova/ -- install -m 644 etc/nova/logging_sample.conf "$DESTDIR"/etc/nova/logging.conf -- install -m 644 etc/nova/policy.json "$DESTDIR"/etc/nova/ -# Install rootwrap.conf -- install -m 640 etc/nova/rootwrap.conf "$DESTDIR"/etc/nova/rootwrap.conf -# Move rootwrap files to a proper location -- mkdir -p "$DESTDIR"/etc/nova/rootwrap.d -- install -m 644 etc/nova/rootwrap.d/* "$DESTDIR"/etc/nova/rootwrap.d/ -# Add nova to sudoers controlling which commands will run as a root -# using the openstack rootwrap. -- mkdir -p "$DESTDIR"/etc/sudoers.d -- | - install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/nova-rootwrap - Defaults:nova !requiretty - - nova ALL=(root) NOPASSWD: /usr/bin/nova-rootwrap /etc/nova/rootwrap.conf * - EOF diff --git a/unmaintained/strata/openstack-services/novnc.morph b/unmaintained/strata/openstack-services/novnc.morph deleted file mode 100644 index 858320a0..00000000 --- a/unmaintained/strata/openstack-services/novnc.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: novnc -kind: chunk -install-commands: -- mkdir -p "$DESTDIR$PREFIX"/share/novnc/utils -- install -m 444 *html "$DESTDIR$PREFIX"/share/novnc -- install -m 444 vnc.html "$DESTDIR$PREFIX"/share/novnc/index.html -- mkdir -p "$DESTDIR$PREFIX"/share/novnc/include -- install -m 444 include/*.* "$DESTDIR$PREFIX"/share/novnc/include -- mkdir -p "$DESTDIR$PREFIX"/share/novnc/images -- install -m 444 images/*.* "$DESTDIR$PREFIX"/share/novnc/images -- install -d "$DESTDIR"/etc/sysconfig diff --git a/unmaintained/strata/openstack-services/open-iscsi.morph b/unmaintained/strata/openstack-services/open-iscsi.morph deleted file mode 100644 index 6a0b73b3..00000000 --- a/unmaintained/strata/openstack-services/open-iscsi.morph +++ /dev/null @@ -1,46 +0,0 @@ -name: open-iscsi -kind: chunk -build-commands: -- make -install-commands: -# Rewrite prefix and exec_prefix which are set to "/usr" and "/" respectively -- make prefix="$PREFIX" exec_prefix="$PREFIX" DESTDIR="$DESTDIR" install -# Install iscsistart app which is not listed by default in PROGRAMS -- make prefix="$PREFIX" exec_prefix="$PREFIX" DESTDIR="$DESTDIR" PROGRAMS="usr/iscsistart" - install -post-install-commands: -# Configure iscsi daemon -# Point the startup to the installed binary -- | - sed -i -e "s|iscsid.startup = \/sbin\/iscsid|iscsid.startup = "$PREFIX"/sbin/iscsid|" \ - etc/iscsid.conf -# Start up a session automatically -- sed -i -e 's|node.startup = manual|node.startup = automatic|' etc/iscsid.conf -# Install config file -- install -D -m 644 etc/iscsid.conf "$DESTDIR"/etc/iscsi -# Install custom systemd unit file -- | - install -D -m 644 /proc/self/fd/0 << 'EOF' "$DESTDIR$PREFIX"/lib/systemd/system/iscsid.service - [Unit] - Description=Open iSCSI Daemon - After=network.target - - [Service] - Type=forking - ExecStart=/usr/sbin/iscsid - - [Install] - WantedBy=multi-user.target - EOF -# Install iscsi socket unit -- | - install -D -m 644 /proc/self/fd/0 << 'EOF' "$DESTDIR$PREFIX"/lib/systemd/system/iscsid.socket - [Unit] - Description=Open-iSCSI iscsid Socket - - [Socket] - ListenStream=@ISCSIADM_ABSTRACT_NAMESPACE - - [Install] - WantedBy=sockets.target - EOF diff --git a/unmaintained/strata/openstack-services/pysendfile.morph b/unmaintained/strata/openstack-services/pysendfile.morph deleted file mode 100644 index 2e2f809b..00000000 --- a/unmaintained/strata/openstack-services/pysendfile.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: pysendfile -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-services/qpid-python.morph b/unmaintained/strata/openstack-services/qpid-python.morph deleted file mode 100644 index 203b3db5..00000000 --- a/unmaintained/strata/openstack-services/qpid-python.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: qpid-python -kind: chunk -build-commands: -- cd qpid/python && python setup.py build -install-commands: -- cd qpid/python && python setup.py install --prefix "$PREFIX" --root "$DESTDIR" diff --git a/unmaintained/strata/openstack-services/rabbitmq-codegen.morph b/unmaintained/strata/openstack-services/rabbitmq-codegen.morph deleted file mode 100644 index 2b06aeb5..00000000 --- a/unmaintained/strata/openstack-services/rabbitmq-codegen.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: rabbitmq-codegen -kind: chunk -configure-commands: [] -build-commands: [] -install-commands: -- mkdir -p "$DESTDIR$PREFIX"/lib/rabbitmq-codegen -- cp * "$DESTDIR$PREFIX"/lib/rabbitmq-codegen diff --git a/unmaintained/strata/openstack-services/rabbitmq-server.morph b/unmaintained/strata/openstack-services/rabbitmq-server.morph deleted file mode 100644 index 97b8a126..00000000 --- a/unmaintained/strata/openstack-services/rabbitmq-server.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: rabbitmq-server -kind: chunk -configure-commands: -- mkdir -p codegen -- cp /usr/lib/rabbitmq-codegen/* codegen -build-commands: -- make -install-commands: -- | - make install_bin TARGET_DIR="$DESTDIR$PREFIX" \ - SBIN_DIR="$DESTDIR$PREFIX"/sbin \ - MAN_DIR="$PREFIX"/share/man \ - DOC_INSTALL_DIR="$PREFIX"/share - -post-install-commands: -- rm "$DESTDIR$PREFIX"/LICENSE* "$DESTDIR$PREFIX"/INSTALL diff --git a/unmaintained/strata/openstack-services/rtslib-fb.morph b/unmaintained/strata/openstack-services/rtslib-fb.morph deleted file mode 100644 index 26de3f9b..00000000 --- a/unmaintained/strata/openstack-services/rtslib-fb.morph +++ /dev/null @@ -1,27 +0,0 @@ -name: rtslib-fb -kind: chunk -build-system: python-distutils -post-install-commands: -- mkdir -p "$DESTDIR$PREFIX"/lib/systemd/system - -# The following systemd unit is from the fedora package see -# http://pkgs.fedoraproject.org/cgit/python-rtslib.git/tree/target.service for -# more information - -- | - install -D -m 0644 /proc/self/fd/0 <<'EOF' "$DESTDIR$PREFIX"/lib/systemd/system/target.service - [Unit] - Description=Restore LIO kernel target configuration - Requires=sys-kernel-config.mount - After=sys-kernel-config.mount network.target local-fs.target - - [Service] - Type=oneshot - RemainAfterExit=yes - ExecStart=/usr/bin/targetctl restore - ExecStop=/usr/bin/targetctl clear - SyslogIdentifier=target - - [Install] - WantedBy=multi-user.target - EOF diff --git a/unmaintained/strata/openstack-services/singledispatch.morph b/unmaintained/strata/openstack-services/singledispatch.morph deleted file mode 100644 index 919c7096..00000000 --- a/unmaintained/strata/openstack-services/singledispatch.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: singledispatch -kind: chunk -build-system: python-distutils diff --git a/unmaintained/strata/openstack-services/tempest.morph b/unmaintained/strata/openstack-services/tempest.morph deleted file mode 100644 index cffb7d33..00000000 --- a/unmaintained/strata/openstack-services/tempest.morph +++ /dev/null @@ -1,12 +0,0 @@ -name: tempest -kind: chunk -build-system: python-distutils -post-install-commands: -# Install files and folders required to run tempest -- mkdir -p "$DESTDIR"/etc/tempest -- cp -r tempest "$DESTDIR"/etc/tempest/ -- cp -r tools "$DESTDIR"/etc/tempest/ -- cp setup.py tox.ini "$DESTDIR"/etc/tempest/ -- cp run_tests.sh run_tempest.sh "$DESTDIR"/etc/tempest/ -- cp .testr.conf "$DESTDIR"/etc/tempest/ -- cp etc/logging.conf.sample "$DESTDIR"/etc/tempest/logging.conf diff --git a/unmaintained/strata/openstack-services/tftp-hpa.morph b/unmaintained/strata/openstack-services/tftp-hpa.morph deleted file mode 100644 index b8fab451..00000000 --- a/unmaintained/strata/openstack-services/tftp-hpa.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: tftp-hpa -build-system: autotools -kind: chunk -configure-commands: -# There is an autogen.sh script in the tree which doesn't work, -# so the default commands don't work here. -- autoreconf -ivf -- ./configure --prefix="%{prefix}" -install-commands: -- make INSTALLROOT="$DESTDIR" install diff --git a/unmaintained/strata/openstack-services/thrift.morph b/unmaintained/strata/openstack-services/thrift.morph deleted file mode 100644 index 39062351..00000000 --- a/unmaintained/strata/openstack-services/thrift.morph +++ /dev/null @@ -1,6 +0,0 @@ -name: thrift -kind: chunk -build-system: autotools -max-jobs: 1 -pre-configure-commands: -- ./bootstrap.sh diff --git a/unmaintained/strata/qt4-sdk.morph b/unmaintained/strata/qt4-sdk.morph deleted file mode 100644 index 527c5f86..00000000 --- a/unmaintained/strata/qt4-sdk.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: qt4-sdk -kind: stratum -description: Qt4 Desktop Environment, IDE and Example Apps -build-depends: -- morph: unmaintained/strata/qt4-tools.morph -chunks: -- name: qt-creator - morph: unmaintained/strata/qt4-sdk/qt-creator.morph - repo: upstream:qt-creator - ref: d5a6b10634c1a3271012e9578e016772ef077d59 - unpetrify-ref: baserock/morph/2.7 - submodules: - qbs: - url: upstream:qbs diff --git a/unmaintained/strata/qt4-sdk/qt-creator.morph b/unmaintained/strata/qt4-sdk/qt-creator.morph deleted file mode 100644 index 76d9f7d7..00000000 --- a/unmaintained/strata/qt4-sdk/qt-creator.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: qt-creator -kind: chunk -configure-commands: -- qmake -build-commands: -- make -install-commands: -- make install INSTALL_ROOT=$DESTDIR -- ./qhelpgenerator.sh diff --git a/unmaintained/strata/qt4-tools.morph b/unmaintained/strata/qt4-tools.morph deleted file mode 100644 index 886e19af..00000000 --- a/unmaintained/strata/qt4-tools.morph +++ /dev/null @@ -1,28 +0,0 @@ -name: qt4-tools -kind: stratum -description: Qt4 Development Libraries and Tools -build-depends: -- morph: strata/icu-common.morph -- morph: strata/tools.morph -- morph: strata/x-generic.morph -- morph: unmaintained/strata/multimedia-gstreamer-0.10.morph -chunks: -- name: ruby-1.8 - morph: unmaintained/strata/qt4-tools/ruby-1.8.morph - repo: upstream:ruby - ref: 7a24f1710028d568ad61d0aa49d5178260178d77 - unpetrify-ref: baserock/morph/ruby_1_8_7 -- name: ruby-1.9 - morph: unmaintained/strata/qt4-tools/ruby-1.9.morph - repo: upstream:ruby - ref: cb3ea602294b5038b5f7ac21d3875a2b52342956 - unpetrify-ref: baserock/morph/ruby_1_9_3 - build-depends: - - ruby-1.8 -- name: qt4-tools - morph: unmaintained/strata/qt4-tools/qt4-tools.morph - repo: upstream:qt4-tools - ref: a182f020bc1703c20d86ba18f2f6b4ea8889de84 - unpetrify-ref: baserock/morph - build-depends: - - ruby-1.9 diff --git a/unmaintained/strata/qt4-tools/qt4-tools.morph b/unmaintained/strata/qt4-tools/qt4-tools.morph deleted file mode 100644 index bc4cc17e..00000000 --- a/unmaintained/strata/qt4-tools/qt4-tools.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: qt4-tools -kind: chunk -max-jobs: 1 -configure-commands: -- | - arch=$(uname -m) - if [ "${arch}" != "${arch//arm/}" ] ; then - sed 's/g++-unix.conf)/&\nQMAKE_CXXFLAGS += -fno-strict-volatile-bitfields/' \ - -i mkspecs/linux-g++/qmake.conf - else - echo Running on x86, not modifying qmake.conf - fi -- ./configure -v -prefix /usr -opensource -confirm-license -build-commands: -- make -- LD_LIBRARY_PATH="$PWD"/lib QT_PLUGIN_PATH="$PWD"/plugins make docs -install-commands: -- make install INSTALL_ROOT="$DESTDIR" diff --git a/unmaintained/strata/qt4-tools/ruby-1.8.morph b/unmaintained/strata/qt4-tools/ruby-1.8.morph deleted file mode 100644 index cee282c0..00000000 --- a/unmaintained/strata/qt4-tools/ruby-1.8.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: ruby-1.8 -kind: chunk -configure-commands: -- autoconf -- ./configure --prefix=/usr --program-suffix=-1.8 -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/qt4-tools/ruby-1.9.morph b/unmaintained/strata/qt4-tools/ruby-1.9.morph deleted file mode 100644 index bc697ada..00000000 --- a/unmaintained/strata/qt4-tools/ruby-1.9.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: ruby-1.9 -kind: chunk -configure-commands: -- autoconf -- ./configure --prefix=/usr --enable-shared --with-baseruby=/usr/bin/ruby-1.8 -build-commands: -- make -install-commands: -- make DESTDIR="$DESTDIR" install diff --git a/unmaintained/strata/test-tools.morph b/unmaintained/strata/test-tools.morph deleted file mode 100644 index 08876936..00000000 --- a/unmaintained/strata/test-tools.morph +++ /dev/null @@ -1,134 +0,0 @@ -name: test-tools -kind: stratum -description: Tools and frameworks used for testing -build-depends: -- morph: strata/python-common.morph -chunks: -- name: python-test-extras - repo: upstream:python-packages/python-test-extras.git - ref: cdeb596f01241e9c779332e86f6edcd0c2e8e9f0 - unpetrify-ref: master - build-system: python-distutils -- name: check - morph: unmaintained/strata/test-tools/check.morph - repo: upstream:check - ref: 8c872aca6675e95fa47e7514e28fbdf25fce6170 - unpetrify-ref: 0.9.8 - build-system: autotools -- name: cppunit - repo: upstream:cppunit - ref: 8133cf2b977f013216f0a41b6fcb740410d83926 - unpetrify-ref: 1.13.2 - build-system: autotools -- name: testtools - repo: upstream:python-packages/testtools - ref: ee9946228ce5a03a84cf146027de0a8a9a46c4fe - unpetrify-ref: testools-1.1.0 - build-system: python-distutils - build-depends: - - python-test-extras -- name: subunit - morph: unmaintained/strata/test-tools/subunit.morph - repo: upstream:python-packages/subunit - ref: e18ffe65a3229d5c1d91be988405d40219db0887 - unpetrify-ref: 0.0.21 - build-depends: - - python-test-extras - - testtools - - check - - cppunit -- name: fixtures - repo: upstream:python-packages/fixtures - ref: 9f9d89ce718463b24cd3910b9a99efb60b3c9e1b - unpetrify-ref: 0.3.16 - build-system: python-distutils - build-depends: - - testtools -- name: testrepository - repo: upstream:python-packages/testrepository - ref: 6419a3dcaabaf09eaf438c6d8d85c90eba7a2b91 - unpetrify-ref: 0.0.19 - build-system: python-distutils - build-depends: - - fixtures - - subunit - - testtools -- name: testscenarios - repo: upstream:python-packages/testscenarios - ref: bccfaa71a2def5590161b6d1a247cf23c45a8b4d - unpetrify-ref: trunk - build-system: python-distutils - build-depends: - - testtools -- name: mox - repo: upstream:python-packages/mox - ref: 160491d0384285698d726b1af21277f336107f51 - unpetrify-ref: master - build-system: python-distutils -- name: mock - repo: upstream:python-packages/mock - ref: 35b35f7ad239005a950f870af57b44dbdc99d66b - unpetrify-ref: master - build-system: python-distutils -- name: oslotest - repo: upstream:openstack/oslotest - ref: cfdb562a6e07728570ca624a8c4faf3f5b61423b - unpetrify-ref: 1.2.0 - build-system: python-distutils - build-depends: - - fixtures - - subunit - - testrepository - - testscenarios - - testtools - - mock - - mox -- name: mox3 - repo: upstream:python-packages/pymox - ref: 444fa40f4edb529efbffa2da8dbd97e9b8564b5c - unpetrify-ref: master - build-system: python-distutils -- name: mocker - repo: upstream:python-packages/mocker - ref: f7f87e4ac1c52342162cf2035f5fe3d273f8b07f - unpetrify-ref: master - build-system: python-distutils -- name: zake - repo: upstream:python-packages/zake - ref: 436bab3306aeec420f1281f34bd5d26d7f81038c - unpetrify-ref: 0.2.1 - build-system: python-distutils - build-depends: - - testtools -- name: nose - repo: upstream:python-packages/nose - ref: 08d134270b035dac3310cd877bb0fe9ab678303a - unpetrify-ref: release_1.3.4 - build-system: python-distutils -- name: beautifulsoup4 - repo: upstream:python-packages/beautifulsoup4.git - ref: bcd7af0e9159d97aa511fb2d879424d1c1c5aadf - build-system: python-distutils -- name: waitress - repo: upstream:python-packages/waitress.git - ref: b795d573a5a9e6e39b46a6e82da367a6a5db8dbd - unpetrify-ref: 0.8.9 - build-system: python-distutils -- name: webtest - repo: upstream:python-packages/webtest.git - ref: 6a24fba456d1c4ac2609b90f1fdc377c595608a4 - unpetrify-ref: 2.0.16 - build-system: python-distutils - build-depends: - - waitress - - beautifulsoup4 -- name: testresources - repo: upstream:python-packages/testresources - ref: ef938bcce0e436f9e9ffef932a898dc248a1d6ea - unpetrify-ref: 0.2.7 - build-system: python-distutils - build-depends: - - testtools - - fixtures - - check - - cppunit diff --git a/unmaintained/strata/test-tools/subunit.morph b/unmaintained/strata/test-tools/subunit.morph deleted file mode 100644 index 0d3819ed..00000000 --- a/unmaintained/strata/test-tools/subunit.morph +++ /dev/null @@ -1,3 +0,0 @@ -name: subunit -kind: chunk -build-system: autotools diff --git a/unmaintained/strata/virtualization.morph b/unmaintained/strata/virtualization.morph deleted file mode 100644 index d26dbeeb..00000000 --- a/unmaintained/strata/virtualization.morph +++ /dev/null @@ -1,117 +0,0 @@ -name: virtualization -kind: stratum -description: | - Virtualization for baserock - NOTE: this stratum requires kernel support, please see openstack bsp - kernel history to check which config are needed for openvswitch or libvirt, - for example. -build-depends: -- morph: strata/libsoup-common.morph -- morph: strata/python2-core.morph -- morph: strata/python-pygobject.morph -- morph: strata/connman-common.morph -- morph: unmaintained/strata/lvm.morph -- morph: strata/xorg-util-macros-common.morph -- morph: unmaintained/strata/networking-utils.morph -- morph: strata/docutils.morph -chunks: -- name: yajl - morph: unmaintained/strata/virtualization/yajl.morph - repo: upstream:yajl - ref: 52fc681857228c65c1cb439782da485554875481 - unpetrify-ref: baserock/morph -- name: dnsmasq - morph: unmaintained/strata/virtualization/dnsmasq.morph - repo: upstream:dnsmasq - ref: 8471cd938ca41fbe4fee8ae3f657625c92cfb954 - unpetrify-ref: baserock/morph -- name: qemu - morph: unmaintained/strata/virtualization/qemu.morph - repo: upstream:qemu - ref: c5691f7ecb32cbe7a95b491314ce070e211fd97d - unpetrify-ref: baserock/v2.2.0 - submodules: - roms/openbios: - url: upstream:qemu-openbios - dtc: - url: upstream:device-tree-compiler - roms/openhackware: - url: upstream:qemu-openhackware - roms/seabios: - url: upstream:qemu-seabios - roms/vgabios: - url: upstream:qemu-vgabios - roms/u-boot: - url: upstream:u-boot - roms/SLOF: - url: upstream:qemu-SLOF - roms/qemu-palcode: - url: upstream:qemu-palcode - roms/ipxe: - url: upstream:qemu-ipxe - roms/sgabios: - url: upstream:qemu-sgabios - pixman: - url: upstream:pixman -- name: libpciaccess - repo: upstream:libpciaccess - ref: b9c068896914b4132a24839c9ef7f9fcd6282d88 - unpetrify-ref: master - build-system: autotools -- name: dmidecode - morph: unmaintained/strata/virtualization/dmidecode.morph - repo: upstream:dmidecode - ref: 47a0aa5d6696a83922ee70279b7253a4e55947d5 - unpetrify-ref: master -- name: libvirt - morph: unmaintained/strata/virtualization/libvirt.morph - repo: upstream:libvirt - ref: 7b1ceec1e2f141d36ed9b7ef3a660ff8bb34fc53 - unpetrify-ref: baserock/v1.2.10 - build-depends: - - libpciaccess - - dnsmasq - - qemu - - yajl - - dmidecode - submodules: - gnulib: - url: upstream:gnulib -- name: pycurl - repo: upstream:pycurl - ref: 5ca370827d88817eeca3c56cbb37e4ddccc16c6e - unpetrify-ref: baserock/morph - build-system: python-distutils -- name: urlgrabber - repo: upstream:urlgrabber - ref: bf0a0be71373dec515bbb54e0613a3b9b0c00b04 - unpetrify-ref: master - build-system: python-distutils - build-depends: - - pycurl -- name: libvirt-python - repo: upstream:libvirt-python - ref: 8e09c79a07b097a6ba9af83be4916fb9c9538500 - unpetrify-ref: v1.2.10 - build-system: python-distutils - build-depends: - - libvirt - - urlgrabber -- name: libosinfo - morph: unmaintained/strata/virtualization/libosinfo.morph - repo: upstream:libosinfo - ref: a86c74c4d3f62bb0e315ab7fc78ec9f7746bdd12 - unpetrify-ref: baserock/morph -- name: virt-manager - repo: upstream:virt-manager - ref: 8b7ebd4538ffbd2d246fdeee4f1bb1c452585575 - unpetrify-ref: v1.0.1 - build-system: python-distutils - build-depends: - - libvirt-python - - libosinfo -- name: openvswitch - morph: unmaintained/strata/virtualization/openvswitch.morph - repo: upstream:openvswitch - ref: a52b0492a4d0398a24ed2a3566ff55ac53fea31f - unpetrify-ref: master diff --git a/unmaintained/strata/virtualization/dmidecode.morph b/unmaintained/strata/virtualization/dmidecode.morph deleted file mode 100644 index d9ab0fa3..00000000 --- a/unmaintained/strata/virtualization/dmidecode.morph +++ /dev/null @@ -1,7 +0,0 @@ -name: dmidecode -kind: chunk -build-system: manual -build-commands: -- make -install-commands: -- make install DESTDIR="$DESTDIR" prefix="$PREFIX" diff --git a/unmaintained/strata/virtualization/dnsmasq.morph b/unmaintained/strata/virtualization/dnsmasq.morph deleted file mode 100644 index 3f4c6c53..00000000 --- a/unmaintained/strata/virtualization/dnsmasq.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: dnsmasq -kind: chunk -build-system: manual -build-commands: -- make -- make -C contrib/wrt -install-commands: -- make install PREFIX="$PREFIX" DESTDIR="$DESTDIR" -- install -D -m 755 contrib/wrt/dhcp_release "$DESTDIR$PREFIX"/bin/dhcp_release -- install -D -m 755 contrib/wrt/dhcp_lease_time "$DESTDIR$PREFIX"/bin/dhcp_lease_time diff --git a/unmaintained/strata/virtualization/libosinfo.morph b/unmaintained/strata/virtualization/libosinfo.morph deleted file mode 100644 index 51b41b38..00000000 --- a/unmaintained/strata/virtualization/libosinfo.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: libosinfo -kind: chunk -build-system: autotools -configure-commands: -- | - ./autogen.sh --prefix="$PREFIX" \ - --disable-gtk-doc \ - --disable-tests \ - --disable-vala \ - --with-usb-ids-path=usb.ids --with-pci-ids-path=pci.ids \ - --disable-werror diff --git a/unmaintained/strata/virtualization/libvirt.morph b/unmaintained/strata/virtualization/libvirt.morph deleted file mode 100644 index 1687213c..00000000 --- a/unmaintained/strata/virtualization/libvirt.morph +++ /dev/null @@ -1,34 +0,0 @@ -name: libvirt -kind: chunk -build-system: autotools -configure-commands: -- | - GNULIB_SRCDIR=.gnulib \ - ./autogen.sh \ - --without-apparmor --with-attr --without-audit --without-avahi --with-blkid \ - --without-capng --with-curl --with-dbus --with-fuse --without-glusterfs \ - --without-hal --without-netcf --without-numactl --without-openwsman \ - --with-pciaccess --without-readline --without-sanlock --without-sasl \ - --without-selinux --without-ssh2 --with-systemd-daemon --with-udev \ - --with-yajl --without-xen --with-qemu --without-uml --without-openvz \ - --without-vmware --without-phyp --without-xenapi --without-libxl \ - --without-vbox --without-lxc --without-esx --without-hyperv \ - --without-parallels --with-test --with-remote --with-libvirtd \ - --with-init-script=systemd --without-bhyve --without-gnutls --without-polkit \ - --without-firewalld --without-dtrace --without-numad --with-network \ - --with-secrets --with-storage-dir --with-storage-fs --with-storage-lvm \ - --without-storage-iscsi --without-storage-scsi --without-storage-mpath \ - --without-storage-disk --with-storage-rbd --without-storage-sheepdog \ - --without-storage-gluster --without-wireshark-dissector --disable-werror \ - --prefix="$PREFIX" -post-install-commands: -# Don't autostart the default network created by libvirt -- rm -f "$DESTDIR"/etc/libvirt/qemu/networks/autostart/default.xml -system-integration: - libvirt-misc: - 01-addgroup: - - groupadd libvirt - 02-setup_libvirtconf: - - sed -i 's/#unix_sock_group = "libvirt"/unix_sock_group = "libvirt"/' /etc/libvirt/libvirtd.conf - - sed -i 's/#unix_sock_rw_perms = "0770"/unix_sock_rw_perms = "0770"/' /etc/libvirt/libvirtd.conf - - sed -i 's/#unix_sock_ro_perms = "0777"/unix_sock_ro_perms = "0777"/' /etc/libvirt/libvirtd.conf diff --git a/unmaintained/strata/virtualization/openvswitch.morph b/unmaintained/strata/virtualization/openvswitch.morph deleted file mode 100644 index 06480827..00000000 --- a/unmaintained/strata/virtualization/openvswitch.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: openvswitch -kind: chunk -build-system: autotools -pre-configure-commands: -- ./boot.sh -configure-commands: -- | - ./configure --prefix="$PREFIX" \ - --localstatedir=/var \ - --sysconfdir=/etc \ - --enable-ssl diff --git a/unmaintained/strata/virtualization/qemu.morph b/unmaintained/strata/virtualization/qemu.morph deleted file mode 100644 index 89067cd2..00000000 --- a/unmaintained/strata/virtualization/qemu.morph +++ /dev/null @@ -1,5 +0,0 @@ -name: qemu -kind: chunk -build-system: autotools -configure-commands: -- ./configure --prefix="$PREFIX" --disable-werror diff --git a/unmaintained/strata/virtualization/yajl.morph b/unmaintained/strata/virtualization/yajl.morph deleted file mode 100644 index 3fac99db..00000000 --- a/unmaintained/strata/virtualization/yajl.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: yajl -kind: chunk -configure-commands: -- ./configure -p "$PREFIX" -build-commands: -- make distro -install-commands: -- make install DESTDIR="$DESTDIR" diff --git a/unmaintained/strata/webtools.morph b/unmaintained/strata/webtools.morph deleted file mode 100644 index d328fc3a..00000000 --- a/unmaintained/strata/webtools.morph +++ /dev/null @@ -1,18 +0,0 @@ -name: webtools -kind: stratum -description: web things -build-depends: -- morph: strata/icu-common.morph -- morph: strata/tools.morph -- morph: strata/pcre-utils.morph -chunks: -- name: libgit2 - repo: upstream:libgit2 - ref: 4b0a36e881506a02b43a4ae3c19c93c919b36eeb - unpetrify-ref: master - build-system: cmake -- name: nginx - morph: unmaintained/strata/webtools/nginx.morph - repo: upstream:nginx - ref: 37a582c9ea3e731c115e560d31b26f78535b8fca - unpetrify-ref: baserock/v1.7.0 diff --git a/unmaintained/strata/webtools/nginx.morph b/unmaintained/strata/webtools/nginx.morph deleted file mode 100644 index 6f7f04ae..00000000 --- a/unmaintained/strata/webtools/nginx.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: nginx -kind: chunk -configure-commands: -- | - ./configure --prefix=$PREFIX \ - --conf-path=/etc/nginx/nginx.conf \ - --pid-path=/etc/nginx/nginx.pid \ - --error-log-path=/var/log/nginx/error.log \ - --http-log-path=/var/log/nginx/access.log \ - --with-http_ssl_module -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce.morph b/unmaintained/strata/xfce.morph deleted file mode 100644 index 24a0fa6c..00000000 --- a/unmaintained/strata/xfce.morph +++ /dev/null @@ -1,159 +0,0 @@ -name: xfce -kind: stratum -description: xfce stratum -build-depends: -- morph: strata/gtk2.morph -- morph: strata/sound-server-pulseaudio.morph -chunks: -- name: xfce-dev-tools - repo: upstream:xfce/xfce4-dev-tools - ref: 9244250ac0c15ba160688758c5dccf97f3f160ef - unpetrify-ref: baserock/morph - build-system: autotools -- name: libxfce4util - morph: unmaintained/strata/xfce/libxfce4util.morph - repo: upstream:xfce/libxfce4util - ref: 5f56641e09b081f7d76d3feeee307589b21840c1 - unpetrify-ref: libxfce4util-4.11.0 - build-depends: - - xfce-dev-tools -- name: xfconf - morph: unmaintained/strata/xfce/xfconf.morph - repo: upstream:xfce/xfconf - ref: e5261e292130c96b6e62a8c897b1cc85bbb786ac - unpetrify-ref: master - build-depends: - - xfce-dev-tools - - libxfce4util -- name: libxfce4ui - morph: unmaintained/strata/xfce/libxfce4ui.morph - repo: upstream:xfce/libxfce4ui - ref: b9e6a57385ff6f0c15bbc637b76472211e3696b0 - unpetrify-ref: libxfce4ui-4.11.2 - build-depends: - - xfce-dev-tools - - libxfce4util - - xfconf -- name: garcon - morph: unmaintained/strata/xfce/garcon.morph - repo: upstream:xfce/garcon - ref: 69ff09cf0a9ee3ff9518822614637dc2d4f89ce6 - unpetrify-ref: baserock/morph - build-depends: - - libxfce4util - - libxfce4ui -- name: perl-uri - repo: upstream:libwww-perl/uri - ref: 3dd72ded7f043a4f6973781fe594722e2e95f491 - unpetrify-ref: baserock/morph - build-system: cpan -- name: exo - morph: unmaintained/strata/xfce/exo.morph - repo: upstream:xfce/exo - ref: b985c4b5c72ef116d55bbf746c16a05f26afc045 - unpetrify-ref: baserock/morph - build-depends: - - libxfce4util - - libxfce4ui - - perl-uri -- name: libwnck - morph: unmaintained/strata/xfce/libwnck.morph - repo: upstream:libwnck - ref: 6792abcdf27aceba1012406d51606e84b065a526 - unpetrify-ref: baserock/xfce-build -- name: xfce4-panel - morph: unmaintained/strata/xfce/xfce4-panel.morph - repo: upstream:xfce/xfce4-panel - ref: 6ac8bfcb481781e8e23b101f5c5fdd70cf6d083b - unpetrify-ref: baserock/morph - build-depends: - - libxfce4ui - - garcon - - exo - - libwnck -- name: thunar - morph: unmaintained/strata/xfce/thunar.morph - repo: upstream:xfce/thunar - ref: 8289f48c200b91cc1e9932e13defb8e6a4765054 - unpetrify-ref: baserock/morph - build-depends: - - libxfce4ui - - exo - - garcon - - libwnck -- name: xfce4-settings - morph: unmaintained/strata/xfce/xfce4-settings.morph - repo: upstream:xfce/xfce4-settings - ref: f04388fae30685b5038358674dec69406ba87f2c - unpetrify-ref: xfce4-settings-4.11.3 - build-depends: - - xfce-dev-tools - - xfconf - - exo - - libxfce4ui - - garcon -- name: iceauth - repo: upstream:iceauth - ref: c07d443d43e53cfe21b53a9a0eafcd6189432867 - unpetrify-ref: baserock/morph - build-system: autotools -- name: xfce4-session - morph: unmaintained/strata/xfce/xfce4-session.morph - repo: upstream:xfce/xfce4-session - ref: d4e20cbb9b1df864b502e9e8879a538f089fd5d2 - unpetrify-ref: xfce4-session-4.11.1 - build-depends: - - iceauth - - exo - - xfce-dev-tools - - libxfce4ui - - libwnck -- name: gtk-xfce-engine-2 - morph: unmaintained/strata/xfce/gtk-xfce-engine-2.morph - repo: upstream:xfce/gtk-xfce-engine - ref: ed44a71f1a4d76ae850483ece41638bb9a3e7781 - unpetrify-ref: baserock/morph - build-depends: - - xfce-dev-tools -- name: xfdesktop - morph: unmaintained/strata/xfce/xfdesktop.morph - repo: upstream:xfce/xfdesktop - ref: f32d76856e6eee9bc3d772b2fb6c2b8810ae63dc - unpetrify-ref: xfdesktop-4.11.8 - build-depends: - - exo - - libxfce4ui - - xfconf - - libwnck -- name: xfwm4 - morph: unmaintained/strata/xfce/xfwm4.morph - repo: upstream:xfce/xfwm4 - ref: f5c1c74e1436deff7f16ef92c98097ac3baae290 - unpetrify-ref: xfwm4-4.11.3_plus_fallback_theme - build-depends: - - exo - - libxfce4util - - libxfce4ui - - xfconf - - libwnck -- name: xfce4-appfinder - morph: unmaintained/strata/xfce/xfce4-appfinder.morph - repo: upstream:xfce/xfce4-appfinder - ref: 6c2bc7a09dd6e85bb78913cdc8af2292a9361e04 - unpetrify-ref: xfce4-appfinder-4.11.0 - build-depends: - - exo - - libxfce4ui - - garcon -- name: tumbler - morph: unmaintained/strata/xfce/tumbler.morph - repo: upstream:xfce/tumbler - ref: 073c2080c79075fdf574064fa2098c4b5bb79a11 - unpetrify-ref: tumbler-0.1.30 - build-depends: - - xfce-dev-tools -- name: elementary-xfce - morph: unmaintained/strata/xfce/elementary-xfce.morph - repo: upstream:elementary-xfce - ref: 9681d40e7a3545c96dfb1670e00514acfad5b089 - unpetrify-ref: v0.5 diff --git a/unmaintained/strata/xfce/elementary-xfce.morph b/unmaintained/strata/xfce/elementary-xfce.morph deleted file mode 100644 index 978cfdc4..00000000 --- a/unmaintained/strata/xfce/elementary-xfce.morph +++ /dev/null @@ -1,10 +0,0 @@ -name: elementary-xfce -kind: chunk -install-commands: -- mkdir -p $DESTDIR/usr/share/icons/ -- cp -R elementary-xfce $DESTDIR/usr/share/icons/ -- cp -R elementary-xfce-* $DESTDIR/usr/share/icons/ -- gtk-update-icon-cache -t -f $DESTDIR/usr/share/icons/elementary-xfce -- gtk-update-icon-cache -t -f $DESTDIR/usr/share/icons/elementary-xfce-dark -- gtk-update-icon-cache -t -f $DESTDIR/usr/share/icons/elementary-xfce-darker -- gtk-update-icon-cache -t -f $DESTDIR/usr/share/icons/elementary-xfce-darkest diff --git a/unmaintained/strata/xfce/exo.morph b/unmaintained/strata/xfce/exo.morph deleted file mode 100644 index f5096213..00000000 --- a/unmaintained/strata/xfce/exo.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: exo -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/garcon.morph b/unmaintained/strata/xfce/garcon.morph deleted file mode 100644 index 569197ff..00000000 --- a/unmaintained/strata/xfce/garcon.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: garcon -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/gtk-xfce-engine-2.morph b/unmaintained/strata/xfce/gtk-xfce-engine-2.morph deleted file mode 100644 index cf1c2530..00000000 --- a/unmaintained/strata/xfce/gtk-xfce-engine-2.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: gtk-xfce-engine-2 -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/libwnck.morph b/unmaintained/strata/xfce/libwnck.morph deleted file mode 100644 index bb8d7afa..00000000 --- a/unmaintained/strata/xfce/libwnck.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: libwnck -kind: chunk -build-system: autotools -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- NOCONFIGURE=1 ./autogen.sh -- ./configure --prefix="$PREFIX" -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install DESTDIR="$DESTDIR" diff --git a/unmaintained/strata/xfce/libxfce4ui.morph b/unmaintained/strata/xfce/libxfce4ui.morph deleted file mode 100644 index 5fbd342e..00000000 --- a/unmaintained/strata/xfce/libxfce4ui.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libxfce4ui -kind: chunk -configure-commands: -- ./autogen.sh --prefix=${PREFIX} -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/libxfce4util.morph b/unmaintained/strata/xfce/libxfce4util.morph deleted file mode 100644 index 60a59126..00000000 --- a/unmaintained/strata/xfce/libxfce4util.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: libxfce4util -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/thunar.morph b/unmaintained/strata/xfce/thunar.morph deleted file mode 100644 index 51f76ac5..00000000 --- a/unmaintained/strata/xfce/thunar.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: thunar -kind: chunk -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install diff --git a/unmaintained/strata/xfce/tumbler.morph b/unmaintained/strata/xfce/tumbler.morph deleted file mode 100644 index fe27a783..00000000 --- a/unmaintained/strata/xfce/tumbler.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: tumbler -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfce4-appfinder.morph b/unmaintained/strata/xfce/xfce4-appfinder.morph deleted file mode 100644 index f8d1fcbe..00000000 --- a/unmaintained/strata/xfce/xfce4-appfinder.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xfce4-appfinder -kind: chunk -configure-commands: -- ./autogen.sh --prefix=${PREFIX} -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfce4-panel.morph b/unmaintained/strata/xfce/xfce4-panel.morph deleted file mode 100644 index fe85e172..00000000 --- a/unmaintained/strata/xfce/xfce4-panel.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xfce4-panel -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfce4-session.morph b/unmaintained/strata/xfce/xfce4-session.morph deleted file mode 100644 index 87ffac22..00000000 --- a/unmaintained/strata/xfce/xfce4-session.morph +++ /dev/null @@ -1,9 +0,0 @@ -name: xfce4-session -kind: chunk -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install diff --git a/unmaintained/strata/xfce/xfce4-settings.morph b/unmaintained/strata/xfce/xfce4-settings.morph deleted file mode 100644 index 6063dbc1..00000000 --- a/unmaintained/strata/xfce/xfce4-settings.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xfce4-settings -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfconf.morph b/unmaintained/strata/xfce/xfconf.morph deleted file mode 100644 index cfbe741b..00000000 --- a/unmaintained/strata/xfce/xfconf.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xfconf -kind: chunk -configure-commands: -- ./autogen.sh --prefix=${PREFIX} -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfdesktop.morph b/unmaintained/strata/xfce/xfdesktop.morph deleted file mode 100644 index 4af5a905..00000000 --- a/unmaintained/strata/xfce/xfdesktop.morph +++ /dev/null @@ -1,8 +0,0 @@ -name: xfdesktop -kind: chunk -configure-commands: -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- make -install-commands: -- make install diff --git a/unmaintained/strata/xfce/xfwm4.morph b/unmaintained/strata/xfce/xfwm4.morph deleted file mode 100644 index 0c4e2273..00000000 --- a/unmaintained/strata/xfce/xfwm4.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: xfwm4 -kind: chunk -configure-commands: -- gdk-pixbuf-query-loaders > loader.cache -- ./autogen.sh --prefix="$PREFIX" --enable-debug=yes -build-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make -install-commands: -- GDK_PIXBUF_MODULE_FILE="$(pwd)/loader.cache" make install -- install -m 0644 index.theme $DESTDIR/usr/share/icons/hicolor -- gtk-update-icon-cache $DESTDIR/usr/share/icons/hicolor diff --git a/unmaintained/strata/xstatic.morph b/unmaintained/strata/xstatic.morph deleted file mode 100644 index e396003b..00000000 --- a/unmaintained/strata/xstatic.morph +++ /dev/null @@ -1,154 +0,0 @@ -name: xstatic -kind: stratum -description: | - Stratum with Xstatic and some xstatic libraries. - - XStatic is a packaging standard to package external static files as - a python package, so they are easily usable on all OSes. - - This conflicts with the 'everything from Git' policy of Baserock, - but it is required right now for the Openstack system to work. -build-depends: -- morph: strata/foundation.morph -- morph: strata/python2-core.morph -chunks: -- name: xstatic - repo: upstream:xstatic - ref: 6c8604a422ba7f176ce6b372a8e182c293d06fb2 - unpetrify-ref: 1.0.1 - build-system: python-distutils -- name: xstatic-angular - repo: upstream:xstatic-packages/xstatic-angular - ref: dac047df05da5bb20de4e78876bc03820d0c6671 - unpetrify-ref: 1.3.7.0 - build-system: python-distutils -- name: xstatic-angular-animate - repo: upstream:xstatic-packages/xstatic-angular-animate - ref: 91b9d3197f67213e4e35e9a35ba7196b898731e7 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-angular-bootstrap - repo: upstream:xstatic-packages/xstatic-angular-bootstrap - ref: b581edb6975175a564fd02766aef2f9043702c80 - unpetrify-ref: 0.11.0.3 - build-system: python-distutils -- name: xstatic-angular-lrdragndrop - repo: upstream:xstatic-packages/xstatic-angular-lrdragndrop - ref: 55c7494492e6da2a6664aa00941864dd64589396 - unpetrify-ref: 1.0.2.3 - build-system: python-distutils -- name: xstatic-angular-cookies - repo: upstream:xstatic-packages/xstatic-angular-cookies - ref: 66141a33ae7ad84b82ba9384a8101ae15ccd6da5 - unpetrify-ref: 1.2.1.1 - build-system: python-distutils -- name: xstatic-angular-fileupload - repo: upstream:xstatic-packages/xstatic-angular-fileupload - ref: 04bcd774dae17cfff5e826fc0874f6403b4a6cae - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-angular-mock - repo: upstream:xstatic-packages/xstatic-angular-mock - ref: 20fdada109b167bcdcacec22986b43fdb42866f3 - unpetrify-ref: 1.2.1.1 - build-system: python-distutils -- name: xstatic-angular-sanitize - repo: upstream:xstatic-packages/xstatic-angular-sanitize - ref: 9e0f03ada6fc00f8583903aeb6d9fc6516784999 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-angular-smart-table - repo: upstream:xstatic-packages/xstatic-angular-smart-table - ref: e0fbf69fb156b995547471d71c5c6a7f88989d47 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-bootstrap-datepicker - repo: upstream:xstatic-packages/xstatic-bootstrap-datepicker - ref: 60caf41e32d49f9bc715c39570f01449ebfbd37a - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-bootstrap-scss - repo: upstream:xstatic-packages/xstatic-bootstrap-scss - ref: d81b7b71c6c088406e90d1bdba0e10f0a304bbdc - unpetrify-ref: 3.1.1.1 - build-system: python-distutils -- name: xstatic-d3 - repo: upstream:xstatic-packages/xstatic-d3 - ref: 1e754e73c801fb9315995ffeb95ae51233c4fcaf - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-hogan - repo: upstream:xstatic-packages/xstatic-hogan - ref: 9e39977f6a6744810b08fa0323147e9f31dbd363 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-font-awesome - repo: upstream:xstatic-packages/xstatic-font-awesome - ref: c13aad1b95b1d84e73f2565a18a5a8e2bd2194a7 - unpetrify-ref: 4.2.0.0 - build-system: python-distutils -- name: xstatic-jasmine - repo: upstream:xstatic-packages/xstatic-jasmine - ref: a55f5db1dbe59b23c7d6284250bf4eac1d0143c3 - unpetrify-ref: 2.1.2.0 - build-system: python-distutils -- name: xstatic-jquery - repo: upstream:xstatic-packages/xstatic-jquery - ref: e91c5bf82535a62c1cfac61b5efb6b5c0157c1f5 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-jquery-bootstrap-wizard - repo: upstream:xstatic-packages/xstatic-jquery-bootstrap-wizard - ref: 07ae7e3a15b3af3d3d378d1f2412fe503ee42142 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-jquery-migrate - repo: upstream:xstatic-packages/xstatic-jquery-migrate - ref: 989b3b31106727542dd83810c3b952f90d8cdb8f - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-jquery-quicksearch - repo: upstream:xstatic-packages/xstatic-jquery-quicksearch - ref: f5221c8c30507340846d97d6db41a782e7c63316 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-jquery-tablesorter - repo: upstream:xstatic-packages/xstatic-jquery-tablesorter - ref: eb78328391f44a9a88033e1aede1a605902c5551 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-jquery-ui - repo: upstream:xstatic-packages/xstatic-jquery-ui - ref: b494369430dafd8ac4ddbe90efb9f8ad20a6e6d1 - unpetrify-ref: 1.11.0.1 - build-system: python-distutils -- name: xstatic-magic-search - repo: upstream:xstatic-packages/xstatic-magic-search - ref: 60d6954a36e54afa1f925324e7b527d235bdb484 - unpetrify-ref: 0.2.0.1 - build-system: python-distutils -- name: xstatic-jsencrypt - repo: upstream:xstatic-packages/xstatic-jsencrypt - ref: 5c0f088310ecd602e3aaf5e683385b0d27258409 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-qunit - repo: upstream:xstatic-packages/xstatic-qunit - ref: c3189eaa77c68c149a40b8c0afc8722cf394bd1f - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-rickshaw - repo: upstream:xstatic-packages/xstatic-rickshaw - ref: 6427ca5406852bc779d6918f487bb0fe3f063e77 - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-spin - repo: upstream:xstatic-packages/xstatic-spin - ref: 74b4c0d0ff12db1f84787246857d5e925ff6883f - unpetrify-ref: master - build-system: python-distutils -- name: xstatic-termjs - repo: upstream:xstatic-packages/xstatic-termjs - ref: a4ac0b809ab0d84c636a760215839bb6d68d0113 - unpetrify-ref: master - build-system: python-distutils diff --git a/unmaintained/strata/zookeeper-client.morph b/unmaintained/strata/zookeeper-client.morph deleted file mode 100644 index 898cc98c..00000000 --- a/unmaintained/strata/zookeeper-client.morph +++ /dev/null @@ -1,16 +0,0 @@ -name: zookeeper-client -kind: stratum -description: | - This stratum installs a small demonstration program for the - client side of ZooKeeper. The program can take up to two - arguments: - (1) The IP address of the ZooKeeper server to connect to - (2) The type of client that this will be (default client - types are typeOneNode & typeTwoNode) -build-depends: -- morph: unmaintained/strata/zookeeper.morph -chunks: -- name: zookeeper-client - morph: unmaintained/strata/zookeeper/zookeeper-client.morph - repo: baserock:tests/zookeeper-test - ref: master diff --git a/unmaintained/strata/zookeeper-server.morph b/unmaintained/strata/zookeeper-server.morph deleted file mode 100644 index 61f71ba1..00000000 --- a/unmaintained/strata/zookeeper-server.morph +++ /dev/null @@ -1,11 +0,0 @@ -name: zookeeper-server -kind: stratum -description: This Stratum installs a zookeeper server and small program to populate - it with default data. -build-depends: -- morph: unmaintained/strata/zookeeper.morph -chunks: -- name: zookeeper-server - morph: unmaintained/strata/zookeeper/zookeeper-server.morph - repo: baserock:tests/zookeeper-test - ref: master diff --git a/unmaintained/strata/zookeeper.morph b/unmaintained/strata/zookeeper.morph deleted file mode 100644 index 2f3d0f6c..00000000 --- a/unmaintained/strata/zookeeper.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: zookeeper -kind: stratum -description: | - This stratum installs zookeeper and its dependencies. -build-depends: -- morph: strata/core.morph -- morph: unmaintained/strata/test-tools.morph -- morph: unmaintained/strata/java.morph -chunks: -- name: zookeeper - morph: unmaintained/strata/zookeeper/zookeeper.morph - repo: upstream:zookeeper - ref: baserock/mikesmith/zookeeper - unpetrify-ref: trunk diff --git a/unmaintained/strata/zookeeper/zookeeper-client.morph b/unmaintained/strata/zookeeper/zookeeper-client.morph deleted file mode 100644 index 7bc99f08..00000000 --- a/unmaintained/strata/zookeeper/zookeeper-client.morph +++ /dev/null @@ -1,17 +0,0 @@ -name: zookeeper-client -kind: chunk -build-commands: -- mkdir -p "$DESTDIR$PREFIX"/zookeeper-client -- cp -r * "$DESTDIR$PREFIX"/zookeeper-client -- make -C "$DESTDIR$PREFIX"/zookeeper-client/ZKTest/Release/ -post-install-commands: -- | - install -D -m 644 /proc/self/fd/0 << 'EOF' "$DESTDIR"/etc/systemd/system/zookeeper-client.service - [unit] - Description=Zookeeper client init - [Service] - ExecStart=/usr/zookeeper-client/ZKTest/Release/ZKTest nodeTypeOne 10.24.1.198 - RemainAfterExit=yes - [Install] - WantedBy=multi-user.target - EOF diff --git a/unmaintained/strata/zookeeper/zookeeper-server.morph b/unmaintained/strata/zookeeper/zookeeper-server.morph deleted file mode 100644 index 502bbda3..00000000 --- a/unmaintained/strata/zookeeper/zookeeper-server.morph +++ /dev/null @@ -1,30 +0,0 @@ -name: zookeeper-server -kind: chunk -build-commands: -- mkdir -p "$DESTDIR$PREFIX"/zookeeper_server -- cp -r * "$DESTDIR$PREFIX"/zookeeper_server -- make -C "$DESTDIR$PREFIX"/zookeeper_server/zkServerFileSetup/Release/ -post-install-commands: -- | - install -D -m 644 /proc/self/fd/0 << 'EOF' "$DESTDIR"/etc/systemd/system/zookeeper-server.service - [unit] - Description=Zookeeper server - [Service] - ExecStart=/usr/zookeeper/bin/zkServer.sh start - RemainAfterExit=yes - [Install] - WantedBy=multi-user.target - EOF -- | - install -D -m 644 /proc/self/fd/0 << 'EOF' "$DESTDIR"/etc/systemd/system/zookeeper-init.service - [unit] - Description=Zookeeper server init - [Service] - ExecStart=/usr/zookeeper_server/zkServerFileSetup/Release/zkServerFileSetup - RemainAfterExit=no - [Install] - WantedBy=multi-user.target - EOF -- mkdir "$DESTDIR"/etc/systemd/system/multi-user.target.wants -- ln -s "$DESTDIR"/etc/systemd/system/zookeeper-server.service "$DESTDIR"/etc/systemd/system/multi-user.target.wants/zookeeper-server.service -- ln -s "$DESTDIR"/etc/systemd/system/zookeeper-init.service "$DESTDIR"/etc/systemd/system/multi-user.target.wants/zookeeper-init.service diff --git a/unmaintained/strata/zookeeper/zookeeper.morph b/unmaintained/strata/zookeeper/zookeeper.morph deleted file mode 100644 index db446a1b..00000000 --- a/unmaintained/strata/zookeeper/zookeeper.morph +++ /dev/null @@ -1,14 +0,0 @@ -name: zookeeper -kind: chunk -configure-commands: -- mkdir -p "$DESTDIR$PREFIX"/lib/zookeeper -build-commands: -- ant -p compile_jute -- mkdir -p "$DESTDIR$PREFIX"/zookeeper -- cp -r * "$DESTDIR$PREFIX"/zookeeper -- cd "$DESTDIR$PREFIX"/zookeeper/src/c && autoreconf -i -- cd "$DESTDIR$PREFIX"/zookeeper/src/c && ./configure --prefix="$PREFIX" --libdir="$PREFIX"/lib/ -- make -C "$DESTDIR$PREFIX"/zookeeper/src/c -- cd "$DESTDIR$PREFIX"/zookeeper/src/c && make install -- mv "$DESTDIR$PREFIX"/zookeeper/conf/zoo_sample.cfg "$DESTDIR$PREFIX"/zookeeper/conf/zoo.cfg -- make -C "$DESTDIR$PREFIX"/zookeeper/src/c zktest-mt diff --git a/unmaintained/systems/ceph-service-x86_64-generic.morph b/unmaintained/systems/ceph-service-x86_64-generic.morph deleted file mode 100644 index ba48f0e6..00000000 --- a/unmaintained/systems/ceph-service-x86_64-generic.morph +++ /dev/null @@ -1,70 +0,0 @@ -name: ceph-service-x86_64-generic -kind: system -description: The set of strata required to have a minimal system for a 64-bit x86 - system + the service daemons for ceph object, block and file storage. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: cpp-common-libs - morph: strata/cpp-common-libs.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: network-security - morph: strata/network-security.morph -- name: ceph-service - morph: unmaintained/strata/ceph-service.morph -- name: tools - morph: strata/tools.morph -- name: ruby - morph: strata/ruby.morph -- name: ntpd - morph: unmaintained/strata/ntpd.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.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 - 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: python2-core - morph: strata/python2-core.morph -- name: python-common - morph: strata/python-common.morph -- name: chef - morph: unmaintained/strata/chef.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/ceph -- extensions/cloud-init -- extensions/install-essential-files diff --git a/unmaintained/systems/chef-system-x86_64-container.morph b/unmaintained/systems/chef-system-x86_64-container.morph deleted file mode 100644 index f9df4d9b..00000000 --- a/unmaintained/systems/chef-system-x86_64-container.morph +++ /dev/null @@ -1,32 +0,0 @@ -name: chef-system-x86_64-container -kind: system -arch: x86_64 -description: Minimal chef system suitable for running in a container -configuration-extensions: -- extensions/set-hostname -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/busybox-init -- extensions/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: unmaintained/strata/chef.morph - artifacts: - - chef-runtime diff --git a/unmaintained/systems/cxmanage-system-x86_64-generic.morph b/unmaintained/systems/cxmanage-system-x86_64-generic.morph deleted file mode 100644 index cb384212..00000000 --- a/unmaintained/systems/cxmanage-system-x86_64-generic.morph +++ /dev/null @@ -1,28 +0,0 @@ -name: cxmanage-system-x86_64-generic -kind: system -description: A baserock development system with calxeda management tools added -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: cxmanage - morph: unmaintained/strata/cxmanage.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7-chroot.morph b/unmaintained/systems/devel-system-armv7-chroot.morph deleted file mode 100644 index 78b9fd42..00000000 --- a/unmaintained/systems/devel-system-armv7-chroot.morph +++ /dev/null @@ -1,72 +0,0 @@ -name: devel-system-armv7-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use as a chroot inside a Linux-based operating system on ARMv7 - computers using little-endian word order. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7-highbank.morph b/unmaintained/systems/devel-system-armv7-highbank.morph deleted file mode 100644 index 02f8069e..00000000 --- a/unmaintained/systems/devel-system-armv7-highbank.morph +++ /dev/null @@ -1,75 +0,0 @@ -name: devel-system-armv7-highbank -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 Calxeda Highbank computers using little-endian word order. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-highbank - morph: strata/bsp-armv7-highbank.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: unionfs-fuse-group - morph: strata/unionfs-fuse-group.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7-versatile.morph b/unmaintained/systems/devel-system-armv7-versatile.morph deleted file mode 100644 index f4f37b43..00000000 --- a/unmaintained/systems/devel-system-armv7-versatile.morph +++ /dev/null @@ -1,73 +0,0 @@ -name: devel-system-armv7-versatile -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on generic ARMv7 versatile computers using little-endian word order. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-versatile - morph: strata/bsp-armv7-versatile.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7-wandboard.morph b/unmaintained/systems/devel-system-armv7-wandboard.morph deleted file mode 100644 index 5707e4a6..00000000 --- a/unmaintained/systems/devel-system-armv7-wandboard.morph +++ /dev/null @@ -1,73 +0,0 @@ -name: devel-system-armv7-wandboard -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 Wandboard computers using little-endian word order. -arch: armv7l -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-wandboard - morph: strata/bsp-wandboard.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7b-chroot.morph b/unmaintained/systems/devel-system-armv7b-chroot.morph deleted file mode 100644 index 18ca827b..00000000 --- a/unmaintained/systems/devel-system-armv7b-chroot.morph +++ /dev/null @@ -1,64 +0,0 @@ -name: devel-system-armv7b-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use as a chroot inside a Linux-based operating system on ARMv7 computers - using big-endian word order. -arch: armv7b -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7b-highbank.morph b/unmaintained/systems/devel-system-armv7b-highbank.morph deleted file mode 100644 index 04847e9d..00000000 --- a/unmaintained/systems/devel-system-armv7b-highbank.morph +++ /dev/null @@ -1,71 +0,0 @@ -name: devel-system-armv7b-highbank -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 Calxeda Highbank computers using big-endian word order. -arch: armv7b -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7b-highbank - morph: strata/bsp-armv7b-highbank.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: unionfs-fuse-group - morph: strata/unionfs-fuse-group.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7l-altera-socfpga-devkit.morph b/unmaintained/systems/devel-system-armv7l-altera-socfpga-devkit.morph deleted file mode 100644 index f4e74723..00000000 --- a/unmaintained/systems/devel-system-armv7l-altera-socfpga-devkit.morph +++ /dev/null @@ -1,66 +0,0 @@ -name: devel-system-armv7l-altera-socfpga-devkit -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on Altera SoCFPGA development kit, using little-endian word - order. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7l-altera-socfpga-devkit - morph: strata/bsp-armv7l-altera-socfpga-devkit.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7lhf-chroot.morph b/unmaintained/systems/devel-system-armv7lhf-chroot.morph deleted file mode 100644 index 9bcb1f50..00000000 --- a/unmaintained/systems/devel-system-armv7lhf-chroot.morph +++ /dev/null @@ -1,72 +0,0 @@ -name: devel-system-armv7lhf-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 computers using little-endian word order and hardware - floating point support. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7lhf-highbank.morph b/unmaintained/systems/devel-system-armv7lhf-highbank.morph deleted file mode 100644 index 6921c8ad..00000000 --- a/unmaintained/systems/devel-system-armv7lhf-highbank.morph +++ /dev/null @@ -1,78 +0,0 @@ -name: devel-system-armv7lhf-highbank -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 Calxeda Highbank computers using little-endian word order - and hardware floating-point support. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv7-highbank - morph: strata/bsp-armv7-highbank.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: unionfs-fuse-group - morph: strata/unionfs-fuse-group.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7lhf-jetson.morph b/unmaintained/systems/devel-system-armv7lhf-jetson.morph deleted file mode 100644 index ce3dee27..00000000 --- a/unmaintained/systems/devel-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,76 +0,0 @@ -name: devel-system-armv7lhf-jetson -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 NVIDIA Jetson TK1 computers using little-endian word order - and hardware floating-point support. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/nfs.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv7lhf-wandboard.morph b/unmaintained/systems/devel-system-armv7lhf-wandboard.morph deleted file mode 100644 index 2d83c2fa..00000000 --- a/unmaintained/systems/devel-system-armv7lhf-wandboard.morph +++ /dev/null @@ -1,76 +0,0 @@ -name: devel-system-armv7lhf-wandboard -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on ARMv7 Wandboard computers using little-endian word order and - hardware floating point support. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-wandboard - morph: strata/bsp-wandboard.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv8b64.morph b/unmaintained/systems/devel-system-armv8b64.morph deleted file mode 100644 index 5c5460cd..00000000 --- a/unmaintained/systems/devel-system-armv8b64.morph +++ /dev/null @@ -1,77 +0,0 @@ -name: devel-system-armv8b64 -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on 64-bit ARMv8 computers using big-endian word. -arch: armv8b64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8b64-generic - morph: strata/bsp-armv8b64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/cloudinit-support.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/moonshot-kernel -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-armv8l64.morph b/unmaintained/systems/devel-system-armv8l64.morph deleted file mode 100644 index 606ae102..00000000 --- a/unmaintained/systems/devel-system-armv8l64.morph +++ /dev/null @@ -1,78 +0,0 @@ -name: devel-system-armv8l64 -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on 64-bit ARMv8 computers using little-endian word. -arch: armv8l64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-armv8l64-generic - morph: strata/bsp-armv8l64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/cloudinit-support.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/moonshot-kernel -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-ppc64-chroot.morph b/unmaintained/systems/devel-system-ppc64-chroot.morph deleted file mode 100644 index 34ed6834..00000000 --- a/unmaintained/systems/devel-system-ppc64-chroot.morph +++ /dev/null @@ -1,70 +0,0 @@ -name: devel-system-ppc64-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use as a chroot inside a Linux operating system on 64-bit POWER - computers. -arch: ppc64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-ppc64-generic.morph b/unmaintained/systems/devel-system-ppc64-generic.morph deleted file mode 100644 index 6b542186..00000000 --- a/unmaintained/systems/devel-system-ppc64-generic.morph +++ /dev/null @@ -1,73 +0,0 @@ -name: devel-system-ppc64-generic -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on 64-bit POWER computers. -arch: ppc64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-ppc64-generic - morph: strata/bsp-ppc64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-x86_32-chroot.morph b/unmaintained/systems/devel-system-x86_32-chroot.morph deleted file mode 100644 index 6b4be0ea..00000000 --- a/unmaintained/systems/devel-system-x86_32-chroot.morph +++ /dev/null @@ -1,72 +0,0 @@ -name: devel-system-x86_32-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use as a chroot inside a Linux operating system on 32-bit Intel x86 - computers. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: bsp-x86_both-tools - morph: strata/bsp-x86_both-tools.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-x86_32-generic.morph b/unmaintained/systems/devel-system-x86_32-generic.morph deleted file mode 100644 index d17abc07..00000000 --- a/unmaintained/systems/devel-system-x86_32-generic.morph +++ /dev/null @@ -1,78 +0,0 @@ -name: devel-system-x86_32-generic -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on 32-bit Intel x86 computers. -arch: x86_32 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_32-generic - morph: strata/bsp-x86_32-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/cloudinit-support.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-x86_64-chroot.morph b/unmaintained/systems/devel-system-x86_64-chroot.morph deleted file mode 100644 index be5ab108..00000000 --- a/unmaintained/systems/devel-system-x86_64-chroot.morph +++ /dev/null @@ -1,74 +0,0 @@ -name: devel-system-x86_64-chroot -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use as a chroot inside a Linux operating system on 64-bit Intel x86 - computers. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/bsp-x86_both-tools.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-x86_64-generic.morph b/unmaintained/systems/devel-system-x86_64-generic.morph deleted file mode 100644 index 3691b14a..00000000 --- a/unmaintained/systems/devel-system-x86_64-generic.morph +++ /dev/null @@ -1,83 +0,0 @@ -name: devel-system-x86_64-generic -kind: system -description: | - A system with useful tools for doing Baserock development. - - For use on 64-bit Intel x86 computers. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/cloudinit-support.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: erlang - morph: strata/erlang.morph -- name: elixir - morph: strata/elixir.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/devel-system-x86_64-vagrant.morph b/unmaintained/systems/devel-system-x86_64-vagrant.morph deleted file mode 100644 index 76d882e2..00000000 --- a/unmaintained/systems/devel-system-x86_64-vagrant.morph +++ /dev/null @@ -1,76 +0,0 @@ -name: devel-system-x86_64-vagrant -kind: system -description: | - A system with useful tools for doing Baserock development, using Vagrant. - - For use with the Vagrant tool for x86_64 virtual machines. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/virtualbox-guest-x86_64.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: perl-common - morph: strata/perl-common.morph -- name: CPAN-Mini-Inject - morph: strata/CPAN-Mini-Inject.morph -- name: sandboxing - morph: strata/sandboxing.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/vagrant -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/java-build-system-x86_64-generic.morph b/unmaintained/systems/java-build-system-x86_64-generic.morph deleted file mode 100644 index 2a26b7b1..00000000 --- a/unmaintained/systems/java-build-system-x86_64-generic.morph +++ /dev/null @@ -1,90 +0,0 @@ -name: java-build-system-x86_64-generic -kind: system -description: | - A superset of devel-system which can build OpenJDK. - - There are instruction on using and testing java-build-system at: - https://wiki.baserock.org/Java. - - For use on 64-bit Intel x86 computers. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.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 - morph: strata/cloudinit-support.morph -- name: nodejs - morph: strata/nodejs.morph -- name: ruby - morph: strata/ruby.morph -- name: lorry - morph: strata/lorry.morph -- name: baserock-import - morph: strata/baserock-import.morph -- name: nfs - morph: strata/nfs.morph -- name: python2-core - morph: strata/python2-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 -- name: swift - morph: strata/swift.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: cups - morph: strata/cups.morph -- name: java - morph: unmaintained/strata/java.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/fstab -- extensions/install-essential-files diff --git a/unmaintained/systems/nodejs-system-x86_64.morph b/unmaintained/systems/nodejs-system-x86_64.morph deleted file mode 100644 index 7fba330b..00000000 --- a/unmaintained/systems/nodejs-system-x86_64.morph +++ /dev/null @@ -1,24 +0,0 @@ -name: nodejs-system-x86_64 -kind: system -description: A system that is able to build other systems based on the 64-bit x86 - architecture. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: python2-core - morph: strata/python2-core.morph -- name: nodejs - morph: strata/nodejs.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/ocaml-system-x86_64.morph b/unmaintained/systems/ocaml-system-x86_64.morph deleted file mode 100644 index 03f91c1b..00000000 --- a/unmaintained/systems/ocaml-system-x86_64.morph +++ /dev/null @@ -1,20 +0,0 @@ -name: ocaml-system-x86_64 -kind: system -description: OCaml base system -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: ocaml-language - morph: unmaintained/strata/ocaml-language.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files diff --git a/unmaintained/systems/openstack-system-x86_64.morph b/unmaintained/systems/openstack-system-x86_64.morph deleted file mode 100644 index 32ffb629..00000000 --- a/unmaintained/systems/openstack-system-x86_64.morph +++ /dev/null @@ -1,88 +0,0 @@ -name: openstack-system-x86_64 -kind: system -description: Openstack system in baserock for the x86_64 architecture -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-common - morph: strata/python-common.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: devtools - morph: strata/devtools.morph -- name: tools - morph: strata/tools.morph -- name: cloudinit-support - morph: strata/cloudinit-support.morph -- name: lvm - morph: unmaintained/strata/lvm.morph -- name: virtualization - morph: unmaintained/strata/virtualization.morph -- name: connectivity - morph: strata/connectivity.morph -- name: networking-utils - morph: unmaintained/strata/networking-utils.morph -- name: nfs - morph: strata/nfs.morph -- name: databases - morph: unmaintained/strata/databases.morph -- name: erlang - morph: strata/erlang.morph -- name: apache-httpd-server - morph: unmaintained/strata/apache-httpd-server.morph -- name: django - morph: unmaintained/strata/django.morph -- name: xstatic - morph: unmaintained/strata/xstatic.morph -- name: openstack-common - morph: strata/openstack-common.morph -- name: openstack-clients - morph: strata/openstack-clients.morph -- name: openstack-services - morph: unmaintained/strata/openstack-services.morph -- name: ansible - morph: strata/ansible.morph -- name: ntpd - morph: unmaintained/strata/ntpd.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: test-tools - morph: unmaintained/strata/test-tools.morph -- name: swift - morph: strata/swift.morph -- name: python-tools - morph: strata/python-tools.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/cloud-init -- extensions/hosts -- extensions/openstack-keystone -- extensions/openstack-glance -- extensions/openstack-cinder -- extensions/openstack-nova -- extensions/openstack-network -- extensions/openstack-neutron -- extensions/openstack-ceilometer -- extensions/openstack-time -- extensions/fstab -- extensions/openstack-ironic -- extensions/install-essential-files diff --git a/unmaintained/systems/qt4-devel-system-x86_64-generic.morph b/unmaintained/systems/qt4-devel-system-x86_64-generic.morph deleted file mode 100644 index 8022ec72..00000000 --- a/unmaintained/systems/qt4-devel-system-x86_64-generic.morph +++ /dev/null @@ -1,52 +0,0 @@ -name: qt4-devel-system-x86_64-generic -kind: system -description: A system that is able to build other systems based on the 64-bit x86 - architecture. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer-0.10 - morph: unmaintained/strata/multimedia-gstreamer-0.10.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: qt4-tools - morph: unmaintained/strata/qt4-tools.morph -- name: qt4-sdk - morph: unmaintained/strata/qt4-sdk.morph -- name: lua51 - morph: unmaintained/strata/lua51.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: enlightenment - morph: unmaintained/strata/enlightenment.morph -- name: icu-common - morph: strata/icu-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/qt5-devel-system-x86_64-generic.morph b/unmaintained/systems/qt5-devel-system-x86_64-generic.morph deleted file mode 100644 index 38d2b0f8..00000000 --- a/unmaintained/systems/qt5-devel-system-x86_64-generic.morph +++ /dev/null @@ -1,54 +0,0 @@ -name: qt5-devel-system-x86_64-generic -kind: system -description: A system that is able to build other systems based on the 64-bit x86 - architecture. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtwebengine - morph: strata/qt5-tools-qtwebengine.morph -- name: qt5-sdk - morph: strata/qt5-sdk.morph -- name: lua51 - morph: unmaintained/strata/lua51.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: enlightenment - morph: unmaintained/strata/enlightenment.morph -- name: icu-common - morph: strata/icu-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/swift-system-x86_64.morph b/unmaintained/systems/swift-system-x86_64.morph deleted file mode 100644 index 442ead93..00000000 --- a/unmaintained/systems/swift-system-x86_64.morph +++ /dev/null @@ -1,34 +0,0 @@ -name: swift-system-x86_64 -kind: system -description: A base system for deploying swift nodes -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: swift - morph: strata/swift.morph -- name: ntpd - morph: unmaintained/strata/ntpd.morph -- name: python2-core - morph: strata/python2-core.morph -- name: python-common - morph: strata/python-common.morph -- name: ansible - morph: strata/ansible.morph -- name: openstack-common - morph: strata/openstack-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/fstab -- extensions/swift-storage -- extensions/install-essential-files diff --git a/unmaintained/systems/web-system-x86_64-generic.morph b/unmaintained/systems/web-system-x86_64-generic.morph deleted file mode 100644 index ec9fa254..00000000 --- a/unmaintained/systems/web-system-x86_64-generic.morph +++ /dev/null @@ -1,43 +0,0 @@ -name: web-system-x86_64-generic -kind: system -description: system with web tools -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: foundation - morph: strata/foundation.morph -- name: core - morph: strata/core.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: nfs - morph: strata/nfs.morph -- name: databases - morph: unmaintained/strata/databases.morph -- name: lighttpd-server - morph: strata/lighttpd-server.morph -- name: webtools - morph: unmaintained/strata/webtools.morph -- name: erlang - morph: strata/erlang.morph -- name: ruby - morph: strata/ruby.morph -- name: python2-core - morph: strata/python2-core.morph -- name: nodejs - morph: strata/nodejs.morph -- name: icu-common - morph: strata/icu-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/xfce-system-x86_64.morph b/unmaintained/systems/xfce-system-x86_64.morph deleted file mode 100644 index 8525a28c..00000000 --- a/unmaintained/systems/xfce-system-x86_64.morph +++ /dev/null @@ -1,79 +0,0 @@ -name: xfce-system-x86_64 -kind: system -description: A system with the XFCE desktop -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: device-management - morph: strata/device-management.morph -- name: python2-core - morph: strata/python2-core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: input-common - morph: strata/input-common.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: x-drivers - morph: strata/x-drivers.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: gtk-deps - morph: strata/gtk-deps.morph -- name: gtk2 - morph: strata/gtk2.morph -- name: tools - morph: strata/tools.morph -- name: devtools - morph: strata/devtools.morph -- name: python-cliapp - morph: strata/python-cliapp.morph -- name: python-pygobject - morph: strata/python-pygobject.morph -- name: python-wsgi - morph: strata/python-wsgi.morph -- name: libsoup-common - morph: strata/libsoup-common.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: ostree-core - morph: strata/ostree-core.morph -- name: morph-utils - morph: strata/morph-utils.morph -- name: xfce - morph: unmaintained/strata/xfce.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/zookeeper-client-x86_64.morph b/unmaintained/systems/zookeeper-client-x86_64.morph deleted file mode 100644 index d08ec5f9..00000000 --- a/unmaintained/systems/zookeeper-client-x86_64.morph +++ /dev/null @@ -1,30 +0,0 @@ -name: zookeeper-client-x86_64 -kind: system -description: | - A system that is able to build other systems based on the 64-bit x86 - architecture. includes the installation of zookeeper and a test client. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: zookeeper - morph: unmaintained/strata/zookeeper.morph -- name: zookeeper-client - morph: unmaintained/strata/zookeeper-client.morph -- name: test-tools - morph: unmaintained/strata/test-tools.morph -- name: java - morph: unmaintained/strata/java.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/unmaintained/systems/zookeeper-server-x86_64.morph b/unmaintained/systems/zookeeper-server-x86_64.morph deleted file mode 100644 index 8b5062be..00000000 --- a/unmaintained/systems/zookeeper-server-x86_64.morph +++ /dev/null @@ -1,30 +0,0 @@ -name: zookeeper-server-x86_64 -kind: system -description: | - A system that is able to build other systems based on the 64-bit x86 - architecture. includes the zookeeper server and setup for basic tests -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: zookeeper - morph: unmaintained/strata/zookeeper.morph -- name: zookeeper-server - morph: unmaintained/strata/zookeeper-server.morph -- name: test-tools - morph: unmaintained/strata/test-tools.morph -- name: java - morph: unmaintained/strata/java.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/simple-network -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/weston/clusters/weston-qt5-system-x86_64-deploy.morph b/weston/clusters/weston-qt5-system-x86_64-deploy.morph deleted file mode 100644 index 51fda42b..00000000 --- a/weston/clusters/weston-qt5-system-x86_64-deploy.morph +++ /dev/null @@ -1,23 +0,0 @@ -name: weston-qt5-system-x86_64-deploy -kind: cluster -description: | - Deploy a stock weston system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: weston/systems/weston-qt5-system-x86_64.morph - deploy: - weston-qt5-system-x86_64: - type: extensions/rawdisk - location: /weston-qt5-system-x86_64.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: initramfs - location: boot/initramfs.gz diff --git a/weston/clusters/weston-system-x86_64-generic-deploy.morph b/weston/clusters/weston-system-x86_64-generic-deploy.morph deleted file mode 100644 index 2428fddd..00000000 --- a/weston/clusters/weston-system-x86_64-generic-deploy.morph +++ /dev/null @@ -1,23 +0,0 @@ -name: weston-system-x86_64-generic-deploy -kind: cluster -description: | - Deploy a stock weston system. - - The resulting image can be copied to a USB and booted from there, - as well as in a virtual machine. - -systems: -- morph: weston/systems/weston-system-x86_64-generic.morph - deploy: - weston-system-x86_64-generic: - type: extensions/rawdisk - location: /weston-system-x86_64-generic.img - DISK_SIZE: 4G - KERNEL_ARGS: vga=788 - INITRAMFS_PATH: boot/initramfs.gz - subsystems: - - morph: systems/initramfs-x86_64.morph - deploy: - initramfs: - type: extensions/initramfs - location: boot/initramfs.gz diff --git a/weston/systems/weston-qt5-system-x86_64.morph b/weston/systems/weston-qt5-system-x86_64.morph deleted file mode 100644 index fe426265..00000000 --- a/weston/systems/weston-qt5-system-x86_64.morph +++ /dev/null @@ -1,70 +0,0 @@ -name: weston-qt5-system-x86_64.morph -kind: system -description: A system that is able to build other systems based on the 64-bit x86 - architecture. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: device-management - morph: strata/device-management.morph -- name: foundation - morph: strata/foundation.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: qt5-tools - morph: strata/qt5-tools.morph -- name: qt5-tools-qtmultimedia - morph: strata/qt5-tools-qtmultimedia.morph -- name: qt5-tools-qtwebengine - morph: strata/qt5-tools-qtwebengine.morph -- name: qt5-tools-qtwayland - morph: strata/qt5-tools-qtwayland.morph -- name: connectivity - morph: strata/connectivity.morph -- name: connman-common - morph: strata/connman-common.morph -- name: icu-common - morph: strata/icu-common.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/weston/systems/weston-system-armv7lhf-jetson.morph b/weston/systems/weston-system-armv7lhf-jetson.morph deleted file mode 100644 index 61b4d86c..00000000 --- a/weston/systems/weston-system-armv7lhf-jetson.morph +++ /dev/null @@ -1,58 +0,0 @@ -name: weston-system-armv7lhf-jetson -kind: system -description: A weston system for ARMv7 little-endian hard-float NVIDIA Jetson TK1 - computers. -arch: armv7lhf -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: device-management - morph: strata/device-management.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-jetson - morph: strata/bsp-jetson.morph -- name: connectivity - morph: strata/connectivity.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files diff --git a/weston/systems/weston-system-x86_64-generic.morph b/weston/systems/weston-system-x86_64-generic.morph deleted file mode 100644 index d2ce28e7..00000000 --- a/weston/systems/weston-system-x86_64-generic.morph +++ /dev/null @@ -1,57 +0,0 @@ -name: weston-system-x86_64-generic -kind: system -description: A weston system for a 64-bit x86 system. -arch: x86_64 -strata: -- name: build-essential - morph: strata/build-essential.morph -- name: core - morph: strata/core.morph -- name: coreutils-common - morph: strata/coreutils-common.morph -- name: device-management - morph: strata/device-management.morph -- name: foundation - morph: strata/foundation.morph -- name: bsp-x86_64-generic - morph: strata/bsp-x86_64-generic.morph -- name: connectivity - morph: strata/connectivity.morph -- name: bluetooth - morph: strata/bluetooth.morph -- name: libdrm-common - morph: strata/libdrm-common.morph -- name: multimedia-common - morph: strata/multimedia-common.morph -- name: multimedia-gstreamer - morph: strata/multimedia-gstreamer.morph -- name: wayland-generic - morph: strata/wayland-generic.morph -- name: graphics-common - morph: strata/graphics-common.morph -- name: input-common - morph: strata/input-common.morph -- name: llvm-common - morph: strata/llvm-common.morph -- name: mesa-common - morph: strata/mesa-common.morph -- name: sound-server-pulseaudio - morph: strata/sound-server-pulseaudio.morph -- name: weston-common - morph: strata/weston-common.morph -- name: x-common - morph: strata/x-common.morph -- name: x-generic - morph: strata/x-generic.morph -- name: tools - morph: strata/tools.morph -- name: glib-common - morph: strata/glib-common.morph -- name: pcre-utils - morph: strata/pcre-utils.morph -configuration-extensions: -- extensions/set-hostname -- extensions/add-config-files -- extensions/nfsboot -- extensions/install-files -- extensions/install-essential-files -- cgit v1.2.1