From 3865c6515d7d72d25abdaac0f952fc1e85fd8198 Mon Sep 17 00:00:00 2001 From: PJ Date: Sat, 15 Aug 2026 20:41:39 +0530 Subject: [PATCH] ci: move every action off the node20 runtime checkout v4->v7, setup-go v5->v7, setup-node v4->v7, setup-java v4->v5, upload-artifact v4->v7, cache v4->v6, upload-pages-artifact v3->v5, deploy-pages v4->v5, setup-chrome v1->v2, setup-android v3->v4, goreleaser-action v6->v7. setup-bun and android-emulator-runner are already node24; buf-setup-action stays on its deliberate SHA pin. setup-chrome v2 resolves stable from Chrome for Testing rather than the official installer, so the ci.yml comment about the action's default no longer held. --- .github/workflows/ci.yml | 25 +++++++++++------------ .github/workflows/docs.yml | 6 +++--- .github/workflows/folio.yml | 36 ++++++++++++++++----------------- .github/workflows/release.yml | 16 +++++++-------- .github/workflows/replay-ui.yml | 8 ++++---- 5 files changed, 45 insertions(+), 46 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4bef62..ae0f8d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,25 +19,25 @@ jobs: test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true - name: Set up JDK 17 - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin java-version: "17" - name: Set up Android SDK - uses: android-actions/setup-android@v3 + uses: android-actions/setup-android@v4 - name: Set up Node 22 - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: node-version: "22" cache: npm @@ -49,7 +49,7 @@ jobs: bun-version: "1.3.13" - name: Cache bun store - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: ~/.bun/install/cache key: bun-${{ runner.os }}-${{ hashFiles('replay-ui/bun.lock') }} @@ -74,7 +74,7 @@ jobs: echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH" - name: Cache Gradle - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | ~/.gradle/caches @@ -98,19 +98,18 @@ jobs: browser: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true - # Pin stable: the action's default (latest) pulls a dev Chromium whose - # remote-debugging socket is flaky under the driver, even though the - # browser otherwise launches headless. + # Pin stable: a dev Chromium's remote-debugging socket is flaky under + # the driver, even though the browser otherwise launches headless. - name: Set up Chrome - uses: browser-actions/setup-chrome@v1 + uses: browser-actions/setup-chrome@v2 with: chrome-version: stable diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index b3aa99d..b28cd02 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -22,7 +22,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Install pandoc run: sudo apt-get update && sudo apt-get install -y pandoc @@ -30,7 +30,7 @@ jobs: - name: Build site run: make docs - - uses: actions/upload-pages-artifact@v3 + - uses: actions/upload-pages-artifact@v5 with: path: build/site @@ -41,5 +41,5 @@ jobs: name: github-pages url: ${{ steps.deployment.outputs.page_url }} steps: - - uses: actions/deploy-pages@v4 + - uses: actions/deploy-pages@v5 id: deployment diff --git a/.github/workflows/folio.yml b/.github/workflows/folio.yml index fa237b0..3517bb8 100644 --- a/.github/workflows/folio.yml +++ b/.github/workflows/folio.yml @@ -41,16 +41,16 @@ jobs: if: ${{ inputs.platforms == 'all' || inputs.platforms == 'android' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true - name: Set up the JDKs - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin # The metro gradle plugin folio builds with needs a 21 runtime; the @@ -60,7 +60,7 @@ jobs: 21 - name: Set up Android SDK - uses: android-actions/setup-android@v3 + uses: android-actions/setup-android@v4 - name: Set up bun uses: oven-sh/setup-bun@v2 @@ -68,7 +68,7 @@ jobs: bun-version: "1.3.13" - name: Cache Gradle - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | ~/.gradle/caches @@ -109,7 +109,7 @@ jobs: - name: Upload the run if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: folio-android path: runs/ @@ -120,10 +120,10 @@ jobs: if: ${{ inputs.platforms == 'all' || inputs.platforms == 'ios' }} runs-on: macos-15 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true @@ -139,7 +139,7 @@ jobs: run: brew install facebook/fb/idb-companion xcodegen just - name: Set up the JDKs - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin # The metro gradle plugin folio builds with needs a 21 runtime; the @@ -152,13 +152,13 @@ jobs: # project, which configures :app:androidApp and so needs an Android SDK # even on this leg. - name: Set up Android SDK - uses: android-actions/setup-android@v3 + uses: android-actions/setup-android@v4 # Both asset tarballs are built by the prepare scripts, and the runner # bundle is an xcodebuild of companion/Sources. Keyed on the scripts and # the versions the Makefile embeds, so a later run reuses them. - name: Cache the companion and runner bundles - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | internal/driver/ioscompanion/companionassets/assets @@ -197,7 +197,7 @@ jobs: - name: Upload the run if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: folio-ios path: runs/ @@ -208,16 +208,16 @@ jobs: if: ${{ inputs.platforms == 'all' || inputs.platforms == 'web' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true - name: Set up the JDKs - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin # The metro gradle plugin folio builds with needs a 21 runtime; the @@ -232,7 +232,7 @@ jobs: bun-version: "1.3.13" - name: Cache Gradle - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | ~/.gradle/caches @@ -242,7 +242,7 @@ jobs: folio-gradle-${{ runner.os }}- - name: Set up Chrome - uses: browser-actions/setup-chrome@v1 + uses: browser-actions/setup-chrome@v2 with: chrome-version: stable @@ -271,7 +271,7 @@ jobs: - name: Upload the run if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: folio-web path: runs/ diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 442acae..93f2c61 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,7 +22,7 @@ jobs: env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 with: ref: ${{ inputs.tag || github.ref }} @@ -33,7 +33,7 @@ jobs: echo "version=${raw#v}" >> "$GITHUB_OUTPUT" - name: Set up Node 22 - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: node-version: "22" registry-url: "https://registry.npmjs.org" @@ -65,28 +65,28 @@ jobs: permissions: contents: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 with: ref: ${{ inputs.tag || github.ref }} fetch-depth: 0 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true - name: Set up JDK 17 - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin java-version: "17" - name: Set up Android SDK - uses: android-actions/setup-android@v3 + uses: android-actions/setup-android@v4 - name: Cache Gradle - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | ~/.gradle/caches @@ -99,7 +99,7 @@ jobs: run: make sidecar - name: Run GoReleaser - uses: goreleaser/goreleaser-action@v6 + uses: goreleaser/goreleaser-action@v7 with: version: "~> v2" args: release --clean diff --git a/.github/workflows/replay-ui.yml b/.github/workflows/replay-ui.yml index e72d477..6fb4f4a 100644 --- a/.github/workflows/replay-ui.yml +++ b/.github/workflows/replay-ui.yml @@ -27,10 +27,10 @@ jobs: timeout-minutes: 45 runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version-file: go.mod cache: true @@ -43,7 +43,7 @@ jobs: # Pinned stable plus the AppArmor sysctl: the same setup ci.yml's browser # job needs to get headless Chrome up on ubuntu-latest. - name: Set up Chrome - uses: browser-actions/setup-chrome@v1 + uses: browser-actions/setup-chrome@v2 with: chrome-version: stable @@ -135,7 +135,7 @@ jobs: - name: Upload runs if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: replay-ui-runs path: runs/