Skip to content

Commit

Permalink
Merge pull request #35 from flavorjones/flavorjones-rcd-1.7.0.rc1
Browse files Browse the repository at this point in the history
ext: bump rake-compiler-dock to 1.7.0.rc1 and add ruby 3.4
  • Loading branch information
flavorjones authored Dec 14, 2024
2 parents 6619a0d + aa9412b commit d0c25e2
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 79 deletions.
130 changes: 53 additions & 77 deletions .github/workflows/precompiled.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,37 @@ on:
paths: ["precompiled/**/*", ".github/workflows/precompiled.yml"]

jobs:
precompiled:
ruby_versions:
outputs:
setup_ruby: "['3.1', '3.2', '3.3', 'head']"
image_tag: "['3.1', '3.2', '3.3', '3.4-rc']"
runs-on: ubuntu-latest
steps:
- run: echo "generating rubies ..."

rcd_image_version:
runs-on: ubuntu-latest
outputs:
rcd_image_version: ${{steps.rcd_image_version.outputs.rcd_image_version}}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
working-directory: precompiled
ruby-version: "3.3"
bundler-cache: true
bundler: latest
- id: rcd_image_version
run: bundle exec ruby -e 'require "rake_compiler_dock"; puts "rcd_image_version=#{RakeCompilerDock::IMAGE_VERSION}"' >> $GITHUB_OUTPUT
working-directory: precompiled

test:
needs: ["ruby_versions"]
strategy:
fail-fast: false
matrix:
runs-on: ["ubuntu-latest", "macos-13", "windows-latest"]
ruby: ["3.0", "3.1", "3.2", "3.3", "head"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
runs-on: ${{matrix.runs-on}}
steps:
- uses: actions/checkout@v4
Expand All @@ -40,7 +65,7 @@ jobs:
- run: bundle exec rake compile test
working-directory: precompiled

cruby-package:
generic-package:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@v4
Expand All @@ -51,7 +76,7 @@ jobs:
- uses: ruby/setup-ruby@v1
with:
working-directory: precompiled
ruby-version: "3.2"
ruby-version: "3.3"
bundler-cache: true
- run: ./bin/test-gem-build gems ruby
working-directory: precompiled
Expand All @@ -61,13 +86,13 @@ jobs:
path: precompiled/gems
retention-days: 1

cruby-install:
needs: "cruby-package"
generic-install:
needs: ["generic-package", "ruby_versions"]
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "macos-13", "windows-latest"]
ruby: ["3.0", "3.1", "3.2", "3.3", "head"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand All @@ -83,23 +108,7 @@ jobs:
working-directory: precompiled
shell: bash

rcd_image_version:
runs-on: ubuntu-latest
outputs:
rcd_image_version: ${{steps.rcd_image_version.outputs.rcd_image_version}}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
working-directory: precompiled
ruby-version: "3.2"
bundler-cache: true
bundler: latest
- id: rcd_image_version
run: bundle exec ruby -e 'require "rake_compiler_dock"; puts "rcd_image_version=#{RakeCompilerDock::IMAGE_VERSION}"' >> $GITHUB_OUTPUT
working-directory: precompiled

cruby-native-package:
native-package:
needs: ["rcd_image_version"]
strategy:
fail-fast: false
Expand All @@ -109,14 +118,13 @@ jobs:
- "aarch64-linux-musl"
- "arm-linux-gnu"
- "arm-linux-musl"
- "arm64-darwin"
- "x64-mingw-ucrt"
- "x64-mingw32"
- "x86-linux-gnu"
- "x86-linux-musl"
- "x86_64-darwin"
- "x86_64-linux-gnu"
- "x86_64-linux-musl"
- "arm64-darwin"
- "x86_64-darwin"
- "x64-mingw-ucrt"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -134,8 +142,8 @@ jobs:
path: precompiled/gems
retention-days: 1

cruby-linux-install:
needs: ["cruby-native-package"]
linux-install:
needs: ["native-package", "ruby_versions"]
strategy:
fail-fast: false
matrix:
Expand All @@ -148,7 +156,7 @@ jobs:
- "x86-linux-musl"
- "x86_64-linux-gnu"
- "x86_64-linux-musl"
ruby: ["3.0", "3.1", "3.2", "3.3"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.image_tag) }}
include:
# declare docker image for each platform
- { platform: aarch64-linux-musl, docker_tag: "-alpine", bootstrap: "apk add bash &&" }
Expand Down Expand Up @@ -179,69 +187,37 @@ jobs:
./bin/test-gem-install gems
"
cruby-x86_64-darwin-install:
needs: ["cruby-native-package"]
darwin-install:
needs: ["native-package", "ruby_versions"]
strategy:
fail-fast: false
matrix:
ruby: ["3.0", "3.1", "3.2", "3.3"]
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: "${{matrix.ruby}}"
- uses: actions/download-artifact@v4
with:
name: cruby-x86_64-darwin-gem
path: precompiled/gems
- run: ./bin/test-gem-install gems
working-directory: precompiled

cruby-arm64-darwin-install:
needs: ["cruby-native-package"]
strategy:
fail-fast: false
matrix:
ruby: ["3.0", "3.1", "3.2", "3.3"]
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: "${{matrix.ruby}}"
- uses: actions/download-artifact@v4
with:
name: cruby-arm64-darwin-gem
path: precompiled/gems
- run: ./bin/test-gem-install gems
working-directory: precompiled

cruby-x64-mingw32-install:
needs: ["cruby-native-package"]
strategy:
fail-fast: false
matrix:
ruby: ["3.0"]
runs-on: windows-2019
platform:
- arm64-darwin
- x86_64-darwin
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
include:
- { platform: arm64-darwin, os: macos-14 }
- { platform: x86_64-darwin, os: macos-13 }
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: "${{matrix.ruby}}"
- uses: actions/download-artifact@v4
with:
name: cruby-x64-mingw32-gem
name: cruby-${{matrix.platform}}-gem
path: precompiled/gems
- run: ./bin/test-gem-install gems
working-directory: precompiled

cruby-x64-mingw-ucrt-install:
needs: ["cruby-native-package"]
windows-install:
needs: ["native-package", "ruby_versions"]
strategy:
fail-fast: false
matrix:
ruby: ["3.1", "3.2", "3.3"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion precompiled/Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ gemspec
gem "rake", "~> 13.0"

gem "rake-compiler"
gem "rake-compiler-dock", "1.5.2"
gem "rake-compiler-dock", "1.7.0.rc1"

gem "minitest", "~> 5.0"
2 changes: 1 addition & 1 deletion precompiled/Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ require "rake/testtask"
require "rake/extensiontask"
require "rake_compiler_dock"

cross_rubies = ["3.3.0", "3.2.0", "3.1.0", "3.0.0"]
cross_rubies = ["3.4.0", "3.3.5", "3.2.0", "3.1.0"]
cross_platforms = [
"aarch64-linux-gnu",
"aarch64-linux-musl",
Expand Down

0 comments on commit d0c25e2

Please sign in to comment.