Skip to content

Build(deps): Bump docker/build-push-action from 5.1.0 to 5.2.0 #2292

Build(deps): Bump docker/build-push-action from 5.1.0 to 5.2.0

Build(deps): Bump docker/build-push-action from 5.1.0 to 5.2.0 #2292

Workflow file for this run

# This workflow uses actions that are not certified by GitHub. They are
# provided by a third-party and are governed by separate terms of service,
# privacy policy, and support documentation.
#
# This workflow will install a prebuilt Ruby version, install dependencies, and
# run tests and linters.
name: "CI"
on:
push:
branches: [ 'main' ]
pull_request:
branches: [ main ]
jobs:
rspec:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8
env:
MYSQL_USER: tentacles_test
MYSQL_PASSWORD: tentacles_test
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: tentacles_test
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
env:
RAILS_ENV: test
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Ruby and gems
uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.92
with:
bundler-cache: true
- name: Restore cache
uses: actions/cache@v4
with:
path: |
**/node_modules
public/assets/
public/packs-test/
tmp/shakapacker
key: ${{ runner.os }}-assets-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-assets-
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: 18.18.2
- name: 'Yarn Install'
run: yarn install
- name: Setup database
env:
RAILS_ENV: test
DB_USER: tentacles_test
DB_PASSWORD: tentacles_test
run: bin/rails db:schema:load
- name: Run tests
env:
RAILS_ENV: test
DB_USER: tentacles_test
DB_PASSWORD: tentacles_test
run: bin/rspec
lint-ruby:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Ruby and gems
uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.92
with:
bundler-cache: true
# - name: Security audit application code
# run: bin/brakeman -q -w2
- name: Lint Ruby files
run: bin/rubocop --parallel
security-audit:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Ruby and gems
uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.92
with:
bundler-cache: true
# Add or replace any other lints here
- name: Security audit dependencies
run: bin/bundler-audit --update
# - name: Security audit application code
# run: bin/brakeman -q -w2
lint-javascript:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Restore cache
uses: actions/cache@v4
with:
path: |
**/node_modules
public/assets/
public/packs-test/
tmp/shakapacker
key: ${{ runner.os }}-assets-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-assets-
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: 18.18.2
- name: 'Yarn Install'
run: yarn install
- name: Lint Javascript files
run: bin/yarn run eslint app/ui/**/*.jsx
assets-compile:
runs-on: ubuntu-latest
env:
RAILS_ENV: production
SECRET_KEY_BASE: precompile_placeholder
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Ruby and gems
uses: ruby/setup-ruby@d4526a55538b775af234ba4af27118ed6f8f6677 # v1.92
with:
bundler-cache: true
- name: Restore cache
uses: actions/cache@v4
with:
path: |
**/node_modules
public/assets/
public/packs-test/
tmp/shakapacker
key: ${{ runner.os }}-assets-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-assets-
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: 18.18.2
- name: 'Yarn Install'
run: yarn install
- name: Compile assets (js and css)
run: bin/rails shakapacker:compile