Add OpenSUSE Leap 15 support

This adds OpenSUSE Leap 15 support in the code.
No image for OpenSUSE Leap 15 is built in gates, as this
will be included in a latter commit.

Change-Id: I002d63fc1a24990a85d21121f8ed33d6ef664343
This commit is contained in:
Jean-Philippe Evrard 2018-07-26 16:47:10 +00:00
parent 0dfac8a307
commit ae38018730
4 changed files with 50 additions and 7 deletions

View File

@ -28,6 +28,7 @@ ipxe [platform:dpkg (ironic ipxe)]
ipxe-bootimgs [platform:rpm (ironic ipxe)]
iscsi-initiator-utils [platform:rpm (cinder purestorage) (nova purestorage)]
keepalived [neutron (infra keepalived)]
krb5-devel [platform:suse requirements]
kvm [platform:rpm (infra libvirt)]
lapack-devel [platform:rpm requirements]
libapache2-mod-auth-mellon [platform:dpkg (keystone apache mellon)]
@ -38,16 +39,20 @@ liberasurecode-dev [platform:dpkg requirements]
liberasurecode-devel [platform:rpm requirements]
libffi-dev [platform:dpkg requirements]
libffi-devel [platform:rpm requirements]
libgcrypt [platform:rpm requirements]
libgcrypt [platform:rpm !platform:suse requirements]
libgcrypt-devel [platform:suse requirements]
libjpeg-dev [platform:dpkg requirements]
libjpeg-devel [platform:rpm requirements]
libjpeg-devel [platform:rpm !platform:suse requirements]
libjpeg8-devel [platform:suse requirements]
libkrb5-dev [platform:dpkg requirements]
liblapack-dev [platform:dpkg requirements]
libldap-2.4-2 [platform:dpkg (keystone ldap !python3)]
libldap2-dev [platform:dpkg requirements]
libmariadb-devel [platform:suse requirements]
libmariadbclient-dev [platform:debian requirements]
libmysqlclient-dev [platform:ubuntu requirements]
libnss3-dev [platform:dpkg requirements]
libopenssl-devel [platform:suse requirements]
libosinfo [platform:rpm nova]
libosinfo-bin [platform:dpkg nova]
libpcre3-dev [platform:dpkg requirements]
@ -72,20 +77,22 @@ libyaml-devel [platform:rpm requirements]
libz-dev [platform:dpkg requirements]
lvm2 [(cinder lvm)]
make [platform:rpm requirements]
mariadb-devel [platform:rpm requirements]
mariadb-devel [platform:rpm !platform:suse requirements]
memcached [(infra memcached)]
mod_auth_mellon [platform:rpm (keystone apache mellon)]
mod_auth_openidc [platform:rpm (keystone apache openidc)]
mod_ssl [platform:rpm apache]
mod_wsgi [platform:rpm apache]
mozilla-nss-devel [platform:suse requirements]
multipath-tools [platform:dpkg (cinder purestorage) (nova purestorage)]
nginx [nginx]
nss-devel [platform:rpm requirements]
nss-util [platform:rpm requirements]
nss-devel [platform:rpm !platform:suse requirements]
nss-util [platform:rpm !platform:suse requirements]
open-iscsi [platform:dpkg (cinder purestorage) (nova purestorage)]
openldap [platform:rpm (keystone ldap !python3)]
openldap-devel [platform:rpm requirements]
openssl-devel [platform:rpm requirements]
openldap-devel [platform:rpm !platform:suse requirements]
openldap2-devel [platform:suse requirements]
openssl-devel [platform:rpm !platform:suse requirements]
openvswitch [platform:rpm (neutron openvswitch) (nova openvswitch) (infra openvswitch)]
openvswitch-switch [platform:dpkg (neutron openvswitch) (nova openvswitch) (infra openvswitch)]
pcre-devel [platform:rpm requirements]

View File

@ -20,6 +20,19 @@ case ${distro} in
python3-virtualenv
yum clean all
;;
opensuse-leap|sles)
# NOTE(evrardjp): Remove all them packages!
if [[ "${PYTHON3}" == "no" ]]; then
remove_packages=("python-virtualenv")
else
remove_packages=("python3-virtualenv")
fi
zypper remove -y --clean-deps \
git-core \
patch \
${remove_packages}
zypper clean -a
;;
*)
echo "Unknown distro: ${distro}"
exit 1

View File

@ -35,6 +35,26 @@ case ${distro} in
sudo \
${rpm_python_packages[@]}
;;
opensuse|opensuse-leap|sles)
if [[ "${PYTHON3}" == "no" ]]; then
rpm_python_packages+=("python-devel" "python-setuptools")
else
rpm_python_packages+=("python3-devel" "python3-setuptools")
fi
zypper --non-interactive --gpg-auto-import-keys refresh
zypper --non-interactive install --no-recommends \
ca-certificates \
git-core \
lsb-release \
patch \
sudo \
tar \
${rpm_python_packages[@]}
#NOTE(evrardjp) Temporary workaround until bindep is fixed
# for leap 15: https://review.openstack.org/#/c/586038/
# should be merged and released.
sed -i 's/ID="opensuse-leap"/ID="opensuse"/g' /etc/os-release
;;
*)
echo "Unknown distro: ${distro}"
exit 1

View File

@ -16,6 +16,9 @@ if [[ ! -z ${PACKAGES} ]]; then
centos)
yum -y --setopt=skip_missing_names_on_install=False install ${PACKAGES[@]} ${DIST_PACKAGES}
;;
opensuse|opensuse-leap|sles)
zypper --non-interactive install --no-recommends ${PACKAGES[@]} ${DIST_PACKAGES}
;;
*)
echo "Unknown distro: ${distro}"
exit 1