From c7ac6ee0cb93b1f10abdea3df01a53868917a30c Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 15 Oct 2018 08:18:44 +0200 Subject: [PATCH] Update test coverage for openSUSE/-minimal to 15.0 Use openSUSE 15.0 as default, which is the latest released stable openSUSE release. Switch to https for accessing download.o.org as encrypted transfers should be used by default. Remove leftovers for definitely unmaintained openSUSE 13.x images and split into old/new leap style versioning scheme for clarity. Change-Id: Iab129eeee2b1a2563f0f0d2cb17bbad57c068e38 --- .zuul.d/jobs.yaml | 6 +++--- .../elements/opensuse-minimal/README.rst | 2 +- .../10-opensuse-distro-name.bash | 2 +- .../opensuse150-build-succeeds/README.rst | 1 + .../element-deps | 0 .../environment.d/10-set-distro.bash | 1 + .../opensuse423-build-succeeds/README.rst | 1 - .../environment.d/10-set-distro.bash | 1 - .../elements/opensuse/README.rst | 6 +++--- .../10-opensuse-distro-name.bash | 10 +++++----- .../opensuse/root.d/10-opensuse-cloud-image | 20 ++++++++++--------- .../opensuse150-build-succeeds/README.rst | 1 + .../environment.d/10-set-distro.bash | 1 + .../opensuse423-build-succeeds/README.rst | 1 - .../environment.d/10-set-distro.bash | 1 - .../zypper-minimal/root.d/08-zypper-chroot | 15 ++++++-------- doc/source/user_guide/supported_distros.rst | 4 ++-- ...opensuse-150-default-c047033b850d41ec.yaml | 11 ++++++++++ tests/run_functests.sh | 2 +- 19 files changed, 48 insertions(+), 38 deletions(-) create mode 100644 diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/README.rst rename diskimage_builder/elements/opensuse-minimal/test-elements/{opensuse423-build-succeeds => opensuse150-build-succeeds}/element-deps (100%) create mode 100644 diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash delete mode 100644 diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/README.rst delete mode 100644 diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash create mode 100644 diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/README.rst create mode 100644 diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash delete mode 100644 diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/README.rst delete mode 100644 diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash create mode 100644 releasenotes/notes/opensuse-150-default-c047033b850d41ec.yaml diff --git a/.zuul.d/jobs.yaml b/.zuul.d/jobs.yaml index 0e7d69a46..34391c419 100644 --- a/.zuul.d/jobs.yaml +++ b/.zuul.d/jobs.yaml @@ -30,7 +30,7 @@ parent: base run: playbooks/dib-functests/run.yaml post-run: playbooks/dib-functests/post.yaml - timeout: 3600 + timeout: 5400 required-projects: - openstack/diskimage-builder - openstack/requirements @@ -69,7 +69,7 @@ dib_functests: - centos7/build-succeeds - opensuse/build-succeeds - - opensuse/opensuse423-build-succeeds + - opensuse/opensuse150-build-succeeds - fedora/build-succeeds - ubuntu/trusty-build-succeeds - ubuntu/xenial-build-succeeds @@ -187,7 +187,7 @@ # opensuse-minimal can only build on xenial ATM, as other # platforms don't have zypper dib_functests_extra: - - opensuse-minimal/opensuse423-build-succeeds + - opensuse-minimal/opensuse150-build-succeeds - job: name: dib-functests-xenial-python3-containers diff --git a/diskimage_builder/elements/opensuse-minimal/README.rst b/diskimage_builder/elements/opensuse-minimal/README.rst index fa0b925ec..3dff5041c 100644 --- a/diskimage_builder/elements/opensuse-minimal/README.rst +++ b/diskimage_builder/elements/opensuse-minimal/README.rst @@ -13,5 +13,5 @@ Environment Variables DIB_RELEASE :Required: No - :Default: 42.3 + :Default: 15.0 :Description: Set the desired openSUSE release. diff --git a/diskimage_builder/elements/opensuse-minimal/environment.d/10-opensuse-distro-name.bash b/diskimage_builder/elements/opensuse-minimal/environment.d/10-opensuse-distro-name.bash index 3e869e101..57d59b1da 100644 --- a/diskimage_builder/elements/opensuse-minimal/environment.d/10-opensuse-distro-name.bash +++ b/diskimage_builder/elements/opensuse-minimal/environment.d/10-opensuse-distro-name.bash @@ -1,4 +1,4 @@ export DISTRO_NAME=opensuse -DIB_RELEASE=${DIB_RELEASE:-42.3} +DIB_RELEASE=${DIB_RELEASE:-15.0} export DIB_RELEASE=${DIB_RELEASE,,} export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base diff --git a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/README.rst b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/README.rst new file mode 100644 index 000000000..97c55f1b7 --- /dev/null +++ b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/README.rst @@ -0,0 +1 @@ +Verify we can build an openSUSE Leap 15.0 image. diff --git a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/element-deps b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/element-deps similarity index 100% rename from diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/element-deps rename to diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/element-deps diff --git a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash new file mode 100644 index 000000000..4f01f559a --- /dev/null +++ b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash @@ -0,0 +1 @@ +export DIB_RELEASE=15.0 diff --git a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/README.rst b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/README.rst deleted file mode 100644 index b919a4d0c..000000000 --- a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/README.rst +++ /dev/null @@ -1 +0,0 @@ -Verify we can build an openSUSE Leap 42.3 image. diff --git a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash b/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash deleted file mode 100644 index b6af03b16..000000000 --- a/diskimage_builder/elements/opensuse-minimal/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash +++ /dev/null @@ -1 +0,0 @@ -export DIB_RELEASE=42.3 diff --git a/diskimage_builder/elements/opensuse/README.rst b/diskimage_builder/elements/opensuse/README.rst index e6ec7169f..a3c7f5e6b 100644 --- a/diskimage_builder/elements/opensuse/README.rst +++ b/diskimage_builder/elements/opensuse/README.rst @@ -4,7 +4,7 @@ opensuse Use an openSUSE cloud image as the baseline for built disk images. The images are located in distribution specific sub directories under - http://download.opensuse.org/repositories/Cloud:/Images:/ + https://download.opensuse.org/repositories/Cloud:/Images:/ These images should be considered experimental. There are currently only x86_64 images. @@ -14,12 +14,12 @@ Environment Variables DIB_RELEASE :Required: No - :Default: 42.3 + :Default: 15.0 :Description: Set the desired openSUSE release. DIB_CLOUD_IMAGES :Required: No - :Default: http://download.opensuse.org/repositories/Cloud:/Images:/(openSUSE|Leap)_${DIB_RELEASE} + :Default: https://download.opensuse.org/repositories/Cloud:/Images:/(openSUSE|Leap)_${DIB_RELEASE} :Description: Set the desired URL to fetch the images from. Notes: diff --git a/diskimage_builder/elements/opensuse/environment.d/10-opensuse-distro-name.bash b/diskimage_builder/elements/opensuse/environment.d/10-opensuse-distro-name.bash index 1b92a9560..cb1688f2a 100644 --- a/diskimage_builder/elements/opensuse/environment.d/10-opensuse-distro-name.bash +++ b/diskimage_builder/elements/opensuse/environment.d/10-opensuse-distro-name.bash @@ -1,12 +1,12 @@ export DISTRO_NAME=opensuse -export DIB_RELEASE=${DIB_RELEASE:-42.3} +export DIB_RELEASE=${DIB_RELEASE:-15.0} export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base case ${DIB_RELEASE} in - # Old openSUSE releases - 13*) export OPENSUSE_REPO_DIR=openSUSE_${DIB_RELEASE} ;; - # New Leap releases + # Old Leap releases 42*) export OPENSUSE_REPO_DIR=openSUSE_Leap_${DIB_RELEASE} ;; + # New Leap releases + 15*) export OPENSUSE_REPO_DIR=openSUSE_Leap_${DIB_RELEASE} ;; *) echo "Unsupported openSUSE release: ${DIB_RELEASE}"; exit 1 ;; esac -export DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-http://download.opensuse.org} +export DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-https://download.opensuse.org} diff --git a/diskimage_builder/elements/opensuse/root.d/10-opensuse-cloud-image b/diskimage_builder/elements/opensuse/root.d/10-opensuse-cloud-image index dc56e5366..16607b657 100755 --- a/diskimage_builder/elements/opensuse/root.d/10-opensuse-cloud-image +++ b/diskimage_builder/elements/opensuse/root.d/10-opensuse-cloud-image @@ -20,22 +20,24 @@ fi # Set some image defaults case ${DIB_RELEASE} in - # Old openSUSE releases - 13*) - OPENSUSE_IMAGE_BASEDIR=openSUSE - OPENSUSE_IMAGE_FILE=openSUSE-${DIB_RELEASE}-OS - ;; - # New Leap releases + # Old Leap releases 42*) OPENSUSE_IMAGE_BASEDIR=Leap OPENSUSE_IMAGE_FILE=openSUSE-Leap-${DIB_RELEASE}-OpenStack + OPENSUSE_IMAGE_EXT=tbz + ;; + # New Leap releases + 15*) + OPENSUSE_IMAGE_BASEDIR=Leap + OPENSUSE_IMAGE_FILE=openSUSE-Leap-${DIB_RELEASE}-OpenStack + OPENSUSE_IMAGE_EXT=tar.xz ;; # We handle unknown cases in environment.d/10-opensuse-distro-name.bash esac # NOTE(toabctl): if something changes here on the buildservice side, please # first ask in #opensuse-cloud on freenode before you change the format here! -DIB_CLOUD_IMAGES=${DIB_CLOUD_IMAGES:-http://download.opensuse.org/repositories/Cloud:/Images:/${OPENSUSE_IMAGE_BASEDIR}_${DIB_RELEASE}/images/} -BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-${OPENSUSE_IMAGE_FILE}-rootfs.${ARCH}.tbz} +DIB_CLOUD_IMAGES=${DIB_CLOUD_IMAGES:-https://download.opensuse.org/repositories/Cloud:/Images:/${OPENSUSE_IMAGE_BASEDIR}_${DIB_RELEASE}/images/} +BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-${OPENSUSE_IMAGE_FILE}-rootfs.${ARCH}.${OPENSUSE_IMAGE_EXT}} SHA256SUMS_FILE=${SHA256SUMS_FILE:-${BASE_IMAGE_FILE}.sha256} CACHED_FILE=$DIB_IMAGE_CACHE/$BASE_IMAGE_FILE @@ -59,4 +61,4 @@ fi # Extract the base image (use --numeric-owner to avoid UID/GID mismatch between # image tarball and host OS) -sudo tar -C $TARGET_ROOT --numeric-owner -xjf $CACHED_FILE +sudo tar -C $TARGET_ROOT --numeric-owner -xf $CACHED_FILE diff --git a/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/README.rst b/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/README.rst new file mode 100644 index 000000000..97c55f1b7 --- /dev/null +++ b/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/README.rst @@ -0,0 +1 @@ +Verify we can build an openSUSE Leap 15.0 image. diff --git a/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash b/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash new file mode 100644 index 000000000..4f01f559a --- /dev/null +++ b/diskimage_builder/elements/opensuse/test-elements/opensuse150-build-succeeds/environment.d/10-set-distro.bash @@ -0,0 +1 @@ +export DIB_RELEASE=15.0 diff --git a/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/README.rst b/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/README.rst deleted file mode 100644 index b919a4d0c..000000000 --- a/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/README.rst +++ /dev/null @@ -1 +0,0 @@ -Verify we can build an openSUSE Leap 42.3 image. diff --git a/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash b/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash deleted file mode 100644 index b6af03b16..000000000 --- a/diskimage_builder/elements/opensuse/test-elements/opensuse423-build-succeeds/environment.d/10-set-distro.bash +++ /dev/null @@ -1 +0,0 @@ -export DIB_RELEASE=42.3 diff --git a/diskimage_builder/elements/zypper-minimal/root.d/08-zypper-chroot b/diskimage_builder/elements/zypper-minimal/root.d/08-zypper-chroot index 5a0be063c..7fd597917 100755 --- a/diskimage_builder/elements/zypper-minimal/root.d/08-zypper-chroot +++ b/diskimage_builder/elements/zypper-minimal/root.d/08-zypper-chroot @@ -39,19 +39,16 @@ trap cleanup EXIT ZYPPER_TARGET_OPTS="--non-interactive --gpg-auto-import-keys --root $TARGET_ROOT" ZYPPER_INSTALL_OPTS="--no-recommends" -DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-http://download.opensuse.org} +DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-https://download.opensuse.org} case ${DIB_RELEASE} in - # We are using "=>" as the assignment symbol since "@" "=" etc could be used in the URI itself. - # Remember, we can't export an array in bash so we use a string instead. - # Repo format: {name}=>{uri} - # Old openSUSE releases - 13*) - ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/${DIB_RELEASE}/ " - ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/${DIB_RELEASE}/repo/oss/" + # Old Leap releases + 42*) + ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/leap/${DIB_RELEASE}/oss/ " + ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/leap/${DIB_RELEASE}/repo/oss/" ;; # New Leap releases - 42*|15*) + 15*) ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/leap/${DIB_RELEASE}/oss/ " ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/leap/${DIB_RELEASE}/repo/oss/" ;; diff --git a/doc/source/user_guide/supported_distros.rst b/doc/source/user_guide/supported_distros.rst index ee6d25389..18a254725 100644 --- a/doc/source/user_guide/supported_distros.rst +++ b/doc/source/user_guide/supported_distros.rst @@ -9,7 +9,7 @@ Distributions which are supported as a build host: - RHEL 6, 7 - Ubuntu 14.04 ("trusty") - Gentoo -- openSUSE Leap 42.2, 42.3 and Tumbleweed +- openSUSE Leap 42.2, 42.3, 15.0 and Tumbleweed Distributions which are supported as a target for an image: @@ -20,4 +20,4 @@ Distributions which are supported as a target for an image: - RHEL 6, 7 - Ubuntu 12.04 ("precise"), 14.04 ("trusty") - Gentoo -- openSUSE Leap 42.2, 42.3 and Tumbleweed (opensuse-minimal only) +- openSUSE Leap 42.2, 42.3, 15.0 and Tumbleweed (opensuse-minimal only) diff --git a/releasenotes/notes/opensuse-150-default-c047033b850d41ec.yaml b/releasenotes/notes/opensuse-150-default-c047033b850d41ec.yaml new file mode 100644 index 000000000..785fda627 --- /dev/null +++ b/releasenotes/notes/opensuse-150-default-c047033b850d41ec.yaml @@ -0,0 +1,11 @@ +--- +deprecations: + - | + Support in opensuse and opensuse-minimal for openSUSE 13.* has been removed + as these are end of life. + +upgrade: + - | + The opensuse and opensuse-minimal element are now defaulting to build 15.0. + Building for 42.2 and 42.3 is still supported, however requires setting + DIB_RELEASE to '42.3' resp. '42.2' explicitly. diff --git a/tests/run_functests.sh b/tests/run_functests.sh index c8b83bd31..906b757f9 100755 --- a/tests/run_functests.sh +++ b/tests/run_functests.sh @@ -26,7 +26,7 @@ DEFAULT_SKIP_TESTS=( # These require "zypper" on the host which is not available on # all platforms opensuse-minimal/build-succeeds - opensuse-minimal/opensuse423-build-succeeds + opensuse-minimal/opensuse150-build-succeeds # non-voting; not used by infra currently gentoo/build-succeeds # Needs infra mirroring to move to voting job