Drop Xenial support

With the goals of Ussuri being Python 3.6 [1], the python 3.5
environment on Xenial is too old.  Remove testing and the most obvious
bits of support from devstack.

Also drop claimed support for artful, which is long EOL.

[1] https://governance.openstack.org/tc/reference/runtimes/ussuri.html

Change-Id: Iefcca99904dde76b34efbbfc0e04515dfa5a09e5
This commit is contained in:
Ian Wienand 2019-11-20 10:41:34 +11:00 committed by Jens Harbott
parent b0f87b2866
commit 2e66778699
6 changed files with 9 additions and 85 deletions

View File

@ -491,14 +491,6 @@
# https://bugs.launchpad.net/devstack/+bug/1794929 # https://bugs.launchpad.net/devstack/+bug/1794929
USE_PYTHON3: true USE_PYTHON3: true
- job:
name: devstack-xenial
parent: devstack
nodeset: openstack-single-node-xenial
description: |
Simple singlenode test to verify functionality on devstack
side running on Xenial.
- job: - job:
name: devstack-multinode name: devstack-multinode
parent: devstack parent: devstack
@ -507,15 +499,6 @@
Simple multinode test to verify multinode functionality on devstack side. Simple multinode test to verify multinode functionality on devstack side.
This is not meant to be used as a parent job. This is not meant to be used as a parent job.
- job:
name: devstack-multinode-xenial
parent: devstack
nodeset: openstack-two-node-xenial
description: |
Simple multinode test to verify multinode functionality on devstack
side running on Xenial.
This is not meant to be used as a parent job.
# NOTE(ianw) Platform tests have traditionally been non-voting because # NOTE(ianw) Platform tests have traditionally been non-voting because
# we often have to rush things through devstack to stabilise the gate, # we often have to rush things through devstack to stabilise the gate,
# and these platforms don't have the round-the-clock support to avoid # and these platforms don't have the round-the-clock support to avoid
@ -541,13 +524,6 @@
nodeset: devstack-single-node-fedora-latest nodeset: devstack-single-node-fedora-latest
voting: false voting: false
- job:
name: devstack-platform-xenial
parent: tempest-full-py3
description: Ubuntu Xenial platform test
nodeset: openstack-single-node-xenial
voting: false
- job: - job:
name: devstack-tox-base name: devstack-tox-base
parent: devstack parent: devstack
@ -619,14 +595,11 @@
check: check:
jobs: jobs:
- devstack - devstack
- devstack-xenial
- devstack-ipv6 - devstack-ipv6
- devstack-platform-centos-7 - devstack-platform-centos-7
- devstack-platform-opensuse-15 - devstack-platform-opensuse-15
- devstack-platform-fedora-latest - devstack-platform-fedora-latest
- devstack-platform-xenial
- devstack-multinode - devstack-multinode
- devstack-multinode-xenial
- devstack-unit-tests - devstack-unit-tests
- openstack-tox-bashate - openstack-tox-bashate
- ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa: - ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa:
@ -664,10 +637,8 @@
gate: gate:
jobs: jobs:
- devstack - devstack
- devstack-xenial
- devstack-ipv6 - devstack-ipv6
- devstack-multinode - devstack-multinode
- devstack-multinode-xenial
- devstack-unit-tests - devstack-unit-tests
- openstack-tox-bashate - openstack-tox-bashate
- neutron-grenade-multinode: - neutron-grenade-multinode:

View File

@ -10,9 +10,8 @@ iputils-arping
kpartx kpartx
libjs-jquery-tablesorter # Needed for coverage html reports libjs-jquery-tablesorter # Needed for coverage html reports
libmysqlclient-dev libmysqlclient-dev
libvirt-bin # dist:xenial NOPRIME libvirt-clients # NOPRIME
libvirt-clients # not:xenial NOPRIME libvirt-daemon-system # NOPRIME
libvirt-daemon-system # not:xenial NOPRIME
libvirt-dev # NOPRIME libvirt-dev # NOPRIME
mysql-server # NOPRIME mysql-server # NOPRIME
parted parted

View File

@ -24,17 +24,10 @@ DEBUG_LIBVIRT=$(trueorfalse True DEBUG_LIBVIRT)
# Currently fairly specific to OpenStackCI hosts # Currently fairly specific to OpenStackCI hosts
DEBUG_LIBVIRT_COREDUMPS=$(trueorfalse False DEBUG_LIBVIRT_COREDUMPS) DEBUG_LIBVIRT_COREDUMPS=$(trueorfalse False DEBUG_LIBVIRT_COREDUMPS)
# Only Xenial is left with libvirt-bin. Everywhere else is libvirtd
if is_ubuntu && [ ${DISTRO} == "xenial" ]; then
LIBVIRT_DAEMON=libvirt-bin
else
LIBVIRT_DAEMON=libvirtd
fi
# Enable coredumps for libvirt # Enable coredumps for libvirt
# Bug: https://bugs.launchpad.net/nova/+bug/1643911 # Bug: https://bugs.launchpad.net/nova/+bug/1643911
function _enable_coredump { function _enable_coredump {
local confdir=/etc/systemd/system/${LIBVIRT_DAEMON}.service.d local confdir=/etc/systemd/system/libvirtd.service.d
local conffile=${confdir}/coredump.conf local conffile=${confdir}/coredump.conf
# Create a coredump directory, and instruct the kernel to save to # Create a coredump directory, and instruct the kernel to save to
@ -61,12 +54,7 @@ EOF
function install_libvirt { function install_libvirt {
if is_ubuntu; then if is_ubuntu; then
install_package qemu-system install_package qemu-system libvirt-clients libvirt-daemon-system libvirt-dev
if [[ ${DISTRO} == "xenial" ]]; then
install_package libvirt-bin libvirt-dev
else
install_package libvirt-clients libvirt-daemon-system libvirt-dev
fi
# uninstall in case the libvirt version changed # uninstall in case the libvirt version changed
pip_uninstall libvirt-python pip_uninstall libvirt-python
pip_install_gr libvirt-python pip_install_gr libvirt-python
@ -167,7 +155,7 @@ EOF
# Service needs to be started on redhat/fedora -- do a restart for # Service needs to be started on redhat/fedora -- do a restart for
# sanity after fiddling the config. # sanity after fiddling the config.
restart_service $LIBVIRT_DAEMON restart_service libvirtd
# Restart virtlogd companion service to ensure it is running properly # Restart virtlogd companion service to ensure it is running properly
# https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1577455 # https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1577455

View File

@ -12,7 +12,7 @@
# a multi-node developer install. # a multi-node developer install.
# To keep this script simple we assume you are running on a recent **Ubuntu** # To keep this script simple we assume you are running on a recent **Ubuntu**
# (16.04 Xenial or newer), **Fedora** (F24 or newer), or **CentOS/RHEL** # (Bionic or newer), **Fedora** (F24 or newer), or **CentOS/RHEL**
# (7 or newer) machine. (It may work on other platforms but support for those # (7 or newer) machine. (It may work on other platforms but support for those
# platforms is left to those who added them to DevStack.) It should work in # platforms is left to those who added them to DevStack.) It should work in
# a VM or physical server. Additionally, we maintain a list of ``deb`` and # a VM or physical server. Additionally, we maintain a list of ``deb`` and
@ -221,7 +221,7 @@ write_devstack_version
# Warn users who aren't on an explicitly supported distro, but allow them to # Warn users who aren't on an explicitly supported distro, but allow them to
# override check and attempt installation with ``FORCE=yes ./stack`` # override check and attempt installation with ``FORCE=yes ./stack``
if [[ ! ${DISTRO} =~ (xenial|artful|bionic|stretch|jessie|f29|opensuse-15.0|opensuse-15.1|opensuse-tumbleweed|rhel7) ]]; then if [[ ! ${DISTRO} =~ (bionic|stretch|jessie|f29|opensuse-15.0|opensuse-15.1|opensuse-tumbleweed|rhel7) ]]; then
echo "WARNING: this script has not been tested on $DISTRO" echo "WARNING: this script has not been tested on $DISTRO"
if [[ "$FORCE" != "yes" ]]; then if [[ "$FORCE" != "yes" ]]; then
die $LINENO "If you wish to run this script anyway run with FORCE=yes" die $LINENO "If you wish to run this script anyway run with FORCE=yes"

View File

@ -656,9 +656,6 @@ case "$VIRT_DRIVER" in
;; ;;
esac esac
# By default, devstack will use Ubuntu Cloud Archive.
ENABLE_UBUNTU_CLOUD_ARCHIVE=$(trueorfalse True ENABLE_UBUNTU_CLOUD_ARCHIVE)
# Images # Images
# ------ # ------

View File

@ -71,15 +71,9 @@ function fixup_keystone {
# Ubuntu Repositories # Ubuntu Repositories
#-------------------- #--------------------
# We've found that Libvirt on Xenial is flaky and crashes enough to be # Enable universe for bionic since it is missing when installing from ISO.
# a regular top e-r bug. Opt into Ubuntu Cloud Archive if on Xenial to
# get newer Libvirt.
# Make it possible to switch this based on an environment variable as
# libvirt 2.5.0 doesn't handle nested virtualization quite well and this
# is required for the trove development environment.
# Also enable universe since it is missing when installing from ISO.
function fixup_ubuntu { function fixup_ubuntu {
if [[ "$DISTRO" != "xenial" && "$DISTRO" != "bionic" ]]; then if [[ "$DISTRO" != "bionic" ]]; then
return return
fi fi
@ -88,31 +82,6 @@ function fixup_ubuntu {
# Enable universe # Enable universe
sudo add-apt-repository -y universe sudo add-apt-repository -y universe
if [[ "${ENABLE_UBUNTU_CLOUD_ARCHIVE}" == "False" || "$DISTRO" != "xenial" ]]; then
return
fi
# Use UCA for newer libvirt.
if [[ -f /etc/ci/mirror_info.sh ]] ; then
# If we are on a nodepool provided host and it has told us about where
# we can find local mirrors then use that mirror.
source /etc/ci/mirror_info.sh
sudo apt-add-repository -y "deb $NODEPOOL_UCA_MIRROR xenial-updates/queens main"
else
# Otherwise use upstream UCA
sudo add-apt-repository -y cloud-archive:queens
fi
# Disable use of libvirt wheel since a cached wheel build might be
# against older libvirt binary. Particularly a problem if using
# the openstack wheel mirrors, but can hit locally too.
# TODO(clarkb) figure out how to use upstream wheel again.
iniset -sudo /etc/pip.conf "global" "no-binary" "libvirt-python"
# Force update our APT repos, since we added UCA above.
REPOS_UPDATED=False
apt_get_update
} }
# Python Packages # Python Packages