GitHub Action
Run ktlint with reviewdog
This action runs ktlint with reviewdog on pull requests to enforce best practices.
By default, with reporter: github-pr-check
an annotation is added to
the line:
With reporter: github-pr-review
a comment is added to
the Pull Request Conversation:
Required. Must be in form of github_token: ${{ secrets.github_token }}
.
Optional. Report level for reviewdog [info
,warning
,error
].
It's same as -level
flag of reviewdog.
The default is error
.
Optional. Reporter of reviewdog command [github-pr-check
,github-pr-review
, github-check
].
The default is github-pr-check
.
See reviewdog reporters documentation for more details on their functionality.
Optional. Filtering for the reviewdog command [added
,diff_context
,file
,nofilter
].
The default is added
.
See reviewdog filter mode documentation for more details.
Optional. Exit code for reviewdog when errors are found [true
,false
]
Default is false.
See reviewdog fail on error documentation for more details.
Optional. Print files relative to the working directory [true
/false
]
The default value is true.
Optional. Runs KtLint with Android Kotlin Style Guide [true
/false
]
The default value is false.
Note: this field has no effect if ktlint_version
is 1.0.1 or later. code-style
command-line argument is deprecated in ktlint. Instead, ktlint_code_style
property in .editorconfig
needs to be used. Example:
[*.{kt,kts}]
ktlint_code_style = android_studio
More in https://pinterest.github.io/ktlint/latest/rules/code-styles/
Optional. Runs checks against the baseline file provided.
Optional. Defines the ktlint version to use.
The default value is latest
.
Optional. Reviewdog report name. See checkstyle-format for details.
The default value is ktlint
.
Optional. Defines a file glob to identify files to be checked. The default value is an empty string.
Optional. Provides path to JAR file with custom rules. The default value is an empty string.
name: reviewdog
on: [pull_request]
jobs:
ktlint:
name: Check Code Quality
runs-on: ubuntu-latest
steps:
- name: Clone repo
uses: actions/checkout@master
with:
fetch-depth: 1
- name: ktlint
uses: ScaCap/action-ktlint@master
with:
github_token: ${{ secrets.github_token }}
reporter: github-pr-review # Change reporter