57 lines
2.2 KiB
Bash
Executable File
57 lines
2.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
|
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
|
|
|
# Runs upstream tests (they are not part of the source tarball)
|
|
# make sure to update VERSION_TAG in the case of rebase
|
|
|
|
# Autodetection from rpm if not set directly
|
|
# VERSION_TAG="${VERSION_TAG:-v1.1.0}"
|
|
|
|
PYTHON="${PYTHON:-python3}"
|
|
PYTEST="${PYTEST:-pytest3}"
|
|
USER="tester$$"
|
|
USER_HOME="/home/$USER"
|
|
|
|
UPSTREAM_SOURCE="https://github.com/PyMySQL/PyMySQL"
|
|
|
|
rlJournalStart
|
|
rlPhaseStartSetup
|
|
rlImport "database/mariadb" || rlDie
|
|
rlRun mariadbStart || rlDie
|
|
|
|
rlRun "mysql -uroot -e \"SET PASSWORD FOR 'root'@'localhost' = '' \""
|
|
rlRun "mysql -h127.0.0.1 -uroot -e 'select version()'" || rlDie
|
|
|
|
rlRun "useradd $USER"
|
|
git clone $UPSTREAM_SOURCE "$USER_HOME/repo"
|
|
SYSTEM_LOCATION="$(dirname $($PYTHON -c 'import pymysql; print(pymysql.__file__)'))"
|
|
if [[ -z "$VERSION_TAG" ]]; then
|
|
VERSION_TAG="v$(rpm -qf $SYSTEM_LOCATION --qf '%{VERSION}')"
|
|
rlLog "Detected version: $VERSION_TAG"
|
|
fi
|
|
rlRun "(cd $USER_HOME/repo && git checkout $VERSION_TAG)"
|
|
rlRun "rlFileBackup --clean $SYSTEM_LOCATION"
|
|
rlRun "mv $USER_HOME/repo/pymysql/tests $SYSTEM_LOCATION"
|
|
|
|
rlRun 'mysql -h127.0.0.1 -uroot -e "SET GLOBAL local_infile=on"'
|
|
rlRun "mysql -h127.0.0.1 -uroot --comments < $USER_HOME/repo/ci/docker-entrypoint-initdb.d/init.sql"
|
|
rlRun "mysql -h127.0.0.1 -uroot --comments < $USER_HOME/repo/ci/docker-entrypoint-initdb.d/mysql.sql"
|
|
rlRun "mysql -h127.0.0.1 -uroot --comments < $USER_HOME/repo/ci/docker-entrypoint-initdb.d/mariadb.sql"
|
|
rlRun "cp $USER_HOME/repo/ci/docker.json $SYSTEM_LOCATION/tests/databases.json"
|
|
|
|
rlRun "sed -e 's^/run/mysqld/mysqld.sock^/var/lib/mysql/mysql.sock^' -i $SYSTEM_LOCATION/tests/databases.json"
|
|
rlPhaseEnd
|
|
|
|
rlPhaseStartTest
|
|
# there is no `nacl` on rhel/c10s
|
|
rlRun "su -l -c \"$PYTEST -v $SYSTEM_LOCATION/tests -k 'not testAuthEd25519'\" $USER"
|
|
rlPhaseEnd
|
|
|
|
rlPhaseStartCleanup
|
|
rlRun mariadbStop
|
|
rlRun "userdel -rf $USER"
|
|
rlPhaseEnd
|
|
rlJournalEnd
|
|
|