2018-10-08 13:06:10 -06:00
|
|
|
version: 2
|
2018-10-08 13:11:52 -06:00
|
|
|
jobs:
|
2018-10-08 13:06:10 -06:00
|
|
|
build:
|
2019-02-15 16:46:27 -07:00
|
|
|
machine: true
|
2018-10-08 13:06:10 -06:00
|
|
|
steps:
|
2018-10-08 13:23:43 -06:00
|
|
|
- checkout
|
|
|
|
- run:
|
2018-10-16 14:19:27 -06:00
|
|
|
name: Shuffle configs around, install Docker-Compose
|
2018-10-08 13:23:43 -06:00
|
|
|
command: |
|
|
|
|
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > docker-compose
|
|
|
|
chmod +x docker-compose
|
|
|
|
sudo mv docker-compose /usr/local/bin
|
2018-10-14 14:51:18 -06:00
|
|
|
mv .circleci/circle_envs .env
|
2018-10-16 14:19:27 -06:00
|
|
|
- run:
|
|
|
|
name: Install Ruby/JS deps
|
|
|
|
command: |
|
2018-10-08 13:23:43 -06:00
|
|
|
sudo docker-compose run web bundle install
|
|
|
|
sudo docker-compose run web npm install
|
2018-10-16 14:19:27 -06:00
|
|
|
- run:
|
|
|
|
name: Create databases and secrets
|
|
|
|
command: |
|
2018-10-15 18:31:14 -06:00
|
|
|
sudo docker-compose run web bundle exec rails db:create
|
2018-10-15 18:20:00 -06:00
|
|
|
sudo docker-compose run web bundle exec rails db:migrate
|
2018-10-08 13:23:43 -06:00
|
|
|
sudo docker-compose run web rake keys:generate
|
2018-10-16 14:19:27 -06:00
|
|
|
- run:
|
|
|
|
name: Run Ruby tests
|
|
|
|
command: |
|
2019-02-15 16:46:27 -07:00
|
|
|
sudo docker-compose run web rspec spec
|
2018-10-16 14:19:27 -06:00
|
|
|
- run:
|
|
|
|
name: Run linters
|
|
|
|
command: |
|
2019-03-01 13:12:34 -07:00
|
|
|
sudo docker-compose run web npm run linters
|
2018-10-16 14:19:27 -06:00
|
|
|
- run:
|
|
|
|
name: Run JS tests
|
|
|
|
command: |
|
2019-03-01 13:12:34 -07:00
|
|
|
sudo docker-compose run web npm run test-slow
|
2019-02-27 12:17:42 -07:00
|
|
|
echo 'export COVERAGE_AVAILABLE=true' >> $BASH_ENV
|
2018-11-05 16:20:35 -07:00
|
|
|
- run:
|
|
|
|
name: Check Coveralls coverage on staging
|
|
|
|
command: |
|
2019-02-13 18:21:41 -07:00
|
|
|
sudo docker-compose run -e CIRCLE_SHA1="$CIRCLE_SHA1" -e CIRCLE_BRANCH="$CIRCLE_BRANCH" web rake coverage:run
|
2019-02-27 10:56:29 -07:00
|
|
|
- run:
|
|
|
|
name: Report coverage to Coveralls
|
|
|
|
command: |
|
|
|
|
if [ "$COVERAGE_AVAILABLE" ]
|
|
|
|
then
|
2019-03-01 13:12:34 -07:00
|
|
|
sudo docker-compose run -e COVERALLS_REPO_TOKEN=lEX6nkql7y2YFCcIXVq5ORvdvMtYzfZdG web npm run coverage
|
2019-02-27 10:56:29 -07:00
|
|
|
fi
|
|
|
|
when: always # change to `on_success` for a stricter comparison
|