From 7078738706b7f650c78148ba466fbf8c7febe930 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Sep 27 2018 11:48:42 +0000 Subject: Sign-off the merge commits when the project enforces it Signed-off-by: Pierre-Yves Chibon --- diff --git a/pagure/lib/git.py b/pagure/lib/git.py index 65f7aa3..b8a0c51 100644 --- a/pagure/lib/git.py +++ b/pagure/lib/git.py @@ -1598,11 +1598,24 @@ def merge_pull_request(session, request, username, domerge=True): author = _make_signature( commitname, user_obj.default_email ) + + commit_message = "Merge #%s `%s`" % ( + request.id, + request.title, + ) + if request.project.settings.get( + "Enforce_signed-off_commits_in_pull-request", False + ): + commit_message += "\n\nSigned-off-by %s <%s>" % ( + commitname, + user_obj.default_email, + ) + commit = new_repo.create_commit( "refs/heads/%s" % request.branch, author, author, - "Merge #%s `%s`" % (request.id, request.title), + commit_message, tree, [head.hex, repo_commit.oid.hex], ) @@ -1652,11 +1665,21 @@ def merge_pull_request(session, request, username, domerge=True): user_obj = pagure.lib.get_user(session, username) commitname = user_obj.fullname or user_obj.user author = _make_signature(commitname, user_obj.default_email) + + commit_message = "Merge #%s `%s`" % (request.id, request.title) + if request.project.settings.get( + "Enforce_signed-off_commits_in_pull-request", False + ): + commit_message += "\n\nSigned-off-by %s <%s>" % ( + commitname, + user_obj.default_email, + ) + commit = new_repo.create_commit( "refs/heads/%s" % request.branch, author, author, - "Merge #%s `%s`" % (request.id, request.title), + commit_message, tree, [head.hex, repo_commit.oid.hex], )