Output hash of created commit

This commit is contained in:
Jon Cram 2021-09-10 11:39:35 +01:00
parent 0426839718
commit 68fd92dd9c
3 changed files with 9 additions and 2 deletions

View File

@ -67,6 +67,8 @@ inputs:
outputs: outputs:
changes_detected: changes_detected:
description: Value is "true", if the repository was dirty and file changes have been detected. Value is "false", if no changes have been detected. description: Value is "true", if the repository was dirty and file changes have been detected. Value is "false", if no changes have been detected.
commit_hash:
description: Full hash of the created commit. Only present if the "changes_detected" output is "true".
runs: runs:
using: 'node12' using: 'node12'

View File

@ -86,6 +86,8 @@ _local_commit() {
commit -m "$INPUT_COMMIT_MESSAGE" \ commit -m "$INPUT_COMMIT_MESSAGE" \
--author="$INPUT_COMMIT_AUTHOR" \ --author="$INPUT_COMMIT_AUTHOR" \
${INPUT_COMMIT_OPTIONS:+"${INPUT_COMMIT_OPTIONS_ARRAY[@]}"}; ${INPUT_COMMIT_OPTIONS:+"${INPUT_COMMIT_OPTIONS_ARRAY[@]}"};
echo "::set-output name=commit_hash::$(git rev-parse HEAD)";
} }
_tag_commit() { _tag_commit() {

View File

@ -86,6 +86,7 @@ git_auto_commit() {
assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}" assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::true" assert_line "::set-output name=changes_detected::true"
assert_line -e "::set-output name=commit_hash::[0-9a-f]{40}$"
assert_line "INPUT_BRANCH value: master" assert_line "INPUT_BRANCH value: master"
assert_line "INPUT_FILE_PATTERN: ." assert_line "INPUT_FILE_PATTERN: ."
assert_line "INPUT_COMMIT_OPTIONS: " assert_line "INPUT_COMMIT_OPTIONS: "
@ -106,6 +107,7 @@ git_auto_commit() {
assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}" assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::true" assert_line "::set-output name=changes_detected::true"
assert_line -e "::set-output name=commit_hash::[0-9a-f]{40}$"
assert_line "INPUT_BRANCH value: master" assert_line "INPUT_BRANCH value: master"
assert_line "INPUT_FILE_PATTERN: ." assert_line "INPUT_FILE_PATTERN: ."
assert_line "INPUT_COMMIT_OPTIONS: " assert_line "INPUT_COMMIT_OPTIONS: "
@ -128,6 +130,7 @@ git_auto_commit() {
assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}" assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::false" assert_line "::set-output name=changes_detected::false"
refute_line -e "::set-output name=commit_hash::[0-9a-f]{40}$"
assert_line "Working tree clean. Nothing to commit." assert_line "Working tree clean. Nothing to commit."
} }
@ -138,6 +141,7 @@ git_auto_commit() {
assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}" assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::false" assert_line "::set-output name=changes_detected::false"
refute_line -e "::set-output name=commit_hash::[0-9a-f]{40}$"
assert_line "Working tree clean. Nothing to commit." assert_line "Working tree clean. Nothing to commit."
} }
@ -150,8 +154,7 @@ git_auto_commit() {
assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}" assert_line "INPUT_REPOSITORY value: ${INPUT_REPOSITORY}"
assert_line "::set-output name=changes_detected::true" assert_line "::set-output name=changes_detected::true"
refute_line -e "::set-output name=commit_hash::[0-9a-f]{40}$"
assert_line "::set-output name=changes_detected::true"
assert_line "INPUT_BRANCH value: master" assert_line "INPUT_BRANCH value: master"
assert_line "INPUT_FILE_PATTERN: ." assert_line "INPUT_FILE_PATTERN: ."
assert_line "INPUT_COMMIT_OPTIONS: " assert_line "INPUT_COMMIT_OPTIONS: "