diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2022-03-26 19:41:55 +0200 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2022-03-28 13:29:32 +0300 |
commit | 4efca856c040ce78b08534a41190ae6c63326e04 (patch) | |
tree | f12b7e2bdfd4106afc097644c07e42ba7621e53b | |
parent | 73490312944d5e81f2f7b81c8328f0fb1f74074e (diff) |
utils: hooks: pre-push: Catch commits without author's SoB
The pre-push git hook script catches commits without a SoB line
corresponding to the committer, but doesn't perform the same check on
the author. Fix it.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rwxr-xr-x | utils/hooks/pre-push | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/utils/hooks/pre-push b/utils/hooks/pre-push index e4187f38..90ffdf6f 100755 --- a/utils/hooks/pre-push +++ b/utils/hooks/pre-push @@ -67,8 +67,8 @@ do errors=$((errors+1)) fi - # 2. The commit message shall have a Signed-off-by line - # corresponding the committer. + # 2. The commit message shall have Signed-off-by lines + # corresponding the committer and the author. committer=$(echo "$msg" | grep '^committer ' | head -1 | \ cut -d ' ' -f 2- | rev | cut -d ' ' -f 3- | rev) if ! echo "$msg" | grep -F -q "Signed-off-by: ${committer}" @@ -77,6 +77,14 @@ do errors=$((errors+1)) fi + author=$(echo "$msg" | grep '^author ' | head -1 | \ + cut -d ' ' -f 2- | rev | cut -d ' ' -f 3- | rev) + if ! echo "$msg" | grep -F -q "Signed-off-by: ${author}" + then + echo >&2 "Missing author Signed-off-by in commit $commit" + errors=$((errors+1)) + fi + # 3. A Reviewed-by or Acked-by is required. if ! echo "$msg" | grep -q '^\(Reviewed\|Acked\)-by: ' then |