Skip to content

Merge pull request #2870 from hitobito/bug/eager-load-enabled #1

Merge pull request #2870 from hitobito/bug/eager-load-enabled

Merge pull request #2870 from hitobito/bug/eager-load-enabled #1

Workflow file for this run

name: 'Rails Lint and Test'
on:
workflow_dispatch:
push:
branches: [ master ]
paths-ignore:
- 'doc/**'
- '**.md'
pull_request:
paths-ignore:
- 'doc/**'
- '**.md'
jobs:
rubocop:
runs-on: 'ubuntu-20.04'
steps:
- name: 'Checkout'
uses: actions/checkout@v4
- name: 'Prepare'
uses: ./.github/actions/core-ci-setup
with:
migrations: false
- name: 'Rubocop'
run: |
bundle exec rake rubocop
main-specs:
runs-on: 'ubuntu-20.04'
env:
HEADLESS: true
RAILS_DB_ADAPTER: postgresql
RAILS_DB_HOST: 127.0.0.1
RAILS_DB_PORT: 5432
RAILS_DB_USERNAME: hitobito
RAILS_DB_PASSWORD: hitobito
RAILS_DB_NAME: hitobito_test
RAILS_TEST_DB_NAME: hitobito_test
TZ: Europe/Berlin
RAILS_USE_TEST_GROUPS: true
services:
postgres:
image: 'postgres:16'
env:
POSTGRES_USER: hitobito
POSTGRES_PASSWORD: hitobito
POSTGRES_DB: hitobito_test
ports:
- '5432:5432'
options: >-
--health-cmd "pg_isready -U hitobito"
--health-interval 10s
--health-timeout 10s
--health-retries 10
memcached:
image: 'memcached'
ports: [ '11211:11211' ]
steps:
- name: 'Checkout'
uses: actions/checkout@v4
with:
fetch-tags: true
- name: 'Prepare'
uses: ./.github/actions/core-ci-setup
- name: 'Main Specs without features'
run: |
git fetch --tags
bundle exec rake ci:setup:env spec:without_features
feature-specs:
runs-on: 'ubuntu-20.04'
env:
HEADLESS: true
RAILS_DB_ADAPTER: postgresql
RAILS_DB_HOST: 127.0.0.1
RAILS_DB_PORT: 5432
RAILS_DB_USERNAME: hitobito
RAILS_DB_PASSWORD: hitobito
RAILS_DB_NAME: hitobito_test
RAILS_TEST_DB_NAME: hitobito_test
TZ: Europe/Berlin
RAILS_USE_TEST_GROUPS: true
services:
postgres:
image: 'postgres:16'
env:
POSTGRES_USER: hitobito
POSTGRES_PASSWORD: hitobito
POSTGRES_DB: hitobito_test
ports:
- '5432:5432'
options: >-
--health-cmd "pg_isready -U hitobito"
--health-interval 10s
--health-timeout 10s
--health-retries 10
memcached:
image: 'memcached'
ports: [ '11211:11211' ]
steps:
- name: 'Checkout'
uses: actions/checkout@v4
- name: 'Prepare'
uses: ./.github/actions/core-ci-setup
- name: 'Features'
run: |
bundle exec rake ci:setup:env spec:features:lenient
- name: 'Make capybara output downloadable'
uses: actions/upload-artifact@v4
if: always()
with:
name: capybara-output
path: |
tmp/capybara
notify_statuscope:
uses: ./.github/workflows/notify-statuscope.yml
needs: [ rubocop, main-specs, feature-specs ]
if: ( success() || failure() ) && ( github.ref_name == 'master' )
with:
repository: 'hitobito'
test_result: ${{ needs.rubocop.result == 'success' && needs.main-specs.result == 'success' && needs.feature-specs.result == 'success' }}
secrets:
HEARTBEAT_URL: ${{ secrets.HEARTBEAT_URL }}
HEARTBEAT_TOKEN: ${{ secrets.HEARTBEAT_TOKEN }}