Rebuild all ceph images at once

- Set Ceph release tag as part of image tag
- Set Ceph version as build arg instead of hard
  coding it in Dockerfiles
- Rebuild all ceph images at once to make
  sure all ceph images are compatible with
  each other

Change-Id: Id9bebb3d3e1e429d8b437d81c871ded75e46918d
This commit is contained in:
Vladimir Kozhukalov 2023-05-04 15:17:10 +03:00
parent b7dcd5406c
commit 0800b6a2c5
11 changed files with 210 additions and 326 deletions

View File

@ -1,11 +1,10 @@
ARG baseimg=docker.io/ubuntu:focal
FROM ${baseimg}
# Quincy 17.2.6
ARG CEPH_RELEASE=quincy
ARG CEPH_RELEASE_TAG=17.2.6-1focal
ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-quincy/
ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-quincy/release.asc
ARG CEPH_RELEASE
ARG CEPH_RELEASE_TAG
ARG CEPH_REPO
ARG CEPH_KEY
ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key
RUN set -ex ;\

View File

@ -4,12 +4,11 @@ FROM ${FROM}
ARG DISTRO_CODENAME='focal'
ARG KUBE_VERSION=v1.16.2
# Quincy 17.2.6
ARG CEPH_RELEASE=quincy
ARG CEPH_RELEASE_TAG=17.2.6-1focal
ARG CEPH_RELEASE
ARG CEPH_RELEASE_TAG
ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-quincy/
ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-quincy/release.asc
ARG CEPH_REPO
ARG CEPH_KEY
ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key
RUN set -ex ;\

View File

@ -2,13 +2,12 @@ ARG FROM=docker.io/ubuntu:focal
FROM ${FROM}
ARG KUBE_VERSION=1.16.2
# Quincy 17.2.6
ARG CEPH_RELEASE=quincy
ARG CEPH_RELEASE_TAG=17.2.6-1focal
ARG CEPH_RELEASE
ARG CEPH_RELEASE_TAG
ARG CONFD_VERSION=0.16.0
ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-quincy/
ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-quincy/release.asc
ARG CEPH_REPO
ARG CEPH_KEY
ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key
RUN set -ex ;\

View File

@ -1,12 +1,11 @@
ARG baseimg=docker.io/ubuntu:focal
FROM ${baseimg}
# Quincy 17.2.6
ARG CEPH_RELEASE=quincy
ARG CEPH_RELEASE_TAG=17.2.6-1focal
ARG CEPH_RELEASE
ARG CEPH_RELEASE_TAG
ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-quincy/
ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-quincy/release.asc
ARG CEPH_REPO
ARG CEPH_KEY
ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key
RUN set -ex ;\

View File

@ -1,13 +1,12 @@
ARG FROM=docker.io/ubuntu:focal
FROM ${FROM}
# Quincy 17.2.6
ARG CEPH_RELEASE=quincy
ARG CEPH_RELEASE_TAG=17.2.6-1focal
ARG CEPH_RELEASE
ARG CEPH_RELEASE_TAG
ARG KUBE_VERSION=1.16.2
ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-quincy/
ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-quincy/release.asc
ARG CEPH_REPO
ARG CEPH_KEY
ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key
RUN set -xe \

View File

@ -1,59 +0,0 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-cephfs-provisioner
gate:
jobs:
- openstack-helm-images-upload-ceph-cephfs-provisioner
promote:
jobs:
- openstack-helm-images-promote-ceph-cephfs-provisioner
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-cephfs-provisioner
- job:
name: openstack-helm-images-build-ceph-cephfs-provisioner
parent: openstack-helm-images-build
description: Build ceph-cephfs-provisioner images
vars: &ceph-cephfs-provisioner_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- context: ceph-cephfs-provisioner
repository: openstackhelm/ceph-cephfs-provisioner
dockerfile: Dockerfile.ubuntu_focal
tags:
- latest-ubuntu_focal
- "ubuntu_focal-{{ currentdate }}"
files: &ceph-cephfs-provisioner_files
- ceph-cephfs-provisioner/.*
- zuul.d/ceph-cephfs-provisioner.yaml
- job:
name: openstack-helm-images-upload-ceph-cephfs-provisioner
parent: openstack-helm-images-upload
description: Build and upload ceph-cephfs-provisioner images
vars: *ceph-cephfs-provisioner_vars
files: *ceph-cephfs-provisioner_files
- job:
name: openstack-helm-images-promote-ceph-cephfs-provisioner
parent: openstack-helm-images-promote
description: Promote a previously published ceph-cephfs-provisioner image to latest.
vars: *ceph-cephfs-provisioner_vars
files: *ceph-cephfs-provisioner_files

View File

@ -1,65 +0,0 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-config-helper
gate:
jobs:
- openstack-helm-images-upload-ceph-config-helper
promote:
jobs:
- openstack-helm-images-promote-ceph-config-helper
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-config-helper
- job:
name: openstack-helm-images-build-ceph-config-helper
parent: openstack-helm-images-build
description: Build ceph-config-helper images
vars: &ceph-config-helper_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
#- context: ceph-config-helper
# repository: openstackhelm/ceph-config-helper
# tags:
# - latest-opensuse_15
# - "opensuse_15-{{ currentdate }}"
# dockerfile: Dockerfile.suse_15
- context: ceph-config-helper
repository: openstackhelm/ceph-config-helper
dockerfile: Dockerfile.ubuntu_focal
tags:
- latest-ubuntu_focal
- "ubuntu_focal-{{ currentdate }}"
files: &ceph-config-helper_files
- ceph-config-helper/.*
- zuul.d/ceph-config-helper.yaml
- job:
name: openstack-helm-images-upload-ceph-config-helper
parent: openstack-helm-images-upload
description: Build and upload ceph-config-helper images
vars: *ceph-config-helper_vars
files: *ceph-config-helper_files
- job:
name: openstack-helm-images-promote-ceph-config-helper
parent: openstack-helm-images-promote
description: Promote a previously published ceph-config-helper image to latest.
vars: *ceph-config-helper_vars
files: *ceph-config-helper_files

View File

@ -1,59 +0,0 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-daemon
gate:
jobs:
- openstack-helm-images-upload-ceph-daemon
promote:
jobs:
- openstack-helm-images-promote-ceph-daemon
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-daemon
- job:
name: openstack-helm-images-build-ceph-daemon
parent: openstack-helm-images-build
description: Build ceph-daemon images
vars: &ceph-daemon_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- context: ceph-daemon
repository: openstackhelm/ceph-daemon
dockerfile: Dockerfile.ubuntu_focal
tags:
- latest-ubuntu_focal
- "ubuntu_focal-{{ currentdate }}"
files: &ceph-daemon_files
- ceph-daemon/.*
- zuul.d/ceph-daemon.yaml
- job:
name: openstack-helm-images-upload-ceph-daemon
parent: openstack-helm-images-upload
description: Build and upload ceph-daemon images
vars: *ceph-daemon_vars
files: *ceph-daemon_files
- job:
name: openstack-helm-images-promote-ceph-daemon
parent: openstack-helm-images-promote
description: Promote a previously published ceph-daemon image to latest.
vars: *ceph-daemon_vars
files: *ceph-daemon_files

View File

@ -1,59 +0,0 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-rbd-provisioner
gate:
jobs:
- openstack-helm-images-upload-ceph-rbd-provisioner
promote:
jobs:
- openstack-helm-images-promote-ceph-rbd-provisioner
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-rbd-provisioner
- job:
name: openstack-helm-images-build-ceph-rbd-provisioner
parent: openstack-helm-images-build
description: Build ceph-rbd-provisioner images
vars: &ceph-rbd-provisioner_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- context: ceph-rbd-provisioner
repository: openstackhelm/ceph-rbd-provisioner
dockerfile: Dockerfile.ubuntu_focal
tags:
- latest-ubuntu_focal
- "ubuntu_focal-{{ currentdate }}"
files: &ceph-rbd-provisioner_files
- ceph-rbd-provisioner/.*
- zuul.d/ceph-rbd-provisioner.yaml
- job:
name: openstack-helm-images-upload-ceph-rbd-provisioner
parent: openstack-helm-images-upload
description: Build and upload ceph-rbd-provisioner images
vars: *ceph-rbd-provisioner_vars
files: *ceph-rbd-provisioner_files
- job:
name: openstack-helm-images-promote-ceph-rbd-provisioner
parent: openstack-helm-images-promote
description: Promote a previously published ceph-rbd-provisioner image to latest.
vars: *ceph-rbd-provisioner_vars
files: *ceph-rbd-provisioner_files

View File

@ -1,59 +0,0 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-utility
gate:
jobs:
- openstack-helm-images-upload-ceph-utility
promote:
jobs:
- openstack-helm-images-promote-ceph-utility
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-utility
- job:
name: openstack-helm-images-build-ceph-utility
parent: openstack-helm-images-build
description: Build ceph-utility images
vars: &ceph-utility_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- context: ceph-utility
repository: openstackhelm/ceph-utility
dockerfile: Dockerfile.ubuntu_focal
tags:
- latest-ubuntu_focal
- "ubuntu_focal-{{ currentdate }}"
files: &ceph-utility_files
- ceph-utility/.*
- zuul.d/ceph-utility.yaml
- job:
name: openstack-helm-images-upload-ceph-utility
parent: openstack-helm-images-upload
description: Build and upload ceph-utility images
vars: *ceph-utility_vars
files: *ceph-utility_files
- job:
name: openstack-helm-images-promote-ceph-utility
parent: openstack-helm-images-promote
description: Promote a previously published ceph-utility image to latest.
vars: *ceph-utility_vars
files: *ceph-utility_files

190
zuul.d/ceph.yaml Normal file
View File

@ -0,0 +1,190 @@
---
# Copyright 2019, SUSE LINUX GmbH.
#
# 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:
- openstack-helm-images-build-ceph-cephfs-provisioner
- openstack-helm-images-build-ceph-config-helper
- openstack-helm-images-build-ceph-daemon
- openstack-helm-images-build-ceph-rbd-provisioner
- openstack-helm-images-build-ceph-utility
gate:
jobs:
- openstack-helm-images-upload-ceph-cephfs-provisioner
- openstack-helm-images-upload-ceph-config-helper
- openstack-helm-images-upload-ceph-daemon
- openstack-helm-images-upload-ceph-rbd-provisioner
- openstack-helm-images-upload-ceph-utility
promote:
jobs:
- openstack-helm-images-promote-ceph-cephfs-provisioner
- openstack-helm-images-promote-ceph-config-helper
- openstack-helm-images-promote-ceph-daemon
- openstack-helm-images-promote-ceph-rbd-provisioner
- openstack-helm-images-promote-ceph-utility
periodic-weekly:
jobs:
- openstack-helm-images-build-ceph-cephfs-provisioner
- openstack-helm-images-build-ceph-config-helper
- openstack-helm-images-build-ceph-daemon
- openstack-helm-images-build-ceph-rbd-provisioner
- openstack-helm-images-build-ceph-utility
- job:
name: openstack-helm-images-build-ceph-common
parent: openstack-helm-images-build
abstract: true
vars:
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- &ceph_image
dockerfile: Dockerfile.ubuntu_focal
build_args:
- "CEPH_RELEASE='quincy'"
- "CEPH_RELEASE_TAG='17.2.6-1focal'"
- "CEPH_REPO='https://mirror.mirantis.com/acicd/ceph-quincy/'"
- "CEPH_KEY='https://mirror.mirantis.com/acicd/ceph-quincy/release.asc'"
tags:
- latest-ubuntu_focal
- "ubuntu_focal_17.2.6-1-{{ currentdate }}"
files: &ceph_files
- ceph.*
- zuul.d/ceph.*
- job:
name: openstack-helm-images-build-ceph-cephfs-provisioner
parent: openstack-helm-images-build-ceph-common
description: Build ceph-cephfs-provisioner images
vars: &ceph-cephfs-provisioner_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- <<: *ceph_image
context: ceph-cephfs-provisioner
repository: openstackhelm/ceph-cephfs-provisioner
- job:
name: openstack-helm-images-upload-ceph-cephfs-provisioner
parent: openstack-helm-images-upload
description: Build and upload ceph-cephfs-provisioner images
vars: *ceph-cephfs-provisioner_vars
files: *ceph_files
- job:
name: openstack-helm-images-promote-ceph-cephfs-provisioner
parent: openstack-helm-images-promote
description: Promote a previously published ceph-cephfs-provisioner image to latest.
vars: *ceph-cephfs-provisioner_vars
files: *ceph_files
- job:
name: openstack-helm-images-build-ceph-config-helper
parent: openstack-helm-images-build-ceph-common
description: Build ceph-config-helper images
vars: &ceph-config-helper_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- <<: *ceph_image
context: ceph-config-helper
repository: openstackhelm/ceph-config-helper
- job:
name: openstack-helm-images-upload-ceph-config-helper
parent: openstack-helm-images-upload
description: Build and upload ceph-config-helper images
vars: *ceph-config-helper_vars
files: *ceph_files
- job:
name: openstack-helm-images-promote-ceph-config-helper
parent: openstack-helm-images-promote
description: Promote a previously published ceph-config-helper image to latest.
vars: *ceph-config-helper_vars
files: *ceph_files
- job:
name: openstack-helm-images-build-ceph-daemon
parent: openstack-helm-images-build-ceph-common
description: Build ceph-daemon images
vars: &ceph-daemon_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- <<: *ceph_image
context: ceph-daemon
repository: openstackhelm/ceph-daemon
- job:
name: openstack-helm-images-upload-ceph-daemon
parent: openstack-helm-images-upload
description: Build and upload ceph-daemon images
vars: *ceph-daemon_vars
files: *ceph_files
- job:
name: openstack-helm-images-promote-ceph-daemon
parent: openstack-helm-images-promote
description: Promote a previously published ceph-daemon image to latest.
vars: *ceph-daemon_vars
files: *ceph_files
- job:
name: openstack-helm-images-build-ceph-rbd-provisioner
parent: openstack-helm-images-build-ceph-common
description: Build ceph-rbd-provisioner images
vars: &ceph-rbd-provisioner_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- <<: *ceph_image
context: ceph-rbd-provisioner
repository: openstackhelm/ceph-rbd-provisioner
- job:
name: openstack-helm-images-upload-ceph-rbd-provisioner
parent: openstack-helm-images-upload
description: Build and upload ceph-rbd-provisioner images
vars: *ceph-rbd-provisioner_vars
files: *ceph_files
- job:
name: openstack-helm-images-promote-ceph-rbd-provisioner
parent: openstack-helm-images-promote
description: Promote a previously published ceph-rbd-provisioner image to latest.
vars: *ceph-rbd-provisioner_vars
files: *ceph_files
- job:
name: openstack-helm-images-build-ceph-utility
parent: openstack-helm-images-build-ceph-common
description: Build ceph-utility images
vars: &ceph-utility_vars
currentdate: "{{ now(utc=True,fmt='%Y%m%d') }}"
docker_images:
- <<: *ceph_image
context: ceph-utility
repository: openstackhelm/ceph-utility
- job:
name: openstack-helm-images-upload-ceph-utility
parent: openstack-helm-images-upload
description: Build and upload ceph-utility images
vars: *ceph-utility_vars
files: *ceph_files
- job:
name: openstack-helm-images-promote-ceph-utility
parent: openstack-helm-images-promote
description: Promote a previously published ceph-utility image to latest.
vars: *ceph-utility_vars
files: *ceph_files