Build "master" images in "main" (#1090)
Signed-off-by: Mohammed Naser <mnaser@vexxhost.com>
diff --git a/zuul.d/container-images/barbican.yaml b/zuul.d/container-images/barbican.yaml
new file mode 100644
index 0000000..e1059da
--- /dev/null
+++ b/zuul.d/container-images/barbican.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/barbican
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=barbican
+ tags:
+ - main
+ 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..ec6dd7f
--- /dev/null
+++ b/zuul.d/container-images/cinder.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/cinder
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=cinder
+ tags:
+ - main
+ 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..16777dd
--- /dev/null
+++ b/zuul.d/container-images/cluster-api-provider-openstack.yaml
@@ -0,0 +1,52 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/capi-openstack-controller
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..be2943c
--- /dev/null
+++ b/zuul.d/container-images/designate.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/designate
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=designate
+ tags:
+ - main
+ 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..d59f887
--- /dev/null
+++ b/zuul.d/container-images/glance.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/glance
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=glance
+ tags:
+ - main
+ 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..61b462d
--- /dev/null
+++ b/zuul.d/container-images/heat.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/heat
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=heat
+ tags:
+ - main
+ 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..1db9b83
--- /dev/null
+++ b/zuul.d/container-images/horizon.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/horizon
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=horizon
+ tags:
+ - main
+ 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..8e1cbe7
--- /dev/null
+++ b/zuul.d/container-images/ironic.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/ironic
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=ironic
+ tags:
+ - main
+ 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..e65eaa4
--- /dev/null
+++ b/zuul.d/container-images/keystone.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/keystone
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=keystone
+ tags:
+ - main
+ 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..3b3e147
--- /dev/null
+++ b/zuul.d/container-images/kubernetes-entrypoint.yaml
@@ -0,0 +1,52 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/kubernetes-entrypoint
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..eae34a9
--- /dev/null
+++ b/zuul.d/container-images/libvirt-tls-sidecar.yaml
@@ -0,0 +1,64 @@
+# 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
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-libvirt-tls-sidecar
+ container_images:
+ - context: .
+ target: libvirt-tls-sidecar
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/libvirt-tls-sidecar
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ files: &container_image_files
+ - images/ubuntu/.*
+ - cmd/.*
+ - internal/.*
+ - Dockerfile
+ - go.mod
+ - go.sum
+
+- job:
+ name: atmosphere-upload-container-image-libvirt-tls-sidecar
+ 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-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..23f53d0
--- /dev/null
+++ b/zuul.d/container-images/libvirtd.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-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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/libvirtd
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - main
+ 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..b1f9c88
--- /dev/null
+++ b/zuul.d/container-images/magnum.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/magnum
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=magnum
+ tags:
+ - main
+ 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..b907129
--- /dev/null
+++ b/zuul.d/container-images/manila.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/manila
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=manila
+ tags:
+ - main
+ 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..40aa81f
--- /dev/null
+++ b/zuul.d/container-images/netoffload.yaml
@@ -0,0 +1,59 @@
+# 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
+ dependencies:
+ - name: atmosphere-build-container-image-ubuntu
+ soft: true
+ vars: &container_image_vars
+ promote_container_image_job: atmosphere-upload-container-image-netoffload
+ container_images:
+ - context: images/netoffload
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/netoffload
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ files: &container_image_files
+ - images/ubuntu/.*
+ - images/netoffload/.*
+
+- job:
+ name: atmosphere-upload-container-image-netoffload
+ 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-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..101490a
--- /dev/null
+++ b/zuul.d/container-images/neutron.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/neutron
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=neutron
+ tags:
+ - main
+ 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..4b5502d
--- /dev/null
+++ b/zuul.d/container-images/nova-ssh.yaml
@@ -0,0 +1,71 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/nova-ssh
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - main
+ 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..35f7e0a
--- /dev/null
+++ b/zuul.d/container-images/nova.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/nova
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=nova
+ tags:
+ - main
+ 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..4cb7f6b
--- /dev/null
+++ b/zuul.d/container-images/octavia.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/octavia
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=octavia
+ tags:
+ - main
+ 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..d4119ef
--- /dev/null
+++ b/zuul.d/container-images/openstack-python-runtime.yaml
@@ -0,0 +1,71 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/openstack-python-runtime
+ arch:
+ - linux/amd64
+ build_args:
+ - FROM=registry.atmosphere.dev/library/python-base:main
+ tags:
+ - main
+ 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..8b6be30
--- /dev/null
+++ b/zuul.d/container-images/openstack-runtime.yaml
@@ -0,0 +1,64 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/openstack-runtime
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..ad0792b
--- /dev/null
+++ b/zuul.d/container-images/openstack-venv-builder.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-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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/openstack-venv-builder
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..090f51c
--- /dev/null
+++ b/zuul.d/container-images/openvswitch.yaml
@@ -0,0 +1,52 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/openvswitch
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..67eaaec
--- /dev/null
+++ b/zuul.d/container-images/ovn.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-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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/ovn-central
+ arch:
+ - linux/amd64
+ build_args:
+ - OVN_COMPONENT=central
+ tags:
+ - main
+ - context: images/ovn
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/ovn-host
+ arch:
+ - linux/amd64
+ build_args:
+ - OVN_COMPONENT=host
+ tags:
+ - main
+ 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..1902aa5
--- /dev/null
+++ b/zuul.d/container-images/placement.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/placement
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=placement
+ tags:
+ - main
+ 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..8eb63c4
--- /dev/null
+++ b/zuul.d/container-images/python-base.yaml
@@ -0,0 +1,64 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/python-base
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..225823a
--- /dev/null
+++ b/zuul.d/container-images/senlin.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/senlin
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=senlin
+ tags:
+ - main
+ 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..93e6845
--- /dev/null
+++ b/zuul.d/container-images/staffeln.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/staffeln
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=staffeln
+ tags:
+ - main
+ 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..a9f5dc6
--- /dev/null
+++ b/zuul.d/container-images/tempest.yaml
@@ -0,0 +1,81 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/tempest
+ arch:
+ - linux/amd64
+ build_args:
+ - PROJECT=tempest
+ tags:
+ - main
+ 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..1f0a4ef
--- /dev/null
+++ b/zuul.d/container-images/ubuntu-cloud-archive.yaml
@@ -0,0 +1,59 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/ubuntu-cloud-archive
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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..e7966a0
--- /dev/null
+++ b/zuul.d/container-images/ubuntu.yaml
@@ -0,0 +1,52 @@
+# 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
+ registry: registry.atmosphere.dev
+ repository: registry.atmosphere.dev/library/ubuntu
+ arch:
+ - linux/amd64
+ tags:
+ - main
+ 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