From ee359c7e3bee9afec7bf183b6458b194defef1ca Mon Sep 17 00:00:00 2001 From: Clark Boylan Date: Tue, 25 Oct 2022 10:43:29 -0700 Subject: [PATCH] Add python 3.11 docker images Python 3.11 has been released. Once the parent commit of this commit lands we will have removed our python3.8 images making room for python3.11 in our image list. Add these new images which will make way for running and testing our software on this new version of python. Change-Id: Idcea3d6fa22839390f63cd1722bc4cb46a6ccd53 --- docker/python-base/Dockerfile | 2 +- docker/python-builder/Dockerfile | 2 +- docker/uwsgi-base/Dockerfile | 2 +- .../docker-images/python-3.11-bullseye.yaml | 135 ++++++++++++++++++ zuul.d/project.yaml | 9 ++ 5 files changed, 147 insertions(+), 3 deletions(-) create mode 100644 zuul.d/docker-images/python-3.11-bullseye.yaml diff --git a/docker/python-base/Dockerfile b/docker/python-base/Dockerfile index f813922297..dada5993ae 100644 --- a/docker/python-base/Dockerfile +++ b/docker/python-base/Dockerfile @@ -15,7 +15,7 @@ # Comment to force rebuilds Thu Sep 8 15:32:47 UTC 2022 -ARG PYTHON_VERSION=3.10 +ARG PYTHON_VERSION=3.11 ARG DEBIAN_VERSION=bullseye FROM docker.io/library/python:${PYTHON_VERSION}-slim-${DEBIAN_VERSION} # Necessary to use this var in the RUN below diff --git a/docker/python-builder/Dockerfile b/docker/python-builder/Dockerfile index 1cd7e7fa2f..9ebdd1c3f6 100644 --- a/docker/python-builder/Dockerfile +++ b/docker/python-builder/Dockerfile @@ -15,7 +15,7 @@ # Comment to force rebuilds Thu Sep 8 15:32:47 UTC 2022 -ARG PYTHON_VERSION=3.10 +ARG PYTHON_VERSION=3.11 ARG DEBIAN_VERSION=bullseye FROM docker.io/library/python:${PYTHON_VERSION}-slim-${DEBIAN_VERSION} as fake-python diff --git a/docker/uwsgi-base/Dockerfile b/docker/uwsgi-base/Dockerfile index 5f7853ddbe..06ad0ae9f6 100644 --- a/docker/uwsgi-base/Dockerfile +++ b/docker/uwsgi-base/Dockerfile @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -ARG PYTHON_VERSION=3.10 +ARG PYTHON_VERSION=3.11 ARG DEBIAN_VERSION=bullseye FROM docker.io/opendevorg/python-builder:${PYTHON_VERSION}-${DEBIAN_VERSION} as builder diff --git a/zuul.d/docker-images/python-3.11-bullseye.yaml b/zuul.d/docker-images/python-3.11-bullseye.yaml new file mode 100644 index 0000000000..76bde759a1 --- /dev/null +++ b/zuul.d/docker-images/python-3.11-bullseye.yaml @@ -0,0 +1,135 @@ +# python-builder-3.11-bullseye jobs +- job: + name: system-config-build-image-python-builder-3.11-bullseye + description: Build a python-builder-3.11-bullseye image. + parent: system-config-build-image + timeout: 3600 + provides: + - python-builder-container-image + - python-builder-3.11-bullseye-container-image + vars: &python-builder_3_11_bullseye_vars + docker_images: + - context: docker/python-builder + repository: opendevorg/python-builder + tags: + - 3.11-bullseye + arch: + - linux/amd64 + - linux/arm64 + build_args: + - PYTHON_VERSION=3.11 + - DEBIAN_VERSION=bullseye + files: &python-builder_3_11_bullseye_files + - docker/python-base/ + - docker/python-builder/ + +- job: + name: system-config-upload-image-python-builder-3.11-bullseye + description: Build and upload a python-builder-3.11-bullseye image. + parent: system-config-upload-image + timeout: 3600 + provides: + - python-builder-container-image + - python-builder-3.11-bullseye-container-image + vars: *python-builder_3_11_bullseye_vars + files: *python-builder_3_11_bullseye_files + +- job: + name: system-config-promote-image-python-builder-3.11-bullseye + description: Promote a previously published python-builder-3.11-bullseye image to latest. + parent: system-config-promote-image + vars: *python-builder_3_11_bullseye_vars + files: *python-builder_3_11_bullseye_files + +- job: + name: system-config-build-image-python-base-3.11-bullseye + description: Build a python-base-3.11-bullseye image. + parent: system-config-build-image + timeout: 3600 + provides: + - python-base-container-image + - python-base-3.11-container-image + vars: &python-base_3_11_bullseye_vars + docker_images: + - context: docker/python-base + repository: opendevorg/python-base + tags: + - 3.11-bullseye + arch: + - linux/amd64 + - linux/arm64 + build_args: + - PYTHON_VERSION=3.11 + - DEBIAN_VERSION=bullseye + files: &python-base_3_11_bullseye_files + - docker/python-base/ + - docker/python-builder/ + +- job: + name: system-config-upload-image-python-base-3.11-bullseye + description: Build and upload a python-base-3.11-bullseye image. + parent: system-config-upload-image + timeout: 3600 + provides: python-base-3.11-bullseye-container-image + vars: *python-base_3_11_bullseye_vars + files: *python-base_3_11_bullseye_files + +- job: + name: system-config-promote-image-python-base-3.11-bullseye + description: Promote a previously published python-base-3.11-bullseye image to latest. + parent: system-config-promote-image + vars: *python-base_3_11_bullseye_vars + files: *python-base_3_11_bullseye_files + +- job: + name: system-config-build-image-uwsgi-base-3.11-bullseye + description: Build a uwsgi-base-3.11-bullseye image. + parent: system-config-build-image + timeout: 3600 + requires: &uwsgi-base_3_11_bullseye_requires + - python-base-3.11-bullseye-container-image + - python-builder-3.11-bullseye-container-image + provides: uwsgi-base-3.11-bullseye-container-image + dependencies: + - name: system-config-build-image-python-base-3.11-bullseye + soft: true + - name: system-config-build-image-python-builder-3.11-bullseye + soft: true + vars: &uwsgi-base_3_11_bullseye_vars + docker_images: + - context: docker/uwsgi-base + repository: opendevorg/uwsgi-base + tags: + - 3.11-bullseye + arch: + - linux/amd64 + - linux/arm64 + build_args: + - PYTHON_VERSION=3.11 + - DEBIAN_VERSION=bullseye + files: &uwsgi-base_3_11_bullseye_files + - docker/python-base/.* + - docker/python-builder/.* + - docker/uwsgi-base/.* + +- job: + name: system-config-upload-image-uwsgi-base-3.11-bullseye + description: Build and upload a uwsgi-base-3.11-bullseye image. + parent: system-config-upload-image + timeout: 3600 + provides: uwsgi-base-3.11-bullseye-container-image + requires: *uwsgi-base_3_11_bullseye_requires + dependencies: + - name: system-config-upload-image-python-base-3.11-bullseye + soft: true + - name: system-config-upload-image-python-builder-3.11-bullseye + soft: true + vars: *uwsgi-base_3_11_bullseye_vars + files: *uwsgi-base_3_11_bullseye_files + +- job: + name: system-config-promote-image-uwsgi-base-3.11-bullseye + description: Promote a previously published uwsgi-base-3.11-bullseye image to latest. + parent: system-config-promote-image + vars: *uwsgi-base_3_11_bullseye_vars + files: *uwsgi-base_3_11_bullseye_files diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index a38a8053b3..7155f01e17 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -145,10 +145,13 @@ soft: true - system-config-build-image-python-base-3.9-bullseye - system-config-build-image-python-base-3.10-bullseye + - system-config-build-image-python-base-3.11-bullseye - system-config-build-image-python-builder-3.9-bullseye - system-config-build-image-python-builder-3.10-bullseye + - system-config-build-image-python-builder-3.11-bullseye - system-config-build-image-uwsgi-base-3.9-bullseye - system-config-build-image-uwsgi-base-3.10-bullseye + - system-config-build-image-uwsgi-base-3.11-bullseye check-arm64: jobs: - system-config-run-base-arm64 @@ -282,10 +285,13 @@ soft: true - system-config-upload-image-python-base-3.9-bullseye - system-config-upload-image-python-base-3.10-bullseye + - system-config-upload-image-python-base-3.11-bullseye - system-config-upload-image-python-builder-3.9-bullseye - system-config-upload-image-python-builder-3.10-bullseye + - system-config-upload-image-python-builder-3.11-bullseye - system-config-upload-image-uwsgi-base-3.9-bullseye - system-config-upload-image-uwsgi-base-3.10-bullseye + - system-config-upload-image-uwsgi-base-3.11-bullseye promote: jobs: - opendev-promote-docs @@ -305,10 +311,13 @@ - system-config-promote-image-matrix-eavesdrop - system-config-promote-image-python-base-3.9-bullseye - system-config-promote-image-python-base-3.10-bullseye + - system-config-promote-image-python-base-3.11-bullseye - system-config-promote-image-python-builder-3.9-bullseye - system-config-promote-image-python-builder-3.10-bullseye + - system-config-promote-image-python-builder-3.11-bullseye - system-config-promote-image-uwsgi-base-3.9-bullseye - system-config-promote-image-uwsgi-base-3.10-bullseye + - system-config-promote-image-uwsgi-base-3.11-bullseye # NOTE: infra-prod-* jobs have a hierarchy below that ensure # they can run in parallel. We are deliberately keeping their