From 7dd9711c6459a5b1ff46514133028b3030afe444 Mon Sep 17 00:00:00 2001 From: Tonye Jack Date: Sat, 13 Aug 2022 15:50:50 -0600 Subject: [PATCH] feat: validate the minimum required git version (#572) * feat: validate the minimum required git version Closes: #564 * Update diff-sha.sh * Update diff-sha.sh Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update diff-sha.sh Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- diff-sha.sh | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/diff-sha.sh b/diff-sha.sh index 1aad74d5948..645885c3661 100644 --- a/diff-sha.sh +++ b/diff-sha.sh @@ -17,13 +17,27 @@ if [[ -n $INPUT_PATH ]]; then cd "$REPO_DIR" fi -git --version 1>/dev/null 2>&1 && exit_status=$? || exit_status=$? + +echo "Verifying git version..." + +function __version() { + echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }'; +} + +GIT_VERSION=$(git --version | awk '{print $3}'); exit_status=$? if [[ $exit_status -ne 0 ]]; then echo "::error::git not installed" exit 1 fi +if [[ $(__version "$GIT_VERSION") -lt $(__version "2.18.0") ]]; then + echo "::error::Invalid git version. Please upgrade git ($GIT_VERSION) to >= (2.18.0)" + exit 1 +else + echo "Valid git version found: ($GIT_VERSION)" +fi + echo "::debug::Getting HEAD SHA..." if [[ -z $INPUT_SHA ]]; then