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
This commit is contained in:
Dirk Mueller 2018-10-15 08:18:44 +02:00
parent 4665e79245
commit c7ac6ee0cb
19 changed files with 48 additions and 38 deletions
.zuul.d
diskimage_builder/elements
opensuse-minimal
README.rst
environment.d
test-elements
opensuse150-build-succeeds
opensuse423-build-succeeds
opensuse
README.rst
environment.d
root.d
test-elements
opensuse150-build-succeeds
opensuse423-build-succeeds
zypper-minimal/root.d
doc/source/user_guide
releasenotes/notes
tests

@ -30,7 +30,7 @@
parent: base parent: base
run: playbooks/dib-functests/run.yaml run: playbooks/dib-functests/run.yaml
post-run: playbooks/dib-functests/post.yaml post-run: playbooks/dib-functests/post.yaml
timeout: 3600 timeout: 5400
required-projects: required-projects:
- openstack/diskimage-builder - openstack/diskimage-builder
- openstack/requirements - openstack/requirements
@ -69,7 +69,7 @@
dib_functests: dib_functests:
- centos7/build-succeeds - centos7/build-succeeds
- opensuse/build-succeeds - opensuse/build-succeeds
- opensuse/opensuse423-build-succeeds - opensuse/opensuse150-build-succeeds
- fedora/build-succeeds - fedora/build-succeeds
- ubuntu/trusty-build-succeeds - ubuntu/trusty-build-succeeds
- ubuntu/xenial-build-succeeds - ubuntu/xenial-build-succeeds
@ -187,7 +187,7 @@
# opensuse-minimal can only build on xenial ATM, as other # opensuse-minimal can only build on xenial ATM, as other
# platforms don't have zypper # platforms don't have zypper
dib_functests_extra: dib_functests_extra:
- opensuse-minimal/opensuse423-build-succeeds - opensuse-minimal/opensuse150-build-succeeds
- job: - job:
name: dib-functests-xenial-python3-containers name: dib-functests-xenial-python3-containers

@ -13,5 +13,5 @@ Environment Variables
DIB_RELEASE DIB_RELEASE
:Required: No :Required: No
:Default: 42.3 :Default: 15.0
:Description: Set the desired openSUSE release. :Description: Set the desired openSUSE release.

@ -1,4 +1,4 @@
export DISTRO_NAME=opensuse export DISTRO_NAME=opensuse
DIB_RELEASE=${DIB_RELEASE:-42.3} DIB_RELEASE=${DIB_RELEASE:-15.0}
export DIB_RELEASE=${DIB_RELEASE,,} export DIB_RELEASE=${DIB_RELEASE,,}
export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base

@ -0,0 +1 @@
Verify we can build an openSUSE Leap 15.0 image.

@ -1 +0,0 @@
Verify we can build an openSUSE Leap 42.3 image.

@ -4,7 +4,7 @@ opensuse
Use an openSUSE cloud image as the baseline for built disk images. The images are Use an openSUSE cloud image as the baseline for built disk images. The images are
located in distribution specific sub directories under 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 These images should be considered experimental. There are currently only x86_64
images. images.
@ -14,12 +14,12 @@ Environment Variables
DIB_RELEASE DIB_RELEASE
:Required: No :Required: No
:Default: 42.3 :Default: 15.0
:Description: Set the desired openSUSE release. :Description: Set the desired openSUSE release.
DIB_CLOUD_IMAGES DIB_CLOUD_IMAGES
:Required: No :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. :Description: Set the desired URL to fetch the images from.
Notes: Notes:

@ -1,12 +1,12 @@
export DISTRO_NAME=opensuse 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 export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base
case ${DIB_RELEASE} in case ${DIB_RELEASE} in
# Old openSUSE releases # Old Leap releases
13*) export OPENSUSE_REPO_DIR=openSUSE_${DIB_RELEASE} ;;
# New Leap releases
42*) export OPENSUSE_REPO_DIR=openSUSE_Leap_${DIB_RELEASE} ;; 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 ;; *) echo "Unsupported openSUSE release: ${DIB_RELEASE}"; exit 1 ;;
esac esac
export DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-http://download.opensuse.org} export DIB_DISTRIBUTION_MIRROR=${DIB_DISTRIBUTION_MIRROR:-https://download.opensuse.org}

@ -20,22 +20,24 @@ fi
# Set some image defaults # Set some image defaults
case ${DIB_RELEASE} in case ${DIB_RELEASE} in
# Old openSUSE releases # Old Leap releases
13*)
OPENSUSE_IMAGE_BASEDIR=openSUSE
OPENSUSE_IMAGE_FILE=openSUSE-${DIB_RELEASE}-OS
;;
# New Leap releases
42*) 42*)
OPENSUSE_IMAGE_BASEDIR=Leap OPENSUSE_IMAGE_BASEDIR=Leap
OPENSUSE_IMAGE_FILE=openSUSE-Leap-${DIB_RELEASE}-OpenStack 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 # We handle unknown cases in environment.d/10-opensuse-distro-name.bash
esac esac
# NOTE(toabctl): if something changes here on the buildservice side, please # NOTE(toabctl): if something changes here on the buildservice side, please
# first ask in #opensuse-cloud on freenode before you change the format here! # 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/} 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}.tbz} BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-${OPENSUSE_IMAGE_FILE}-rootfs.${ARCH}.${OPENSUSE_IMAGE_EXT}}
SHA256SUMS_FILE=${SHA256SUMS_FILE:-${BASE_IMAGE_FILE}.sha256} SHA256SUMS_FILE=${SHA256SUMS_FILE:-${BASE_IMAGE_FILE}.sha256}
CACHED_FILE=$DIB_IMAGE_CACHE/$BASE_IMAGE_FILE 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 # Extract the base image (use --numeric-owner to avoid UID/GID mismatch between
# image tarball and host OS) # 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

@ -0,0 +1 @@
Verify we can build an openSUSE Leap 15.0 image.

@ -1 +0,0 @@
Verify we can build an openSUSE Leap 42.3 image.

@ -39,19 +39,16 @@ trap cleanup EXIT
ZYPPER_TARGET_OPTS="--non-interactive --gpg-auto-import-keys --root $TARGET_ROOT" ZYPPER_TARGET_OPTS="--non-interactive --gpg-auto-import-keys --root $TARGET_ROOT"
ZYPPER_INSTALL_OPTS="--no-recommends" 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 case ${DIB_RELEASE} in
# We are using "=>" as the assignment symbol since "@" "=" etc could be used in the URI itself. # Old Leap releases
# Remember, we can't export an array in bash so we use a string instead. 42*)
# Repo format: {name}=>{uri} ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/leap/${DIB_RELEASE}/oss/ "
# Old openSUSE releases ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/leap/${DIB_RELEASE}/repo/oss/"
13*)
ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/${DIB_RELEASE}/ "
ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/${DIB_RELEASE}/repo/oss/"
;; ;;
# New Leap releases # New Leap releases
42*|15*) 15*)
ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/leap/${DIB_RELEASE}/oss/ " ZYPPER_REPOS="update=>${DIB_DISTRIBUTION_MIRROR}/update/leap/${DIB_RELEASE}/oss/ "
ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/leap/${DIB_RELEASE}/repo/oss/" ZYPPER_REPOS+="oss=>${DIB_DISTRIBUTION_MIRROR}/distribution/leap/${DIB_RELEASE}/repo/oss/"
;; ;;

@ -9,7 +9,7 @@ Distributions which are supported as a build host:
- RHEL 6, 7 - RHEL 6, 7
- Ubuntu 14.04 ("trusty") - Ubuntu 14.04 ("trusty")
- Gentoo - 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: 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 - RHEL 6, 7
- Ubuntu 12.04 ("precise"), 14.04 ("trusty") - Ubuntu 12.04 ("precise"), 14.04 ("trusty")
- Gentoo - 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)

@ -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.

@ -26,7 +26,7 @@ DEFAULT_SKIP_TESTS=(
# These require "zypper" on the host which is not available on # These require "zypper" on the host which is not available on
# all platforms # all platforms
opensuse-minimal/build-succeeds opensuse-minimal/build-succeeds
opensuse-minimal/opensuse423-build-succeeds opensuse-minimal/opensuse150-build-succeeds
# non-voting; not used by infra currently # non-voting; not used by infra currently
gentoo/build-succeeds gentoo/build-succeeds
# Needs infra mirroring to move to voting job # Needs infra mirroring to move to voting job