X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/4005246f86d1459e1123ac399721054182e9fef6..882d8795c6ff65c02f2657e596391748d1b6b7f5:/action.yml diff --git a/action.yml b/action.yml index ddf0793..8b698ae 100644 --- a/action.yml +++ b/action.yml @@ -5,13 +5,18 @@ inputs: options: description: "Options passed to Black. Use `black --help` to see available options. Default: - '--check'" + '--check --diff'" required: false default: "--check --diff" src: description: "Source to run Black. Default: '.'" required: false default: "." + jupyter: + description: + "Set this option to true to include Jupyter Notebook files. Default: false" + required: false + default: false black_args: description: "[DEPRECATED] Black input arguments." required: false @@ -28,31 +33,32 @@ branding: runs: using: composite steps: - - run: | - # Exists since using github.action_path + path to main script doesn't work because bash - # interprets the backslashes in github.action_path (which are used when the runner OS - # is Windows) destroying the path to the target file. - # - # Also semicolons are necessary because I can't get the newlines to work - entrypoint="import sys; - import subprocess; - from pathlib import Path; - - MAIN_SCRIPT = Path(r'${{ github.action_path }}') / 'action' / 'main.py'; - - proc = subprocess.run([sys.executable, str(MAIN_SCRIPT)]); - sys.exit(proc.returncode) - " - + - name: black + run: | if [ "$RUNNER_OS" == "Windows" ]; then - echo $entrypoint | python + runner="python" else - echo $entrypoint | python3 + runner="python3" fi + + out=$(${runner} $GITHUB_ACTION_PATH/action/main.py) + exit_code=$? + + # Display the raw output in the step + echo "${out}" + + # Display the Markdown output in the job summary + echo "\`\`\`python" >> $GITHUB_STEP_SUMMARY + echo "${out}" >> $GITHUB_STEP_SUMMARY + echo "\`\`\`" >> $GITHUB_STEP_SUMMARY + + # Exit with the exit-code returned by Black + exit ${exit_code} env: # TODO: Remove once https://github.com/actions/runner/issues/665 is fixed. INPUT_OPTIONS: ${{ inputs.options }} INPUT_SRC: ${{ inputs.src }} + INPUT_JUPYTER: ${{ inputs.jupyter }} INPUT_BLACK_ARGS: ${{ inputs.black_args }} INPUT_VERSION: ${{ inputs.version }} pythonioencoding: utf-8