variables: # Configure mysql service (https://hub.docker.com/_/mysql/) MYSQL_DATABASE: wordpress_tests MYSQL_ROOT_PASSWORD: mysql cache: paths: - $HOME/.composer - /root/.composer before_script: # Set up WordPress tests - bash bin/install-wp-tests.sh $MYSQL_DATABASE root $MYSQL_ROOT_PASSWORD mysql latest true # PHPUnit - | if [[ $(php -v) =~ "PHP 7." ]]; then composer global require "phpunit/phpunit=6.1.*" else composer global require "phpunit/phpunit=4.8.*" fi # Install PHPCS and WPCS - composer global require automattic/vipwpcs - composer global require phpcompatibility/phpcompatibility-wp - phpcs --config-set installed_paths $HOME/.composer/vendor/wp-coding-standards/wpcs,$HOME/.composer/vendor/automattic/vipwpcs,$HOME/.composer/vendor/phpcompatibility/php-compatibility,$HOME/.composer/vendor/phpcompatibility/phpcompatibility-paragonie,$HOME/.composer/vendor/phpcompatibility/phpcompatibility-wp PHPunit:PHP7.2:MySQL: image: containers.ethitter.com:443/docker/images/php:7.2 services: - mysql:5.6 script: - find . -type "f" -iname "*.php" | xargs -L "1" php -l - phpcs -n - phpunit PHPunit:PHP7.3:MySQL: image: containers.ethitter.com:443/docker/images/php:7.3 services: - mysql:5.6 script: - find . -type "f" -iname "*.php" | xargs -L "1" php -l - phpcs -n - phpunit sast: image: docker:stable variables: DOCKER_DRIVER: overlay2 allow_failure: true services: - docker:stable-dind script: - export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/') - docker run --env SAST_CONFIDENCE_LEVEL="${SAST_CONFIDENCE_LEVEL:-3}" --volume "$PWD:/code" --volume /var/run/docker.sock:/var/run/docker.sock "registry.gitlab.com/gitlab-org/security-products/sast:$SP_VERSION" /app/bin/run /code artifacts: reports: sast: gl-sast-report.json