tests: Allow bindep and test-setup.sh to run on EL distros
Only install mariadb on EL based hosts. Also when using mariadb and postgresql on EL based distros we need to ensure each service is configured and actually started before using either. Co-Authored-By: Ade Lee <alee@redhat.com> Change-Id: I7122933d85bd7d0333c2c35e0f1a8414c1baa6d5
This commit is contained in:
parent
a0ec2de968
commit
085de864db
@ -24,10 +24,12 @@ libxml2-dev [platform:dpkg test]
|
||||
libxslt-devel [platform:rpm test]
|
||||
libxslt1-dev [platform:dpkg test]
|
||||
locales [platform:debian]
|
||||
mysql [platform:rpm]
|
||||
mysql [platform:rpm !platform:redhat]
|
||||
mysql-client [platform:dpkg]
|
||||
mysql-devel [platform:rpm test]
|
||||
mysql-server
|
||||
mysql-devel [platform:rpm !platform:redhat test]
|
||||
mysql-server [!platform:redhat]
|
||||
mariadb-devel [platform:rpm platform:redhat test]
|
||||
mariadb-server [platform:rpm platform:redhat]
|
||||
openssh-client [platform:dpkg]
|
||||
openssh-clients [platform:rpm]
|
||||
openssl
|
||||
|
@ -15,6 +15,41 @@ DB_ROOT_PW=${MYSQL_ROOT_PW:-insecure_slave}
|
||||
DB_USER=openstack_citest
|
||||
DB_PW=openstack_citest
|
||||
|
||||
function is_rhel7 {
|
||||
[ -f /usr/bin/yum ] && \
|
||||
cat /etc/*release | grep -q -e "Red Hat" -e "CentOS" -e "CloudLinux" && \
|
||||
cat /etc/*release | grep -q 'release 7'
|
||||
}
|
||||
|
||||
function is_rhel8 {
|
||||
[ -f /usr/bin/dnf ] && \
|
||||
cat /etc/*release | grep -q -e "Red Hat" -e "CentOS" -e "CloudLinux" && \
|
||||
cat /etc/*release | grep -q 'release 8'
|
||||
}
|
||||
|
||||
function set_conf_line { # file regex value
|
||||
sudo sh -c "grep -q -e '$2' $1 && \
|
||||
sed -i 's|$2|$3|g' $1 || \
|
||||
echo '$3' >> $1"
|
||||
}
|
||||
|
||||
if is_rhel7 || is_rhel8; then
|
||||
# mysql needs to be started on centos/rhel
|
||||
sudo systemctl restart mariadb.service
|
||||
|
||||
# postgres setup for centos
|
||||
sudo postgresql-setup --initdb
|
||||
PG_CONF=/var/lib/pgsql/data/postgresql.conf
|
||||
set_conf_line $PG_CONF '^password_encryption =.*' 'password_encryption = scram-sha-256'
|
||||
|
||||
PG_HBA=/var/lib/pgsql/data/pg_hba.conf
|
||||
set_conf_line $PG_HBA '^local[ \t]*all[ \t]*all.*' 'local all all peer'
|
||||
set_conf_line $PG_HBA '^host[ \t]*all[ \t]*all[ \t]*127.0.0.1\/32.*' 'host all all 127.0.0.1/32 scram-sha-256'
|
||||
set_conf_line $PG_HBA '^host[ \t]*all[ \t]*all[ \t]*::1\/128.*' 'host all all ::1/128 scram-sha-256'
|
||||
|
||||
sudo systemctl restart postgresql.service
|
||||
fi
|
||||
|
||||
sudo -H mysqladmin -u root password $DB_ROOT_PW
|
||||
|
||||
# It's best practice to remove anonymous users from the database. If
|
||||
|
Loading…
x
Reference in New Issue
Block a user