Simplify GitHub Action entrypoint (#2119)

This commit simplifies entrypoint.sh for GitHub Actions by removing
duplication of args and black_args (cf. #1909).

The reason why #1909 uses the input id black_args is to avoid an overlap
with args, but this naming seems redundant. So let me suggest option
and src, which are consistent with CLI. Backward compatibility is
guaranteed; Users can still use black_args as well.

Commit history pre-merge:
* Simplify GitHub Action entrypoint (#1909)
* Fix prettier
* Emit a warning message when `black_args` is used

  This deprecation should be visible in GitHub Action's UI now.

  Co-authored-by: Shota Ray Imaki <shota.imaki.0801@gmail.com>
  Co-authored-by: Richard Si <63936253+ichard26@users.noreply.github.com>
This commit is contained in:
Shota Ray Imaki 2021-05-06 11:25:43 +09:00 committed by GitHub
parent 07c8812937
commit 5316836393
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 22 deletions

View File

@ -425,15 +425,17 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: psf/black@stable
with:
args: ". --check"
```
### Inputs
You may use `options` (Default is `'--check --diff'`) and `src` (Default is `'.'`) as
follows:
#### `black_args`
**optional**: Black input arguments. Defaults to `. --check --diff`.
```yaml
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./src"
```
## Ignoring unmodified files

View File

@ -2,8 +2,18 @@ name: "Black"
description: "The uncompromising Python code formatter."
author: "Łukasz Langa and contributors to Black"
inputs:
options:
description:
"Options passed to black. Use `black --help` to see available options. Default:
'--check'"
required: false
default: "--check --diff"
src:
description: "Source to run black. Default: '.'"
required: false
default: "."
black_args:
description: "Black input arguments."
description: "[DEPRECATED] Black input arguments."
required: false
default: ""
branding:

View File

@ -1,17 +1,8 @@
#!/bin/bash
set -e
#!/bin/bash -e
# If no arguments are given use current working directory
black_args=(".")
if [ "$#" -eq 0 ] && [ "${INPUT_BLACK_ARGS}" != "" ]; then
black_args+=(${INPUT_BLACK_ARGS})
elif [ "$#" -ne 0 ] && [ "${INPUT_BLACK_ARGS}" != "" ]; then
black_args+=($* ${INPUT_BLACK_ARGS})
elif [ "$#" -ne 0 ] && [ "${INPUT_BLACK_ARGS}" == "" ]; then
black_args+=($*)
else
# Default (if no args provided).
black_args+=("--check" "--diff")
fi
if [ -n $INPUT_BLACK_ARGS ]; then
echo '::warning::Input `with.black_args` is deprecated. Use `with.options` and `with.src` instead.'
black $INPUT_BLACK_ARGS
exit $?
sh -c "black . ${black_args[*]}"
black $INPUT_OPTIONS $INPUT_SRC