# PHP CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-php/ for more details # version: 2 jobs: build: docker: # Specify the version you desire here - image: cimg/php:8.2.5 # Specify service dependencies here if necessary # CircleCI maintains a library of pre-built images # documented at https://circleci.com/docs/2.0/circleci-images/ # Using the RAM variation mitigates I/O contention # for database intensive operations. # - image: circleci/mysql:5.7-ram # # - image: redis:2.8.19 steps: - checkout - run: sudo apt update && sudo apt install zlib1g-dev libsqlite3-dev # Download and cache dependencies # composer cache - restore_cache: keys: # "composer.lock" can be used if it is committed to the repo - v2-dependencies-{{ checksum "composer.json" }} # fallback to using the latest cache if no exact match is found - v2-dependencies- - run: composer install -n --prefer-dist - save_cache: key: composer-v2-{{ checksum "composer.lock" }} paths: - vendor - run: cp .env.testing .env - run: php artisan config:cache - run: php artisan route:clear - run: php artisan storage:link - run: php artisan key:generate # run tests with phpunit or codecept - run: ./vendor/bin/phpunit - store_test_results: path: tests/_output - store_artifacts: path: tests/_output