From d543aa8bf4eb09de6ee9174e35588f4c422b87fd Mon Sep 17 00:00:00 2001 From: Dmitry Tantsur Date: Thu, 12 May 2022 11:53:32 +0200 Subject: [PATCH] Remove support for distributions with Python 3.6 IPA can no longer be installed on them, other projects will follow. Leave the jobs in place for projects that consume them. Publish Stream 9 images (we'll need to clean up tarballs.o.o later). Also force using Python 3.9 for tinyipa. Change-Id: I350c563c1c4ab60ac10d7c9e4bb0715bfde1b1db --- doc/source/admin/dib.rst | 13 ++++----- .../notes/centos9-0f925822a2ab9e0a.yaml | 5 ++++ tinyipa/build-tinyipa.sh | 6 ++-- tinyipa/build_files/buildreqs_python3.lst | 4 +-- tinyipa/build_files/finalreqs_python3.lst | 4 +-- zuul.d/ironic-python-agent-builder-jobs.yaml | 28 +++++++++---------- zuul.d/project.yaml | 8 +----- 7 files changed, 32 insertions(+), 36 deletions(-) create mode 100644 releasenotes/notes/centos9-0f925822a2ab9e0a.yaml diff --git a/doc/source/admin/dib.rst b/doc/source/admin/dib.rst index da48c11..0a163b0 100644 --- a/doc/source/admin/dib.rst +++ b/doc/source/admin/dib.rst @@ -4,12 +4,11 @@ diskimage-builder images Images built using diskimage-builder_ are recommended for production use on real hardware. The recommended distributions are: -* CentOS Stream 8 +* CentOS Stream 9 * Debian Bullseye (``debian-minimal`` element) The following should work but receive only limited testing and support: -* CentOS 7 (using Python 3.6) * openSUSE Leap 15.1 * Ubuntu 20.04 Focal @@ -29,13 +28,13 @@ You can add other diskimage-builder_ elements via the ``-e`` flag: .. code-block:: shell - ironic-python-agent-builder -e --release 8-stream centos + ironic-python-agent-builder -e --release 9-stream centos You can specify the base name of the target images: .. code-block:: shell - ironic-python-agent-builder -o my-ipa --release 8-stream centos + ironic-python-agent-builder -o my-ipa --release 9-stream centos You can specify the arch of the target image by setting ``ARCH`` environment variable (default is amd64): @@ -43,7 +42,7 @@ variable (default is amd64): .. code-block:: shell export ARCH=aarch64 - ironic-python-agent-builder -o my-ipa --release 8-stream centos + ironic-python-agent-builder -o my-ipa --release 9-stream centos ... with diskimage-builder ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -74,7 +73,7 @@ for example: .. code-block:: shell - export DIB_RELEASE=8-stream + export DIB_RELEASE=9-stream disk-image-create -o ironic-python-agent \ ironic-python-agent-ramdisk centos @@ -169,7 +168,7 @@ required for instance image or deploy image. .. code-block:: bash - ironic-python-agent-builder -e stable-interface-names --release 8-stream centos + ironic-python-agent-builder -e stable-interface-names --release 9-stream centos .. _diskimage-builder: https://docs.openstack.org/diskimage-builder diff --git a/releasenotes/notes/centos9-0f925822a2ab9e0a.yaml b/releasenotes/notes/centos9-0f925822a2ab9e0a.yaml new file mode 100644 index 0000000..0ce194c --- /dev/null +++ b/releasenotes/notes/centos9-0f925822a2ab9e0a.yaml @@ -0,0 +1,5 @@ +--- +upgrade: + - | + CentOS 7 and 8 are no longer supported since OpenStack dropped support + for Python 3.6. Please use CentOS 9 (Stream) instead. diff --git a/tinyipa/build-tinyipa.sh b/tinyipa/build-tinyipa.sh index f695d08..4cd4e8c 100755 --- a/tinyipa/build-tinyipa.sh +++ b/tinyipa/build-tinyipa.sh @@ -162,13 +162,13 @@ while read line; do sudo chroot --userspec=$TC:$STAFF $BUILDDIR /usr/bin/env -i PATH=$CHROOT_PATH http_proxy=$http_proxy https_proxy=$https_proxy no_proxy=$no_proxy tce-load -wci $line done < <(paste $WORKDIR/build_files/$PY_REQS $WORKDIR/build_files/buildreqs.lst) -PIP_COMMAND="pip" TINYIPA_PYTHON_EXE="python" if [[ $USE_PYTHON3 == "True" ]]; then - PIP_COMMAND="pip3" - TINYIPA_PYTHON_EXE="python3" + TINYIPA_PYTHON_EXE="python3.9" fi +PIP_COMMAND="$TINYIPA_PYTHON_EXE -m pip" + # Build python wheels $CHROOT_CMD ${TINYIPA_PYTHON_EXE} -m ensurepip $CHROOT_CMD ${PIP_COMMAND} install --upgrade pip==${PIP_VERSION} wheel diff --git a/tinyipa/build_files/buildreqs_python3.lst b/tinyipa/build_files/buildreqs_python3.lst index 1b6b0c0..5d48288 100644 --- a/tinyipa/build_files/buildreqs_python3.lst +++ b/tinyipa/build_files/buildreqs_python3.lst @@ -1,2 +1,2 @@ -python3.6.tcz -python3.6-dev.tcz \ No newline at end of file +python3.9.tcz +python3.9-dev.tcz diff --git a/tinyipa/build_files/finalreqs_python3.lst b/tinyipa/build_files/finalreqs_python3.lst index a2a4bdc..fab523d 100644 --- a/tinyipa/build_files/finalreqs_python3.lst +++ b/tinyipa/build_files/finalreqs_python3.lst @@ -1,2 +1,2 @@ -python3.6.tcz -expat2.tcz \ No newline at end of file +python3.9.tcz +expat2.tcz diff --git a/zuul.d/ironic-python-agent-builder-jobs.yaml b/zuul.d/ironic-python-agent-builder-jobs.yaml index 79ffb27..8501c95 100644 --- a/zuul.d/ironic-python-agent-builder-jobs.yaml +++ b/zuul.d/ironic-python-agent-builder-jobs.yaml @@ -19,6 +19,7 @@ vars: image_type: 'tinyipa' +# TODO(dtantsur): remove when no other projects use it - job: name: ironic-python-agent-build-image-dib-centos8 parent: ironic-python-agent-build-image-base @@ -30,6 +31,17 @@ image_release: '8-stream' image_target_name: 'centos8' +- job: + name: ironic-python-agent-build-image-dib-centos9 + parent: ironic-python-agent-build-image-base + required-projects: + - openstack/diskimage-builder + vars: + image_type: 'dib' + image_distro: 'centos' + image_release: '9-stream' + image_target_name: 'centos9' + - job: name: ironic-python-agent-build-image-dib-debian parent: ironic-python-agent-build-image-base @@ -68,15 +80,7 @@ vars: image_type: 'tinyipa' -- job: - name: ironic-python-agent-check-image-dib-centos7-python3 - parent: ironic-python-agent-check-image-base - required-projects: - - openstack/diskimage-builder - vars: - image_type: 'dib' - image_distro: 'centos7' - +# TODO(dtantsur): remove when no other projects use it - job: name: ironic-python-agent-check-image-dib-centos8 parent: ironic-python-agent-check-image-base @@ -88,12 +92,6 @@ image_release: '8-stream' image_target_name: 'centos8' -- job: - name: ironic-python-agent-check-image-dib-centos8-extra - parent: ironic-python-agent-check-image-dib-centos8 - vars: - extra_elements: ["extra-hardware"] - - job: name: ironic-python-agent-check-image-dib-centos9 parent: ironic-python-agent-check-image-base diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index d62fd35..6859ca6 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -11,9 +11,6 @@ - ironic-python-agent-check-image-tinyipa - ironic-python-agent-check-image-dib-centos9 - ironic-python-agent-check-image-dib-centos9-extra - - ironic-python-agent-check-image-dib-centos8 - - ironic-python-agent-check-image-dib-centos8-extra - - ironic-python-agent-check-image-dib-centos7-python3 - ironic-python-agent-check-image-dib-debian - ironic-python-agent-check-image-dib-debian-arm64 - ironic-python-agent-check-image-dib-debian-extra @@ -36,9 +33,6 @@ - ironic-python-agent-check-image-tinyipa - ironic-python-agent-check-image-dib-centos9 - ironic-python-agent-check-image-dib-centos9-extra - - ironic-python-agent-check-image-dib-centos8 - - ironic-python-agent-check-image-dib-centos8-extra - - ironic-python-agent-check-image-dib-centos7-python3 - ironic-python-agent-check-image-dib-debian - ironic-python-agent-check-image-dib-debian-arm64 - ironic-python-agent-check-image-dib-debian-extra @@ -47,7 +41,7 @@ - publish-openstack-python-branch-tarball - ironic-python-agent-build-image-tinyipa: branches: master - - ironic-python-agent-build-image-dib-centos8: + - ironic-python-agent-build-image-dib-centos9: branches: master - ironic-python-agent-build-image-dib-debian: branches: master