services: - mongo ## Cache composer packages between all jobs and all branches ## of this project... cache: key: one-key-to-rull-them-all paths: - composer-cache/ .phptest: before_script: # Install git, the php image doesn't have installed - apt-get update -yqq - apt-get install git -yqq # Install composer - curl -sS https://getcomposer.org/installer | php # Install PHP-ZIP extension (used by composer) - apt-get install -yqq libzip-dev - docker-php-ext-install zip # Install xdebug extension (used for phpunit code coverage) - pecl install xdebug - docker-php-ext-enable xdebug - pecl install mongodb-1.4.4 - docker-php-ext-enable mongodb # Install all project dependencies - cd web - COMPOSER_CACHE_DIR=../composer-cache php ../composer.phar install # setup Laravel - cp env.test .env - touch storage/app/db.sqlite - php artisan migrate # Test with PHP7.2 test:php72: extends: .phptest image: php:7.2 script: - vendor/bin/phpunit --coverage-text - vendor/bin/phpcs test:gitleaks: image: name: "zricethezav/gitleaks" entrypoint: [""] script: - gitleaks -v --repo-path=./ --config=gitleaks.toml