Sha256: 6133c25db902fbb017298cb84a7061c947bc742bba15c1875ffce28a7312f313

Contents?: true

Size: 1.36 KB

Versions: 3

Compression:

Stored size: 1.36 KB

Contents

name: CI

on:
  push:
    paths-ignore:
      - ".gitignore"
      - "README.md"
  workflow_dispatch:
  schedule:
    # Every day at 9pm
    - cron: '0 21 * * *'

jobs:
  validate:
    name: Validate code
    runs-on: ubuntu-latest

    strategy:
      matrix:
        ruby-version: [3.1, 3.2, 3.3, head]
    continue-on-error: ${{ endsWith(matrix.ruby-version, 'head') }}

    steps:
      -
        name: Checkout
        uses: actions/checkout@v4
      -
        name: Setup Ruby
        uses: ruby/setup-ruby@v1
        with:
          bundler-cache: true
          ruby-version: ${{ matrix.ruby-version }}
      -
        name: RuboCop
        run: bin/rubocop
      -
        name: Typecheck
        run: bin/srb tc
      -
        name: Check for Updatable Sigils
        run: |
            bin/spoom bump --from false --to true --dry
            bin/spoom bump --from true --to strict --dry
      -
        name: Check for DSL rbi updates
        run: bin/tapioca dsl --verify
      -
        name: Run Tests (Using Cassettes)
        if: ${{ ! endsWith(matrix.ruby-version, '3.3') }}
        run: bin/toys test
      -
        name: Run Tests (With Remote Calls)
        if: ${{ endsWith(matrix.ruby-version, '3.3') }}
        run: bin/toys test
        env:
          REMOTE_TESTS_ENABLED: ${{ vars.REMOTE_TESTS_ENABLED }}
          LUNCHMONEY_TOKEN: ${{ secrets.LUNCHMONEY_TOKEN }}

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
lunchmoney-1.1.0 .github/workflows/ci.yml
lunchmoney-1.0.0 .github/workflows/ci.yml
lunchmoney-0.10.0 .github/workflows/ci.yml