Merge "Add openEuler 22.03 LTS support"
This commit is contained in:
commit
540ec94a04
72
.zuul.yaml
72
.zuul.yaml
@ -108,6 +108,16 @@
|
||||
nodes:
|
||||
- controller
|
||||
|
||||
- nodeset:
|
||||
name: devstack-single-node-openeuler-22.03
|
||||
nodes:
|
||||
- name: controller
|
||||
label: openEuler-22-03-LTS
|
||||
groups:
|
||||
- name: tempest
|
||||
nodes:
|
||||
- controller
|
||||
|
||||
- nodeset:
|
||||
name: openstack-two-node
|
||||
nodes:
|
||||
@ -777,6 +787,62 @@
|
||||
# Enable Neutron ML2/OVS services
|
||||
q-agt: true
|
||||
|
||||
- job:
|
||||
name: devstack-platform-openEuler-22.03-ovn-source
|
||||
parent: tempest-full-py3
|
||||
description: openEuler 22.03 LTS platform test (OVN)
|
||||
nodeset: devstack-single-node-openeuler-22.03
|
||||
voting: false
|
||||
timeout: 9000
|
||||
vars:
|
||||
configure_swap_size: 4096
|
||||
devstack_localrc:
|
||||
# NOTE(wxy): OVN package is not supported by openEuler yet. Build it
|
||||
# from source instead.
|
||||
OVN_BUILD_FROM_SOURCE: True
|
||||
OVN_BRANCH: "v21.06.0"
|
||||
OVS_BRANCH: "a4b04276ab5934d087669ff2d191a23931335c87"
|
||||
OVS_SYSCONFDIR: "/usr/local/etc/openvswitch"
|
||||
|
||||
- job:
|
||||
name: devstack-platform-openEuler-22.03-ovs
|
||||
parent: tempest-full-py3
|
||||
description: openEuler 22.03 LTS platform test (OVS)
|
||||
nodeset: devstack-single-node-openeuler-22.03
|
||||
voting: false
|
||||
timeout: 9000
|
||||
vars:
|
||||
configure_swap_size: 8192
|
||||
devstack_localrc:
|
||||
Q_AGENT: openvswitch
|
||||
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
|
||||
Q_ML2_TENANT_NETWORK_TYPE: vxlan
|
||||
devstack_services:
|
||||
# Disable OVN services
|
||||
ovn-northd: false
|
||||
ovn-controller: false
|
||||
ovs-vswitchd: false
|
||||
ovsdb-server: false
|
||||
# Disable Neutron ML2/OVN services
|
||||
q-ovn-metadata-agent: false
|
||||
# Enable Neutron ML2/OVS services
|
||||
q-agt: true
|
||||
q-dhcp: true
|
||||
q-l3: true
|
||||
q-meta: true
|
||||
q-metering: true
|
||||
group-vars:
|
||||
subnode:
|
||||
devstack_services:
|
||||
# Disable OVN services
|
||||
ovn-controller: false
|
||||
ovs-vswitchd: false
|
||||
ovsdb-server: false
|
||||
# Disable Neutron ML2/OVN services
|
||||
q-ovn-metadata-agent: false
|
||||
# Enable Neutron ML2/OVS services
|
||||
q-agt: true
|
||||
|
||||
- job:
|
||||
name: devstack-no-tls-proxy
|
||||
parent: tempest-full-py3
|
||||
@ -885,6 +951,8 @@
|
||||
- devstack-platform-ubuntu-focal
|
||||
- devstack-platform-ubuntu-jammy-ovn-source
|
||||
- devstack-platform-ubuntu-jammy-ovs
|
||||
- devstack-platform-openEuler-22.03-ovn-source
|
||||
- devstack-platform-openEuler-22.03-ovs
|
||||
- devstack-multinode
|
||||
- devstack-unit-tests
|
||||
- openstack-tox-bashate
|
||||
@ -1017,3 +1085,7 @@
|
||||
periodic:
|
||||
jobs:
|
||||
- devstack-no-tls-proxy
|
||||
periodic-weekly:
|
||||
jobs:
|
||||
- devstack-platform-openEuler-22.03-ovn-source
|
||||
- devstack-platform-openEuler-22.03-ovs
|
||||
|
@ -38,7 +38,8 @@ Install Linux
|
||||
|
||||
Start with a clean and minimal install of a Linux system. DevStack
|
||||
attempts to support the two latest LTS releases of Ubuntu, the
|
||||
latest/current Fedora version, CentOS/RHEL/Rocky Linux 9 and OpenSUSE.
|
||||
latest/current Fedora version, CentOS/RHEL/Rocky Linux 9, OpenSUSE and
|
||||
openEuler.
|
||||
|
||||
If you do not have a preference, Ubuntu 22.04 (Jammy) is the
|
||||
most tested, and will probably go the smoothest.
|
||||
|
@ -1,3 +1,3 @@
|
||||
ceph # NOPRIME
|
||||
redhat-lsb-core # not:rhel9
|
||||
redhat-lsb-core # not:rhel9,openEuler-22.03
|
||||
xfsprogs
|
||||
|
@ -26,9 +26,9 @@ pkgconfig
|
||||
postgresql-devel # psycopg2
|
||||
psmisc
|
||||
python3-devel
|
||||
python3-pip
|
||||
python3-pip # not:openEuler-22.03
|
||||
python3-systemd
|
||||
redhat-rpm-config # missing dep for gcc hardening flags, see rhbz#1217376
|
||||
redhat-rpm-config # not:openEuler-22.03 missing dep for gcc hardening flags, see rhbz#1217376
|
||||
tar
|
||||
tcpdump
|
||||
unzip
|
||||
|
@ -4,7 +4,7 @@ ebtables
|
||||
genisoimage # not:rhel9 required for config_drive
|
||||
iptables
|
||||
iputils
|
||||
kernel-modules
|
||||
kernel-modules # not:openEuler-22.03
|
||||
kpartx
|
||||
parted
|
||||
polkit
|
||||
|
@ -399,7 +399,7 @@ function _ensure_lsb_release {
|
||||
elif [[ -x $(command -v zypper 2>/dev/null) ]]; then
|
||||
sudo zypper -n install lsb-release
|
||||
elif [[ -x $(command -v dnf 2>/dev/null) ]]; then
|
||||
sudo dnf install -y redhat-lsb-core
|
||||
sudo dnf install -y redhat-lsb-core || sudo dnf install -y openeuler-lsb
|
||||
else
|
||||
die $LINENO "Unable to find or auto-install lsb_release"
|
||||
fi
|
||||
@ -474,6 +474,8 @@ function GetDistro {
|
||||
# Drop the . release as we assume it's compatible
|
||||
# XXX re-evaluate when we get RHEL10
|
||||
DISTRO="rhel${os_RELEASE::1}"
|
||||
elif [[ "$os_VENDOR" =~ (openEuler) ]]; then
|
||||
DISTRO="openEuler-$os_RELEASE"
|
||||
else
|
||||
# We can't make a good choice here. Setting a sensible DISTRO
|
||||
# is part of the problem, but not the major issue -- we really
|
||||
@ -525,6 +527,7 @@ function is_fedora {
|
||||
fi
|
||||
|
||||
[ "$os_VENDOR" = "Fedora" ] || [ "$os_VENDOR" = "Red Hat" ] || \
|
||||
[ "$os_VENDOR" = "openEuler" ] || \
|
||||
[ "$os_VENDOR" = "RedHatEnterpriseServer" ] || \
|
||||
[ "$os_VENDOR" = "RedHatEnterprise" ] || \
|
||||
[ "$os_VENDOR" = "Rocky" ] || \
|
||||
@ -575,6 +578,14 @@ function is_ubuntu {
|
||||
[ "$os_PACKAGE" = "deb" ]
|
||||
}
|
||||
|
||||
# Determine if current distribution is an openEuler distribution
|
||||
# is_openeuler
|
||||
function is_openeuler {
|
||||
if [[ -z "$os_PACKAGE" ]]; then
|
||||
GetOSVersion
|
||||
fi
|
||||
[ "$os_VENDOR" = "openEuler" ]
|
||||
}
|
||||
# Git Functions
|
||||
# =============
|
||||
|
||||
|
@ -95,7 +95,7 @@ function install_apache_uwsgi {
|
||||
# didn't fix Python 3.10 compatibility before release. Should be
|
||||
# fixed in uwsgi 4.9.0; can remove this when packages available
|
||||
# or we drop this release
|
||||
elif is_fedora && ! [[ $DISTRO =~ f36 ]]; then
|
||||
elif is_fedora && ! is_openeuler && ! [[ $DISTRO =~ f36 ]]; then
|
||||
# Note httpd comes with mod_proxy_uwsgi and it is loaded by
|
||||
# default; the mod_proxy_uwsgi package actually conflicts now.
|
||||
# See:
|
||||
|
@ -82,11 +82,17 @@ function install_libvirt {
|
||||
sudo dnf copr enable -y @virtmaint-sig/virt-preview
|
||||
fi
|
||||
|
||||
if is_openeuler; then
|
||||
qemu_package=qemu
|
||||
else
|
||||
qemu_package=qemu-kvm
|
||||
fi
|
||||
|
||||
# Note that in CentOS/RHEL this needs to come from the RDO
|
||||
# repositories (qemu-kvm-ev ... which provides this package)
|
||||
# as the base system version is too old. We should have
|
||||
# pre-installed these
|
||||
install_package qemu-kvm
|
||||
install_package $qemu_package
|
||||
install_package libvirt libvirt-devel python3-libvirt
|
||||
|
||||
if is_arch "aarch64"; then
|
||||
|
@ -64,6 +64,7 @@
|
||||
'Debian': '/etc/apache2/sites-enabled/'
|
||||
'Suse': '/etc/apache2/conf.d/'
|
||||
'RedHat': '/etc/httpd/conf.d/'
|
||||
'openEuler': '/etc/httpd/conf.d/'
|
||||
|
||||
- name: Discover configurations
|
||||
find:
|
||||
|
11
stack.sh
11
stack.sh
@ -229,7 +229,7 @@ write_devstack_version
|
||||
|
||||
# Warn users who aren't on an explicitly supported distro, but allow them to
|
||||
# override check and attempt installation with ``FORCE=yes ./stack``
|
||||
SUPPORTED_DISTROS="bullseye|focal|jammy|f36|opensuse-15.2|opensuse-tumbleweed|rhel8|rhel9"
|
||||
SUPPORTED_DISTROS="bullseye|focal|jammy|f36|opensuse-15.2|opensuse-tumbleweed|rhel8|rhel9|openEuler-22.03"
|
||||
|
||||
if [[ ! ${DISTRO} =~ $SUPPORTED_DISTROS ]]; then
|
||||
echo "WARNING: this script has not been tested on $DISTRO"
|
||||
@ -394,6 +394,15 @@ elif [[ $DISTRO == "rhel9" ]]; then
|
||||
sudo dnf config-manager --set-enabled crb
|
||||
# rabbitmq and other packages are provided by RDO repositories.
|
||||
_install_rdo
|
||||
elif [[ $DISTRO == "openEuler-22.03" ]]; then
|
||||
# There are some problem in openEuler. We should fix it first. Some required
|
||||
# package/action runs before fixup script. So we can't fix there.
|
||||
#
|
||||
# 1. the hostname package is not installed by default
|
||||
# 2. Some necessary packages are in openstack repo, for example liberasurecode-devel
|
||||
# 3. python3-pip can be uninstalled by `get_pip.py` automaticly.
|
||||
install_package hostname openstack-release-wallaby
|
||||
uninstall_package python3-pip
|
||||
fi
|
||||
|
||||
# Ensure python is installed
|
||||
|
Loading…
x
Reference in New Issue
Block a user