From b21ad6ed60722bd48a79ce744a1db72a25cf8ac0 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Fri, 27 Dec 2024 16:41:35 +0900 Subject: [PATCH 01/18] debug --- .github/workflows/build.yml | 28 ++++++++++++++-------------- Dockerfile | 5 +++-- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e5706f5..be4e910 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,20 +15,20 @@ jobs: matrix: ruby_version: - '3.3.6' - - '3.3.5' - - '3.3.4' - - '3.3.3' - - '3.3.2' - - '3.3.1' - - '3.3.0' - - '3.2.6' - - '3.2.5' - - '3.2.4' - - '3.2.3' - - '3.2.2' - - '3.1.6' - - '3.1.5' - - '3.1.4' + # - '3.3.5' + # - '3.3.4' + # - '3.3.3' + # - '3.3.2' + # - '3.3.1' + # - '3.3.0' + # - '3.2.6' + # - '3.2.5' + # - '3.2.4' + # - '3.2.3' + # - '3.2.2' + # - '3.1.6' + # - '3.1.5' + # - '3.1.4' steps: - name: Check out Git repository diff --git a/Dockerfile b/Dockerfile index fb8f809..a767f1d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,8 +2,9 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN gem update --system --no-document && \ - gem install -N bundler +RUN gem update --system --no-document +RUN gem install -N bundler + # Install packages needed to build gems and node modules RUN --mount=type=cache,id=dev-apt-cache,sharing=locked,target=/var/cache/apt \ From c21be3d326ebe2af0ca50369d4ac73d6eecce61f Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Fri, 27 Dec 2024 18:03:08 +0900 Subject: [PATCH 02/18] debug --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index be4e910..4268178 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -44,7 +44,7 @@ jobs: uses: docker/build-push-action@v5 with: context: . - platforms: linux/arm64,linux/amd64 + platforms: linux/arm64 push: false build-args: | RUBY_VERSION=${{ matrix.ruby_version }} From 0d024164a5140e66e9e4ddfc6552e54939bb08ec Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Fri, 27 Dec 2024 18:08:42 +0900 Subject: [PATCH 03/18] update docker/build-push-action to v6 --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4268178..aa29c98 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -41,7 +41,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Build - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . platforms: linux/arm64 From 82e047183738232c6c2efda9f185718d78712f4b Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Sat, 28 Dec 2024 12:15:07 +0900 Subject: [PATCH 04/18] use arm64 runner --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index aa29c98..21ed2be 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ concurrency: jobs: build: - runs-on: ubuntu-latest + runs-on: linux-arm64-default timeout-minutes: 30 strategy: matrix: From d825db5648c415d345ef582acc179b5cba444fce Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Sat, 28 Dec 2024 12:34:49 +0900 Subject: [PATCH 05/18] change runner image --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21ed2be..0cade31 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ concurrency: jobs: build: - runs-on: linux-arm64-default + runs-on: ubuntu-22.04-arm timeout-minutes: 30 strategy: matrix: From 262fb74fcef72acb38143cb4ee7770d4757b6ca1 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Sat, 28 Dec 2024 12:42:05 +0900 Subject: [PATCH 06/18] Revert "change runner image" This reverts commit d825db5648c415d345ef582acc179b5cba444fce. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0cade31..21ed2be 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ concurrency: jobs: build: - runs-on: ubuntu-22.04-arm + runs-on: linux-arm64-default timeout-minutes: 30 strategy: matrix: From 62d51470197d85f2f9d557175a548fb8854c40f7 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 09:50:13 +0900 Subject: [PATCH 07/18] disable yjit explicitly --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index a767f1d..a5bba47 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN gem update --system --no-document +RUN RUBY_YJIT_ENABLE=0 gem update --system --no-document RUN gem install -N bundler From b12a7b0a2bc8904d675a85a891b64fca99c10666 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 10:26:57 +0900 Subject: [PATCH 08/18] use ubuntu-latest --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21ed2be..aa29c98 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ concurrency: jobs: build: - runs-on: linux-arm64-default + runs-on: ubuntu-latest timeout-minutes: 30 strategy: matrix: From 86ae1e924f9e987b2bb04c75fd71a19e4f752e5f Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 10:59:49 +0900 Subject: [PATCH 09/18] enable yjit explicitly --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index a5bba47..9c142d5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN RUBY_YJIT_ENABLE=0 gem update --system --no-document +RUN RUBY_YJIT_ENABLE=1 gem update --system --no-document RUN gem install -N bundler From faf8b22540f6cb55b84f806ea6f5a2a2223edd91 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 11:19:00 +0900 Subject: [PATCH 10/18] disable yjit --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 9c142d5..a767f1d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN RUBY_YJIT_ENABLE=1 gem update --system --no-document +RUN gem update --system --no-document RUN gem install -N bundler From 88291c55c662fa5b4c2128c82ccdff156c2270c1 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 11:19:34 +0900 Subject: [PATCH 11/18] warm up ruby --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index a767f1d..3a8ddb2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN gem update --system --no-document +RUN ruby -v >/dev/null && gem update --system --no-document RUN gem install -N bundler From b0bd6d3b92d0ff162bf0e292b5730263a0741913 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:10:11 +0900 Subject: [PATCH 12/18] Revert "warm up ruby" This reverts commit 88291c55c662fa5b4c2128c82ccdff156c2270c1. --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 3a8ddb2..a767f1d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG RUBY_VERSION=3.2.2 FROM public.ecr.aws/docker/library/ruby:$RUBY_VERSION-slim # Update gems and bundler -RUN ruby -v >/dev/null && gem update --system --no-document +RUN gem update --system --no-document RUN gem install -N bundler From a989d630f423b3354416f0241272e983ddf4810b Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:10:24 +0900 Subject: [PATCH 13/18] use linux-arm64-default --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index aa29c98..21ed2be 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ concurrency: jobs: build: - runs-on: ubuntu-latest + runs-on: linux-arm64-default timeout-minutes: 30 strategy: matrix: From a555b8ab76b637dac1544dd3612e646ab61d0a58 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:12:48 +0900 Subject: [PATCH 14/18] build only 3.3.6 --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9c0ce46..0bc9132 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,8 +14,8 @@ jobs: strategy: matrix: ruby_version: - - '3.4.1' - '3.3.6' + # - '3.4.1' # - '3.3.5' # - '3.3.4' # - '3.3.3' From 60f98ab1b7d61140f7f490f54dcf1d71c323e422 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:22:00 +0900 Subject: [PATCH 15/18] use matrix for multi platform build --- .github/workflows/build.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0bc9132..47f76a8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,6 @@ concurrency: jobs: build: - runs-on: linux-arm64-default timeout-minutes: 30 strategy: matrix: @@ -30,7 +29,11 @@ jobs: # - '3.1.6' # - '3.1.5' # - '3.1.4' + platform: + - { runner: 'linux-arm64-default', image: 'linux/arm64' } + - { runner: 'ubuntu-latest', image: 'linux/amd64' } + runs-on: ${{ matrix.platform.runner }} steps: - name: Check out Git repository uses: actions/checkout@v4 @@ -45,7 +48,7 @@ jobs: uses: docker/build-push-action@v6 with: context: . - platforms: linux/arm64 + platforms: ${{ matrix.platform.image }} push: false build-args: | RUBY_VERSION=${{ matrix.ruby_version }} From 84f48b5caae5f4b30ff2aa6423c3b6c18afe4c49 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:24:24 +0900 Subject: [PATCH 16/18] remove qemu --- .github/workflows/build.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 47f76a8..404b56b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,7 +14,6 @@ jobs: matrix: ruby_version: - '3.3.6' - # - '3.4.1' # - '3.3.5' # - '3.3.4' # - '3.3.3' @@ -38,9 +37,6 @@ jobs: - name: Check out Git repository uses: actions/checkout@v4 - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 From 47babc636e7425d2cac3cf53ab1ce65292e1d4f0 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 14:29:38 +0900 Subject: [PATCH 17/18] build multiple ruby versions --- .github/workflows/build.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 404b56b..4dcb449 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,6 +13,7 @@ jobs: strategy: matrix: ruby_version: + - '3.4.1' - '3.3.6' # - '3.3.5' # - '3.3.4' @@ -20,12 +21,12 @@ jobs: # - '3.3.2' # - '3.3.1' # - '3.3.0' - # - '3.2.6' + - '3.2.6' # - '3.2.5' # - '3.2.4' # - '3.2.3' # - '3.2.2' - # - '3.1.6' + - '3.1.6' # - '3.1.5' # - '3.1.4' platform: From 8b6c2dcb6005790b5c0bfce0f7efaa1dcdd8a269 Mon Sep 17 00:00:00 2001 From: Kazuki Nishikawa Date: Mon, 6 Jan 2025 15:26:09 +0900 Subject: [PATCH 18/18] change runner --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4dcb449..8fa5a7f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,8 +30,8 @@ jobs: # - '3.1.5' # - '3.1.4' platform: - - { runner: 'linux-arm64-default', image: 'linux/arm64' } - - { runner: 'ubuntu-latest', image: 'linux/amd64' } + - { runner: 'linux-arm64-public', image: 'linux/arm64' } + - { runner: 'ubuntu-24.04', image: 'linux/amd64' } runs-on: ${{ matrix.platform.runner }} steps: