mariadb backup cron #2287
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - production | |
| pull_request: | |
| jobs: | |
| setup_tests: | |
| name: _setup | |
| runs-on: ubuntu-24.04-arm | |
| outputs: | |
| os: ${{ steps.define_matrix.outputs.os }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: cache fixtures | |
| uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 | |
| id: cache-fixtures | |
| with: | |
| path: spec/fixtures/modules | |
| key: cache-fixtures-modules-${{ hashFiles('.fixtures.yml') }} | |
| - uses: ruby/setup-ruby@afeafc3d1ab54a631816aba4c914a0081c12ff2f # v1.310.0 | |
| with: | |
| bundler-cache: true | |
| - name: Define test matrix | |
| id: define_matrix | |
| run: bundle exec rake supported_os >> "$GITHUB_OUTPUT" | |
| - if: ${{ steps.cache-fixtures.outputs.cache-hit != 'true' }} | |
| name: rake fixtures:prep | |
| run: bundle exec rake fixtures:prep | |
| standardrb: | |
| name: standardrb | |
| runs-on: ubuntu-24.04-arm | |
| env: | |
| BUNDLE_GEMFILE: ${{ github.workspace }}/standard.gemfile | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: ruby/setup-ruby@afeafc3d1ab54a631816aba4c914a0081c12ff2f # v1.310.0 | |
| with: | |
| bundler-cache: true | |
| - name: standardrb | |
| run: bundle exec standardrb | |
| validate: | |
| name: rake validate | |
| needs: setup_tests | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: ruby/setup-ruby@afeafc3d1ab54a631816aba4c914a0081c12ff2f # v1.310.0 | |
| with: | |
| bundler-cache: true | |
| # identical to `rake validate` task, broken up into individual sub-tasks | |
| - name: rake validate:ruby | |
| run: bundle exec rake validate:ruby | |
| - name: rake syntax | |
| run: bundle exec rake syntax | |
| - name: lint metadata.json | |
| run: bundle exec rake metadata_lint | |
| - name: rake metadata.json | |
| run: bundle exec rake validate:strings | |
| # Forbid gems that we've seen show up as useless recursive dependencies, | |
| # especially if they have a history of security vulnerabilities. | |
| # Gems may be removed from this list if we decide to use them intentionally. | |
| - name: Check for forbidden gems | |
| run: | | |
| for gem in mcp; do | |
| if bundle list | grep -q "\b$gem\b"; then | |
| echo "❌ Forbidden gem '$gem' found in bundle!" | |
| exit 1 | |
| fi | |
| done | |
| spec: | |
| name: "${{ matrix.os }}" | |
| needs: setup_tests | |
| runs-on: ubuntu-24.04-arm | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: ${{ fromJSON(needs.setup_tests.outputs.os) }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: ruby/setup-ruby@afeafc3d1ab54a631816aba4c914a0081c12ff2f # v1.310.0 | |
| with: | |
| bundler-cache: true | |
| - name: Restore fixtures cache | |
| uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 | |
| with: | |
| path: spec/fixtures/modules | |
| key: cache-fixtures-modules-${{ hashFiles('.fixtures.yml') }} | |
| - name: rake fixtures:prep | |
| run: bundle exec rake fixtures:prep | |
| - name: "Run SUPPORTED_OS=\"${{ matrix.os }}\" rake ci:spec" | |
| env: | |
| SUPPORTED_OS: ${{ matrix.os }} | |
| run: bundle exec rake ci:spec |