0
0
Fork 0
mirror of https://github.com/DavidAnson/markdownlint-cli2-action.git synced 2024-12-22 12:53:32 +01:00
A GitHub Action to run the markdownlint-cli2 tool for linting Markdown/CommonMark files with the markdownlint library
Find a file
2022-11-18 09:15:11 -08:00
.github Relax versioning of tj-actions/changed-files GitHub Action to reduce noise from dependency updates. 2022-11-18 09:15:11 -08:00
config Move .markdownlint.jsonc file to avoid interfering with action tests. 2022-07-22 23:16:36 -07:00
dist Regenerate index.js after dependency updates. 2022-08-13 17:38:04 -07:00
test
.eslintrc.json Customize new ESLint rule unicorn/switch-case-braces. 2022-10-04 23:00:40 -07:00
.gitignore
.npmrc Default to package-lock=false in .npmrc. 2021-02-20 19:02:26 -08:00
action.yml Remove unnecessary quotes from YAML code/examples, standardize on single (vs. double) quotes, add test for invalid configuration file. 2022-07-23 13:28:59 -07:00
LICENSE Update copyright year for 2022. 2022-01-22 15:36:45 -08:00
markdownlint-cli2-action.js Add "command" input to allow invoking -fix and -config commands (fixes #7, fixes #8). 2022-07-21 22:24:48 -07:00
package.json Bump eslint from 8.26.0 to 8.27.0 2022-11-08 18:03:24 -08:00
README.md Update documentation and example to reference @v7. 2022-08-13 17:32:14 -07:00

markdownlint-cli2-action

A GitHub Action to run the markdownlint-cli2 tool for linting Markdown/CommonMark files with markdownlint

markdownlint-cli2 has extensive support for configuring options and disabling or customizing markdownlint rules. See the markdownlint-cli2 README for more information. markdownlint includes a wide variety of rules for analyzing and improving Markdown content. See the markdownlint README for more information.

Inputs

command (optional)

Command to run (unset, fix, or config)

If unspecified or "", the markdownlint-cli2 command is run.

If set to fix, the markdownlint-cli2-fix command is run and supported issues will be fixed automatically.

If set to config, the markdownlint-cli2-config command is run and the first element of globs should specify a supported configuration file.

For more detail: documentation for markdownlint-cli2.

globs (optional)

Glob expression(s) of files to lint (newline-delimited)

The default *.{md,markdown} lints all Markdown files in the base directory of a project.

For more detail: glob syntax in markdownlint-cli2.

Outputs

[None]

Examples

To lint Markdown files in the base directory of a project:

- uses: DavidAnson/markdownlint-cli2-action@v7

To lint all Markdown files in a project:

- uses: DavidAnson/markdownlint-cli2-action@v7
  with:
    globs: '**/*.md'

To lint specific Markdown files in a project:

- uses: DavidAnson/markdownlint-cli2-action@v7
  with:
    globs: |
      README.md
      CHANGELOG.md
      docs/*.md      

To fix supported issues when linting:

- uses: DavidAnson/markdownlint-cli2-action@v7
  with:
    command: fix
    globs: '**/*.md'

To specify a custom configuration file:

- uses: DavidAnson/markdownlint-cli2-action@v7
  with:
    command: config
    globs: |
      config/custom.markdownlint.jsonc
      **/*.md      

To prevent linting issues from failing the workflow run:

- uses: DavidAnson/markdownlint-cli2-action@v7
  continue-on-error: true

See example.yml for a simple GitHub workflow that uses markdownlint-cli2-action.

See changed.yml for a GitHub workflow that lints only the Markdown files that changed in the most recent commit (useful for Pull Requests and/or gradually introducing linting rules to a new repository).