From 7a5cc7aa67388ea44b9157665dba6cc425ec988c Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Fri, 18 Sep 2020 11:32:05 +0200 Subject: Add basic libmysqlclient CI job This tests that mysqli and pdo_mysql build against libmysqlclient, and that tests pass for pdo_mysql. mysqli has too many test failures. This is not an officially supported configuration. --- azure/libmysqlclient_test.yml | 53 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 azure/libmysqlclient_test.yml (limited to 'azure/libmysqlclient_test.yml') diff --git a/azure/libmysqlclient_test.yml b/azure/libmysqlclient_test.yml new file mode 100644 index 0000000000..c163345dc4 --- /dev/null +++ b/azure/libmysqlclient_test.yml @@ -0,0 +1,53 @@ +parameters: + configurationName: '' + configurationParameters: '' + libmysql: '' + +steps: + - script: | + set -e + LIBMYSQL=${{ parameters.libmysql }} + MYSQL_BASE=${LIBMYSQL%%-linux-*} + MYSQL_VERSION=${MYSQL_BASE#*-} + MYSQL_DIR=$HOME/$MYSQL_BASE + mkdir -p $MYSQL_DIR + URL=https://cdn.mysql.com/Downloads/MySQL-${MYSQL_VERSION%.*}/$LIBMYSQL + wget -nv $URL + tar -xf $LIBMYSQL --strip-components=1 -C $MYSQL_DIR + PDO_MYSQL=${MYSQL_DIR} + MYSQLI=${MYSQL_DIR}/bin/mysql_config + ./buildconf --force + ./configure ${{ parameters.configurationParameters }} \ + --enable-option-checking=fatal \ + --disable-all \ + --enable-pdo \ + --with-pdo-mysql=${PDO_MYSQL} \ + --with-mysqli=${MYSQLI} + make clean + make -j$(/usr/bin/nproc) >/dev/null + displayName: 'Build ${{ parameters.configurationName }}' + condition: or(succeeded(), failed()) + - script: | + export MYSQL_TEST_USER=root + export MYSQL_TEST_PASSWD=root + export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test" + export PDO_MYSQL_TEST_HOST=127.0.0.1 + export PDO_MYSQL_TEST_USER=root + export PDO_MYSQL_TEST_PASS=root + export TEST_PHP_JUNIT=junit.xml + export REPORT_EXIT_STATUS=no + rm -rf junit.xml | true + sapi/cli/php run-tests.php -P -q \ + -g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP \ + --offline --show-diff --show-slow 1000 --set-timeout 120 \ + ext/pdo_mysql + displayName: 'Test ${{ parameters.configurationName }}' + condition: or(succeeded(), failed()) + - task: PublishTestResults@2 + inputs: + testResultsFormat: 'JUnit' + testResultsFiles: junit.xml + testRunTitle: '${{ parameters.configurationName }}' + failTaskOnFailedTests: true + displayName: 'Export ${{ parameters.configurationName }} Results' + condition: or(succeeded(), failed()) -- cgit v1.2.1