Skip to content

Update dependencies to v8.1.2.1 #725

Update dependencies to v8.1.2.1

Update dependencies to v8.1.2.1 #725

Workflow file for this run

name: CI
on: pull_request
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Ruby and gems
uses: ruby/setup-ruby@319994f95fa847cf3fb3cd3dbe89f6dcde9f178f # v1.295.0
with:
bundler-cache: true
- name: Run RuboCop
run: bin/rake rubocop
version-matrix:
name: Generate version matrix
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.version-matrix.outputs.matrix }}
steps:
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Ruby
uses: ruby/setup-ruby@319994f95fa847cf3fb3cd3dbe89f6dcde9f178f # v1.295.0
with:
bundler: none
- name: Generate version matrix
id: version-matrix
run: bin/version-matrix
test:
needs: version-matrix
strategy:
matrix: ${{ fromJSON(needs.version-matrix.outputs.matrix) }}
max-parallel: 8
name: Ruby ${{ matrix.ruby }} | PG ${{ matrix.pg }} | Active Record ${{ matrix.activerecord }}
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
env:
BUNDLE_PATH: ${{ github.workspace }}/vendor/bundle
BUNDLE_WITHOUT: docs
ACTIVERECORD_VERSION: ${{ matrix.activerecord }}
PG_VERSION: ${{ matrix.pg }}
steps:
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Ruby
uses: ruby/setup-ruby@319994f95fa847cf3fb3cd3dbe89f6dcde9f178f # v1.295.0
with:
ruby-version: ${{ matrix.ruby }}
- name: Update Gemfile.lock
run: bin/bundle lock --update activerecord pg railties
- name: Install gems
uses: ruby/setup-ruby@319994f95fa847cf3fb3cd3dbe89f6dcde9f178f # v1.295.0
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run unit tests
run: bin/rake test:unit
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@8df5847569e6427dd6c4fb1cf565c83acfa8afa7 # v6.0.0
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-session-name: pg-aws_rds_iam-ci-${{ github.run_id }}-${{ github.run_attempt }}-${{ strategy.job-index }}
aws-region: ${{ secrets.AWS_REGION }}
- name: Run acceptance tests
run: bin/rake test:acceptance
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
SECURITY_GROUP_ID: ${{ secrets.SECURITY_GROUP_ID }}
- name: Upload test coverage
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: coverage-ruby-${{ matrix.ruby }}-pg-${{ matrix.pg }}-activerecord-${{ matrix.activerecord }}
path: coverage/.resultset.json
include-hidden-files: true
test-results:
name: Check test results
if: always()
needs:
- version-matrix
- test
runs-on: ubuntu-latest
steps:
- name: Check test results
run: test "${{ needs.test.result }}" = "success"
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Ruby and gems
uses: ruby/setup-ruby@319994f95fa847cf3fb3cd3dbe89f6dcde9f178f # v1.295.0
with:
bundler-cache: true
- name: Download test coverage
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
pattern: coverage-*
- name: Collate test coverage
run: bin/rake coverage:collate
- name: Upload test coverage
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: coverage
path: coverage
- name: Report test coverage
uses: k1LoW/octocov-action@73d561f65d59e66899ed5c87e4621a913b5d5c20 # v1.5.0