name: Rspec on: push jobs: verify: name: Build runs-on: ubuntu-latest services: postgres: image: postgres:14 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: docuseal_test ports: ["5432:5432"] options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 steps: - uses: actions/checkout@v2 - name: Install Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 3.2.1 - name: Set up Node uses: actions/setup-node@v1 with: node-version: 16.13.1 - name: Install Chrome uses: browser-actions/setup-chrome@latest - name: Cache node_modules uses: actions/cache@v1 with: path: node_modules key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} - name: Cache gems uses: actions/cache@v1 with: path: vendor/bundle key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }} restore-keys: | ${{ runner.os }}-gem- - name: Install dependencies env: RAILS_ENV: test run: | gem install bundler bundle config path vendor/bundle bundle install --jobs 4 --retry 4 yarn install - name: Run env: RAILS_ENV: test NODE_ENV: test COVERAGE: true DATABASE_URL: postgres://postgres:postgres@localhost:5432/docuseal_test run: | bundle exec rake db:create bundle exec rake db:migrate bundle exec rake assets:precompile bundle exec rspec