Added only_changed feature

This commit is contained in:
2020-10-16 09:15:41 +02:00
parent ea3e74cc2d
commit 5cea39febe
3 changed files with 19 additions and 8 deletions

View File

@@ -16,13 +16,14 @@ A GitHub action for styling files with [prettier](https://prettier.io).
| Parameter | Required | Default | Description |
| - | :-: | :-: | - |
| dry | :x: | False | Runs the action in dry mode. Files wont get changed and the action fails if there are unprettified files. |
| prettier_version | :x: | False | Specific prettier version (by default use latest) |
| dry | :x: | false | Runs the action in dry mode. Files wont get changed and the action fails if there are unprettified files. |
| 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 |
| commit_message | :x: | Prettified Code! | Custom git commit message |
| file_pattern | :x: | * | Custom git add file pattern |
| file_pattern | :x: | * | Custom git add file pattern, can't be used with only_changed! |
| 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 |
| only_changed | :x: | false | Only prettify changed files, can't be used with file_pattern! |
### Example Config

View File

@@ -12,7 +12,7 @@ inputs:
description: Commit options
required: false
file_pattern:
description: File pattern used for `git add`
description: File pattern used for `git add`, can't be used with only_changed!
required: false
default: '*'
prettier_options:
@@ -27,6 +27,10 @@ inputs:
description: Specific version of prettier (by default just use the latest version)
required: false
default: false
only_changed:
description: Only prettify files changed in the last commit, can't be used with file_pattern!
required: false
default: false
runs:
using: 'docker'

View File

@@ -41,8 +41,7 @@ echo "Files:"
prettier $INPUT_PRETTIER_OPTIONS || echo "Problem running prettier with $INPUT_PRETTIER_OPTIONS"
# To keep runtime good, just continue if something was changed
if _git_changed;
then
if _git_changed; then
if $INPUT_DRY; then
echo "Prettier found unpretty files!"
exit 1
@@ -50,8 +49,15 @@ then
# Calling method to configure the git environemnt
_git_setup
echo "Commiting and pushing changes..."
# Add changes to git
git add "${INPUT_FILE_PATTERN}" || echo "Problem adding your files with pattern ${INPUT_FILE_PATTERN}"
if $INPUT_ONLY_CHANGED; then
for file in $(git diff --name-only HEAD^..HEAD)
do
git add $file
done
else
# Add changes to git
git add "${INPUT_FILE_PATTERN}" || echo "Problem adding your files with pattern ${INPUT_FILE_PATTERN}"
fi
# 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"}
git push origin