name: Build on: push: branches: - main pull_request: branches: - main jobs: linux: name: Linux runs-on: ubuntu-latest strategy: matrix: ruby: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', 'head'] steps: - uses: actions/checkout@v4 - uses: awalsh128/cache-apt-pkgs-action@v1 with: packages: libglfw3 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Test & publish code coverage uses: paambaati/codeclimate-action@v2.2.1 if: github.event_name == 'push' env: CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} with: coverageCommand: bundle exec rake test - name: Test if: github.event_name != 'push' run: bundle exec rake test macos: name: macOS runs-on: macos-latest strategy: matrix: ruby: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', 'head'] steps: - uses: actions/checkout@v4 - run: brew install glfw - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: bundle exec rake test windows: name: Windows runs-on: windows-latest env: MITTSU_LIBGLFW_PATH: c:\projects\mittsu\glfw-3.3.1.bin.WIN32\lib-mingw strategy: matrix: ruby: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', 'head'] steps: - uses: actions/checkout@v4 - run: .\install-glfw.ps1 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: bundle exec rake test