-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Rewrites the project to use a pre-built JRuby binary. Links to downloads are at https://www.jruby.org/download. - Adds the heroku-24 base image as a build target - Re-uses the ARM url format for S3 that was introduced in heroku/docker-heroku-ruby-builder#38. Both the Ruby classic buildpack and CNB are tightly coupled to this format and will attempt to download binaries from S3 with cpu architecture information on heroku-24. Once built and uploaded to S3 there should be no changes needed to the buildpack to acquire support for heroku-24 and ARM due to: - heroku/heroku-buildpack-ruby#1439 - heroku/buildpacks-ruby#284
- Loading branch information
Showing
19 changed files
with
261 additions
and
1,861 deletions.
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
name: CI | ||
|
||
on: | ||
- push | ||
- pull_request | ||
|
||
jobs: | ||
lint: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Run ShellCheck | ||
run: | | ||
shellcheck *.sh -x && | ||
shellcheck bin/* -x | ||
integration_test: | ||
runs-on: ${{ matrix.arch == 'arm64' && 'pub-hk-ubuntu-22.04-arm-large' || 'ubuntu-latest' }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
base_image: ["heroku-20", "heroku-22", "heroku-24"] | ||
jruby_version: ["9.4.7.0"] | ||
arch: ["amd64", "arm64"] | ||
exclude: | ||
- base_image: "heroku-20" | ||
arch: "arm64" | ||
- base_image: "heroku-22" | ||
arch: "arm64" | ||
env: | ||
BASE_IMAGE: ${{ matrix.base_image }} | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Install Docker and missing development libs (ARM64 only) | ||
if: matrix.arch == 'arm64' | ||
run: | | ||
sudo apt-get update --error-on=any | ||
sudo apt-get install -y --no-install-recommends acl docker.io docker-buildx libc6-dev | ||
sudo usermod -aG docker $USER | ||
sudo setfacl --modify user:$USER:rw /var/run/docker.sock | ||
- name: Print changelog | ||
run: bin/print_changelog ${{ matrix.jruby_version }} | tee $GITHUB_STEP_SUMMARY | ||
- name: Build Docker image | ||
run: bin/activate_docker ${{ matrix.base_image }} | ||
- name: Build and package JRuby runtime | ||
run: bin/build_jruby ${{ matrix.base_image }} ${{ matrix.jruby_version }} | ||
- name: Test JRuby runtime with ARCH | ||
if: matrix.base_image == 'heroku-24' | ||
run: bin/print_summary ${{ matrix.base_image }} ${{ matrix.jruby_version }} ${{ matrix.arch }} | ||
- name: Test JRuby runtime without ARCH | ||
if: matrix.base_image != 'heroku-24' | ||
run: bin/print_summary ${{ matrix.base_image }} ${{ matrix.jruby_version }} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,5 +3,6 @@ builds/ | |
cache/ | ||
vendor/bundle/ | ||
.env | ||
bin/ | ||
.DS_Store | ||
Dockerfile | ||
rubies/ |
Oops, something went wrong.