.circleci/config.yml
version: 2
jobs:
build:
docker:
- image: circleci/php:7.2
working_directory: ~/spoof
steps:
- checkout
- run:
name: Enable xdebug
command: 'sudo docker-php-ext-enable xdebug'
- run:
name: Make default timezone UTC
command: 'echo "date.timezone = UTC" | sudo tee /usr/local/etc/php/conf.d/date.ini > /dev/null'
- run:
name: Install Composer
command: |
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === trim(file_get_contents('https://composer.github.io/installer.sig'))) { echo 'Installer verified'; } else { echo 'Installer invalid'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
- restore_cache:
keys:
- composer-v1-{{ checksum "composer.json" }}
- run:
name: Install composer dependencies
command: 'php composer.phar install'
- save_cache:
key: composer-v1-{{ checksum "composer.json" }}
paths:
- vendor
- run:
name: Run Tests
command: 'vendor/bin/phpunit -c src/tests/phpunit-log.xml'
- run:
name: Create test reports directory
command: 'sudo mkdir -p /phpunit'
- run:
name: Copy test results for circleci use
command: 'sudo cp build/logs/junit.xml /phpunit/junit.xml'
- store_test_results:
path: /phpunit
- store_artifacts:
path: /phpunit
- run:
name: Report test results to codeclimate
command: 'vendor/bin/test-reporter'