Bump actions/cache from 3 to 4 (#21) #75
This file contains 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: Test | |
on: | |
- push | |
- pull_request | |
jobs: | |
docker: | |
name: ${{ matrix.distribution }} | |
strategy: | |
fail-fast: false | |
matrix: | |
distribution: | |
- almalinux-9 | |
- alpine-linux | |
- alt-linux | |
- amazon-linux-2 | |
- amazon-linux-2023 | |
- arch-linux | |
- conda | |
- debian | |
- fedora | |
- gentoo-linux | |
- opensuse | |
# - pld-linux | |
- ubuntu | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Prepare cache for Gentoo Linux | |
if: | | |
matrix.distribution == 'gentoo-linux' | |
run: | | |
docker pull gentoo/portage | |
gentoo_portage_id=$(docker image inspect gentoo/portage | jq -r ".[0].Id") | |
echo "GENTOO_PORTAGE_ID=${gentoo_portage_id}" >> "${GITHUB_ENV}" | |
- name: Cache binary packages for Gentoo Linux | |
if: | | |
matrix.distribution == 'gentoo-linux' | |
uses: actions/cache@v4 | |
with: | |
path: .cache | |
key: ${{ matrix.distribution }}-${{ env.GENTOO_PORTAGE_ID }} | |
restore-keys: ${{ matrix.distribution }}- | |
- name: Build Docker image | |
run: | | |
docker-compose build ${{ matrix.distribution }} | |
- name: Run | |
run: | | |
docker-compose run --rm ${{ matrix.distribution }} | |
native: | |
name: ${{ matrix.ruby-version }} on ${{ matrix.runs-on }} | |
strategy: | |
fail-fast: false | |
matrix: | |
runs-on: | |
- macos | |
- ubuntu | |
- windows | |
ruby-version: | |
- "3.2" | |
- "3.1" | |
- "3.0" | |
exclude: | |
- runs-on: windows | |
ruby-version: "3.0" | |
runs-on: ${{ matrix.runs-on }}-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ${{ matrix.ruby-version }} | |
bundler-cache: true | |
- run: bundle exec rake test | |
- run: rake install | |
- run: gem install glib2 | |
if: | | |
matrix.runs-on != 'windows' | |
# "gem install" installs native package on Windows. | |
# So we need to use extconf.rb to test native-package-installer. | |
- uses: actions/checkout@v4 | |
if: | | |
matrix.runs-on == 'windows' | |
with: | |
repository: ruby-gnome/ruby-gnome | |
path: ruby-gnome | |
- name: Install glib2 from source | |
if: | | |
matrix.runs-on == 'windows' | |
run: | | |
gem install pkg-config | |
cd ruby-gnome\glib2 | |
ridk exec ruby extconf.rb | |
ridk exec make | |
ridk exec ruby -Ilib -Iext/glib2 -e "require 'glib2'" |