# Ruby CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-ruby/ for more details # version: 2 jobs: build: environment: CC_TEST_REPORTER_ID: 63d9f072931b3c61d2ed935cc1d2244c7f9766d64a081e6aef1b974356effab7 docker: # specify the version you desire here - image: circleci/ruby:2.5 working_directory: ~/evvnt 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: install dependencies command: | bundle install --jobs=4 --retry=3 --path vendor/bundle - run: name: Download CodeClimate command: curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter - run: name: "Change Permissions on CodeClimate" command: chmod +x ./cc-test-reporter - save_cache: paths: - ./vendor/bundle key: v1-dependencies-{{ checksum "Gemfile.lock" }} - run: name: "Prepare CC test reporter" command: ./cc-test-reporter before-build # run tests! - run: name: Run Rspec 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 - run: name: "Report CodeClimate" command: ./cc-test-reporter after-build --exit-code 0 # collect reports - store_test_results: path: /tmp/test-results - store_artifacts: path: /tmp/test-results destination: test-results audit: docker: # specify the version you desire here - image: circleci/ruby:2.5 working_directory: ~/evvnt 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: install dependencies command: | bundle install --jobs=4 --retry=3 --path vendor/bundle - save_cache: paths: - ./vendor/bundle key: v1-dependencies-{{ checksum "Gemfile.lock" }} - run: name: Bunder Audit command: gem install bundle-audit && bundle-audit check --update - run: name: Code Style Check command: rubocop lib --display-style-guide -c ./.rubocop.yml workflows: version: 2 build_and_audit: jobs: - build - audit