Skip to content

Try Ubuntu 22

Try Ubuntu 22 #632

Workflow file for this run

name: CI
on: push
jobs:
linting:
runs-on: ubuntu-latest-22.04
name: Linting of Ruby files
steps:
- uses: actions/checkout@v4
- name: Install Ruby, Bundler and gems
uses: ruby/setup-ruby@v1
with:
ruby-version: "3.1"
bundler-cache: true
- run: bundle exec standardrb
tests:
runs-on: ubuntu-latest
name: Test ${{ matrix.gemfile }} with Ruby ${{ matrix.ruby-version }}
services:
mysql:
image: mysql:8.0
ports:
- 3306:3306
env:
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
options: >-
--health-cmd "mysql -uroot -e 'show databases'"
--health-interval 2s
--health-timeout 1s
--health-retries 10
strategy:
fail-fast: false
matrix:
ruby-version:
- "3.1"
- "3.2"
- "3.3"
- "3.4"
gemfile:
- rails6.1_mysql2
- rails6.1_trilogy
- rails7.0_mysql2
- rails7.0_trilogy
- rails7.1_mysql2
- rails7.1_trilogy
- rails7.2_mysql2
- rails7.2_trilogy
include:
- {ruby-version: "3.4", gemfile: "rails_main_mysql2"}
- {ruby-version: "3.4", gemfile: "rails_main_trilogy"}
env:
BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
SEED: "44873"
steps:
- uses: actions/checkout@v4
- name: Install Ruby, Bundler and gems
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
- name: Create user 'john-doe' in MySQL
run: mysql --host 127.0.0.1 --port 3306 -uroot -e "CREATE USER 'john-doe'; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX ON *.* TO 'john-doe'; FLUSH PRIVILEGES;"
- run: bundle exec rake test
tests_successful:
name: Tests passing?
needs: tests
if: always()
runs-on: ubuntu-latest
steps:
- run: |
if ${{ needs.tests.result == 'success' }}
then
echo "All tests passed"
else
echo "Some tests failed"
false
fi