[PR #5242] Upgrade GitHub Actions for Node 24 compatibility #22485

Open
opened 2026-08-05 06:06:01 -04:00 by saavagebueno · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/netbirdio/netbird/pull/5242
Author: @salmanmkc
Created: 2/3/2026
Status: 🔄 Open

Base: mainHead: upgrade-github-actions-node24


📝 Commits (1)

  • 77495bb Upgrade GitHub Actions for Node 24 compatibility

📊 Changes

13 files changed (+74 additions, -74 deletions)

View changed files

📝 .github/workflows/check-license-dependencies.yml (+3 -3)
📝 .github/workflows/docs-ack.yml (+1 -1)
📝 .github/workflows/git-town.yml (+1 -1)
📝 .github/workflows/golang-test-darwin.yml (+3 -3)
📝 .github/workflows/golang-test-freebsd.yml (+1 -1)
📝 .github/workflows/golang-test-linux.yml (+27 -27)
📝 .github/workflows/golang-test-windows.yml (+3 -3)
📝 .github/workflows/golangci-lint.yml (+3 -3)
📝 .github/workflows/install-script-test.yml (+1 -1)
📝 .github/workflows/mobile-build-validation.yml (+6 -6)
📝 .github/workflows/release.yml (+17 -17)
📝 .github/workflows/test-infrastructure-files.yml (+4 -4)
📝 .github/workflows/wasm-build-validation.yml (+4 -4)

📄 Description

Summary

Upgrade GitHub Actions to their latest versions to ensure compatibility with Node 24, as Node 20 will reach end-of-life in April 2026.

Changes

Action Old Version(s) New Version Release Files
actions/cache v4 v5 Release golang-test-darwin.yml, golang-test-linux.yml, golang-test-windows.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml
actions/cache/restore v4 v5 Release golang-test-linux.yml
actions/checkout v4 v6 Release check-license-dependencies.yml, git-town.yml, golang-test-darwin.yml, golang-test-freebsd.yml, golang-test-linux.yml, golang-test-windows.yml, golangci-lint.yml, install-script-test.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml, wasm-build-validation.yml
actions/github-script v7 v8 Release docs-ack.yml
actions/setup-go v5 v6 Release check-license-dependencies.yml, golang-test-darwin.yml, golang-test-linux.yml, golang-test-windows.yml, golangci-lint.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml, wasm-build-validation.yml
actions/setup-java v4 v5 Release mobile-build-validation.yml
actions/upload-artifact v4 v6 Release release.yml

Context

Per GitHub's announcement, Node 20 is being deprecated and runners will begin using Node 24 by default starting March 4th, 2026.

Why this matters

  • Node 20 EOL: April 2026
  • Node 24 default: March 4th, 2026
  • Action: Update to latest action versions that support Node 24

Security Note

Actions that were previously pinned to commit SHAs remain pinned to SHAs (updated to the latest release SHA) to maintain the security benefits of immutable references.

Testing

These changes only affect CI/CD workflow configurations and should not impact application functionality. The workflows should be tested by running them on a branch before merging.

Summary by CodeRabbit

  • Chores
    • Updated GitHub Actions workflow steps to newer action versions across all build, test, and deployment pipelines, including checkout, setup-go, cache, and related tools.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/netbirdio/netbird/pull/5242 **Author:** [@salmanmkc](https://github.com/salmanmkc) **Created:** 2/3/2026 **Status:** 🔄 Open **Base:** `main` ← **Head:** `upgrade-github-actions-node24` --- ### 📝 Commits (1) - [`77495bb`](https://github.com/netbirdio/netbird/commit/77495bb102454413dcf80afca87222d38fd71524) Upgrade GitHub Actions for Node 24 compatibility ### 📊 Changes **13 files changed** (+74 additions, -74 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/check-license-dependencies.yml` (+3 -3) 📝 `.github/workflows/docs-ack.yml` (+1 -1) 📝 `.github/workflows/git-town.yml` (+1 -1) 📝 `.github/workflows/golang-test-darwin.yml` (+3 -3) 📝 `.github/workflows/golang-test-freebsd.yml` (+1 -1) 📝 `.github/workflows/golang-test-linux.yml` (+27 -27) 📝 `.github/workflows/golang-test-windows.yml` (+3 -3) 📝 `.github/workflows/golangci-lint.yml` (+3 -3) 📝 `.github/workflows/install-script-test.yml` (+1 -1) 📝 `.github/workflows/mobile-build-validation.yml` (+6 -6) 📝 `.github/workflows/release.yml` (+17 -17) 📝 `.github/workflows/test-infrastructure-files.yml` (+4 -4) 📝 `.github/workflows/wasm-build-validation.yml` (+4 -4) </details> ### 📄 Description ## Summary Upgrade GitHub Actions to their latest versions to ensure compatibility with Node 24, as Node 20 will reach end-of-life in April 2026. ## Changes | Action | Old Version(s) | New Version | Release | Files | |--------|---------------|-------------|---------|-------| | `actions/cache` | [`v4`](https://github.com/actions/cache/releases/tag/v4) | [`v5`](https://github.com/actions/cache/releases/tag/v5) | [Release](https://github.com/actions/cache/releases/tag/v5) | golang-test-darwin.yml, golang-test-linux.yml, golang-test-windows.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml | | `actions/cache/restore` | [`v4`](https://github.com/actions/cache/restore/releases/tag/v4) | [`v5`](https://github.com/actions/cache/restore/releases/tag/v5) | [Release](https://github.com/actions/cache/restore/releases/tag/v5) | golang-test-linux.yml | | `actions/checkout` | [`v4`](https://github.com/actions/checkout/releases/tag/v4) | [`v6`](https://github.com/actions/checkout/releases/tag/v6) | [Release](https://github.com/actions/checkout/releases/tag/v6) | check-license-dependencies.yml, git-town.yml, golang-test-darwin.yml, golang-test-freebsd.yml, golang-test-linux.yml, golang-test-windows.yml, golangci-lint.yml, install-script-test.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml, wasm-build-validation.yml | | `actions/github-script` | [`v7`](https://github.com/actions/github-script/releases/tag/v7) | [`v8`](https://github.com/actions/github-script/releases/tag/v8) | [Release](https://github.com/actions/github-script/releases/tag/v8) | docs-ack.yml | | `actions/setup-go` | [`v5`](https://github.com/actions/setup-go/releases/tag/v5) | [`v6`](https://github.com/actions/setup-go/releases/tag/v6) | [Release](https://github.com/actions/setup-go/releases/tag/v6) | check-license-dependencies.yml, golang-test-darwin.yml, golang-test-linux.yml, golang-test-windows.yml, golangci-lint.yml, mobile-build-validation.yml, release.yml, test-infrastructure-files.yml, wasm-build-validation.yml | | `actions/setup-java` | [`v4`](https://github.com/actions/setup-java/releases/tag/v4) | [`v5`](https://github.com/actions/setup-java/releases/tag/v5) | [Release](https://github.com/actions/setup-java/releases/tag/v5) | mobile-build-validation.yml | | `actions/upload-artifact` | [`v4`](https://github.com/actions/upload-artifact/releases/tag/v4) | [`v6`](https://github.com/actions/upload-artifact/releases/tag/v6) | [Release](https://github.com/actions/upload-artifact/releases/tag/v6) | release.yml | ## Context Per [GitHub's announcement](https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/), Node 20 is being deprecated and runners will begin using Node 24 by default starting March 4th, 2026. ### Why this matters - **Node 20 EOL**: April 2026 - **Node 24 default**: March 4th, 2026 - **Action**: Update to latest action versions that support Node 24 ### Security Note Actions that were previously pinned to commit SHAs remain pinned to SHAs (updated to the latest release SHA) to maintain the security benefits of immutable references. ### Testing These changes only affect CI/CD workflow configurations and should not impact application functionality. The workflows should be tested by running them on a branch before merging. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated GitHub Actions workflow steps to newer action versions across all build, test, and deployment pipelines, including checkout, setup-go, cache, and related tools. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
saavagebueno added the pull-request label 2026-08-05 06:06:01 -04:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#22485