Skip to content

ci: update GitHub Actions for Node 24#73

Merged
xernobyl merged 1 commit into
mainfrom
ci/node24-deprecation
May 7, 2026
Merged

ci: update GitHub Actions for Node 24#73
xernobyl merged 1 commit into
mainfrom
ci/node24-deprecation

Conversation

@xernobyl
Copy link
Copy Markdown
Contributor

@xernobyl xernobyl commented May 7, 2026

What does this PR do?

Updates GitHub Actions workflow dependencies ahead of GitHub’s Node 20 runner deprecation.

This PR:

  • Upgrades official GitHub actions to Node 24-compatible releases (checkout, setup-go, setup-node, setup-python, cache).
  • Updates third-party workflow actions where newer compatible versions are available (harden-runner, Depot, AWS, Docker login, cosign).
  • Updates Stainless actions to v1.13.2 and sets FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true because Stainless still declares node20 upstream.
  • Replaces schemathesis/action with explicit Python setup + pinned Schemathesis install to avoid Node 20 transitive action usage.
  • Aligns CI tool pins for goose and river with the repo’s canonical versions.

Fixes #

How should this be tested?

Validation performed:

  • Parsed all workflow YAML:
    • ruby -e 'require "yaml"; ARGV.each { |f| YAML.load_file(f); puts "ok #{f}" }' .github/workflows/*.yml
  • Checked diff formatting:
    • git diff --check
  • Verified stale pins are gone for:
    • Node 20 workflow runtime
    • old Stainless SHA
    • goose@v3.27.0
    • river@v0.31.0
    • old cosign installer SHA

CI should also run the updated workflows on this PR.

Checklist

Required

  • Filled out the "How to test" section in this PR
  • Read Repository Guidelines
  • Self-reviewed my own code
  • Commented on my code in hard-to-understand bits
  • Ran make build
  • Ran make tests (integration tests in tests/)
  • Ran make fmt and make lint; no new warnings
  • Removed debug prints / temporary logging
  • Merged the latest changes from main onto my branch with git pull origin main
  • If database schema changed: added migration in migrations/ with goose annotations and ran make migrate-validate

Appreciated

  • If API changed: added or updated OpenAPI spec and ran contract tests (make tests or API contract workflow)
  • If API behavior changed: added request/response examples or Swagger UI screenshots to this PR
  • Updated docs in docs/ if changes were necessary
  • Ran make tests-coverage for meaningful logic changes

@xernobyl xernobyl changed the title ci: bump workflow versions ci: update GitHub Actions for Node 24 May 7, 2026
@xernobyl xernobyl requested a review from BhagyaAmarasinghe May 7, 2026 14:47
@xernobyl xernobyl enabled auto-merge May 7, 2026 14:51
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 7, 2026

Review Change Stack

Walkthrough

This PR updates GitHub Actions workflows across the repository to use newer pinned versions of core actions (checkout v6.0.2, setup-go v6.4.0, cache v5.0.5) and specialized tools (harden-runner v2.19.1, Depot, AWS, Cosign). It upgrades migration tool CLIs (goose to v3.27.1, river to v0.35.0) used in testing and validation jobs. The most significant functional change replaces Schemathesis action-based invocation with direct CLI execution via pip-installed version 4.4.4, adding Python 3.13 setup and segregating standard API conformance tests from search-endpoint tests. The stainless-action workflow also adds Node 24 environment configuration for JavaScript compatibility enforcement.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description is incomplete with placeholder text and no concrete details about the changes, testing steps, or which issue is addressed. Fill in the specific issue number in 'Fixes #(issue)', provide concrete testing steps instead of placeholder 'Test A/B', and describe the actual changes made to the workflow files.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The PR title 'ci: update GitHub Actions for Node 24' is specific and directly describes the main change—updating GitHub Actions workflows in preparation for Node 24 compatibility ahead of Node 20 deprecation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@xernobyl xernobyl added this pull request to the merge queue May 7, 2026
Merged via the queue into main with commit 5909ceb May 7, 2026
12 checks passed
@xernobyl xernobyl deleted the ci/node24-deprecation branch May 7, 2026 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants