diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6607f5e..59481a4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -20,7 +20,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: - go-version: "1.20" + go-version: "1.23" - run: go install mvdan.cc/sh/v3/cmd/shfmt@latest - run: shfmt -i 2 -ci -w . diff --git a/README.md b/README.md index 625c9aa..d98dd64 100644 --- a/README.md +++ b/README.md @@ -39,10 +39,17 @@ inputs: Filtering mode for the reviewdog command [added,diff_context,file,nofilter]. Default is diff_context. GitHub suggestions only support added and diff_context. default: 'diff_context' + fail_level: + description: | + Exit code 1 for reviewdog if it finds at least 1 issue with severity greater than or equal to given level [none,any,info,warning,error]. + If set to `none`, always exit with 0. + Default is `none`. + default: 'none' fail_on_error: description: | Exit code for reviewdog when errors are found [true,false] Default is `false`. + deprecationMessage: Deprecated, use `fail_level` instead. default: 'false' reviewdog_flags: description: 'Additional reviewdog flags' diff --git a/action.yml b/action.yml index d23a38e..85e29a4 100644 --- a/action.yml +++ b/action.yml @@ -21,10 +21,18 @@ inputs: Default is diff_context. GitHub suggestions only support added and diff_context. default: "diff_context" required: false + fail_level: + description: | + Exit code 1 for reviewdog if it finds at least 1 issue with severity greater than or equal to given level [any,info,warning,error]. + If set to `none`, always exit with 0. + Default is `none`. + default: "none" + required: false fail_on_error: description: | Exit code for reviewdog when errors are found [true,false] Default is `false`. + deprecationMessage: Deprecated, use `fail_level` instead. default: "false" required: false reviewdog_flags: @@ -61,6 +69,7 @@ runs: INPUT_TOOL_NAME: ${{ inputs.tool_name }} INPUT_LEVEL: ${{ inputs.level }} INPUT_FILTER_MODE: ${{ inputs.filter_mode }} + INPUT_FAIL_LEVEL: ${{ inputs.fail_level }} INPUT_FAIL_ON_ERROR: ${{ inputs.fail_on_error }} INPUT_REVIEWDOG_FLAGS: ${{ inputs.reviewdog_flags }} INPUT_CLEANUP: ${{ inputs.cleanup }} diff --git a/script.sh b/script.sh index fc2343d..4460047 100755 --- a/script.sh +++ b/script.sh @@ -19,6 +19,7 @@ reviewdog \ -f.diff.strip=1 \ -reporter="github-pr-review" \ -filter-mode="${INPUT_FILTER_MODE}" \ + -fail-level="${INPUT_FAIL_LEVEL}" \ -fail-on-error="${INPUT_FAIL_ON_ERROR}" \ -level="${INPUT_LEVEL}" \ ${INPUT_REVIEWDOG_FLAGS} <"${TMPFILE}" # INPUT_REVIEWDOG_FLAGS is intentionally split to pass multiple flags