diff --git a/Sanity/bind-sdb-mysql/Makefile b/Sanity/bind-sdb-mysql/Makefile index 1ffef61..00f33ee 100644 --- a/Sanity/bind-sdb-mysql/Makefile +++ b/Sanity/bind-sdb-mysql/Makefile @@ -54,7 +54,9 @@ $(METADATA): Makefile @echo "Type: Sanity" >> $(METADATA) @echo "TestTime: 15m" >> $(METADATA) @echo "RunFor: bind" >> $(METADATA) - @echo "Requires: bind bind-sdb bind-utils mysql mysql-server redhat-lsb" >> $(METADATA) + @echo "Requires: bind bind-sdb bind-utils mariadb-server redhat-lsb" >> $(METADATA) + # Only built on Rawhide, Fedora + @echo "Requires: bind-dlz-mysql" >> $(METADATA) @echo "Priority: Normal" >> $(METADATA) @echo "License: GPLv2" >> $(METADATA) @echo "Confidential: no" >> $(METADATA) diff --git a/Sanity/bind-sdb-mysql/main.fmf b/Sanity/bind-sdb-mysql/main.fmf index 48d9426..6e48f11 100644 --- a/Sanity/bind-sdb-mysql/main.fmf +++ b/Sanity/bind-sdb-mysql/main.fmf @@ -23,9 +23,9 @@ require: - bind - bind-sdb - bind-utils -- mysql -- mysql-server +- mariadb-server - redhat-lsb +- bind-dlz-mysql duration: 15m enabled: true tag: diff --git a/Sanity/bind-sdb-mysql/runtest.sh b/Sanity/bind-sdb-mysql/runtest.sh index 4e48973..e783e28 100755 --- a/Sanity/bind-sdb-mysql/runtest.sh +++ b/Sanity/bind-sdb-mysql/runtest.sh @@ -36,21 +36,40 @@ NAMED_SERVICE="named-sdb" rlJournalStart rlPhaseStartSetup rlAssertRpm 'bind' - rlAssertRpm 'bind-sdb' rlAssertRpm 'bind-utils' - rlAssertRpm 'mysql' - rlAssertRpm 'mysql-server' + if rpm -q mariadb-server; then + MYSQL_SERVICE=mariadb + elif rpm -q community-mysql-server; then + MYSQL_SERVICE=mysql + else + MYSQL_SERVICE=mysql + fi + rlRun "rpm -q mariadb{-server,} community-mysql{,-server}" 0-2 "Print mysql versions" + rlRun "systemctl cat $MYSQL_SERVICE | cat" rlFileBackup --clean "/var/lib/mysql" "/etc/rndc.key" "/etc/named.conf" "/etc/sysconfig/named" rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory" rlRun "chmod a+rx $TmpDir" if rlIsRHEL "<7";then rlRun "echo 'ENABLE_SDB=yes' > /etc/sysconfig/named" NAMED_SERVICE=named + BIND_DATABASE="mysql" + elif [ -x /usr/lib64/bind/dlz_mysql_dynamic.so ]; then + NAMED_SERVICE=named + BIND_DATABASE="dlopen /usr/lib64/bind/dlz_mysql_dynamic.so" + # FIXME: this passes only with setenforce 0, does not work with SELinux! + ##============= named_t ============== + #allow named_t mysqld_t:unix_stream_socket connectto; + #allow named_t mysqld_var_run_t:sock_file write; + # else + rlAssertRpm 'bind-sdb' NAMED_SERVICE=named-sdb + BIND_DATABASE="mysql" fi + rlRun "ORIG_ENFORCING=$(getenforce)" + rlRun "setenforce 0" rlRun "ORIGPWD=`pwd`" - rlRun "rlServiceStart mysqld" + rlRun "rlServiceStart $MYSQL_SERVICE" rlRun "mysql < dlz.schema" 0,1 rlRun "echo \"CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASSWORD}';\" | mysql" 0,1 "Create DB user" rlRun "echo \"GRANT ALL PRIVILEGES ON BindDB.* TO '${DB_USER}'@'localhost';\" | mysql" 0,1 "Give DB user access rights" @@ -66,10 +85,11 @@ rlJournalStart # configure bind rlRun "rlServiceStop $NAMED_SERVICE" + cat >> /etc/named.conf <