From 38602fe3b94ef65d29ffc7f0f6ab043d29a7b653 Mon Sep 17 00:00:00 2001 From: Anoushka Shetty Date: Tue, 23 Apr 2024 10:27:16 -0400 Subject: [PATCH] Update entrypoint.sh to consider dry run When dry-run is set to true and we use the --write flag, we expect to see what files we'll need to reformat without pushing to remote. However, this requires us to commit the updated changes caused by prettier. Previously, the placement of the dry run logic was done before committing the formatted files, resulting to us not seeing the expected files format. And only using the '--write' flag will not result to a failure even if there are files that requires formatting. By moving the logic after committing the prettier files, it will show us the comparison between two files, without pushing to remote (given that we use dry flag to true). --- prettier/entrypoint.sh | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/prettier/entrypoint.sh b/prettier/entrypoint.sh index cae9183..c096610 100755 --- a/prettier/entrypoint.sh +++ b/prettier/entrypoint.sh @@ -169,6 +169,15 @@ prettier_output_summary() { ) } +dry_run_check() { + # case when --write is used with dry-run so if something is unpretty there will always have _git_changed + if _dry_run; then + summarize_changes 'Unpretty Files Changes' + echo "Finishing dry-run. Exiting before committing." | tee -a "$GITHUB_STEP_SUMMARY" + exit 1 + fi +} + npx prettier $prettier_options > "$prettier_out" 2> "$prettier_err" \ || { PRETTIER_RESULT=$?; @@ -215,13 +224,6 @@ if ! _git_changed; then exit fi -# case when --write is used with dry-run so if something is unpretty there will always have _git_changed -if _dry_run; then - summarize_changes 'Unpretty Files Changes' - echo "Finishing dry-run. Exiting before committing." | tee -a "$GITHUB_STEP_SUMMARY" - exit 1 -fi - # Calling method to configure the git environment _git_setup @@ -248,6 +250,9 @@ if _amend_commit; then git pull git commit --amend --no-edit ) | tee -a "$GITHUB_STEP_SUMMARY" + + dry_run_check + if _has_upstream; then git push origin -f || failed_push=1 fi @@ -258,6 +263,9 @@ else else git commit -n -m "$INPUT_COMMIT_MESSAGE" ${INPUT_COMMIT_OPTIONS:+"$INPUT_COMMIT_OPTIONS"} || commit_canary= fi + + dry_run_check + if [ -n "$commit_canary" ]; then log_blame_rev "Prettier" else