Add required actions rule (and supporting tests) to enforce usage of specific GitHub Actions in workflows #474
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements issue #469 that I raised a few days ago. It introduces a new linting rule to ensure specific GitHub Actions are present in workflows, along with corresponding tests. Changes include updating the configuration structure, adding the new rule to the linter, implementing the rule, and creating tests for it.
Configuration Changes:
RequiredActions
field to theConfig
struct inconfig.go
to specify mandatory GitHub Actions in workflows.Linter Rule Implementation:
linter.go
to include the new ruleRuleRequiredActions
ifRequiredActions
are specified in the configuration.rule_required_actions.go
to define theRequiredActionRule
struct and implement theRuleRequiredActions
class, which checks for the presence and correct version of required GitHub Actions in workflows.Testing:
rule_required_actions_test.go
to test the functionality ofRuleRequiredActions
and theparseActionRef
function. This includes various test cases to ensure the rule works correctly under different scenarios.