build: build all images + run tests using them (#1069)
TODO
Add patches
Figure out why cache misses for Git clone (or something else)
diff --git a/zuul.d/container-images/barbican.yaml b/zuul.d/container-images/barbican.yaml
new file mode 100644
index 0000000..15c371c
--- /dev/null
+++ b/zuul.d/container-images/barbican.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-barbican
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-barbican
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-barbican
+
+- job:
+ name: atmosphere-build-container-image-barbican
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-barbican
+ container_images:
+ - context: images/barbican
+ repository: registry.atmosphere.dev/library/barbican
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=barbican
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/barbican/.*
+
+- job:
+ name: atmosphere-upload-container-image-barbican
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-barbican
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/base.yaml b/zuul.d/container-images/base.yaml
new file mode 100644
index 0000000..6e33526
--- /dev/null
+++ b/zuul.d/container-images/base.yaml
@@ -0,0 +1,65 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-buildset-registry
+ gate:
+ jobs:
+ - atmosphere-buildset-registry
+
+- job:
+ name: atmosphere-buildset-registry
+ parent: ci-buildset-registry
+
+- job:
+ name: atmosphere-build-container-image
+ parent: ci-build-container-image
+ abstract: true
+ dependencies:
+ - name: atmosphere-buildset-registry
+ soft: false
+ vars: &image_vars
+ container_command: docker
+ promote_container_image_method: intermediate-registry
+ buildset_registry_namespaces:
+ - ['docker.io', 'https://registry-1.docker.io']
+ - ['quay.io', 'https://quay.io']
+ - ['gcr.io', 'https://gcr.io']
+ - ['registry.atmosphere.dev', 'https://registry.atmosphere.dev']
+
+- job:
+ name: atmosphere-upload-container-image
+ parent: ci-upload-container-image
+ abstract: true
+ dependencies:
+ - name: atmosphere-buildset-registry
+ soft: false
+ secrets:
+ name: container_registry_credentials
+ secret: atmosphere-registry-credentials
+ pass-to-parent: true
+ vars: *image_vars
+
+- job:
+ name: atmosphere-promote-container-image
+ parent: ci-promote-container-image
+ secrets:
+ name: container_registry_credentials
+ secret: atmosphere-registry-credentials
+ pass-to-parent: true
+ nodeset:
+ nodes: []
+ vars: *image_vars
diff --git a/zuul.d/container-images/cinder.yaml b/zuul.d/container-images/cinder.yaml
new file mode 100644
index 0000000..3878407
--- /dev/null
+++ b/zuul.d/container-images/cinder.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-cinder
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-cinder
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-cinder
+
+- job:
+ name: atmosphere-build-container-image-cinder
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-cinder
+ container_images:
+ - context: images/cinder
+ repository: registry.atmosphere.dev/library/cinder
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=cinder
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/cinder/.*
+
+- job:
+ name: atmosphere-upload-container-image-cinder
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-cinder
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/cluster-api-provider-openstack.yaml b/zuul.d/container-images/cluster-api-provider-openstack.yaml
new file mode 100644
index 0000000..5788c88
--- /dev/null
+++ b/zuul.d/container-images/cluster-api-provider-openstack.yaml
@@ -0,0 +1,51 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-cluster-api-provider-openstack
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-cluster-api-provider-openstack
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-cluster-api-provider-openstack
+
+- job:
+ name: atmosphere-build-container-image-cluster-api-provider-openstack
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-cluster-api-provider-openstack
+ container_images:
+ - context: images/cluster-api-provider-openstack
+ repository: registry.atmosphere.dev/library/capi-openstack-controller
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/cluster-api-provider-openstack/.*
+
+- job:
+ name: atmosphere-upload-container-image-cluster-api-provider-openstack
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-cluster-api-provider-openstack
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/designate.yaml b/zuul.d/container-images/designate.yaml
new file mode 100644
index 0000000..eeb2fd1
--- /dev/null
+++ b/zuul.d/container-images/designate.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-designate
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-designate
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-designate
+
+- job:
+ name: atmosphere-build-container-image-designate
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-designate
+ container_images:
+ - context: images/designate
+ repository: registry.atmosphere.dev/library/designate
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=designate
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/designate/.*
+
+- job:
+ name: atmosphere-upload-container-image-designate
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-designate
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/glance.yaml b/zuul.d/container-images/glance.yaml
new file mode 100644
index 0000000..e2ec62c
--- /dev/null
+++ b/zuul.d/container-images/glance.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-glance
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-glance
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-glance
+
+- job:
+ name: atmosphere-build-container-image-glance
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-glance
+ container_images:
+ - context: images/glance
+ repository: registry.atmosphere.dev/library/glance
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=glance
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/glance/.*
+
+- job:
+ name: atmosphere-upload-container-image-glance
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-glance
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/heat.yaml b/zuul.d/container-images/heat.yaml
new file mode 100644
index 0000000..5490356
--- /dev/null
+++ b/zuul.d/container-images/heat.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-heat
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-heat
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-heat
+
+- job:
+ name: atmosphere-build-container-image-heat
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-heat
+ container_images:
+ - context: images/heat
+ repository: registry.atmosphere.dev/library/heat
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=heat
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/heat/.*
+
+- job:
+ name: atmosphere-upload-container-image-heat
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-heat
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/horizon.yaml b/zuul.d/container-images/horizon.yaml
new file mode 100644
index 0000000..096d510
--- /dev/null
+++ b/zuul.d/container-images/horizon.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-horizon
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-horizon
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-horizon
+
+- job:
+ name: atmosphere-build-container-image-horizon
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-horizon
+ container_images:
+ - context: images/horizon
+ repository: registry.atmosphere.dev/library/horizon
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=horizon
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/horizon/.*
+
+- job:
+ name: atmosphere-upload-container-image-horizon
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-horizon
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/ironic.yaml b/zuul.d/container-images/ironic.yaml
new file mode 100644
index 0000000..8727807
--- /dev/null
+++ b/zuul.d/container-images/ironic.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-ironic
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-ironic
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-ironic
+
+- job:
+ name: atmosphere-build-container-image-ironic
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-ironic
+ container_images:
+ - context: images/ironic
+ repository: registry.atmosphere.dev/library/ironic
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=ironic
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/ironic/.*
+
+- job:
+ name: atmosphere-upload-container-image-ironic
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-ironic
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/keystone.yaml b/zuul.d/container-images/keystone.yaml
new file mode 100644
index 0000000..2c83223
--- /dev/null
+++ b/zuul.d/container-images/keystone.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-keystone
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-keystone
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-keystone
+
+- job:
+ name: atmosphere-build-container-image-keystone
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-keystone
+ container_images:
+ - context: images/keystone
+ repository: registry.atmosphere.dev/library/keystone
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=keystone
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/keystone/.*
+
+- job:
+ name: atmosphere-upload-container-image-keystone
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-keystone
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/kubernetes-entrypoint.yaml b/zuul.d/container-images/kubernetes-entrypoint.yaml
new file mode 100644
index 0000000..40ec23a
--- /dev/null
+++ b/zuul.d/container-images/kubernetes-entrypoint.yaml
@@ -0,0 +1,51 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-kubernetes-entrypoint
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-kubernetes-entrypoint
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-kubernetes-entrypoint
+
+- job:
+ name: atmosphere-build-container-image-kubernetes-entrypoint
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-kubernetes-entrypoint
+ container_images:
+ - context: images/kubernetes-entrypoint
+ repository: registry.atmosphere.dev/library/kubernetes-entrypoint
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/kubernetes-entrypoint/.*
+
+- job:
+ name: atmosphere-upload-container-image-kubernetes-entrypoint
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-kubernetes-entrypoint
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/libvirt-tls-sidecar.yaml b/zuul.d/container-images/libvirt-tls-sidecar.yaml
new file mode 100644
index 0000000..a3e4757
--- /dev/null
+++ b/zuul.d/container-images/libvirt-tls-sidecar.yaml
@@ -0,0 +1,56 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-libvirt-tls-sidecar
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-libvirt-tls-sidecar
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-libvirt-tls-sidecar
+
+- job:
+ name: atmosphere-build-container-image-libvirt-tls-sidecar
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-libvirt-tls-sidecar
+ container_images:
+ - context: .
+ target: libvirt-tls-sidecar
+ repository: registry.atmosphere.dev/library/libvirt-tls-sidecar
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - go.mod
+ - go.sum
+ - cmd/.*
+ - internal/.*
+ - Dockerfile
+
+- job:
+ name: atmosphere-upload-container-image-libvirt-tls-sidecar
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-libvirt-tls-sidecar
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/libvirtd.yaml b/zuul.d/container-images/libvirtd.yaml
new file mode 100644
index 0000000..6713e4b
--- /dev/null
+++ b/zuul.d/container-images/libvirtd.yaml
@@ -0,0 +1,69 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-libvirtd
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-libvirtd
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-libvirtd
+
+- job:
+ name: atmosphere-build-container-image-libvirtd
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-openstack-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-libvirtd
+ container_images:
+ - context: images/libvirtd
+ repository: registry.atmosphere.dev/library/libvirtd
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/openstack-runtime/.*
+
+- job:
+ name: atmosphere-upload-container-image-libvirtd
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-libvirtd
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/magnum.yaml b/zuul.d/container-images/magnum.yaml
new file mode 100644
index 0000000..96eb257
--- /dev/null
+++ b/zuul.d/container-images/magnum.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-magnum
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-magnum
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-magnum
+
+- job:
+ name: atmosphere-build-container-image-magnum
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-magnum
+ container_images:
+ - context: images/magnum
+ repository: registry.atmosphere.dev/library/magnum
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=magnum
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/magnum/.*
+
+- job:
+ name: atmosphere-upload-container-image-magnum
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-magnum
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/manila.yaml b/zuul.d/container-images/manila.yaml
new file mode 100644
index 0000000..11bca93
--- /dev/null
+++ b/zuul.d/container-images/manila.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-manila
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-manila
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-manila
+
+- job:
+ name: atmosphere-build-container-image-manila
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-manila
+ container_images:
+ - context: images/manila
+ repository: registry.atmosphere.dev/library/manila
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=manila
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/manila/.*
+
+- job:
+ name: atmosphere-upload-container-image-manila
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-manila
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/netoffload.yaml b/zuul.d/container-images/netoffload.yaml
new file mode 100644
index 0000000..0d8fde1
--- /dev/null
+++ b/zuul.d/container-images/netoffload.yaml
@@ -0,0 +1,51 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-netoffload
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-netoffload
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-netoffload
+
+- job:
+ name: atmosphere-build-container-image-netoffload
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-netoffload
+ container_images:
+ - context: images/netoffload
+ repository: registry.atmosphere.dev/library/netoffload
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/netoffload/.*
+
+- job:
+ name: atmosphere-upload-container-image-netoffload
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-netoffload
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/neutron.yaml b/zuul.d/container-images/neutron.yaml
new file mode 100644
index 0000000..2c46f2a
--- /dev/null
+++ b/zuul.d/container-images/neutron.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-neutron
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-neutron
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-neutron
+
+- job:
+ name: atmosphere-build-container-image-neutron
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-neutron
+ container_images:
+ - context: images/neutron
+ repository: registry.atmosphere.dev/library/neutron
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=neutron
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/neutron/.*
+
+- job:
+ name: atmosphere-upload-container-image-neutron
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-neutron
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/nova-ssh.yaml b/zuul.d/container-images/nova-ssh.yaml
new file mode 100644
index 0000000..68a40c7
--- /dev/null
+++ b/zuul.d/container-images/nova-ssh.yaml
@@ -0,0 +1,70 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-nova-ssh
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-nova-ssh
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-nova-ssh
+
+- job:
+ name: atmosphere-build-container-image-nova-ssh
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-openstack-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-nova-ssh
+ container_images:
+ - context: images/nova-ssh
+ repository: registry.atmosphere.dev/library/nova-ssh
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/openstack-runtime/.*
+ - images/nova-ssh/.*
+
+- job:
+ name: atmosphere-upload-container-image-nova-ssh
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-nova-ssh
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/nova.yaml b/zuul.d/container-images/nova.yaml
new file mode 100644
index 0000000..b78c251
--- /dev/null
+++ b/zuul.d/container-images/nova.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-nova
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-nova
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-nova
+
+- job:
+ name: atmosphere-build-container-image-nova
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-nova
+ container_images:
+ - context: images/nova
+ repository: registry.atmosphere.dev/library/nova
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/nova/.*
+
+- job:
+ name: atmosphere-upload-container-image-nova
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-nova
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/octavia.yaml b/zuul.d/container-images/octavia.yaml
new file mode 100644
index 0000000..1fc3a46
--- /dev/null
+++ b/zuul.d/container-images/octavia.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-octavia
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-octavia
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-octavia
+
+- job:
+ name: atmosphere-build-container-image-octavia
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-octavia
+ container_images:
+ - context: images/octavia
+ repository: registry.atmosphere.dev/library/octavia
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=octavia
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/octavia/.*
+
+- job:
+ name: atmosphere-upload-container-image-octavia
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-octavia
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/openstack-python-runtime.yaml b/zuul.d/container-images/openstack-python-runtime.yaml
new file mode 100644
index 0000000..efb1efa
--- /dev/null
+++ b/zuul.d/container-images/openstack-python-runtime.yaml
@@ -0,0 +1,70 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-openstack-python-runtime
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-openstack-python-runtime
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-openstack-python-runtime
+
+- job:
+ name: atmosphere-build-container-image-openstack-python-runtime
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-openstack-python-runtime
+ container_images:
+ - context: images/openstack-runtime
+ repository: registry.atmosphere.dev/library/openstack-python-runtime
+ arch:
+ - linux/amd64
+ build_args:
+ - FROM=registry.atmosphere.dev/library/python-base:zed
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-runtime/.*
+
+- job:
+ name: atmosphere-upload-container-image-openstack-python-runtime
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-openstack-python-runtime
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/openstack-runtime.yaml b/zuul.d/container-images/openstack-runtime.yaml
new file mode 100644
index 0000000..379074a
--- /dev/null
+++ b/zuul.d/container-images/openstack-runtime.yaml
@@ -0,0 +1,63 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-openstack-runtime
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-openstack-runtime
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-openstack-runtime
+
+- job:
+ name: atmosphere-build-container-image-openstack-runtime
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-openstack-runtime
+ container_images:
+ - context: images/openstack-runtime
+ repository: registry.atmosphere.dev/library/openstack-runtime
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/openstack-runtime/.*
+
+- job:
+ name: atmosphere-upload-container-image-openstack-runtime
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-openstack-runtime
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/openstack-venv-builder.yaml b/zuul.d/container-images/openstack-venv-builder.yaml
new file mode 100644
index 0000000..376d68e
--- /dev/null
+++ b/zuul.d/container-images/openstack-venv-builder.yaml
@@ -0,0 +1,68 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-openstack-venv-builder
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-openstack-venv-builder
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-openstack-venv-builder
+
+- job:
+ name: atmosphere-build-container-image-openstack-venv-builder
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-openstack-venv-builder
+ container_images:
+ - context: images/openstack-venv-builder
+ repository: registry.atmosphere.dev/library/openstack-venv-builder
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+
+- job:
+ name: atmosphere-upload-container-image-openstack-venv-builder
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-openstack-venv-builder
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/openvswitch.yaml b/zuul.d/container-images/openvswitch.yaml
new file mode 100644
index 0000000..2938381
--- /dev/null
+++ b/zuul.d/container-images/openvswitch.yaml
@@ -0,0 +1,51 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-openvswitch
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-openvswitch
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-openvswitch
+
+- job:
+ name: atmosphere-build-container-image-openvswitch
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-openvswitch
+ container_images:
+ - context: images/openvswitch
+ repository: registry.atmosphere.dev/library/openvswitch
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/openvswitch/.*
+
+- job:
+ name: atmosphere-upload-container-image-openvswitch
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-openvswitch
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/ovn.yaml b/zuul.d/container-images/ovn.yaml
new file mode 100644
index 0000000..6650af8
--- /dev/null
+++ b/zuul.d/container-images/ovn.yaml
@@ -0,0 +1,68 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-ovn
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-ovn
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-ovn
+
+- job:
+ name: atmosphere-build-container-image-ovn
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-openvswitch
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-ovn
+ container_images:
+ - context: images/ovn
+ repository: registry.atmosphere.dev/library/ovn-central
+ arch:
+ - linux/amd64
+ build_args:
+ - OVN_COMPONENT=central
+ tags:
+ - zed
+ - context: images/ovn
+ repository: registry.atmosphere.dev/library/ovn-host
+ arch:
+ - linux/amd64
+ build_args:
+ - OVN_COMPONENT=host
+ tags:
+ - zed
+ files: &container_image_files
+ - images/openvswitch/.*
+ - images/ovn/.*
+
+- job:
+ name: atmosphere-upload-container-image-ovn
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-openvswitch
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-ovn
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/placement.yaml b/zuul.d/container-images/placement.yaml
new file mode 100644
index 0000000..f4fbd80
--- /dev/null
+++ b/zuul.d/container-images/placement.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-placement
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-placement
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-placement
+
+- job:
+ name: atmosphere-build-container-image-placement
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-placement
+ container_images:
+ - context: images/placement
+ repository: registry.atmosphere.dev/library/placement
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=placement
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/placement/.*
+
+- job:
+ name: atmosphere-upload-container-image-placement
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-placement
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/python-base.yaml b/zuul.d/container-images/python-base.yaml
new file mode 100644
index 0000000..22fef49
--- /dev/null
+++ b/zuul.d/container-images/python-base.yaml
@@ -0,0 +1,63 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-python-base
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-python-base
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-python-base
+
+- job:
+ name: atmosphere-build-container-image-python-base
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-python-base
+ container_images:
+ - context: images/python-base
+ repository: registry.atmosphere.dev/library/python-base
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+
+- job:
+ name: atmosphere-upload-container-image-python-base
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-python-base
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/senlin.yaml b/zuul.d/container-images/senlin.yaml
new file mode 100644
index 0000000..fb77c5d
--- /dev/null
+++ b/zuul.d/container-images/senlin.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-senlin
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-senlin
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-senlin
+
+- job:
+ name: atmosphere-build-container-image-senlin
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-senlin
+ container_images:
+ - context: images/senlin
+ repository: registry.atmosphere.dev/library/senlin
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=senlin
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/senlin/.*
+
+- job:
+ name: atmosphere-upload-container-image-senlin
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-senlin
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/staffeln.yaml b/zuul.d/container-images/staffeln.yaml
new file mode 100644
index 0000000..5cf8dee
--- /dev/null
+++ b/zuul.d/container-images/staffeln.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-staffeln
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-staffeln
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-staffeln
+
+- job:
+ name: atmosphere-build-container-image-staffeln
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-staffeln
+ container_images:
+ - context: images/staffeln
+ repository: registry.atmosphere.dev/library/staffeln
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=staffeln
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/staffeln/.*
+
+- job:
+ name: atmosphere-upload-container-image-staffeln
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-staffeln
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/tempest.yaml b/zuul.d/container-images/tempest.yaml
new file mode 100644
index 0000000..86cf038
--- /dev/null
+++ b/zuul.d/container-images/tempest.yaml
@@ -0,0 +1,80 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-tempest
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-tempest
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-tempest
+
+- job:
+ name: atmosphere-build-container-image-tempest
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ - name: atmosphere-build-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-build-container-image-python-base
+ soft: true
+ - name: atmosphere-build-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-build-container-image-openstack-python-runtime
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-tempest
+ container_images:
+ - context: images/tempest
+ repository: registry.atmosphere.dev/library/tempest
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=tempest
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+ - images/python-base/.*
+ - images/openstack-venv-builder/.*
+ - images/openstack-python-runtime/.*
+ - images/tempest/.*
+
+- job:
+ name: atmosphere-upload-container-image-tempest
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ - name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ soft: true
+ - name: atmosphere-upload-container-image-python-base
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-venv-builder
+ soft: true
+ - name: atmosphere-upload-container-image-openstack-python-runtime
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-tempest
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/ubuntu-cloud-archive.yaml b/zuul.d/container-images/ubuntu-cloud-archive.yaml
new file mode 100644
index 0000000..fc10eab
--- /dev/null
+++ b/zuul.d/container-images/ubuntu-cloud-archive.yaml
@@ -0,0 +1,58 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-ubuntu-cloud-archive
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-ubuntu-cloud-archive
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-ubuntu-cloud-archive
+
+- job:
+ name: atmosphere-build-container-image-ubuntu-cloud-archive
+ parent: atmosphere-build-container-image
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-ubuntu-cloud-archive
+ container_images:
+ - context: images/ubuntu-cloud-archive
+ repository: registry.atmosphere.dev/library/ubuntu-cloud-archive
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/ubuntu-cloud-archive/.*
+
+- job:
+ name: atmosphere-upload-container-image-ubuntu-cloud-archive
+ parent: atmosphere-upload-container-image
+ dependencies:
+ - name: atmosphere-upload-container-image-ubuntu
+ soft: true
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-ubuntu-cloud-archive
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/container-images/ubuntu.yaml b/zuul.d/container-images/ubuntu.yaml
new file mode 100644
index 0000000..466079a
--- /dev/null
+++ b/zuul.d/container-images/ubuntu.yaml
@@ -0,0 +1,51 @@
+# Copyright (c) 2024 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+- project:
+ check:
+ jobs:
+ - atmosphere-build-container-image-ubuntu
+ gate:
+ jobs:
+ - atmosphere-upload-container-image-ubuntu
+ promote:
+ jobs:
+ - atmosphere-promote-container-image-ubuntu
+
+- job:
+ name: atmosphere-build-container-image-ubuntu
+ parent: atmosphere-build-container-image
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-ubuntu
+ container_images:
+ - context: images/ubuntu
+ repository: registry.atmosphere.dev/library/ubuntu
+ arch:
+ - linux/amd64
+ tags:
+ - zed
+ files: &container_image_files
+ - images/ubuntu/.*
+
+- job:
+ name: atmosphere-upload-container-image-ubuntu
+ parent: atmosphere-upload-container-image
+ vars: *container_image_vars
+ files: *container_image_files
+
+- job:
+ name: atmosphere-promote-container-image-ubuntu
+ parent: atmosphere-promote-container-image
+ vars: *container_image_vars
+ files: *container_image_files
diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml
index 9a33828..0ba4adb 100644
--- a/zuul.d/jobs.yaml
+++ b/zuul.d/jobs.yaml
@@ -13,35 +13,12 @@
# under the License.
- job:
- name: atmosphere-buildset-registry
- pre-run: zuul.d/playbooks/buildset-registry/pre.yml
- run: zuul.d/playbooks/buildset-registry/run.yml
- ansible-split-streams: true
-
-- job:
- name: atmosphere-upload-images
- parent: atmosphere-buildset-registry
- run: zuul.d/playbooks/buildset-registry/run.yml
- secrets:
- - registry_credentials
- - cosign_key
-
-- job:
name: atmosphere-molecule
parent: tox
abstract: true
pre-run: zuul.d/playbooks/molecule/pre.yml
run: zuul.d/playbooks/molecule/run.yml
post-run: zuul.d/playbooks/molecule/post.yml
- dependencies:
- - atmosphere-buildset-registry
-
-- job:
- name: atmosphere-molecule-keycloak
- parent: atmosphere-molecule
- pre-run: zuul.d/playbooks/molecule-keycloak/pre.yml
- vars:
- tox_envlist: molecule-keycloak
- job:
name: atmosphere-molecule-csi
@@ -64,11 +41,22 @@
name: atmosphere-molecule-aio
parent: atmosphere-molecule
abstract: true
- timeout: 7200
pre-run: zuul.d/playbooks/molecule-aio/pre.yml
post-run: zuul.d/playbooks/molecule-aio/post.yml
roles:
- zuul: openstack/openstack-helm-infra
+
+- job:
+ name: atmosphere-molecule-aio-keycloak
+ parent: atmosphere-molecule-aio
+ vars:
+ tox_envlist: molecule-keycloak
+
+- job:
+ name: atmosphere-molecule-aio-full
+ parent: atmosphere-molecule-aio
+ abstract: true
+ timeout: 7200
nodeset:
nodes:
- name: ubuntu-jammy
@@ -76,13 +64,13 @@
- job:
name: atmosphere-molecule-aio-openvswitch
- parent: atmosphere-molecule-aio
+ parent: atmosphere-molecule-aio-full
vars:
tox_envlist: molecule-aio-openvswitch
- job:
name: atmosphere-molecule-aio-ovn
- parent: atmosphere-molecule-aio
+ parent: atmosphere-molecule-aio-full
# NOTE(mnaser): https://github.com/vexxhost/atmosphere/issues/662
voting: false
vars:
diff --git a/zuul.d/playbooks/buildset-registry/pre.yml b/zuul.d/playbooks/buildset-registry/pre.yml
deleted file mode 100644
index 81304bb..0000000
--- a/zuul.d/playbooks/buildset-registry/pre.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (c) 2024 VEXXHOST, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-- name: Prepare host for building images
- hosts: all
- roles:
- - ensure-docker
- - run-buildset-registry
- - use-buildset-registry
diff --git a/zuul.d/playbooks/buildset-registry/run.yml b/zuul.d/playbooks/buildset-registry/run.yml
deleted file mode 100644
index 7f8118c..0000000
--- a/zuul.d/playbooks/buildset-registry/run.yml
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright (c) 2024 VEXXHOST, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-- name: Build images
- hosts: all
- tasks:
- # NOTE(mnaser): This can be removed once the following merges
- # https://review.opendev.org/c/zuul/zuul-jobs/+/915025
- - name: Load "buildset_registry" fact
- block:
- - name: Check for results.json
- stat:
- path: "{{ zuul.executor.result_data_file }}"
- register: result_json_stat
- delegate_to: localhost
- - name: Load information from zuul_return
- no_log: true
- set_fact:
- buildset_registry: "{{ (lookup('file', zuul.executor.result_data_file) | from_json)['secret_data']['buildset_registry'] }}"
- when:
- - buildset_registry is not defined
- - result_json_stat.stat.exists
- - result_json_stat.stat.size > 0
- - "'buildset_registry' in (lookup('file', zuul.executor.result_data_file) | from_json).get('secret_data')"
-
- - name: Configure Buildkit certificates
- when: buildset_registry is defined and buildset_registry.cert
- become: true
- block:
- - name: Create a folder for the certificates
- ansible.builtin.file:
- path: "/etc/docker/certs.d/{{ buildset_registry.host }}:{{ buildset_registry.port }}"
- state: directory
- - name: Copy the certificate
- ansible.builtin.copy:
- content: "{{ buildset_registry.cert }}"
- dest: "/etc/docker/certs.d/{{ buildset_registry.host }}:{{ buildset_registry.port }}/ca.crt"
- - name: Create a buildkitd.toml file
- ansible.builtin.copy:
- dest: /etc/buildkitd.toml
- content: |
- [registry."{{ buildset_registry.host }}:{{ buildset_registry.port }}"]
- ca=["/etc/docker/certs.d/{{ buildset_registry.host }}:{{ buildset_registry.port }}/ca.crt"]
-
- - name: Create builder
- ansible.builtin.shell: docker buildx create --name=atmosphere --driver=docker-container {% if buildset_registry.cert %}--config /etc/buildkitd.toml{% endif %}
-
- - name: Point registry to Atmosphere if in post pipeline
- when: zuul.pipeline == 'post'
- no_log: true
- ansible.builtin.set_fact:
- buildset_registry:
- host: registry.atmosphere.dev
- port: 443
- username: "{{ registry_credentials.username }}"
- password: "{{ registry_credentials.password }}"
-
- - name: Log into registry
- docker_login:
- registry: "{{ buildset_registry.host }}{% if buildset_registry.port != 443 %}:{{ buildset_registry.port }}{% endif %}"
- username: "{{ buildset_registry.username }}"
- password: "{{ buildset_registry.password }}"
-
- - name: Build images
- ansible.builtin.shell: |
- docker buildx bake --builder=atmosphere --provenance --sbom=true --push
- args:
- chdir: "{{ zuul.project.src_dir }}"
- environment:
- REGISTRY: "{{ buildset_registry.host }}{% if buildset_registry.port != 443 %}:{{ buildset_registry.port }}{% endif %}/library"
- PUSH_TO_CACHE: "{{ zuul.pipeline == 'post' }}"
-
- - name: Get list of images built
- ansible.builtin.shell: docker buildx bake --print
- args:
- chdir: "{{ zuul.project.src_dir }}"
- environment:
- REGISTRY: "{{ buildset_registry.host }}{% if buildset_registry.port != 443 %}:{{ buildset_registry.port }}{% endif %}/library"
- register: images_built_json
-
- - name: Set fact with list of images
- set_fact:
- images_built: "{{ images_built_json.stdout | from_json | json_query('target.*.tags[?@] | []') }}"
-
- - name: Sign images
- when: zuul.pipeline == 'post'
- block:
- - name: Download cosign binary
- become: true
- ansible.builtin.get_url:
- url: https://github.com/sigstore/cosign/releases/latest/download/cosign-linux-amd64
- dest: /usr/local/bin/cosign
- mode: 0755
-
- - name: Determine the digest for the images
- ansible.builtin.shell: |
- cosign triangulate --type=digest {{ item }}
- loop: "{{ images_built }}"
- register: cosign_digest
-
- - name: Copy the cosign public key
- copy:
- content: "{{ cosign_key.public }}"
- dest: cosign.pub
-
- - name: Verify which images are signed
- ignore_errors: true
- ansible.builtin.shell: |
- cosign verify --key cosign.pub --output json {{ item }}
- loop: "{{ cosign_digest.results | map(attribute='stdout') | list | unique }}"
- register: cosign_verify
-
- - name: Copy the cosign private key
- copy:
- content: "{{ cosign_key.private }}"
- dest: cosign.key
-
- - name: Sign images
- ansible.builtin.shell: |
- cosign sign -y --recursive --key cosign.key {{ item }}
- loop: "{{ cosign_verify.results | selectattr('failed', 'equalto', true) | map(attribute='item') | list }}"
-
- - name: Delete the cosign private key
- file:
- path: cosign.key
- state: absent
-
- - name: Return Zuul artifacts for images
- zuul_return:
- data:
- zuul:
- artifacts:
- - name: "{{ item }}"
- url: "docker://{{ item }}"
- metadata:
- type: container_image
- repository: "{{ item.split(':')[0] }}"
- tag: "{{ item.split(':')[1] }}"
- loop: "{{ images_built }}"
-
-- name: Yield to other jobs
- hosts: localhost
- tasks:
- - name: Pause the job
- zuul_return:
- data:
- zuul:
- pause: true
diff --git a/zuul.d/playbooks/molecule-keycloak/pre.yml b/zuul.d/playbooks/molecule-keycloak/pre.yml
deleted file mode 100644
index ab0c6e1..0000000
--- a/zuul.d/playbooks/molecule-keycloak/pre.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright (c) 2024 VEXXHOST, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-- name: Prepare host for Keycloak tests
- hosts: all
- roles:
- - ensure-docker
diff --git a/zuul.d/playbooks/molecule/pre.yml b/zuul.d/playbooks/molecule/pre.yml
index f9f2213..a4bc692 100644
--- a/zuul.d/playbooks/molecule/pre.yml
+++ b/zuul.d/playbooks/molecule/pre.yml
@@ -59,8 +59,15 @@
- name: Replace the registry in image manifest
ansible.builtin.replace:
path: "{{ zuul.project.src_dir }}/roles/defaults/vars/main.yml"
- regexp: "registry.atmosphere.dev/library/([^@]*)@sha256:[a-fA-F0-9]{64}"
- replace: '{{ buildset_registry.host }}:{{ buildset_registry.port }}/library/\1'
+ regexp: "{{ repo }}:{{ tag }}"
+ replace: '{{ buildset_registry.host }}:{{ buildset_registry.port }}/{{ repo }}:{{ tag }}'
+ loop: "{{ zuul.artifacts | default([]) }}"
+ loop_control:
+ loop_var: zj_zuul_artifact
+ when: "'metadata' in zj_zuul_artifact and zj_zuul_artifact.metadata.type | default('') == 'container_image'"
+ vars:
+ repo: "{{ zj_zuul_artifact.metadata.repository }}"
+ tag: "{{ zj_zuul_artifact.metadata.tag }}"
# TODO(mnaser): Drop this when we move to PBR
- name: Add current folder to Git's safe directories
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index 55e21fa..51aba1a 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -13,14 +13,128 @@
# under the License.
- project:
+ merge-mode: squash-merge
check:
jobs:
- - atmosphere-buildset-registry
- - atmosphere-molecule-aio-openvswitch
- - atmosphere-molecule-aio-ovn
- - atmosphere-molecule-csi-local-path-provisioner
- - atmosphere-molecule-csi-rbd
- - atmosphere-molecule-keycloak
- post:
+ - atmosphere-molecule-aio-keycloak:
+ dependencies: &molecule_check_dependencies
+ - name: atmosphere-build-container-image-barbican
+ soft: true
+ - name: atmosphere-build-container-image-cinder
+ soft: true
+ - name: atmosphere-build-container-image-cluster-api-provider-openstack
+ soft: true
+ - name: atmosphere-build-container-image-designate
+ soft: true
+ - name: atmosphere-build-container-image-glance
+ soft: true
+ - name: atmosphere-build-container-image-heat
+ soft: true
+ - name: atmosphere-build-container-image-horizon
+ soft: true
+ - name: atmosphere-build-container-image-ironic
+ soft: true
+ - name: atmosphere-build-container-image-keystone
+ soft: true
+ - name: atmosphere-build-container-image-kubernetes-entrypoint
+ soft: true
+ - name: atmosphere-build-container-image-libvirt-tls-sidecar
+ soft: true
+ - name: atmosphere-build-container-image-libvirtd
+ soft: true
+ - name: atmosphere-build-container-image-magnum
+ soft: true
+ - name: atmosphere-build-container-image-manila
+ soft: true
+ - name: atmosphere-build-container-image-netoffload
+ soft: true
+ - name: atmosphere-build-container-image-neutron
+ soft: true
+ - name: atmosphere-build-container-image-nova
+ soft: true
+ - name: atmosphere-build-container-image-nova-ssh
+ soft: true
+ - name: atmosphere-build-container-image-octavia
+ soft: true
+ - name: atmosphere-build-container-image-openvswitch
+ soft: true
+ - name: atmosphere-build-container-image-ovn
+ soft: true
+ - name: atmosphere-build-container-image-placement
+ soft: true
+ - name: atmosphere-build-container-image-senlin
+ soft: true
+ - name: atmosphere-build-container-image-staffeln
+ soft: true
+ - name: atmosphere-build-container-image-tempest
+ soft: true
+ - atmosphere-molecule-aio-openvswitch:
+ dependencies: *molecule_check_dependencies
+ - atmosphere-molecule-aio-ovn:
+ dependencies: *molecule_check_dependencies
+ - atmosphere-molecule-csi-local-path-provisioner:
+ dependencies: *molecule_check_dependencies
+ - atmosphere-molecule-csi-rbd:
+ dependencies: *molecule_check_dependencies
+ gate:
jobs:
- - atmosphere-upload-images
+ - atmosphere-molecule-aio-keycloak:
+ dependencies: &molecule_gate_dependencies
+ - name: atmosphere-upload-container-image-barbican
+ soft: true
+ - name: atmosphere-upload-container-image-cinder
+ soft: true
+ - name: atmosphere-upload-container-image-cluster-api-provider-openstack
+ soft: true
+ - name: atmosphere-upload-container-image-designate
+ soft: true
+ - name: atmosphere-upload-container-image-glance
+ soft: true
+ - name: atmosphere-upload-container-image-heat
+ soft: true
+ - name: atmosphere-upload-container-image-horizon
+ soft: true
+ - name: atmosphere-upload-container-image-ironic
+ soft: true
+ - name: atmosphere-upload-container-image-keystone
+ soft: true
+ - name: atmosphere-upload-container-image-kubernetes-entrypoint
+ soft: true
+ - name: atmosphere-upload-container-image-libvirt-tls-sidecar
+ soft: true
+ - name: atmosphere-upload-container-image-libvirtd
+ soft: true
+ - name: atmosphere-upload-container-image-magnum
+ soft: true
+ - name: atmosphere-upload-container-image-manila
+ soft: true
+ - name: atmosphere-upload-container-image-netoffload
+ soft: true
+ - name: atmosphere-upload-container-image-neutron
+ soft: true
+ - name: atmosphere-upload-container-image-nova
+ soft: true
+ - name: atmosphere-upload-container-image-nova-ssh
+ soft: true
+ - name: atmosphere-upload-container-image-octavia
+ soft: true
+ - name: atmosphere-upload-container-image-openvswitch
+ soft: true
+ - name: atmosphere-upload-container-image-ovn
+ soft: true
+ - name: atmosphere-upload-container-image-placement
+ soft: true
+ - name: atmosphere-upload-container-image-senlin
+ soft: true
+ - name: atmosphere-upload-container-image-staffeln
+ soft: true
+ - name: atmosphere-upload-container-image-tempest
+ soft: true
+ - atmosphere-molecule-aio-openvswitch:
+ dependencies: *molecule_gate_dependencies
+ - atmosphere-molecule-aio-ovn:
+ dependencies: *molecule_gate_dependencies
+ - atmosphere-molecule-csi-local-path-provisioner:
+ dependencies: *molecule_gate_dependencies
+ - atmosphere-molecule-csi-rbd:
+ dependencies: *molecule_gate_dependencies
diff --git a/zuul.d/secrets.yaml b/zuul.d/secrets.yaml
index 9cbc362..5208efb 100644
--- a/zuul.d/secrets.yaml
+++ b/zuul.d/secrets.yaml
@@ -13,20 +13,21 @@
# under the License.
- secret:
- name: registry_credentials
+ name: atmosphere-registry-credentials
data:
- username: robot$zuul
- password: !encrypted/pkcs1-oaep
- - OOykjodZE21qsYYLpzplp+PV0QbsKQ1B3+kI7bY97VQI/d5RlewqlNABc10eQnyYFSDvq
- z2gSigSHxaVcV5qKJLTNVDgzSBHBj349OaTh6dXsxplvoArehfYMMZGuNmFlucoeN8K6w
- yLRViN7tCS39CAYdjeNX1X7mQ7gBC61jUQ++JB+R5MhXmALJxzPfQRl9jsYmjx9ZXjEwE
- tjKLSyQifQU20eXbhZOUW2nr+ItTikS3AOSo6Ja6jCI1c9lj6mJtUOorGsuxfdhEigPws
- Qnz539imGcyqySSxvbJvgoEYxhE3dHFV5cJkomoHHHwLH0wbjAgBQtCMX3CvpxNX8sBfJ
- MxvUkxY8VWt3CtJkdq+/eaCovCRn6GN5enI5tlUJgpAyV+PO6PvkTan6yC8lHMM5pD4jX
- Hdo6gt6m9WyA5VxUHdoYYMaDO/rvCxxrUevzPn8do5I96madr9S9lFARqw74mgXG5I6pZ
- M7zDXnorUFyv9dUIB2rOZrp7o0OC2thujjDTKXb4qfmfXGOwlkNmtCLo6BaDo9pSdRN8p
- k0YnUAItZ64qUR7paEUKGy4rzsZjDYvIj7DrCFvLL2CXcyjPGcmcblpSHe5vJ15CFVH8X
- o39FIIhSmehvrYJziGYUgf4JY1B6ktBtFc9l78WeoJRHNce+viSSkBj1fhbUaI=
+ registry.atmosphere.dev:
+ username: robot$zuul
+ password: !encrypted/pkcs1-oaep
+ - OOykjodZE21qsYYLpzplp+PV0QbsKQ1B3+kI7bY97VQI/d5RlewqlNABc10eQnyYFSDvq
+ z2gSigSHxaVcV5qKJLTNVDgzSBHBj349OaTh6dXsxplvoArehfYMMZGuNmFlucoeN8K6w
+ yLRViN7tCS39CAYdjeNX1X7mQ7gBC61jUQ++JB+R5MhXmALJxzPfQRl9jsYmjx9ZXjEwE
+ tjKLSyQifQU20eXbhZOUW2nr+ItTikS3AOSo6Ja6jCI1c9lj6mJtUOorGsuxfdhEigPws
+ Qnz539imGcyqySSxvbJvgoEYxhE3dHFV5cJkomoHHHwLH0wbjAgBQtCMX3CvpxNX8sBfJ
+ MxvUkxY8VWt3CtJkdq+/eaCovCRn6GN5enI5tlUJgpAyV+PO6PvkTan6yC8lHMM5pD4jX
+ Hdo6gt6m9WyA5VxUHdoYYMaDO/rvCxxrUevzPn8do5I96madr9S9lFARqw74mgXG5I6pZ
+ M7zDXnorUFyv9dUIB2rOZrp7o0OC2thujjDTKXb4qfmfXGOwlkNmtCLo6BaDo9pSdRN8p
+ k0YnUAItZ64qUR7paEUKGy4rzsZjDYvIj7DrCFvLL2CXcyjPGcmcblpSHe5vJ15CFVH8X
+ o39FIIhSmehvrYJziGYUgf4JY1B6ktBtFc9l78WeoJRHNce+viSSkBj1fhbUaI=
- secret:
name: cosign_key