Chore: Upgrade Jenkins-job-builder to 6.3.0
[releng/global-jjb.git] / shell / gerrit-push-patch.sh
index b33f0f5..09453f4 100644 (file)
@@ -47,25 +47,27 @@ echo -e "INFO: Staged for commit:\n$staged_commits\n"
 # shellcheck disable=SC1090
 source ~/lf-env.sh
 
-lf-activate-venv "git-review>=1.28"
+lf-activate-venv --python python3 "git-review==2.3.1"
 
 # Query for a pre-existing gerrit review
 query_result=$(ssh -p 29418 "$GERRIT_USER@$GERRIT_HOST" gerrit query \
-               limit:1 owner:self is:open project:"$PROJECT"         \
-               message: "$GERRIT_COMMIT_MESSAGE"                     \
-               topic: "$GERRIT_TOPIC")
+                limit:1 owner:self is:open project:"$PROJECT"        \
+                message: "$GERRIT_COMMIT_MESSAGE"                    \
+                topic: "$GERRIT_TOPIC")
 
 # Extract the change_id from the query_result
 job=$JOB_NAME/$BUILD_NUMBER
 # If available, add change_id to commit message
 if change_id=$(echo "$query_result" | grep 'Change-Id:' | awk '{print $2}'); then
     echo "NOTE: Found gerrit review: $change_id"
-    message="Job: $job\nChange-Id: $change_id"
+    message="Job: $job"$'\n'"Change-Id: $change_id"
 else
     echo "NOTE: No gerrit review found"
     message="Job: $job"
 fi
-git commit -sm "$GERRIT_COMMIT_MESSAGE" -m "$message"
+git commit -sm "$GERRIT_COMMIT_MESSAGE
+
+$message"
 
 git status
 git remote add gerrit "ssh://$GERRIT_USER@$GERRIT_HOST:29418/$PROJECT.git"
@@ -73,4 +75,7 @@ git remote add gerrit "ssh://$GERRIT_USER@$GERRIT_HOST:29418/$PROJECT.git"
 # If the reviewers email is unset/empty then use a default
 reviewers_email=${REVIEWERS_EMAIL:-"$GERRIT_USER@$GERRIT_HOST"}
 
+# Workaround for git-review failing to copy the commit-msg hook to submodules
+git config core.hooksPath "$(git rev-parse --show-toplevel)/.git/hooks"
+
 git review --yes -t "$GERRIT_TOPIC" --reviewers "$reviewers_email"