diff --git a/.env.test b/.env.test index 7c0a83b0fe71edcfafc4e5e7b1eb896dbbf10c13..0c00c974659eb492f9e8d73c9cd2e78e4a7b2a23 100644 --- a/.env.test +++ b/.env.test @@ -5,4 +5,4 @@ SYMFONY_DEPRECATIONS_HELPER=999999 PANTHER_APP_ENV=panther PANTHER_ERROR_SCREENSHOT_DIR=./var/error-screenshots -DATABASE_URL="mysql://rekallfrwsmember:sm4SyZVPu6wpjZfg@mysql:3306/rekallfrwsmember?serverVersion=5.6&charset=utf8" \ No newline at end of file +DATABASE_URL="mysql://rekallfrwsmember:sm4SyZVPu6wpjZfg@mysql:3306/rekallfrwsmember?serverVersion=5.6&charset=utf8" diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 85b6381da94a94299ff3b60ccd0ac02c93ba830a..a12d9bdc7b5b0ba0849b07418013e6542f46f9d0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,9 +4,9 @@ services: variables: MYSQL_USER: rekallfrwsmember - MYSQL_DATABASE: rekallfrwsmember_test - MYSQL_PASSWORD: test - MYSQL_RANDOM_ROOT_PASSWORD: ok + MYSQL_DATABASE: rekallfrwsmember + MYSQL_PASSWORD: sm4SyZVPu6wpjZfg + MYSQL_ROOT_PASSWORD: root BY_PASS_CODE: ed156b9188ecddf0c556d5712f0a84cc MAILER_DSN: null://null SYMFONY_SECRET: 0f817363a768f111a17d2522b8d7e2d72cf738b1 @@ -36,11 +36,12 @@ composer: - if: '$CI_COMMIT_MESSAGE =~ /test/' - if: '$CI_COMMIT_BRANCH =~ /test/ || $CI_COMMIT_BRANCH == "production" || $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' script: - - docker run -v ${CI_PROJECT_DIR}:/sites/memorekall/www/web_dev -v /log:/sites/memorekall/www/web_dev/log --entrypoint /sites/memorekall/www/web_dev/tools/ci-job.sh $TEST_IMAGE + - docker network create rekall + - docker run --network rekall -e MYSQL_DATABASE=$MYSQL_DATABASE -e MYSQL_USER=$MYSQL_USER -e MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD -e $MYSQL_PASSWORD=$MYSQL_PASSWORD -v ${CI_PROJECT_DIR}/docker/mysql/init_db_d:/docker-entrypoint-initdb.d --name=mysql mysql:5.6 + - docker run --network rekall -v ${CI_PROJECT_DIR}:/sites/memorekall/www/web_dev -v /log:/sites/memorekall/www/web_dev/log --entrypoint /sites/memorekall/www/web_dev/tools/ci-job.sh $TEST_IMAGE + - docker network rm rekall artifacts: when: always expire_in: 1 week paths: - tests/_output - services: - - mysql diff --git a/tools/ci-job.sh b/tools/ci-job.sh index edc5050bbab488e2a6fc2104fd5d4a5d2354093d..fecdf631c063b4fc0e81707bb593dd4629e37111 100755 --- a/tools/ci-job.sh +++ b/tools/ci-job.sh @@ -20,12 +20,14 @@ run_step(){ cd $(dirname $(dirname $0)) if [ ! -f ".env" ]; then - cp .env_default .env + cp .env.test .env fi run_step "Starting apache" apache2ctl -DFOREGROUND & run_step "PHP dependencies" composer install run_step "Javascript dependencies" npm install run_step "Assets compilation" npm run dev +run_step "Doctrine create DB" php bin/console doctrine:migrations:migrate --env=test +run_step "Doctrine load fixtures" php bin/console doctrine:fixtures:load --env=test run_step "Unit and functional tests" composer tests run_step "Php Code Sniffer" composer phpcs run_step "Php Static analysis" composer phpstan