diff options
Diffstat (limited to 'gitlint-core/gitlint/contrib/rules/signedoff_by.py')
-rw-r--r-- | gitlint-core/gitlint/contrib/rules/signedoff_by.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gitlint-core/gitlint/contrib/rules/signedoff_by.py b/gitlint-core/gitlint/contrib/rules/signedoff_by.py new file mode 100644 index 0000000..5ea8217 --- /dev/null +++ b/gitlint-core/gitlint/contrib/rules/signedoff_by.py @@ -0,0 +1,17 @@ +from gitlint.rules import CommitRule, RuleViolation + + +class SignedOffBy(CommitRule): + """This rule will enforce that each commit body contains a "Signed-off-by" line. + We keep things simple here and just check whether the commit body contains a line that starts with "Signed-off-by". + """ + + name = "contrib-body-requires-signed-off-by" + id = "CC1" + + def validate(self, commit): + for line in commit.message.body: + if line.lower().startswith("signed-off-by"): + return [] + + return [RuleViolation(self.id, "Body does not contain a 'Signed-off-by' line", line_nr=1)] |