From a5fde8ab9be26221d01bdd0a426db07cdb6f0f04 Mon Sep 17 00:00:00 2001 From: Ionite Date: Fri, 26 Aug 2022 15:45:31 -0400 Subject: [PATCH] Remove hacky subprocess call in action.yml (#3226) Updates action.yml to use the alternative $GITHUB_ACTION_PATH variable instead of the original ${{ github.action_path }} which caused issues with bash on the Windows runners. This removes the need for a Python subprocess to call the main.py script. --- AUTHORS.md | 1 + action.yml | 19 ++----------------- 2 files changed, 3 insertions(+), 17 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index c81bc02..5336062 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -79,6 +79,7 @@ Multiple contributions by: - [Hugo Barrera](mailto::hugo@barrera.io) - Hugo van Kemenade - [Hynek Schlawack](mailto:hs@ox.cx) +- [Ionite](mailto:dev@ionite.io) - [Ivan Katanić](mailto:ivan.katanic@gmail.com) - [Jakub Kadlubiec](mailto:jakub.kadlubiec@skyscanner.net) - [Jakub Warczarek](mailto:jakub.warczarek@gmail.com) diff --git a/action.yml b/action.yml index dbd8ef6..cfa6ef9 100644 --- a/action.yml +++ b/action.yml @@ -29,25 +29,10 @@ 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) - " - if [ "$RUNNER_OS" == "Windows" ]; then - echo $entrypoint | python + python $GITHUB_ACTION_PATH/action/main.py else - echo $entrypoint | python3 + python3 $GITHUB_ACTION_PATH/action/main.py fi env: # TODO: Remove once https://github.com/actions/runner/issues/665 is fixed. -- 2.39.5