From cd3183b4e4780c4271ecb19c41b31bf16a01aec3 Mon Sep 17 00:00:00 2001 From: Benedikt Franke Date: Wed, 12 Feb 2020 13:44:23 +0100 Subject: [PATCH 1/4] Run acceptance tests on MariaDB --- .travis.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 197d2b256..943354836 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,10 @@ env: - DB=mysql:5.6 DB_EXTRA='' - DB=mysql:5.7 DB_EXTRA='' - DB=mysql:8.0 DB_EXTRA='mysqld --default-authentication-plugin=mysql_native_password' + - DB=mariadb:10.1 DB_EXTRA='' + - DB=mariadb:10.2 DB_EXTRA='' + - DB=mariadb:10.3 DB_EXTRA='' + - DB=mariadb:10.4 DB_EXTRA='' services: - docker @@ -34,7 +38,10 @@ script: echo 'Waiting for MySQL...' sleep 1; done; - - mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USERNAME} -e "INSTALL PLUGIN mysql_no_login SONAME 'mysql_no_login.so';" + - | + if [[ $DB =~ ^mysql ]]; then + mysql -h${MYSQL_HOST} -P${MYSQL_PORT} -u${MYSQL_USERNAME} -e "INSTALL PLUGIN mysql_no_login SONAME 'mysql_no_login.so';" + fi; - make testacc matrix: From a6657e162fac77d4e4e61689b447a673298e280f Mon Sep 17 00:00:00 2001 From: Benedikt Franke Date: Wed, 12 Feb 2020 15:29:25 +0100 Subject: [PATCH 2/4] Skip mariadb --- mysql/resource_user_test.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/mysql/resource_user_test.go b/mysql/resource_user_test.go index 0d444f22b..1ce1a203e 100644 --- a/mysql/resource_user_test.go +++ b/mysql/resource_user_test.go @@ -4,6 +4,7 @@ import ( "database/sql" "fmt" "log" + "strings" "testing" "github.com/hashicorp/terraform-plugin-sdk/helper/resource" @@ -52,7 +53,22 @@ func TestAccUser_basic(t *testing.T) { func TestAccUser_auth(t *testing.T) { resource.Test(t, resource.TestCase{ - PreCheck: func() { testAccPreCheck(t) }, + PreCheck: func() { + testAccPreCheck(t) + db, err := connectToMySQL(testAccProvider.Meta().(*MySQLConfiguration)) + if err != nil { + return + } + + serverVersionString, err := serverVersionString(db) + if err != nil { + return + } + + if strings.Contains(serverVersionString, "MariaDB") { + t.Skip("MariaDB does not support the mysql_no_login plugin") + } + }, Providers: testAccProviders, CheckDestroy: testAccUserCheckDestroy, Steps: []resource.TestStep{ From c48c8249fe847da8f5bc917cb9c0d4f494ce2b2c Mon Sep 17 00:00:00 2001 From: Benedikt Franke Date: Wed, 12 Feb 2020 15:57:50 +0100 Subject: [PATCH 3/4] Add --default-authentication-plugin=mysql_native_password --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 943354836..e7203e0df 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,8 +13,8 @@ env: - DB=mysql:8.0 DB_EXTRA='mysqld --default-authentication-plugin=mysql_native_password' - DB=mariadb:10.1 DB_EXTRA='' - DB=mariadb:10.2 DB_EXTRA='' - - DB=mariadb:10.3 DB_EXTRA='' - - DB=mariadb:10.4 DB_EXTRA='' + - DB=mariadb:10.3 DB_EXTRA='--default-authentication-plugin=mysql_native_password' + - DB=mariadb:10.4 DB_EXTRA='--default-authentication-plugin=mysql_native_password' services: - docker From 155812384ec54edb0dde65e57fd5805fc3733a4b Mon Sep 17 00:00:00 2001 From: Benedikt Franke Date: Wed, 12 Feb 2020 16:40:55 +0100 Subject: [PATCH 4/4] Revert --default-authentication-plugin=mysql_native_password --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index e7203e0df..943354836 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,8 +13,8 @@ env: - DB=mysql:8.0 DB_EXTRA='mysqld --default-authentication-plugin=mysql_native_password' - DB=mariadb:10.1 DB_EXTRA='' - DB=mariadb:10.2 DB_EXTRA='' - - DB=mariadb:10.3 DB_EXTRA='--default-authentication-plugin=mysql_native_password' - - DB=mariadb:10.4 DB_EXTRA='--default-authentication-plugin=mysql_native_password' + - DB=mariadb:10.3 DB_EXTRA='' + - DB=mariadb:10.4 DB_EXTRA='' services: - docker