Browse Source

Add mysql job to CI

Morris Jobke 7 years ago
parent
commit
41436fecc2
2 changed files with 24 additions and 6 deletions
  1. 14 0
      .drone.yml
  2. 10 6
      autotest.sh

+ 14 - 0
.drone.yml

@@ -17,6 +17,13 @@ build:
       - git submodule update --init
       - ./occ maintenance:install --database-name oc_autotest --database-user oc_autotest --admin-user admin --admin-pass admin --database sqlite --database-pass=''
       - ./autotest.sh sqlite
+  mysql:
+    image: morrisjobke/nextcloud-ci-php7:1.0.4
+    commands:
+      - sleep 10 # gives the database enough time to initialize
+      - rm -rf data/* config/config.php # TODO: remove this - temporary fix for CI issues
+      - git submodule update --init
+      - ./autotest.sh mysql
   postgres:
     image: morrisjobke/nextcloud-ci-php7:1.0
     commands:
@@ -33,3 +40,10 @@ compose:
     environment:
       - POSTGRES_USER=oc_autotest
       - POSTGRES_PASSWORD=oc_autotest
+  mysql:
+    image: mysql
+    environment:
+      - MYSQL_ROOT_PASSWORD=owncloud
+      - MYSQL_USER=oc_autotest
+      - MYSQL_PASSWORD=owncloud
+      - MYSQL_DATABASE=oc_autotest

+ 10 - 6
autotest.sh

@@ -200,12 +200,16 @@ function execute_tests {
 			echo "MySQL is up."
 
 		else
-			if [ "mysql" != "$(mysql --version | grep -o mysql)" ] ; then
-				echo "Your mysql binary is not provided by mysql"
-				echo "To use the docker container set the USEDOCKER environment variable"
-				exit -1
-			fi
-			mysql -u "$DATABASEUSER" -powncloud -e "DROP DATABASE IF EXISTS $DATABASENAME" -h $DATABASEHOST || true
+			if [ -z "$DRONE" ] ; then # no need to drop the DB when we are on CI
+                if [ "mysql" != "$(mysql --version | grep -o mysql)" ] ; then
+                    echo "Your mysql binary is not provided by mysql"
+                    echo "To use the docker container set the USEDOCKER environment variable"
+                    exit -1
+                fi
+                mysql -u "$DATABASEUSER" -powncloud -e "DROP DATABASE IF EXISTS $DATABASENAME" -h $DATABASEHOST || true
+            else
+                DATABASEHOST=127.0.0.1
+            fi
 		fi
 	fi
 	if [ "$DB" == "mariadb" ] ; then