gitlab: skip checkpatch.pl checks if no commit delta on branch
authorDaniel P. Berrangé <berrange@redhat.com>
Wed, 21 Oct 2020 16:31:34 +0000 (17:31 +0100)
committerAlex Bennée <alex.bennee@linaro.org>
Tue, 27 Oct 2020 09:53:48 +0000 (09:53 +0000)
If the current branch is synced to the current upstream git master,
there are no commits that need checking. This causes checkpatch.pl
to print an error that it found no commits. We need to avoid calling
checkpatch.pl in this case.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20201019143537.283094-2-berrange@redhat.com>
Message-Id: <20201021163136.27324-5-alex.bennee@linaro.org>

.gitlab-ci.d/check-patch.py

index 5a14a25b132462177ea9602106893bf9f4eaa7eb..0ff30ee077409c6e10db5385a32e70d537a11f2b 100755 (executable)
@@ -33,8 +33,16 @@ ancestor = subprocess.check_output(["git", "merge-base",
 
 ancestor = ancestor.strip()
 
+log = subprocess.check_output(["git", "log", "--format=%H %s",
+                               ancestor + "..."],
+                              universal_newlines=True)
+
 subprocess.check_call(["git", "remote", "rm", "check-patch"])
 
+if log == "":
+    print("\nNo commits since %s, skipping checks\n" % ancestor)
+    sys.exit(0)
+
 errors = False
 
 print("\nChecking all commits since %s...\n" % ancestor)