diff --git a/.circleci/config.yml b/.circleci/config.yml index c35196f4..db8946f3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,43 +1,37 @@ -# Use the latest 2.1 version of CircleCI pipeline process engine. -# See: https://circleci.com/docs/configuration-reference version: 2.1 -# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects. -# See: https://circleci.com/docs/orb-intro/ orbs: - # See the Ruby orb documentation here: https://circleci.com/developer/orbs/orb/circleci/ruby ruby: circleci/ruby@2.1.1 -# Define a job to be invoked later in a workflow. -# See: https://circleci.com/docs/jobs-steps/#jobs-overview & https://circleci.com/docs/configuration-reference/#jobs jobs: build: - # Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub. - # See: https://circleci.com/docs/executor-intro/ & https://circleci.com/docs/configuration-reference/#executor-job docker: - # Specify the version you desire here - # See: https://circleci.com/developer/images/image/cimg/ruby - image: cimg/ruby:3.2.3 + environment: + RAILS_ENV: test + - image: circleci/postgres:14.2 + environment: + POSTGRES_USER: postgres + POSTGRES_DB: test_database - # Add steps to the job - # See: https://circleci.com/docs/jobs-steps/#steps-overview & https://circleci.com/docs/configuration-reference/#steps steps: - # Checkout the code as the first step. - checkout - run: - name: Which bundler? - command: bundle -v - - ruby/install-deps - - # Run RSpec tests + name: Install Bundler + command: gem install bundler + - run: + name: Bundle Install + command: bundle install --jobs=4 --retry=3 + - run: + name: Database Setup + command: | + bundle exec rails db:create + bundle exec rails db:schema:load - run: name: Run RSpec tests command: bundle exec rspec -# Orchestrate jobs using workflows -# See: https://circleci.com/docs/workflows/ & https://circleci.com/docs/configuration-reference/#workflows workflows: - sample: # This is the name of the workflow, feel free to change it to better match your workflow. - # Inside the workflow, you define the jobs you want to run. + sample: jobs: - build