Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ScaCap/action-ktlint
Run Ktlint with reviewdog
https://github.com/ScaCap/action-ktlint
github-actions kotlin ktlint reviewdog
Last synced: 3 months ago
JSON representation
Run Ktlint with reviewdog
- Host: GitHub
- URL: https://github.com/ScaCap/action-ktlint
- Owner: ScaCap
- License: apache-2.0
- Created: 2020-01-31T08:49:05.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-07-12T10:24:02.000Z (4 months ago)
- Last Synced: 2024-07-12T11:55:18.122Z (4 months ago)
- Topics: github-actions, kotlin, ktlint, reviewdog
- Language: Shell
- Homepage:
- Size: 144 KB
- Stars: 80
- Watchers: 24
- Forks: 30
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-ccamel - ScaCap/action-ktlint - Run Ktlint with reviewdog (Shell)
README
# GitHub Action: Run ktlint with reviewdog
This action runs [ktlint](https://ktlint.github.io/) with
[reviewdog](https://github.com/reviewdog/reviewdog) on pull requests
to enforce best practices.## Examples
### With `github-pr-check`
By default, with `reporter: github-pr-check` an annotation is added to
the line:
![Example comment made by the action, with github-pr-check](./github-pr-check.png)### With `github-pr-review`
With `reporter: github-pr-review` a comment is added to
the Pull Request Conversation:
![Example comment made by the action, with github-pr-review](./github-pr-review.png)## Inputs
### `github_token`
**Required**. Must be in form of `github_token: ${{ secrets.github_token }}`.
### `level`
Optional. Report level for reviewdog [`info`,`warning`,`error`].
It's same as `-level` flag of reviewdog.
The default is `error`.### `reporter`
Optional. Reporter of reviewdog command [`github-pr-check`,`github-pr-review`, `github-check`].
The default is `github-pr-check`.See reviewdog reporters [documentation](https://github.com/reviewdog/reviewdog/tree/master#exit-codes)
for more details on their functionality.### `filter_mode`
Optional. Filtering for the reviewdog command [`added`,`diff_context`,`file`,`nofilter`].
The default is `added`.See reviewdog filter mode [documentation](https://github.com/reviewdog/reviewdog/tree/master#filter-mode) for more details.
### `fail_on_error`
Optional. Exit code for reviewdog when errors are found [`true`,`false`]
Default is false.See reviewdog fail on error [documentation](https://github.com/reviewdog/reviewdog/tree/master#exit-codes) for more details.
### `relative`
Optional. Print files relative to the working directory [`true`/`false`]
The default value is true.### `android` (deprecated)
Optional. Runs KtLint with [Android Kotlin Style Guide](https://android.github.io/kotlin-guides/style.html) [`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:
```editorconfig
[*.{kt,kts}]
ktlint_code_style = android_studio
```More in https://pinterest.github.io/ktlint/latest/rules/code-styles/
### `baseline`
Optional. Runs checks against the baseline file provided.
### `ktlint_version`
Optional. Defines the [ktlint](https://ktlint.github.io/) version to use.
The default value is `latest`.### `name`
Optional. Reviewdog report name. See [checkstyle-format](https://github.com/reviewdog/reviewdog/tree/master#checkstyle-format) for details.
The default value is `ktlint`.### `file_glob`
Optional. Defines a file glob to identify files to be checked.
The default value is an empty string.### `custom_rule_path`
Optional. Provides path to JAR file with custom rules. The default value is an empty string.
## Example usage
```yml
name: reviewdog
on: [pull_request]
jobs:
ktlint:
name: Check Code Quality
runs-on: ubuntu-lateststeps:
- 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
```