diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..af8f9b2 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,49 @@ +# 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: circleci/php:7.4-apache + + # 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-get update -y # PHP CircleCI 2.0 Configuration File# PHP CircleCI 2.0 Configuration File sudo apt install zlib1g-dev libsqlite3-dev + - run: sudo docker-php-ext-install zip + + # Download and cache dependencies + - restore_cache: + keys: + # "composer.lock" can be used if it is committed to the repo + - v1-dependencies-{{ checksum "composer.json" }} + # fallback to using the latest cache if no exact match is found + - v1-dependencies- + + - run: composer selfupdate && composer install -n --prefer-dist + + - save_cache: + key: v1-dependencies-{{ checksum "composer.json" }} + paths: + - ./vendor + + # prepare the database + # - run: touch storage/testing.sqlite + # - run: php artisan migrate --env=testing --database=sqlite_testing --force + + # run tests with phpunit or codecept + - run: ./vendor/bin/phpunit + # - run: ./vendor/bin/codecept build + # - run: ./vendor/bin/codecept run