From 9f4f9efd9b90973126a56d7a0c9ff3b0e581645b Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Mon, 20 Dec 2021 21:40:02 +0800 Subject: [PATCH] ceph-pr-submodules: check for commit message noting submodule change Signed-off-by: Kefu Chai --- ceph-pr-submodules/build/build | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/ceph-pr-submodules/build/build b/ceph-pr-submodules/build/build index ea0edff3c..2095ac606 100644 --- a/ceph-pr-submodules/build/build +++ b/ceph-pr-submodules/build/build @@ -30,9 +30,30 @@ function has_modified_submodules() { fi } +function is_planned() { + local target_branch=$1 + shift + local magic_word=$1 + shift + + IFS=$'\n' + for line in $(git log -z --no-merges origin/${target_branch}..HEAD); do + echo "${line}" | grep -q "${magic_word}" && return 0 + done + # no lines match the magic word + return 1 +} + if has_modified_submodules "${ghprbTargetBranch}" "${ghprbActualCommit}"; then echo "Project has modified submodules: $modified_submodules !" - exit 1 + magic_word="$(basename $modified_submodules) submodule" + if is_planned "${ghprbTargetBranch}" "${magic_word}"; then + # ahh, it's planned + exit 0 + else + echo "please include '${magic_word}' in your commit message, if this change is intentional." + exit 1 + fi fi exit 0 -- 2.47.3