eslint-plugin-github-action
Rules for consistent, readable and valid GitHub action files.
Install
npm install eslint-plugin-github-action -D
yarn add eslint-plugin-github-action -D
pnpm add eslint-plugin-github-action -D
Usage
Config in ESLint config files:
import { defineConfig } from 'eslint/config'
import pluginGitHubAction from 'eslint-plugin-github-action'
export default defineConfig([
...pluginGitHubAction.configs.recommended,
// Other configs...
])
:apple: For advanced usaged, please check Advanced Usage
Rules
💼 Configurations enabled in.\
✅ Set in the recommended
preset.\
🔧 Automatically fixable by the --fix
CLI option.\
💡 Manually fixable by editor suggestions.
Name | Description | 💼 | 🔧 | 💡 |
---|---|---|---|---|
action-name-casing | Enforce naming convention to action name. | | 🔧 | ||
job-id-casing | Enforce naming convention to job id. | | | ||
max-jobs-per-action | Enforce maximum jobs per action file. | | | ||
no-external-job | Disallow using external job. | | | ||
no-invalid-key | Disallow using invalid key. | ✅ | | | |
no-top-level-env | Disallow using top level env. | | | ||
no-top-level-permissions | Disallow using top level permissions. | | | ||
prefer-fail-fast | Disallow setting fail-fast to false. | | | ||
prefer-file-extension | Enforce action file extension. | ✅ | | | |
prefer-step-uses-style | Enforce the style of job step uses. | | | ||
require-action-name | Require a string action name. | ✅ | | | |
require-action-run-name | Require a string action run-name. | | | ||
require-job-name | Require a string job name. | | | ||
require-job-step-name | Require a string job step name. | | | ||
valid-trigger-events | Disallow invalid trigger events. | ✅ | 🔧 | |
valid-timeout-minutes | Disallow invalid timeout-minutes. | ✅ |