How to set up CircleCI config file on local PC.
Install circleci
command
curl -o /usr/local/bin/circleci https://circle-downloads.s3.amazonaws.com/releases/build_agent_wrapper/circleci && chmod +x /usr/local/bin/circleci
circleci update
Create config file
The following file is often used in my PHP project.
Regarding the docker image, please see this official page.
# PHP CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-php/ for more details
#
version: 2
jobs:
build:
docker:
- image: circleci/php:7.0-apache-node-browsers
steps:
- checkout
- run: echo -e "[Date]\ndate.timezone = Asia/Tokyo" | sudo tee /usr/local/etc/php/php.ini > /dev/null
- run: chmod -R 777 ./storage
- run: chmod -R 777 ./bootstrap/cache
- run: sudo apt-get update -y
- run: sudo apt-get install -y libpng-dev libjpeg-dev zip unzip git
- run: sudo rm -rf /var/lib/apt/lists/*
- run: sudo docker-php-ext-install zip
- run: sudo docker-php-ext-configure gd --with-jpeg-dir=/usr/lib/x86_64-linux-gnu/
- run: sudo docker-php-ext-install pdo pdo_mysql gd mbstring zip
- run: sudo composer self-update
- restore_cache:
keys:
- composer-v1-{{ checksum "composer.json" }}
- composer-v1-
- run: composer install -n --prefer-dist
- save_cache:
key: composer-v1-{{ checksum "composer.json" }}
paths:
- vendor
- run: cp .env.example .env
- run:
name: Run PhpUnit
command: ./vendor/bin/phpunit
Validate syntax of config.yml
circleci config validate -c .circleci/config.yml
Run to build and test
circleci build .circleci/config.yml