Skip to content

chore(deps): Bump bootsnap from 1.20.1 to 1.22.0 #649

chore(deps): Bump bootsnap from 1.20.1 to 1.22.0

chore(deps): Bump bootsnap from 1.20.1 to 1.22.0 #649

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [ master ]
jobs:
scan_ruby:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4.7'
bundler-cache: true
- name: Scan for common Rails security vulnerabilities using static analysis
run: bin/brakeman --no-pager
- name: Scan for known security vulnerabilities in gems used
run: bin/bundler-audit
scan_js:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4.7'
bundler-cache: true
- name: Scan for security vulnerabilities in JavaScript dependencies
run: bin/importmap audit
lint:
runs-on: ubuntu-latest
continue-on-error: true
env:
RUBOCOP_CACHE_ROOT: tmp/rubocop
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4.7'
bundler-cache: true
- name: Prepare RuboCop cache
uses: actions/cache@v5
env:
DEPENDENCIES_HASH: ${{ hashFiles('mise.toml', '**/.rubocop.yml', '**/.rubocop_todo.yml', 'Gemfile.lock') }}
with:
path: ${{ env.RUBOCOP_CACHE_ROOT }}
key: rubocop-${{ runner.os }}-${{ env.DEPENDENCIES_HASH }}-${{ github.ref_name == github.event.repository.default_branch && github.run_id || 'default' }}
restore-keys: |
rubocop-${{ runner.os }}-${{ env.DEPENDENCIES_HASH }}-
- name: Lint code for consistent style
run: bin/rubocop -f github || true
test:
runs-on: ubuntu-latest
services:
postgres:
image: cr.selcloud.ru/brandymint/dockerhub/library/postgres:17
credentials:
username: token
password: ${{ secrets.SELCLOUD_TOKEN }}
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
options: --health-cmd="pg_isready" --health-interval=10s --health-timeout=5s --health-retries=3
# redis:
# image: cr.selcloud.ru/brandymint/dockerhub/library/redis:latest
# credentials:
# username: token
# password: ${{ secrets.SELCLOUD_TOKEN }}
# ports:
# - 6379:6379
# options: --health-cmd "redis-cli ping" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Install packages
run: sudo apt-get update && sudo apt-get install --no-install-recommends -y libpq-dev
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4.7'
bundler-cache: true
- name: Run tests
env:
RAILS_ENV: test
DATABASE_URL: postgres://postgres:postgres@localhost:5432/valera_test
PARALLEL_WORKERS: 4
# RAILS_MASTER_KEY: ${{ secrets.RAILS_MASTER_KEY }}
# REDIS_URL: redis://localhost:6379/0
run: |
bin/rails db:test:prepare
bin/rake test
system-test:
runs-on: ubuntu-latest
services:
postgres:
image: cr.selcloud.ru/brandymint/dockerhub/library/postgres:17
credentials:
username: token
password: ${{ secrets.SELCLOUD_TOKEN }}
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
options: --health-cmd="pg_isready" --health-interval=10s --health-timeout=5s --health-retries=3
# redis:
# image: cr.selcloud.ru/brandymint/dockerhub/library/redis:latest
# credentials:
# username: token
# password: ${{ secrets.SELCLOUD_TOKEN }}
# ports:
# - 6379:6379
# options: --health-cmd "redis-cli ping" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Install packages
run: |
sudo apt-get update
sudo apt-get install --no-install-recommends -y libpq-dev
sudo apt-get install --no-install-recommends -y chromium-browser
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4.7'
bundler-cache: true
- name: Run System Tests
env:
RAILS_ENV: test
DATABASE_URL: postgres://postgres:postgres@localhost:5432/valera_test
SELENIUM_DRIVER: chrome
# RAILS_MASTER_KEY: ${{ secrets.RAILS_MASTER_KEY }}
# REDIS_URL: redis://localhost:6379/0
run: bin/rails db:test:prepare ruby_llm:load_models test:system
- name: Keep screenshots from failed system tests
uses: actions/upload-artifact@v6
if: failure()
with:
name: screenshots
path: ${{ github.workspace }}/tmp/screenshots
if-no-files-found: ignore