ci: update GitHub Actions for Node 24#73
Conversation
WalkthroughThis 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)
✅ Passed checks (4 passed)
✏️ 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. Comment |
What does this PR do?
Updates GitHub Actions workflow dependencies ahead of GitHub’s Node 20 runner deprecation.
This PR:
checkout,setup-go,setup-node,setup-python,cache).harden-runner, Depot, AWS, Docker login, cosign).v1.13.2and setsFORCE_JAVASCRIPT_ACTIONS_TO_NODE24=truebecause Stainless still declaresnode20upstream.schemathesis/actionwith explicit Python setup + pinned Schemathesis install to avoid Node 20 transitive action usage.gooseandriverwith the repo’s canonical versions.Fixes #
How should this be tested?
Validation performed:
ruby -e 'require "yaml"; ARGV.each { |f| YAML.load_file(f); puts "ok #{f}" }' .github/workflows/*.ymlgit diff --checkgoose@v3.27.0river@v0.31.0CI should also run the updated workflows on this PR.
Checklist
Required
make buildmake tests(integration tests intests/)make fmtandmake lint; no new warningsgit pull origin mainmigrations/with goose annotations and ranmake migrate-validateAppreciated
make testsor API contract workflow)docs/if changes were necessarymake tests-coveragefor meaningful logic changes