From ac3d3ec5b909817fd5f1dcfadba96c6218ac6a54 Mon Sep 17 00:00:00 2001 From: Masaya Suzuki Date: Mon, 2 Dec 2024 22:08:31 +0900 Subject: [PATCH] Add fail_level and deduplicate fail_on_error --- README.md | 7 +++++++ action.yml | 8 ++++++++ src/main.ts | 2 ++ 3 files changed, 17 insertions(+) diff --git a/README.md b/README.md index ae672aef..be1996f9 100644 --- a/README.md +++ b/README.md @@ -90,8 +90,15 @@ It's same as `-reporter` flag of reviewdog. Optional. Filtering mode for the reviewdog command [added,diff_context,file,nofilter]. Default is added. +### `fail_level` + +Optional. If set to `none`, always use exit code 0 for reviewdog. Otherwise, exit code 1 for reviewdog if it finds at least 1 issue with severity greater than or equal to the given level. +Possible values: [`none`, `any`, `info`, `warning`, `error`] +Default is `none`. + ### `fail_on_error` +Deprecated, use `fail_level` instead. Optional. Exit code for reviewdog when errors are found [`true`, `false`] Default is `false`. diff --git a/action.yml b/action.yml index d8ff7c8c..c9288927 100644 --- a/action.yml +++ b/action.yml @@ -28,10 +28,18 @@ inputs: Default is added. required: false default: "added" + fail_level: + description: | + If set to `none`, always use exit code 0 for reviewdog. Otherwise, exit code 1 for reviewdog if it finds at least 1 issue with severity greater than or equal to the given level. + Possible values: [none,any,info,warning,error] + Default is `none`. + default: 'none' fail_on_error: description: | + Deprecated, use `fail_level` instead. Exit code for reviewdog when errors are found [true,false] Default is `false`. + deprecationMessage: Deprecated, use `fail_level` instead. required: false default: "false" reviewdog_flags: diff --git a/src/main.ts b/src/main.ts index 832f53f4..c364e9aa 100644 --- a/src/main.ts +++ b/src/main.ts @@ -25,6 +25,7 @@ async function run(): Promise { const level = core.getInput("level") || "error"; const reporter = core.getInput("reporter") || "github-pr-check"; const filterMode = core.getInput("filter_mode") || "added"; + const failLevel = core.getInput("fail_level") || "none"; const failOnError = core.getInput("fail_on_error") || "false"; const reviewdogFlags = core.getInput("reviewdog_flags"); const workdir = core.getInput("workdir") || "."; @@ -85,6 +86,7 @@ async function run(): Promise { `-name=${toolName}`, `-reporter=${reporter}`, `-filter-mode=${filterMode}`, + `-fail-level=${failLevel}`, `-fail-on-error=${failOnError}`, `-level=${level}`, ...flags.parse(reviewdogFlags),