Fix openSUSE images and bump them to 15.3
SUSE dropped OpenStack Cloud in 2019 [1], and as a result, some OpenStack-related repositories were removed from openSUSE Download and root filesystem images stopped being provided. This change deprecates Leap releases before 15.3 and employs the extract-image script. It also moves the extract-image script to the sysprep element, since now it's also used by openSUSE-related elements. Additionally, revert the "Remove opensuse related funtests" change [2] so that the opensuse element is tested again and set the default Leap release to 15.3. [1] https://www.zdnet.com/article/suse-drops-openstacks/ [2] https://review.opendev.org/c/openstack/diskimage-builder/+/824002 Change-Id: I73d6323aa65cee69a55e54bc53ed682f096dfc89
This commit is contained in:
parent
9c5f5a56d4
commit
0f430664a2
@ -27,6 +27,7 @@
|
|||||||
- centos/8-stream-build-succeeds
|
- centos/8-stream-build-succeeds
|
||||||
- centos/9-stream-build-succeeds
|
- centos/9-stream-build-succeeds
|
||||||
- fedora/build-succeeds
|
- fedora/build-succeeds
|
||||||
|
- opensuse/build-succeeds
|
||||||
- ubuntu/bionic-build-succeeds
|
- ubuntu/bionic-build-succeeds
|
||||||
- ubuntu/focal-build-succeeds
|
- ubuntu/focal-build-succeeds
|
||||||
|
|
||||||
|
@ -14,12 +14,12 @@ Environment Variables
|
|||||||
|
|
||||||
DIB_RELEASE
|
DIB_RELEASE
|
||||||
:Required: No
|
:Required: No
|
||||||
:Default: 15.1
|
:Default: 15.3
|
||||||
:Description: Set the desired openSUSE release.
|
:Description: Set the desired openSUSE release.
|
||||||
|
|
||||||
DIB_CLOUD_IMAGES
|
DIB_CLOUD_IMAGES
|
||||||
:Required: No
|
:Required: No
|
||||||
:Default: https://download.opensuse.org/repositories/Cloud:/Images:/(openSUSE|Leap)_${DIB_RELEASE}
|
:Default: https://download.opensuse.org/repositories/Cloud:/Images:/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,13 +1,10 @@
|
|||||||
export DISTRO_NAME=opensuse
|
export DISTRO_NAME=opensuse
|
||||||
export DIB_RELEASE=${DIB_RELEASE:-15.1}
|
export DIB_RELEASE=${DIB_RELEASE:-15.3}
|
||||||
export EFI_BOOT_DIR="EFI/opensuse"
|
export EFI_BOOT_DIR="EFI/opensuse"
|
||||||
export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base
|
export DIB_OPENSUSE_PATTERNS=patterns-openSUSE-base
|
||||||
export DIB_INIT_SYSTEM=systemd
|
export DIB_INIT_SYSTEM=systemd
|
||||||
case ${DIB_RELEASE} in
|
case ${DIB_RELEASE} in
|
||||||
# Old Leap releases
|
15.3) 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
|
||||||
|
|
||||||
|
@ -19,26 +19,14 @@ if ! [ 'x86_64' = "$ARCH" ] ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Set some image defaults
|
# Set some image defaults
|
||||||
case ${DIB_RELEASE} in
|
|
||||||
# Old Leap releases
|
|
||||||
42*)
|
|
||||||
OPENSUSE_IMAGE_BASEDIR=Leap
|
OPENSUSE_IMAGE_BASEDIR=Leap
|
||||||
OPENSUSE_IMAGE_FILE=openSUSE-Leap-${DIB_RELEASE}-OpenStack
|
OPENSUSE_IMAGE_FILE=openSUSE-Leap-${DIB_RELEASE}
|
||||||
OPENSUSE_IMAGE_EXT=tbz
|
OPENSUSE_IMAGE_EXT=qcow2
|
||||||
;;
|
|
||||||
# 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
|
# NOTE(toabctl): if something changes here on the buildservice side, please
|
||||||
# first ask in #opensuse-cloud on Libera Chat before you change the format
|
# first ask in #opensuse-buildservice on Libera Chat before you change the
|
||||||
# here!
|
# format here!
|
||||||
DIB_CLOUD_IMAGES=${DIB_CLOUD_IMAGES:-https://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}.${OPENSUSE_IMAGE_EXT}}
|
BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-${OPENSUSE_IMAGE_FILE}.${ARCH}-NoCloud.${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
|
||||||
@ -49,17 +37,16 @@ CACHED_SHA256SUMS_FILE=$DIB_IMAGE_CACHE/SHA256SUMS.$BASE_IMAGE_FILE
|
|||||||
# over HTTP
|
# over HTTP
|
||||||
if [ -n "$DIB_OFFLINE" -a -f "$CACHED_FILE" ] ; then
|
if [ -n "$DIB_OFFLINE" -a -f "$CACHED_FILE" ] ; then
|
||||||
echo "Not checking freshness of cached $CACHED_FILE."
|
echo "Not checking freshness of cached $CACHED_FILE."
|
||||||
|
# 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 -xf $CACHED_FILE
|
||||||
else
|
else
|
||||||
echo "Fetching Base Image"
|
echo "Fetching Base Image"
|
||||||
$TMP_HOOKS_PATH/bin/cache-url $DIB_CLOUD_IMAGES/$SHA256SUMS_FILE $CACHED_SHA256SUMS_FILE
|
$TMP_HOOKS_PATH/bin/cache-url $DIB_CLOUD_IMAGES/$SHA256SUMS_FILE $CACHED_SHA256SUMS_FILE
|
||||||
$TMP_HOOKS_PATH/bin/cache-url $DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE $CACHED_FILE
|
$TMP_HOOKS_PATH/bin/extract-image $BASE_IMAGE_FILE $BASE_IMAGE_FILE.tgz $DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE $CACHED_FILE
|
||||||
pushd $DIB_IMAGE_CACHE
|
pushd $DIB_IMAGE_CACHE
|
||||||
# Calculate sha256sum of downloaded image and check against content from sha256 file
|
# Calculate sha256sum of downloaded image and check against content from sha256 file
|
||||||
SHA256SUM=$(sha256sum ${BASE_IMAGE_FILE} | cut -d " " -f1)
|
SHA256SUM=$(sha256sum ${BASE_IMAGE_FILE} | cut -d " " -f1)
|
||||||
grep -q $SHA256SUM SHA256SUMS.$BASE_IMAGE_FILE
|
grep -q $SHA256SUM SHA256SUMS.$BASE_IMAGE_FILE
|
||||||
popd
|
popd
|
||||||
fi
|
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 -xf $CACHED_FILE
|
|
||||||
|
@ -1 +1 @@
|
|||||||
Verify we can build an openSUSE Leap 15.1 image.
|
Verify we can build an openSUSE Leap 15.3 image.
|
||||||
|
@ -1 +1 @@
|
|||||||
export DIB_RELEASE=15.1
|
export DIB_RELEASE=15.3
|
||||||
|
@ -20,4 +20,4 @@ Distributions which are supported as a target for an image:
|
|||||||
- 16.04 ("xenial"), 18.04 ("bionic")
|
- 16.04 ("xenial"), 18.04 ("bionic")
|
||||||
- Gentoo
|
- Gentoo
|
||||||
- openEuler 20.03-LTS-SP1+
|
- openEuler 20.03-LTS-SP1+
|
||||||
- openSUSE Leap 42.3, 15.0, 15.1 and Tumbleweed (opensuse-minimal only)
|
- openSUSE Leap 15.3 and Tumbleweed (opensuse-minimal only)
|
||||||
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
upgrade:
|
||||||
|
- |
|
||||||
|
Bumped the default openSUSE Leap release to 15.3 for the opensuse element.
|
||||||
|
deprecations:
|
||||||
|
- |
|
||||||
|
Dropped support for building openSUSE Leap 42.1, 42.2, 42.3, 15.0, 15.1,
|
||||||
|
and 15.2, since all of them have already reached end-of-life.
|
@ -37,6 +37,8 @@ DEFAULT_SKIP_TESTS=(
|
|||||||
# These download base images which has shown to be very unreliable
|
# These download base images which has shown to be very unreliable
|
||||||
# in the gate. Keep them in a -nv job until we can figure out
|
# in the gate. Keep them in a -nv job until we can figure out
|
||||||
# better caching for the images
|
# better caching for the images
|
||||||
|
opensuse/build-succeeds
|
||||||
|
opensuse/opensuse15-build-succeeds
|
||||||
centos7/build-succeeds
|
centos7/build-succeeds
|
||||||
debian/build-succeeds
|
debian/build-succeeds
|
||||||
fedora/build-succeeds
|
fedora/build-succeeds
|
||||||
|
Loading…
Reference in New Issue
Block a user