name: Ruby on: push: branches: ["main"] pull_request: branches: ["main"] permissions: contents: read jobs: test: runs-on: ${{ matrix.os }} strategy: matrix: os: [ ubuntu-latest, ubuntu-20.04, macos-latest, macos-13, macos-12, windows-latest, windows-2019, ] ruby: ["3.0.1", "3.1", "3.2", "3.3"] steps: - uses: actions/checkout@v3 - name: Set timezone on Linux if: contains(matrix.os, 'ubuntu') run: sudo timedatectl set-timezone 'America/New_York' - name: Set timezone on macOS if: contains(matrix.os, 'macos') run: sudo systemsetup -settimezone America/New_York - name: Set timezone on Windows if: contains(matrix.os, 'windows') run: tzutil /s "Eastern Standard Time" - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Update RubyGems run: gem update --system - name: Disable bundler frozen setting run: bundle config set frozen false - name: Install dependencies run: bundle install - name: Run tests run: bundle exec rake