Rule set "Default" (default)¶
ComponentCountRule(workflows, actions)TooManyJobs: Workflow has too many jobs.TooManySteps: Job has too many steps.
DoubleCurlyIfRule(workflows, actions)DoubleCurlyIf: if: is not wrapped in double-curly-braces.
DuplicateShellRule(workflows)DuplicateShellOnSteps: Multiple steps have the shell defined.
DuplicateStepIdRule(workflows, actions)DuplicateStepId: Steps must have unique identifiers within a job.SimilarStepId: Steps should have distinguishable identifiers within a job.
EmptyEnvRule(workflows, actions)EmptyJobEnv: Job has empty env.EmptyStepEnv: Step has empty env.EmptyWorkflowEnv: Workflow has empty env.
EnvironmentFileOverwriteRule(workflows, actions)EnvironmentFileOverwritten: Environment files should be appended.
ExplicitJobPermissionsRule(workflows)ExplicitJobPermissions: Permissions should be declared on the job level only.MissingJobPermissions: Permissions are not declared.
FailFastActionsRule(workflows, actions)FailFastPeterEvansCreatePullRequest:peter-evans/create-pull-requesthas unsafe edge cases, usegh pr createinstead.FailFastPublishUnitTestResults:publish-unit-test-result-actionshould fail fast.FailFastSoftpropsGhRelease:action-gh-releaseshould fail fast.FailFastUploadArtifact:upload-artifactshould fail fast.
IdNamingRule(workflows, actions)JobIdNaming: Job should have a lower-case kebab ID.StepIdNaming: Step should have a lower-case kebab ID.WorkflowIdNaming: Workflow should have a lower-case kebab ID.
ImplicitStatusCheckRule(workflows, actions)NegativeStatusCheck: Use positive conditions.NeverUseAlways: Usingalways()is discouraged.
InvalidExpressionUsageRule(workflows, actions)InvalidExpressionUsage: Stepusesmust not contain expressions.
JobDependenciesRule(workflows)JobDependencyCycle: Cycle in job dependencies (needs).MissingNeedsJob: Needs references a missing job.
MissingGhRepoRule(workflows, actions)MissingGhRepo:GH_REPOor checkout is required for using theghCLI tool.
MissingGhTokenRule(workflows, actions)MissingGhHost:GH_HOSTis required for using theghCLI tool withGH_ENTERPRISE_TOKEN.MissingGhToken:GH_TOKENis required for using theghCLI tool.
MissingJobTimeoutRule(workflows)MissingJobTimeout: Job is missing a timeout.
MissingNameRule(workflows, actions)MissingJobName: Job is missing a name.MissingStepName: Step is missing a name.MissingWorkflowName: Workflow is missing a name.
MissingShellRule(workflows)MissingShell: Run step is missing a shell.
PreferGitHubTokenRule(workflows, actions)PreferGitHubToken: Prefergithub.tokeninstead ofsecrets.GITHUB_TOKEN.
RedundantShellRule(workflows)RedundantDefaultShell: Same default shell is defined both on job and workflow.RedundantShell: Same shell is defined both on step and globally.
SafeEnvironmentFileRedirectRule(workflows, actions)SafeEnvironmentFileRedirect:GITHUB_OUTPUTmust be quoted.
ScriptInjectionRule(workflows, actions)JSScriptInjection: JavaScript vulnerable to script injection.ShellScriptInjection: Shell script vulnerable to script injection.