Files
actions/eslint-lint
Ismo Vuorinen 900dd96797 feat: add action-validator and clean up CI workflows (#513)
* chore(pre-commit): update hooks and add action-validator

Update uv-pre-commit 0.10.9→0.10.11 and checkov 3.2.508→3.2.510.
Normalize single quotes to double quotes in hook args.
Add action-validator v0.8.0 hook for GitHub Actions validation.

* fix(ci): clean up workflow path filters

Remove non-existent action.yaml paths from action-security workflow.
Fix glob patterns (**.md → **/*.md) in pr-lint workflow.
Remove unused trigger paths (yarn.lock, pnpm-lock.yaml,
requirements.txt, .github/labels.yml, docs/**) from security-suite
and sync-labels workflows.

* feat(make): add lint-actions target for action-validator

Add lint-actions target that runs action-validator via pre-commit.
Include it in the lint dependency list and .PHONY declaration.

* docs: add context-mode routing rules to CLAUDE.md

Add mandatory routing rules section for context-mode MCP plugin,
documenting blocked commands, redirected tools, tool selection
hierarchy, and output constraints.

* fix(lint): resolve action-validator failure on language-version-detect

- Remove unsupported `deprecated: true` from language-version-detect/action.yml
  (deprecation already communicated via description field)
- Scope action-validator pre-commit hook to workflow and action.yml files only
- Make missing pre-commit a hard error in lint-actions target

* fix(deps): update action pins and fix trivy-action version comment

Update SHA-pinned action references to latest versions:
- github/codeql-action v4.32.6 → v4.33.0
- nick-fields/retry v3.0.2 → v4.0.0
- actions/cache v5.0.3 → v5.0.4
- oven-sh/setup-bun v2.1.3 → v2.2.0
- softprops/action-gh-release v2.5.0 → v2.6.1
- github/issue-metrics v4.1.0 → v4.1.1
- shivammathur/setup-php 2.36.0 → 2.37.0
- astral-sh/setup-uv v7.5.0 → v7.6.0
- terraform-linters/setup-tflint v6.2.1 → v6.2.2
- aquasecurity/trivy-action: pin from master to v0.35.0

Fix pinact warning in docker-build by adding missing v prefix
to trivy-action version comment (0.35.0 → v0.35.0).
2026-03-20 13:01:24 +02:00
..
2025-11-19 15:42:06 +02:00

ivuorinen/actions/eslint-lint

ESLint Lint

Description

Run ESLint in check or fix mode with advanced configuration and reporting

Inputs

name description required default
mode

Mode to run (check or fix)

false check
working-directory

Directory containing files to lint

false .
eslint-version

ESLint version to use

false latest
config-file

Path to ESLint config file

false .eslintrc
ignore-file

Path to ESLint ignore file

false .eslintignore
file-extensions

File extensions to lint (comma-separated)

false .js,.jsx,.ts,.tsx
cache

Enable ESLint caching

false true
max-warnings

Maximum number of warnings allowed (check mode only)

false 0
fail-on-error

Fail workflow if issues are found (check mode only)

false true
report-format

Output format for check mode (stylish, json, sarif)

false sarif
max-retries

Maximum number of retry attempts

false 3
token

GitHub token for authentication

false ""
username

GitHub username for commits (fix mode only)

false github-actions
email

GitHub email for commits (fix mode only)

false github-actions@github.com

Outputs

name description
status

Overall status (success/failure)

error-count

Number of errors found (check mode only)

warning-count

Number of warnings found (check mode only)

sarif-file

Path to SARIF report file (check mode only)

files-checked

Number of files checked (check mode only)

files-changed

Number of files changed (fix mode only)

errors-fixed

Number of errors fixed (fix mode only)

Runs

This action is a composite action.

Usage

- uses: ivuorinen/actions/eslint-lint@main
  with:
    mode:
    # Mode to run (check or fix)
    #
    # Required: false
    # Default: check

    working-directory:
    # Directory containing files to lint
    #
    # Required: false
    # Default: .

    eslint-version:
    # ESLint version to use
    #
    # Required: false
    # Default: latest

    config-file:
    # Path to ESLint config file
    #
    # Required: false
    # Default: .eslintrc

    ignore-file:
    # Path to ESLint ignore file
    #
    # Required: false
    # Default: .eslintignore

    file-extensions:
    # File extensions to lint (comma-separated)
    #
    # Required: false
    # Default: .js,.jsx,.ts,.tsx

    cache:
    # Enable ESLint caching
    #
    # Required: false
    # Default: true

    max-warnings:
    # Maximum number of warnings allowed (check mode only)
    #
    # Required: false
    # Default: 0

    fail-on-error:
    # Fail workflow if issues are found (check mode only)
    #
    # Required: false
    # Default: true

    report-format:
    # Output format for check mode (stylish, json, sarif)
    #
    # Required: false
    # Default: sarif

    max-retries:
    # Maximum number of retry attempts
    #
    # Required: false
    # Default: 3

    token:
    # GitHub token for authentication
    #
    # Required: false
    # Default: ""

    username:
    # GitHub username for commits (fix mode only)
    #
    # Required: false
    # Default: github-actions

    email:
    # GitHub email for commits (fix mode only)
    #
    # Required: false
    # Default: github-actions@github.com