1*9ce4de3bSPatrick Williamsfrom gitlint.rules import CommitRule, RuleViolation 2*9ce4de3bSPatrick Williams 3*9ce4de3bSPatrick Williams 4*9ce4de3bSPatrick Williamsclass DuplicateChangeIdEntries(CommitRule): 5*9ce4de3bSPatrick Williams name = "duplicate-change-id-entries" 6*9ce4de3bSPatrick Williams id = "UC2" 7*9ce4de3bSPatrick Williams 8*9ce4de3bSPatrick Williams def validate(self, commit): 9*9ce4de3bSPatrick Williams change_ids = [ 10*9ce4de3bSPatrick Williams x for x in commit.message.body if x.startswith("Change-Id:") 11*9ce4de3bSPatrick Williams ] 12*9ce4de3bSPatrick Williams if len(change_ids) > 1: 13*9ce4de3bSPatrick Williams return [ 14*9ce4de3bSPatrick Williams RuleViolation( 15*9ce4de3bSPatrick Williams self.id, 16*9ce4de3bSPatrick Williams "Multiple Change-Ids found in commit message body", 17*9ce4de3bSPatrick Williams change_ids, 18*9ce4de3bSPatrick Williams ) 19*9ce4de3bSPatrick Williams ] 20*9ce4de3bSPatrick Williams 21*9ce4de3bSPatrick Williams return None 22