From 6ad77586cdd758581f20358b9e36dfb21d7c4cc5 Mon Sep 17 00:00:00 2001 From: jorenbroekema Date: Fri, 16 Oct 2020 12:27:20 +0200 Subject: [PATCH] feat: allow action to use current commit instead of creating a new one --- README.md | 3 +++ action.yml | 4 ++++ entrypoint.sh | 7 ++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4941adc..f9c7096 100644 --- a/README.md +++ b/README.md @@ -20,10 +20,13 @@ A GitHub action for styling files with [prettier](https://prettier.io). | prettier_version | :x: | False | Specific prettier version (by default use latest) | | prettier_options | :x: | `--write **/*.js` | Prettier options (by default it applies to the whole repository) | | commit_options | :x: | - | Custom git commit options | +| same_commit | :x: | False | Whether to merge into the current commit instead of creating a new one | | commit_message | :x: | Prettified Code! | Custom git commit message | | file_pattern | :x: | * | Custom git add file pattern | | branch (depreciated with 3.0)| :white_check_mark: | - | Always set this to `${{ github.head_ref }}` in order to work both with pull requests and push events | +> Note: using the same_commit option may lead to problems if other actions are relying on the commit being the same before and after the prettier action has ran. Keep this in mind. + ### Example Config ```yaml diff --git a/action.yml b/action.yml index de6218f..7c10880 100644 --- a/action.yml +++ b/action.yml @@ -8,6 +8,10 @@ inputs: description: Commit message required: false default: 'Prettified Code!' + same_commit: + description: Whether to use the current commit instead of creating a new one + required: false + default: false commit_options: description: Commit options required: false diff --git a/entrypoint.sh b/entrypoint.sh index 91abb9c..9650cc0 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -53,7 +53,12 @@ then # Add changes to git git add "${INPUT_FILE_PATTERN}" || echo "Problem adding your files with pattern ${INPUT_FILE_PATTERN}" # Commit and push changes back - git commit -m "$INPUT_COMMIT_MESSAGE" --author="$GITHUB_ACTOR <$GITHUB_ACTOR@users.noreply.github.com>" ${INPUT_COMMIT_OPTIONS:+"$INPUT_COMMIT_OPTIONS"} + if $INPUT_SAME_COMMIT; then + echo "Amending the current commit..." + git commit --amend --no-edit + else + git commit -m "$INPUT_COMMIT_MESSAGE" --author="$GITHUB_ACTOR <$GITHUB_ACTOR@users.noreply.github.com>" ${INPUT_COMMIT_OPTIONS:+"$INPUT_COMMIT_OPTIONS"} + fi git push origin echo "Changes pushed successfully." fi