.circleci/config.yml in coprl-0.1.0 vs .circleci/config.yml in coprl-3.0.0.beta.1

- old
+ new

@@ -1,13 +1,66 @@ -version: 2.1 +# Ruby CircleCI 2.0 configuration file +# +# Check https://circleci.com/docs/2.0/language-ruby/ for more details +# +version: 2 jobs: build: docker: - - image: ruby:2.7.2 + # specify the version you desire here + - image: circleci/ruby:2.7.2-node-browsers + + # Specify service dependencies here if necessary + # CircleCI maintains a library of pre-built images + # documented at https://circleci.com/docs/2.0/circleci-images/ + # - image: circleci/postgres:9.4 + + working_directory: ~/repo + steps: - checkout + + # Download and cache dependencies + - restore_cache: + keys: + - v1-dependencies-{{ checksum "Gemfile.lock" }} + # fallback to using the latest cache if no exact match is found + - v1-dependencies- + - run: - name: Run the default task + name: install dependencies command: | - gem install bundler -v 2.2.3 - bundle install - bundle exec rake + bundle install --jobs=4 --retry=3 --path vendor/bundle + + - save_cache: + paths: + - ./vendor/bundle + key: v1-dependencies-{{ checksum "Gemfile.lock" }} + + - run: + name: 'start integration testing server' + command: | + rackup + background: true + + # run tests! + - run: + name: run specs + command: | + mkdir /tmp/test-results + TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)" + + bundle exec rspec --format progress \ + --format RspecJunitFormatter \ + --out /tmp/test-results/rspec.xml \ + --format progress \ + $TEST_FILES + + # collect reports + - store_test_results: + path: /tmp/test-results + - store_artifacts: + path: /tmp/test-results + destination: test-results + - store_artifacts: + path: ./coverage + destination: code-coverage