Parallelize builds
diff --git a/.github/workflows/test-master.yml b/.github/workflows/test-master.yml
deleted file mode 100644
index ffff096..0000000
--- a/.github/workflows/test-master.yml
+++ /dev/null
@@ -1,470 +0,0 @@
-name: test-master
-'on':
- pull_request: {}
- push:
- branches:
- - main
-jobs:
- build-images:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3.0.2
- - uses: docker/setup-qemu-action@v2.0.0
- - uses: docker/setup-buildx-action@v2.0.0
- - uses: docker/login-action@v2.0.0
- with:
- registry: quay.io
- username: ${{ secrets.QUAY_USERNAME }}
- password: ${{ secrets.QUAY_ROBOT_TOKEN }}
- - name: Build openstack/barbican
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=barbican-master
- cache-to: type=gha,mode=max,scope=barbican-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=barbican
-
- PROJECT_REF=ff7fef62116bf5e128da1207752fb69a6193e606
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/barbican:ff7fef62116bf5e128da1207752fb69a6193e606
- - name: Build openstack/cinder
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=cinder-master
- cache-to: type=gha,mode=max,scope=cinder-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=cinder
-
- PROJECT_REF=cf2b3005aa39b5700f51be0140c61ad9f8ec47db
-
- PROFILES=ceph qemu
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/cinder:cf2b3005aa39b5700f51be0140c61ad9f8ec47db
- - name: Build openstack/designate
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=designate-master
- cache-to: type=gha,mode=max,scope=designate-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=designate
-
- PROJECT_REF=927e34ee5a53771530e78bcbbd74549c632b539a
-
- PROFILES=
-
- DIST_PACKAGES=bind9utils
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/designate:927e34ee5a53771530e78bcbbd74549c632b539a
- - name: Build openstack/glance
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=glance-master
- cache-to: type=gha,mode=max,scope=glance-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=glance
-
- PROJECT_REF=cb60c1d2facde2f318ec30c8b9cf63844eaccf92
-
- PROFILES=ceph
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/glance:cb60c1d2facde2f318ec30c8b9cf63844eaccf92
- - name: Build openstack/heat
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=heat-master
- cache-to: type=gha,mode=max,scope=heat-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=heat
-
- PROJECT_REF=f98d164be9c7fecd390b3e4822b33ad4054fcfca
-
- PROFILES=
-
- DIST_PACKAGES=curl
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/heat:f98d164be9c7fecd390b3e4822b33ad4054fcfca
- - name: Build openstack/horizon
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=horizon-master
- cache-to: type=gha,mode=max,scope=horizon-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=horizon
-
- PROJECT_REF=857d17467adca804fab70c0d8a88f2bf89234ae5
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard
- octavia-dashboard senlin-dashboard monasca-ui'
- tags: quay.io/vexxhost/horizon:857d17467adca804fab70c0d8a88f2bf89234ae5
- - name: Build openstack/ironic
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=ironic-master
- cache-to: type=gha,mode=max,scope=ironic-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=ironic
-
- PROJECT_REF=4a347b3069498d0f2b49105014e6e118b5972c0f
-
- PROFILES=ipxe ipmi qemu tftp
-
- DIST_PACKAGES=ethtool lshw iproute2
-
- PIP_PACKAGES=python-dracclient sushy'
- tags: quay.io/vexxhost/ironic:4a347b3069498d0f2b49105014e6e118b5972c0f
- - name: Build openstack/keystone
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=keystone-master
- cache-to: type=gha,mode=max,scope=keystone-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=keystone
-
- PROJECT_REF=1dd6993d7b9b647810e6f495b62c37627c6e8658
-
- PROFILES=apache ldap openidc
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/keystone:1dd6993d7b9b647810e6f495b62c37627c6e8658
- - name: Build openstack/magnum
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=magnum-master
- cache-to: type=gha,mode=max,scope=magnum-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=magnum
-
- PROJECT_REF=60b338126601be3db42ba65d71649c4e3878b4f3
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/magnum:60b338126601be3db42ba65d71649c4e3878b4f3
- - name: Build openstack/monasca-agent
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-agent-master
- cache-to: type=gha,mode=max,scope=monasca-agent-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=monasca-agent
-
- PROJECT_REF=29be6e96a6c590221e7d2fd1e30dffc7aec519a9
-
- PROFILES=
-
- DIST_PACKAGES=iproute2 libvirt-clients lshw
-
- PIP_PACKAGES=libvirt-python python-glanceclient python-neutronclient python-novaclient
- py3nvml'
- tags: quay.io/vexxhost/monasca-agent:29be6e96a6c590221e7d2fd1e30dffc7aec519a9
- - name: Build openstack/monasca-api
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-api-master
- cache-to: type=gha,mode=max,scope=monasca-api-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=monasca-api
-
- PROJECT_REF=658c68b593a4d83f59143dc6c7df81860d3f57cb
-
- PROFILES=apache influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-api:658c68b593a4d83f59143dc6c7df81860d3f57cb
- - name: Build openstack/monasca-notification
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-notification-master
- cache-to: type=gha,mode=max,scope=monasca-notification-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=monasca-notification
-
- PROJECT_REF=5225304a268fbd7e5edc30ab6d2b0cbf3b92b565
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-notification:5225304a268fbd7e5edc30ab6d2b0cbf3b92b565
- - name: Build openstack/monasca-persister
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-persister-master
- cache-to: type=gha,mode=max,scope=monasca-persister-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=monasca-persister
-
- PROJECT_REF=1ea4e21eb231e4fe193e62f1b03b957c9d4281c8
-
- PROFILES=influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-persister:1ea4e21eb231e4fe193e62f1b03b957c9d4281c8
- - name: Build openstack/neutron
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=neutron-master
- cache-to: type=gha,mode=max,scope=neutron-master
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=master
-
- PROJECT=neutron
-
- PROJECT_REF=3e8f2325d626a695a812a093907a6f3fd2e1315f
-
- PROFILES=openvswitch vpn
-
- DIST_PACKAGES=jq ethtool lshw
-
- PIP_PACKAGES=neutron-vpnaas'
- tags: quay.io/vexxhost/neutron:3e8f2325d626a695a812a093907a6f3fd2e1315f
- - name: Build openstack/nova
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=nova-master
- cache-to: type=gha,mode=max,scope=nova-master
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=master
-
- PROJECT=nova
-
- PROJECT_REF=69bc4c38d1c5b98fcbbe8b16a7dfeb654e3b8173
-
- PROFILES=ceph openvswitch configdrive qemu migration
-
- DIST_PACKAGES=ovmf qemu-efi-aarch64
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/nova:69bc4c38d1c5b98fcbbe8b16a7dfeb654e3b8173
- - name: Build openstack/octavia
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=octavia-master
- cache-to: type=gha,mode=max,scope=octavia-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=octavia
-
- PROJECT_REF=98ec46b8073bda426316235f743e9af004172389
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/octavia:98ec46b8073bda426316235f743e9af004172389
- - name: Build openstack/placement
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=placement-master
- cache-to: type=gha,mode=max,scope=placement-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=placement
-
- PROJECT_REF=d0e05e89ac4a57b6489007ed46e86357f11e5b23
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=httplib2'
- tags: quay.io/vexxhost/placement:d0e05e89ac4a57b6489007ed46e86357f11e5b23
- - name: Build openstack/senlin
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=senlin-master
- cache-to: type=gha,mode=max,scope=senlin-master
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=master
-
- PROJECT=senlin
-
- PROJECT_REF=5d3bc56e01f163b62b6e5d53c53ec1bdcf792cc7
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/senlin:5d3bc56e01f163b62b6e5d53c53ec1bdcf792cc7
- - name: Promote openstack/barbican
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/barbican:ff7fef62116bf5e128da1207752fb69a6193e606
- dst: quay.io/vexxhost/barbican:master
- - name: Promote openstack/cinder
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/cinder:cf2b3005aa39b5700f51be0140c61ad9f8ec47db
- dst: quay.io/vexxhost/cinder:master
- - name: Promote openstack/designate
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/designate:927e34ee5a53771530e78bcbbd74549c632b539a
- dst: quay.io/vexxhost/designate:master
- - name: Promote openstack/glance
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/glance:cb60c1d2facde2f318ec30c8b9cf63844eaccf92
- dst: quay.io/vexxhost/glance:master
- - name: Promote openstack/heat
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/heat:f98d164be9c7fecd390b3e4822b33ad4054fcfca
- dst: quay.io/vexxhost/heat:master
- - name: Promote openstack/horizon
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/horizon:857d17467adca804fab70c0d8a88f2bf89234ae5
- dst: quay.io/vexxhost/horizon:master
- - name: Promote openstack/ironic
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/ironic:4a347b3069498d0f2b49105014e6e118b5972c0f
- dst: quay.io/vexxhost/ironic:master
- - name: Promote openstack/keystone
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/keystone:1dd6993d7b9b647810e6f495b62c37627c6e8658
- dst: quay.io/vexxhost/keystone:master
- - name: Promote openstack/magnum
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/magnum:60b338126601be3db42ba65d71649c4e3878b4f3
- dst: quay.io/vexxhost/magnum:master
- - name: Promote openstack/monasca-agent
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-agent:29be6e96a6c590221e7d2fd1e30dffc7aec519a9
- dst: quay.io/vexxhost/monasca-agent:master
- - name: Promote openstack/monasca-api
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-api:658c68b593a4d83f59143dc6c7df81860d3f57cb
- dst: quay.io/vexxhost/monasca-api:master
- - name: Promote openstack/monasca-notification
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-notification:5225304a268fbd7e5edc30ab6d2b0cbf3b92b565
- dst: quay.io/vexxhost/monasca-notification:master
- - name: Promote openstack/monasca-persister
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-persister:1ea4e21eb231e4fe193e62f1b03b957c9d4281c8
- dst: quay.io/vexxhost/monasca-persister:master
- - name: Promote openstack/neutron
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/neutron:3e8f2325d626a695a812a093907a6f3fd2e1315f
- dst: quay.io/vexxhost/neutron:master
- - name: Promote openstack/nova
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/nova:69bc4c38d1c5b98fcbbe8b16a7dfeb654e3b8173
- dst: quay.io/vexxhost/nova:master
- - name: Promote openstack/octavia
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/octavia:98ec46b8073bda426316235f743e9af004172389
- dst: quay.io/vexxhost/octavia:master
- - name: Promote openstack/placement
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/placement:d0e05e89ac4a57b6489007ed46e86357f11e5b23
- dst: quay.io/vexxhost/placement:master
- - name: Promote openstack/senlin
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/senlin:5d3bc56e01f163b62b6e5d53c53ec1bdcf792cc7
- dst: quay.io/vexxhost/senlin:master
diff --git a/.github/workflows/test-wallaby.yml b/.github/workflows/test-wallaby.yml
deleted file mode 100644
index 0e244ae..0000000
--- a/.github/workflows/test-wallaby.yml
+++ /dev/null
@@ -1,470 +0,0 @@
-name: test-wallaby
-'on':
- pull_request: {}
- push:
- branches:
- - main
-jobs:
- build-images:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3.0.2
- - uses: docker/setup-qemu-action@v2.0.0
- - uses: docker/setup-buildx-action@v2.0.0
- - uses: docker/login-action@v2.0.0
- with:
- registry: quay.io
- username: ${{ secrets.QUAY_USERNAME }}
- password: ${{ secrets.QUAY_ROBOT_TOKEN }}
- - name: Build openstack/barbican
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=barbican-wallaby
- cache-to: type=gha,mode=max,scope=barbican-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=barbican
-
- PROJECT_REF=486e60723f1f635b8e1843bccaf144d85556a9f6
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/barbican:486e60723f1f635b8e1843bccaf144d85556a9f6
- - name: Build openstack/cinder
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=cinder-wallaby
- cache-to: type=gha,mode=max,scope=cinder-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=cinder
-
- PROJECT_REF=70164132dcc590c944fee36c58e93056a3447142
-
- PROFILES=ceph qemu
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/cinder:70164132dcc590c944fee36c58e93056a3447142
- - name: Build openstack/designate
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=designate-wallaby
- cache-to: type=gha,mode=max,scope=designate-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=designate
-
- PROJECT_REF=8cef906600117b71903b54c4d7c1e072902f7a46
-
- PROFILES=
-
- DIST_PACKAGES=bind9utils
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/designate:8cef906600117b71903b54c4d7c1e072902f7a46
- - name: Build openstack/glance
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=glance-wallaby
- cache-to: type=gha,mode=max,scope=glance-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=glance
-
- PROJECT_REF=677c89c23631e9083261a1a18ed438d8966e0de2
-
- PROFILES=ceph
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/glance:677c89c23631e9083261a1a18ed438d8966e0de2
- - name: Build openstack/heat
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=heat-wallaby
- cache-to: type=gha,mode=max,scope=heat-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=heat
-
- PROJECT_REF=d0e2ded71374cffab41499e75efb81782bf83ffa
-
- PROFILES=
-
- DIST_PACKAGES=curl
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/heat:d0e2ded71374cffab41499e75efb81782bf83ffa
- - name: Build openstack/horizon
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=horizon-wallaby
- cache-to: type=gha,mode=max,scope=horizon-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=horizon
-
- PROJECT_REF=82698aa8901b0533f2e62868fabbf5ef4c36cea0
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard
- octavia-dashboard senlin-dashboard monasca-ui'
- tags: quay.io/vexxhost/horizon:82698aa8901b0533f2e62868fabbf5ef4c36cea0
- - name: Build openstack/ironic
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=ironic-wallaby
- cache-to: type=gha,mode=max,scope=ironic-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=ironic
-
- PROJECT_REF=35e20b62de1a867534d54de844496072ae291eac
-
- PROFILES=ipxe ipmi qemu tftp
-
- DIST_PACKAGES=ethtool lshw iproute2
-
- PIP_PACKAGES=python-dracclient sushy'
- tags: quay.io/vexxhost/ironic:35e20b62de1a867534d54de844496072ae291eac
- - name: Build openstack/keystone
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=keystone-wallaby
- cache-to: type=gha,mode=max,scope=keystone-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=keystone
-
- PROJECT_REF=6c75b657352a86e50e63aec44d28784d8863df99
-
- PROFILES=apache ldap openidc
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/keystone:6c75b657352a86e50e63aec44d28784d8863df99
- - name: Build openstack/magnum
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=magnum-wallaby
- cache-to: type=gha,mode=max,scope=magnum-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=magnum
-
- PROJECT_REF=a35f48e4357bf5f2601fbdaf62d2074719db1dd9
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/magnum:a35f48e4357bf5f2601fbdaf62d2074719db1dd9
- - name: Build openstack/monasca-agent
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-agent-wallaby
- cache-to: type=gha,mode=max,scope=monasca-agent-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=monasca-agent
-
- PROJECT_REF=8547772515174ec785ba2bb2dcc88965e0b094f9
-
- PROFILES=
-
- DIST_PACKAGES=iproute2 libvirt-clients lshw
-
- PIP_PACKAGES=libvirt-python python-glanceclient python-neutronclient python-novaclient
- py3nvml'
- tags: quay.io/vexxhost/monasca-agent:8547772515174ec785ba2bb2dcc88965e0b094f9
- - name: Build openstack/monasca-api
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-api-wallaby
- cache-to: type=gha,mode=max,scope=monasca-api-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=monasca-api
-
- PROJECT_REF=6a18732f771dd299b9375ad0cf56aacfc0d1d156
-
- PROFILES=apache influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-api:6a18732f771dd299b9375ad0cf56aacfc0d1d156
- - name: Build openstack/monasca-notification
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-notification-wallaby
- cache-to: type=gha,mode=max,scope=monasca-notification-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=monasca-notification
-
- PROJECT_REF=b7f87925990f7f816a9b61ed542322d544d30265
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-notification:b7f87925990f7f816a9b61ed542322d544d30265
- - name: Build openstack/monasca-persister
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-persister-wallaby
- cache-to: type=gha,mode=max,scope=monasca-persister-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=monasca-persister
-
- PROJECT_REF=0d1cdd567ab030266d59240b80ee405d5a123fbc
-
- PROFILES=influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-persister:0d1cdd567ab030266d59240b80ee405d5a123fbc
- - name: Build openstack/neutron
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=neutron-wallaby
- cache-to: type=gha,mode=max,scope=neutron-wallaby
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=wallaby
-
- PROJECT=neutron
-
- PROJECT_REF=ce82edb2db9cd0dbc640e1fa709540bfd876bb58
-
- PROFILES=openvswitch vpn
-
- DIST_PACKAGES=jq ethtool lshw
-
- PIP_PACKAGES=neutron-vpnaas'
- tags: quay.io/vexxhost/neutron:ce82edb2db9cd0dbc640e1fa709540bfd876bb58
- - name: Build openstack/nova
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=nova-wallaby
- cache-to: type=gha,mode=max,scope=nova-wallaby
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=wallaby
-
- PROJECT=nova
-
- PROJECT_REF=2f7f4cc0babbda80946d9b56eae8f988b39a4d9d
-
- PROFILES=ceph openvswitch configdrive qemu migration
-
- DIST_PACKAGES=ovmf qemu-efi-aarch64
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/nova:2f7f4cc0babbda80946d9b56eae8f988b39a4d9d
- - name: Build openstack/octavia
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=octavia-wallaby
- cache-to: type=gha,mode=max,scope=octavia-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=octavia
-
- PROJECT_REF=8abf181448190ea272225ae4415586cbc0e24c6a
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/octavia:8abf181448190ea272225ae4415586cbc0e24c6a
- - name: Build openstack/placement
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=placement-wallaby
- cache-to: type=gha,mode=max,scope=placement-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=placement
-
- PROJECT_REF=716b947c479e36ce2e9ec6d9e0bbab882f391892
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=httplib2'
- tags: quay.io/vexxhost/placement:716b947c479e36ce2e9ec6d9e0bbab882f391892
- - name: Build openstack/senlin
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=senlin-wallaby
- cache-to: type=gha,mode=max,scope=senlin-wallaby
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=wallaby
-
- PROJECT=senlin
-
- PROJECT_REF=ac8245b582376b460a2494ad23ff9e2d83d228cb
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/senlin:ac8245b582376b460a2494ad23ff9e2d83d228cb
- - name: Promote openstack/barbican
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/barbican:486e60723f1f635b8e1843bccaf144d85556a9f6
- dst: quay.io/vexxhost/barbican:wallaby
- - name: Promote openstack/cinder
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/cinder:70164132dcc590c944fee36c58e93056a3447142
- dst: quay.io/vexxhost/cinder:wallaby
- - name: Promote openstack/designate
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/designate:8cef906600117b71903b54c4d7c1e072902f7a46
- dst: quay.io/vexxhost/designate:wallaby
- - name: Promote openstack/glance
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/glance:677c89c23631e9083261a1a18ed438d8966e0de2
- dst: quay.io/vexxhost/glance:wallaby
- - name: Promote openstack/heat
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/heat:d0e2ded71374cffab41499e75efb81782bf83ffa
- dst: quay.io/vexxhost/heat:wallaby
- - name: Promote openstack/horizon
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/horizon:82698aa8901b0533f2e62868fabbf5ef4c36cea0
- dst: quay.io/vexxhost/horizon:wallaby
- - name: Promote openstack/ironic
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/ironic:35e20b62de1a867534d54de844496072ae291eac
- dst: quay.io/vexxhost/ironic:wallaby
- - name: Promote openstack/keystone
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/keystone:6c75b657352a86e50e63aec44d28784d8863df99
- dst: quay.io/vexxhost/keystone:wallaby
- - name: Promote openstack/magnum
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/magnum:a35f48e4357bf5f2601fbdaf62d2074719db1dd9
- dst: quay.io/vexxhost/magnum:wallaby
- - name: Promote openstack/monasca-agent
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-agent:8547772515174ec785ba2bb2dcc88965e0b094f9
- dst: quay.io/vexxhost/monasca-agent:wallaby
- - name: Promote openstack/monasca-api
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-api:6a18732f771dd299b9375ad0cf56aacfc0d1d156
- dst: quay.io/vexxhost/monasca-api:wallaby
- - name: Promote openstack/monasca-notification
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-notification:b7f87925990f7f816a9b61ed542322d544d30265
- dst: quay.io/vexxhost/monasca-notification:wallaby
- - name: Promote openstack/monasca-persister
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-persister:0d1cdd567ab030266d59240b80ee405d5a123fbc
- dst: quay.io/vexxhost/monasca-persister:wallaby
- - name: Promote openstack/neutron
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/neutron:ce82edb2db9cd0dbc640e1fa709540bfd876bb58
- dst: quay.io/vexxhost/neutron:wallaby
- - name: Promote openstack/nova
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/nova:2f7f4cc0babbda80946d9b56eae8f988b39a4d9d
- dst: quay.io/vexxhost/nova:wallaby
- - name: Promote openstack/octavia
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/octavia:8abf181448190ea272225ae4415586cbc0e24c6a
- dst: quay.io/vexxhost/octavia:wallaby
- - name: Promote openstack/placement
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/placement:716b947c479e36ce2e9ec6d9e0bbab882f391892
- dst: quay.io/vexxhost/placement:wallaby
- - name: Promote openstack/senlin
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/senlin:ac8245b582376b460a2494ad23ff9e2d83d228cb
- dst: quay.io/vexxhost/senlin:wallaby
diff --git a/.github/workflows/test-xena.yml b/.github/workflows/test-xena.yml
deleted file mode 100644
index a48c3dd..0000000
--- a/.github/workflows/test-xena.yml
+++ /dev/null
@@ -1,470 +0,0 @@
-name: test-xena
-'on':
- pull_request: {}
- push:
- branches:
- - main
-jobs:
- build-images:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3.0.2
- - uses: docker/setup-qemu-action@v2.0.0
- - uses: docker/setup-buildx-action@v2.0.0
- - uses: docker/login-action@v2.0.0
- with:
- registry: quay.io
- username: ${{ secrets.QUAY_USERNAME }}
- password: ${{ secrets.QUAY_ROBOT_TOKEN }}
- - name: Build openstack/barbican
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=barbican-xena
- cache-to: type=gha,mode=max,scope=barbican-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=barbican
-
- PROJECT_REF=bb2779473f786f3bb7b84bc4f445089da8cbfe88
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/barbican:bb2779473f786f3bb7b84bc4f445089da8cbfe88
- - name: Build openstack/cinder
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=cinder-xena
- cache-to: type=gha,mode=max,scope=cinder-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=cinder
-
- PROJECT_REF=b2caec7696817e02b0763d8b0d4f5d1b7f0b903e
-
- PROFILES=ceph qemu
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/cinder:b2caec7696817e02b0763d8b0d4f5d1b7f0b903e
- - name: Build openstack/designate
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=designate-xena
- cache-to: type=gha,mode=max,scope=designate-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=designate
-
- PROJECT_REF=410c1e8d60a6b3844050dd4d3ecc46f640356bfb
-
- PROFILES=
-
- DIST_PACKAGES=bind9utils
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/designate:410c1e8d60a6b3844050dd4d3ecc46f640356bfb
- - name: Build openstack/glance
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=glance-xena
- cache-to: type=gha,mode=max,scope=glance-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=glance
-
- PROJECT_REF=cbe6522e67c2e437e600b4fb153a1d048a310282
-
- PROFILES=ceph
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/glance:cbe6522e67c2e437e600b4fb153a1d048a310282
- - name: Build openstack/heat
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=heat-xena
- cache-to: type=gha,mode=max,scope=heat-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=heat
-
- PROJECT_REF=ead7cd61bd685ea46dd21c4ef3ea6b3fde273c10
-
- PROFILES=
-
- DIST_PACKAGES=curl
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/heat:ead7cd61bd685ea46dd21c4ef3ea6b3fde273c10
- - name: Build openstack/horizon
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=horizon-xena
- cache-to: type=gha,mode=max,scope=horizon-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=horizon
-
- PROJECT_REF=48b702adf75b7f19420df578d2bf9bf813099af5
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard
- octavia-dashboard senlin-dashboard monasca-ui'
- tags: quay.io/vexxhost/horizon:48b702adf75b7f19420df578d2bf9bf813099af5
- - name: Build openstack/ironic
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=ironic-xena
- cache-to: type=gha,mode=max,scope=ironic-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=ironic
-
- PROJECT_REF=3f624e5caa83acf9b98443cf32cb0cd69143c6e2
-
- PROFILES=ipxe ipmi qemu tftp
-
- DIST_PACKAGES=ethtool lshw iproute2
-
- PIP_PACKAGES=python-dracclient sushy'
- tags: quay.io/vexxhost/ironic:3f624e5caa83acf9b98443cf32cb0cd69143c6e2
- - name: Build openstack/keystone
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=keystone-xena
- cache-to: type=gha,mode=max,scope=keystone-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=keystone
-
- PROJECT_REF=e772caa58ec7afdef4bd5fb58e44dc21a78c237b
-
- PROFILES=apache ldap openidc
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/keystone:e772caa58ec7afdef4bd5fb58e44dc21a78c237b
- - name: Build openstack/magnum
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=magnum-xena
- cache-to: type=gha,mode=max,scope=magnum-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=magnum
-
- PROJECT_REF=82a22387b91bb3c77261f42535be9c9d6b53a853
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/magnum:82a22387b91bb3c77261f42535be9c9d6b53a853
- - name: Build openstack/monasca-agent
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-agent-xena
- cache-to: type=gha,mode=max,scope=monasca-agent-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=monasca-agent
-
- PROJECT_REF=284233aa9e53601548ae2ec435331b59974aa5a7
-
- PROFILES=
-
- DIST_PACKAGES=iproute2 libvirt-clients lshw
-
- PIP_PACKAGES=libvirt-python python-glanceclient python-neutronclient python-novaclient
- py3nvml'
- tags: quay.io/vexxhost/monasca-agent:284233aa9e53601548ae2ec435331b59974aa5a7
- - name: Build openstack/monasca-api
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-api-xena
- cache-to: type=gha,mode=max,scope=monasca-api-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=monasca-api
-
- PROJECT_REF=44956801556b79c14373aa533df4debbd1da0ad9
-
- PROFILES=apache influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-api:44956801556b79c14373aa533df4debbd1da0ad9
- - name: Build openstack/monasca-notification
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-notification-xena
- cache-to: type=gha,mode=max,scope=monasca-notification-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=monasca-notification
-
- PROJECT_REF=a94f013ff4addceb93ab556b666f63da7ea820e5
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-notification:a94f013ff4addceb93ab556b666f63da7ea820e5
- - name: Build openstack/monasca-persister
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-persister-xena
- cache-to: type=gha,mode=max,scope=monasca-persister-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=monasca-persister
-
- PROJECT_REF=19d29bfab93206a7d7652037465d449895b7d8ce
-
- PROFILES=influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-persister:19d29bfab93206a7d7652037465d449895b7d8ce
- - name: Build openstack/neutron
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=neutron-xena
- cache-to: type=gha,mode=max,scope=neutron-xena
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=xena
-
- PROJECT=neutron
-
- PROJECT_REF=74f127973831c9c5f889017b3b627bd9940e37a6
-
- PROFILES=openvswitch vpn
-
- DIST_PACKAGES=jq ethtool lshw
-
- PIP_PACKAGES=neutron-vpnaas'
- tags: quay.io/vexxhost/neutron:74f127973831c9c5f889017b3b627bd9940e37a6
- - name: Build openstack/nova
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=nova-xena
- cache-to: type=gha,mode=max,scope=nova-xena
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=xena
-
- PROJECT=nova
-
- PROJECT_REF=62e1a621d19e8833a18afdba86de7f8334171c63
-
- PROFILES=ceph openvswitch configdrive qemu migration
-
- DIST_PACKAGES=ovmf qemu-efi-aarch64
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/nova:62e1a621d19e8833a18afdba86de7f8334171c63
- - name: Build openstack/octavia
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=octavia-xena
- cache-to: type=gha,mode=max,scope=octavia-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=octavia
-
- PROJECT_REF=bda4d7160aebf7549d72b049c8dca53f7d4dedb5
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/octavia:bda4d7160aebf7549d72b049c8dca53f7d4dedb5
- - name: Build openstack/placement
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=placement-xena
- cache-to: type=gha,mode=max,scope=placement-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=placement
-
- PROJECT_REF=f96984abd48f4d938d0fff0bab9b12ed933e320e
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=httplib2'
- tags: quay.io/vexxhost/placement:f96984abd48f4d938d0fff0bab9b12ed933e320e
- - name: Build openstack/senlin
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=senlin-xena
- cache-to: type=gha,mode=max,scope=senlin-xena
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=xena
-
- PROJECT=senlin
-
- PROJECT_REF=28f8abc29a966d41f8b4502d1fc7432f86b14bea
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/senlin:28f8abc29a966d41f8b4502d1fc7432f86b14bea
- - name: Promote openstack/barbican
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/barbican:bb2779473f786f3bb7b84bc4f445089da8cbfe88
- dst: quay.io/vexxhost/barbican:xena
- - name: Promote openstack/cinder
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/cinder:b2caec7696817e02b0763d8b0d4f5d1b7f0b903e
- dst: quay.io/vexxhost/cinder:xena
- - name: Promote openstack/designate
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/designate:410c1e8d60a6b3844050dd4d3ecc46f640356bfb
- dst: quay.io/vexxhost/designate:xena
- - name: Promote openstack/glance
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/glance:cbe6522e67c2e437e600b4fb153a1d048a310282
- dst: quay.io/vexxhost/glance:xena
- - name: Promote openstack/heat
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/heat:ead7cd61bd685ea46dd21c4ef3ea6b3fde273c10
- dst: quay.io/vexxhost/heat:xena
- - name: Promote openstack/horizon
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/horizon:48b702adf75b7f19420df578d2bf9bf813099af5
- dst: quay.io/vexxhost/horizon:xena
- - name: Promote openstack/ironic
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/ironic:3f624e5caa83acf9b98443cf32cb0cd69143c6e2
- dst: quay.io/vexxhost/ironic:xena
- - name: Promote openstack/keystone
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/keystone:e772caa58ec7afdef4bd5fb58e44dc21a78c237b
- dst: quay.io/vexxhost/keystone:xena
- - name: Promote openstack/magnum
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/magnum:82a22387b91bb3c77261f42535be9c9d6b53a853
- dst: quay.io/vexxhost/magnum:xena
- - name: Promote openstack/monasca-agent
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-agent:284233aa9e53601548ae2ec435331b59974aa5a7
- dst: quay.io/vexxhost/monasca-agent:xena
- - name: Promote openstack/monasca-api
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-api:44956801556b79c14373aa533df4debbd1da0ad9
- dst: quay.io/vexxhost/monasca-api:xena
- - name: Promote openstack/monasca-notification
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-notification:a94f013ff4addceb93ab556b666f63da7ea820e5
- dst: quay.io/vexxhost/monasca-notification:xena
- - name: Promote openstack/monasca-persister
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-persister:19d29bfab93206a7d7652037465d449895b7d8ce
- dst: quay.io/vexxhost/monasca-persister:xena
- - name: Promote openstack/neutron
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/neutron:74f127973831c9c5f889017b3b627bd9940e37a6
- dst: quay.io/vexxhost/neutron:xena
- - name: Promote openstack/nova
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/nova:62e1a621d19e8833a18afdba86de7f8334171c63
- dst: quay.io/vexxhost/nova:xena
- - name: Promote openstack/octavia
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/octavia:bda4d7160aebf7549d72b049c8dca53f7d4dedb5
- dst: quay.io/vexxhost/octavia:xena
- - name: Promote openstack/placement
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/placement:f96984abd48f4d938d0fff0bab9b12ed933e320e
- dst: quay.io/vexxhost/placement:xena
- - name: Promote openstack/senlin
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/senlin:28f8abc29a966d41f8b4502d1fc7432f86b14bea
- dst: quay.io/vexxhost/senlin:xena
diff --git a/.github/workflows/test-yoga.yml b/.github/workflows/test-yoga.yml
deleted file mode 100644
index 1bb7eb7..0000000
--- a/.github/workflows/test-yoga.yml
+++ /dev/null
@@ -1,470 +0,0 @@
-name: test-yoga
-'on':
- pull_request: {}
- push:
- branches:
- - main
-jobs:
- build-images:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3.0.2
- - uses: docker/setup-qemu-action@v2.0.0
- - uses: docker/setup-buildx-action@v2.0.0
- - uses: docker/login-action@v2.0.0
- with:
- registry: quay.io
- username: ${{ secrets.QUAY_USERNAME }}
- password: ${{ secrets.QUAY_ROBOT_TOKEN }}
- - name: Build openstack/barbican
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=barbican-yoga
- cache-to: type=gha,mode=max,scope=barbican-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=barbican
-
- PROJECT_REF=29e8fd054dbee79be2403e81fbe864aef8773ffe
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/barbican:29e8fd054dbee79be2403e81fbe864aef8773ffe
- - name: Build openstack/cinder
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=cinder-yoga
- cache-to: type=gha,mode=max,scope=cinder-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=cinder
-
- PROJECT_REF=9b583401adfd63d3d311bb9515f9a27b9b679a6f
-
- PROFILES=ceph qemu
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/cinder:9b583401adfd63d3d311bb9515f9a27b9b679a6f
- - name: Build openstack/designate
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=designate-yoga
- cache-to: type=gha,mode=max,scope=designate-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=designate
-
- PROJECT_REF=2dc40a15894d2c2010b7176ff6f1dff0c8621503
-
- PROFILES=
-
- DIST_PACKAGES=bind9utils
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/designate:2dc40a15894d2c2010b7176ff6f1dff0c8621503
- - name: Build openstack/glance
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=glance-yoga
- cache-to: type=gha,mode=max,scope=glance-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=glance
-
- PROJECT_REF=20110a7d0c310eac81635d1f8c60bce423418820
-
- PROFILES=ceph
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/glance:20110a7d0c310eac81635d1f8c60bce423418820
- - name: Build openstack/heat
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=heat-yoga
- cache-to: type=gha,mode=max,scope=heat-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=heat
-
- PROJECT_REF=a406dff43d2f057674da9e564071e78c533006e0
-
- PROFILES=
-
- DIST_PACKAGES=curl
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/heat:a406dff43d2f057674da9e564071e78c533006e0
- - name: Build openstack/horizon
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=horizon-yoga
- cache-to: type=gha,mode=max,scope=horizon-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=horizon
-
- PROJECT_REF=a9ae00b16453b4d0ff1803651fe726da55a3f08d
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard
- octavia-dashboard senlin-dashboard monasca-ui'
- tags: quay.io/vexxhost/horizon:a9ae00b16453b4d0ff1803651fe726da55a3f08d
- - name: Build openstack/ironic
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=ironic-yoga
- cache-to: type=gha,mode=max,scope=ironic-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=ironic
-
- PROJECT_REF=8034242c225f3293c08ca46dc588d00c5ad0e10a
-
- PROFILES=ipxe ipmi qemu tftp
-
- DIST_PACKAGES=ethtool lshw iproute2
-
- PIP_PACKAGES=python-dracclient sushy'
- tags: quay.io/vexxhost/ironic:8034242c225f3293c08ca46dc588d00c5ad0e10a
- - name: Build openstack/keystone
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=keystone-yoga
- cache-to: type=gha,mode=max,scope=keystone-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=keystone
-
- PROJECT_REF=74be2e2465277aa93932fb9cabb3781451fcbe8a
-
- PROFILES=apache ldap openidc
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/keystone:74be2e2465277aa93932fb9cabb3781451fcbe8a
- - name: Build openstack/magnum
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=magnum-yoga
- cache-to: type=gha,mode=max,scope=magnum-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=magnum
-
- PROJECT_REF=2ae6cd95f18a1675ec6059e6434ee58a1868b07f
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/magnum:2ae6cd95f18a1675ec6059e6434ee58a1868b07f
- - name: Build openstack/monasca-agent
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-agent-yoga
- cache-to: type=gha,mode=max,scope=monasca-agent-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=monasca-agent
-
- PROJECT_REF=f0b09bec09883680390d61860f91dc4322a9f084
-
- PROFILES=
-
- DIST_PACKAGES=iproute2 libvirt-clients lshw
-
- PIP_PACKAGES=libvirt-python python-glanceclient python-neutronclient python-novaclient
- py3nvml'
- tags: quay.io/vexxhost/monasca-agent:f0b09bec09883680390d61860f91dc4322a9f084
- - name: Build openstack/monasca-api
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-api-yoga
- cache-to: type=gha,mode=max,scope=monasca-api-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=monasca-api
-
- PROJECT_REF=0b7851cab47c8e7484e3ce669c5d485bd180c504
-
- PROFILES=apache influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-api:0b7851cab47c8e7484e3ce669c5d485bd180c504
- - name: Build openstack/monasca-notification
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-notification-yoga
- cache-to: type=gha,mode=max,scope=monasca-notification-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=monasca-notification
-
- PROJECT_REF=50dac47ff801b784b9ad3cb701f6c9b04d0fa350
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-notification:50dac47ff801b784b9ad3cb701f6c9b04d0fa350
- - name: Build openstack/monasca-persister
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=monasca-persister-yoga
- cache-to: type=gha,mode=max,scope=monasca-persister-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=monasca-persister
-
- PROJECT_REF=21e6581b44f70bd2464921c389fd44dad10d460f
-
- PROFILES=influxdb
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/monasca-persister:21e6581b44f70bd2464921c389fd44dad10d460f
- - name: Build openstack/neutron
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=neutron-yoga
- cache-to: type=gha,mode=max,scope=neutron-yoga
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=yoga
-
- PROJECT=neutron
-
- PROJECT_REF=0836d57199a9fa337fe3bb9a5d2ad5e4cd814586
-
- PROFILES=openvswitch vpn
-
- DIST_PACKAGES=jq ethtool lshw
-
- PIP_PACKAGES=neutron-vpnaas'
- tags: quay.io/vexxhost/neutron:0836d57199a9fa337fe3bb9a5d2ad5e4cd814586
- - name: Build openstack/nova
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=nova-yoga
- cache-to: type=gha,mode=max,scope=nova-yoga
- push: true
- platforms: linux/amd64,linux/arm64
- build-args: 'RELEASE=yoga
-
- PROJECT=nova
-
- PROJECT_REF=6d61fccb8455367aaa37ae7bddf3b8befd3c3d88
-
- PROFILES=ceph openvswitch configdrive qemu migration
-
- DIST_PACKAGES=ovmf qemu-efi-aarch64
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/nova:6d61fccb8455367aaa37ae7bddf3b8befd3c3d88
- - name: Build openstack/octavia
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=octavia-yoga
- cache-to: type=gha,mode=max,scope=octavia-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=octavia
-
- PROJECT_REF=9c30758dfbdc4d0dc5ff9a942ffece64e5cde325
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/octavia:9c30758dfbdc4d0dc5ff9a942ffece64e5cde325
- - name: Build openstack/placement
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=placement-yoga
- cache-to: type=gha,mode=max,scope=placement-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=placement
-
- PROJECT_REF=4d3df47ee3e394e3178d58c15306620809ad2806
-
- PROFILES=apache
-
- DIST_PACKAGES=
-
- PIP_PACKAGES=httplib2'
- tags: quay.io/vexxhost/placement:4d3df47ee3e394e3178d58c15306620809ad2806
- - name: Build openstack/senlin
- uses: docker/build-push-action@v3.1.1
- with:
- context: images/openstack
- cache-from: type=gha,scope=senlin-yoga
- cache-to: type=gha,mode=max,scope=senlin-yoga
- push: true
- platforms: linux/amd64
- build-args: 'RELEASE=yoga
-
- PROJECT=senlin
-
- PROJECT_REF=804056e856fb80bc881f6ef22eb57bc4adf7a287
-
- PROFILES=
-
- DIST_PACKAGES=
-
- PIP_PACKAGES='
- tags: quay.io/vexxhost/senlin:804056e856fb80bc881f6ef22eb57bc4adf7a287
- - name: Promote openstack/barbican
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/barbican:29e8fd054dbee79be2403e81fbe864aef8773ffe
- dst: quay.io/vexxhost/barbican:yoga
- - name: Promote openstack/cinder
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/cinder:9b583401adfd63d3d311bb9515f9a27b9b679a6f
- dst: quay.io/vexxhost/cinder:yoga
- - name: Promote openstack/designate
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/designate:2dc40a15894d2c2010b7176ff6f1dff0c8621503
- dst: quay.io/vexxhost/designate:yoga
- - name: Promote openstack/glance
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/glance:20110a7d0c310eac81635d1f8c60bce423418820
- dst: quay.io/vexxhost/glance:yoga
- - name: Promote openstack/heat
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/heat:a406dff43d2f057674da9e564071e78c533006e0
- dst: quay.io/vexxhost/heat:yoga
- - name: Promote openstack/horizon
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/horizon:a9ae00b16453b4d0ff1803651fe726da55a3f08d
- dst: quay.io/vexxhost/horizon:yoga
- - name: Promote openstack/ironic
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/ironic:8034242c225f3293c08ca46dc588d00c5ad0e10a
- dst: quay.io/vexxhost/ironic:yoga
- - name: Promote openstack/keystone
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/keystone:74be2e2465277aa93932fb9cabb3781451fcbe8a
- dst: quay.io/vexxhost/keystone:yoga
- - name: Promote openstack/magnum
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/magnum:2ae6cd95f18a1675ec6059e6434ee58a1868b07f
- dst: quay.io/vexxhost/magnum:yoga
- - name: Promote openstack/monasca-agent
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-agent:f0b09bec09883680390d61860f91dc4322a9f084
- dst: quay.io/vexxhost/monasca-agent:yoga
- - name: Promote openstack/monasca-api
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-api:0b7851cab47c8e7484e3ce669c5d485bd180c504
- dst: quay.io/vexxhost/monasca-api:yoga
- - name: Promote openstack/monasca-notification
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-notification:50dac47ff801b784b9ad3cb701f6c9b04d0fa350
- dst: quay.io/vexxhost/monasca-notification:yoga
- - name: Promote openstack/monasca-persister
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/monasca-persister:21e6581b44f70bd2464921c389fd44dad10d460f
- dst: quay.io/vexxhost/monasca-persister:yoga
- - name: Promote openstack/neutron
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/neutron:0836d57199a9fa337fe3bb9a5d2ad5e4cd814586
- dst: quay.io/vexxhost/neutron:yoga
- - name: Promote openstack/nova
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/nova:6d61fccb8455367aaa37ae7bddf3b8befd3c3d88
- dst: quay.io/vexxhost/nova:yoga
- - name: Promote openstack/octavia
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/octavia:9c30758dfbdc4d0dc5ff9a942ffece64e5cde325
- dst: quay.io/vexxhost/octavia:yoga
- - name: Promote openstack/placement
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/placement:4d3df47ee3e394e3178d58c15306620809ad2806
- dst: quay.io/vexxhost/placement:yoga
- - name: Promote openstack/senlin
- uses: akhilerm/tag-push-action@v2.0.0
- with:
- src: quay.io/vexxhost/senlin:804056e856fb80bc881f6ef22eb57bc4adf7a287
- dst: quay.io/vexxhost/senlin:yoga
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000..bef4775
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,77 @@
+name: test
+on:
+ pull_request: {}
+ push:
+ branches:
+ - main
+
+jobs:
+ build-matrix:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3.0.2
+ - id: set-matrix
+ run: |
+ echo '::set-output name=release::$(./ci/build-release-matrix)'
+ echo '::set-output name=project::$(./ci/build-project-matrix)'
+ outputs:
+ release_matrix: ${{ steps.set-matrix.outputs.release }}
+ project_matrix: ${{ steps.set-matrix.outputs.project }}
+
+ build-openstack-images:
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ project: ${{ fromJson(needs.build-matrix.outputs.project_matrix) }}
+ release: ${{ fromJson(needs.build-matrix.outputs.release_matrix) }}
+ steps:
+ - uses: actions/checkout@v3
+ - uses: docker/setup-qemu-action@v2
+ - uses: docker/setup-buildx-action@v2
+ - run: ./ci/openstack-image-build-env ${{ matrix.project }} ${{ matrix.release }} >> $GITHUB_ENV
+ - uses: docker/login-action@v2
+ with:
+ registry: quay.io
+ username: ${{ secrets.QUAY_USERNAME }}
+ password: ${{ secrets.QUAY_ROBOT_TOKEN }}
+ - uses: docker/build-push-action@v3
+ with:
+ context: images/openstack
+ cache-from: type=gha,scope=${{ matrix.project }}-${{ matrix.release }}
+ cache-to: type=gha,mode=max,scope=${{ matrix.project }}-${{ matrix.release }}
+ platforms: ${{ env.PLATFORMS }}
+ push: true
+ build-args: |
+ RELEASE=${{ matrix.release }}
+ PROJECT=${{ matrix.project }}
+ PROJECT_REF=${{ env.PROJECT_REF }}
+ PROFILES=${{ env.PROFILES }}
+ DIST_PACKAGES=${{ env.DIST_PACKAGES }}
+ PIP_PACKAGES=${{ env.PIP_PACKAGES }}
+ tags: |
+ quay.io/vexxhost/${{ matrix.project }}:${{ env.PROJECT_REF }}
+
+ # TODO(mnaser): Molecule
+
+ promote-openstack-images:
+ if: ${{ github.ref == format('refs/heads/{0}', github.event.repository.default_branch) }}
+ needs:
+ - build-openstack-images
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ project: ${{ fromJson(needs.build-matrix.outputs.project_matrix) }}
+ release: ${{ fromJson(needs.build-matrix.outputs.release_matrix) }}
+ steps:
+ - run: ./ci/openstack-image-build-env ${{ matrix.project }} ${{ matrix.release }} >> $GITHUB_ENV
+ - uses: docker/login-action@v2
+ with:
+ registry: quay.io
+ username: ${{ secrets.QUAY_USERNAME }}
+ password: ${{ secrets.QUAY_ROBOT_TOKEN }}
+ - uses: akhilerm/tag-push-action@v2.0.0
+ with:
+ src: quay.io/vexxhost/${{ matrix.project }}:${{ env.PROJECT_REF }}
+ dst: quay.io/vexxhost/${{ matrix.project }}:${{ matrix.release }}
diff --git a/ci/build-project-matrix b/ci/build-project-matrix
new file mode 100755
index 0000000..29a7e8d
--- /dev/null
+++ b/ci/build-project-matrix
@@ -0,0 +1,12 @@
+#!/usr/bin/env python3
+
+import glob
+import sys
+import json
+
+
+json.dump(
+ sorted([r.split("/")[-1] for r in glob.glob("images/openstack/projects/*")]),
+ sys.stdout,
+ separators=(",", ":"),
+)
diff --git a/ci/build-release-matrix b/ci/build-release-matrix
new file mode 100755
index 0000000..25e689d
--- /dev/null
+++ b/ci/build-release-matrix
@@ -0,0 +1,10 @@
+#!/usr/bin/env python3
+
+import glob
+import sys
+import json
+
+
+json.dump([
+ r.split('/')[-1] for r in glob.glob('images/openstack/releases/*')
+], sys.stdout, separators=(',', ':'))
diff --git a/ci/openstack-image-build-env b/ci/openstack-image-build-env
new file mode 100755
index 0000000..ba00973
--- /dev/null
+++ b/ci/openstack-image-build-env
@@ -0,0 +1,50 @@
+#!/usr/bin/env python3
+
+import sys
+
+PROFILES = {
+ "cinder": "ceph qemu",
+ "nova": "ceph openvswitch configdrive qemu migration",
+ "neutron": "openvswitch vpn",
+ "keystone": "apache ldap openidc",
+ "horizon": "apache",
+ "monasca-api": "apache influxdb",
+ "ironic": "ipxe ipmi qemu tftp",
+ "glance": "ceph",
+ "monasca-persister": "influxdb",
+ "placement": "apache",
+}
+DIST_PACKAGES = {
+ "heat": "curl",
+ "designate": "bind9utils",
+ "nova": "ovmf qemu-efi-aarch64",
+ "neutron": "jq ethtool lshw",
+ "monasca-agent": "iproute2 libvirt-clients lshw",
+ "ironic": "ethtool lshw iproute2",
+}
+PIP_PACKAGES = {
+ "neutron": "neutron-vpnaas",
+ "monasca-agent": "libvirt-python python-glanceclient python-neutronclient python-novaclient py3nvml",
+ "horizon": "designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard octavia-dashboard senlin-dashboard monasca-ui",
+ "ironic": "python-dracclient sushy",
+ "placement": "httplib2",
+}
+PLATFORMS = {
+ "nova": "linux/amd64,linux/arm64",
+ "neutron": "linux/amd64,linux/arm64",
+}
+
+project = sys.argv[1]
+release = sys.argv[2]
+
+ref = open(f"images/openstack/projects/{project}/{release}/ref", "r").read().strip()
+profiles = PROFILES.get(project, "")
+dist_packages = DIST_PACKAGES.get(project, "")
+pip_packages = PIP_PACKAGES.get(project, "")
+platforms = PLATFORMS.get(project, "")
+
+print(f"PROJECT_REF={ref}")
+print(f"PROFILES={profiles}")
+print(f"DIST_PACKAGES={dist_packages}")
+print(f"PIP_PACKAGES={pip_packages}")
+print(f"PLATFORMS={platforms}")