From edcd15e90878df73c18a5bbdcd5755f10be8baa0 Mon Sep 17 00:00:00 2001 From: "Daniel (dB.) Doubrovkine" Date: Sat, 29 Apr 2023 22:26:18 -0400 Subject: [PATCH] Added support for --amend. --- README.md | 3 ++- action.yml | 10 +++++++--- entrypoint.py | 11 ++++++++++- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 8bbbe71..ba479c3 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,8 @@ jobs: github-token: ${{ secrets.GITHUB_TOKEN }} push-branch: 'master' commit-message: 'publish' - force-add: 'true' + commit-amend: false + force-add: true files: a.txt b.txt c.txt dirA/ dirB/ dirC/a.txt name: commiter name email: my.github@email.com diff --git a/action.yml b/action.yml index 245fc68..f1e9db9 100644 --- a/action.yml +++ b/action.yml @@ -15,18 +15,22 @@ inputs: description: 'Specify commit message' required: false default: 'autocommit' + commit-amend: + description: 'Amend a previous commit.' + required: false + default: false force-add: description: 'Force add files, useful for adding ignored files.' required: false - default: 'false' + default: false force-push: description: 'Force push.' required: false - default: 'false' + default: false rebase: description: 'Pull and rebase before commiting. Useful when using commit inside matrix.' required: false - default: 'false' + default: false files: description: 'Specific files to add.' required: false diff --git a/entrypoint.py b/entrypoint.py index f91433d..f424a8c 100755 --- a/entrypoint.py +++ b/entrypoint.py @@ -12,6 +12,7 @@ def run(): github_actor = local.env.get('GITHUB_ACTOR') github_token = local.env.get('INPUT_GITHUB-TOKEN') commit_message = local.env.get('INPUT_COMMIT-MESSAGE') + commit_amend = local.env.get('INPUT_COMMIT-AMEND') force_add = local.env.get('INPUT_FORCE-ADD') force_push = local.env.get('INPUT_FORCE-PUSH') branch = local.env.get('INPUT_PUSH-BRANCH') or "/".join(local.env.get('GITHUB_REF').split('/')[2:]) @@ -51,7 +52,15 @@ def run(): push_args.append('--force') debug(git(['checkout', '-B', branch])) debug(git(add_args)) - debug(git(['commit', '-m', commit_message], retcode=None)) + commit_args = ['commit'] + if commit_message: + commit_args.append('-m') + commit_args.append(commit_message) + else: + commit_args.append('--no-edit') + if commit_amend: + commit_args.append('--amend') + debug(git(commit_args, retcode=None)) debug(git(push_args)) if __name__ == '__main__':