ci(repo): add actionlint workflow check#8874
Conversation
Lint GitHub Actions workflows on every PR via rhysd/actionlint (pinned by digest), with .github/actionlint.yaml declaring the Blacksmith self-hosted runner labels and shellcheck SC2086/SC2129/SC2162 excluded for the intentional $TURBO_ARGS word-splitting. Clears the two real findings the lint surfaced: drop a dead E2E_CLERK_ENCRYPTION_KEY matrix env (always empty; consumers default to 'a-key'), and migrate the release notification step off the deprecated ::set-output to $GITHUB_OUTPUT, passing inputs via env so github.actor is no longer interpolated into the shell.
🦋 Changeset detectedLatest commit: 9fffd50 The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Repository UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughAdds an ChangesCI Workflow Improvements
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
Adds an actionlint check that lints every workflow on each PR. The linter is the rhysd/actionlint Docker image pinned by digest, and
.github/actionlint.yamldeclares the Blacksmith runner label and drops the SC2086/SC2129/SC2162 shellcheck noise from the intentional$TURBO_ARGSsplitting.Getting it to green surfaced two real things.
ci.ymlsetE2E_CLERK_ENCRYPTION_KEYfrom a matrix key that doesn't exist, so it was always empty; the integration harness already defaults that to'a-key', so dropping the line is a runtime no-op. And the release Slack-notification step still used the deprecated::set-output. I moved it to$GITHUB_OUTPUTand pushedpublishedPackagesandgithub.actorthroughenvso they're no longer interpolated into the shell. That second change is the only one with any runtime behavior, so it's the part worth scrutiny: the output stays multi-line JSON via a heredoc, verified against an actor name containing a quote.Related: SDK-79
Summary by CodeRabbit
Summary by CodeRabbit
actionlintconfiguration and a dedicated workflow to lint GitHub Actions workflows for syntax and safety.GITHUB_OUTPUT, ensuring correctly formatted multiline output.