yamllint/README.md
Ilir Bekteshi 76fdac3839
Use yamllint github format to set file annotations on errors & warnings (#12)
* Use github format output

* Add few tests

* Config yamllint
2020-10-22 12:23:39 +02:00

74 lines
1.7 KiB
Markdown

# GitHub YAMLlint
This action executes `yamllint` (https://github.com/adrienverge/yamllint) against file(s) or folder
## Usage
Simple as:
```yaml
- uses: ibiqlik/action-yamllint@v2
```
### Optional parameters
- `config_file` - Path to custom configuration
- `config_data` - Custom configuration (as YAML source)
- `file_or_dir` - Enter file/folder (space separated), wildcards accepted. Examples:
- `.` - run against all yaml files in a directory recursively (default)
- `file1.yaml`
- `file1.yaml file2.yaml`
- `kustomize/**/*.yaml mychart/*values.yaml`
- `format` - Format for parsing output [parsable,standard,colored,github,auto] (default: github)
- `strict` - Return non-zero exit code on warnings as well as errors [true,false] (default: false)
### Example usage in workflow
```yaml
name: Yaml Lint
on: [push]
jobs:
lintAllTheThings:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: yaml-lint
uses: ibiqlik/action-yamllint@v2
with:
file_or_dir: myfolder/*values*.yaml
config_file: .yamllint.yml
```
Or just simply check all yaml files in the repository:
```yaml
name: Yaml Lint
on: [push]
jobs:
lintAllTheThings:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: yaml-lint
uses: ibiqlik/action-yamllint@v2
```
**Note:** Action will use `.yamllint` as configuration file automatically if it is available in root.
Config data examples:
```yaml
# Single line
config_data: "{extends: default, rules: {new-line-at-end-of-file: disable}}"
```
``` yaml
# Multi line
config_data: |
extends: default
rules:
new-line-at-end-of-file:
level: warning
trailing-spaces:
level: warning
```