diff --git a/setup.py b/setup.py index fd0f6a0..70af331 100644 --- a/setup.py +++ b/setup.py @@ -52,6 +52,8 @@ 'console_scripts': [ ('lander-check-pulls=' 'jenkinsgithublander.scripts.check_pulls:main'), + ('lander-check-pull-mergable=' + 'jenkinsgithublander.scripts.check_pull_mergable:main'), ('lander-merge-result=' 'jenkinsgithublander.scripts.merge_result:main'), ], diff --git a/src/jenkinsgithublander/github.py b/src/jenkinsgithublander/github.py index 44a3e0e..7958848 100644 --- a/src/jenkinsgithublander/github.py +++ b/src/jenkinsgithublander/github.py @@ -1,6 +1,7 @@ """Helpers for interacting with Github api requests.""" from collections import namedtuple import json +import re import requests from textwrap import dedent @@ -60,7 +61,7 @@ def _is_mergeable(comments, owner, trigger, request_info): user = comment['user']['login'] # Determine if a valid user has requested a merge. - if trigger in comment['body']: + if trigger.search(comment['body']): if user_is_in_org(user, org, request_info): request_merge = True @@ -151,6 +152,7 @@ def mergeable_pull_requests(trigger_word, request_info): log = logger.getLogger() prs = get_open_pull_requests(request_info) mergable_prs = [] + trigger_re = re.compile(trigger_word) if prs: for pr in prs: @@ -166,8 +168,7 @@ def mergeable_pull_requests(trigger_word, request_info): if comments: owner = pr_info.base_user - if _is_mergeable( - comments, owner, trigger_word, request_info): + if _is_mergeable(comments, owner, trigger_re, request_info): mergable_prs.append(pr_info) else: log.debug(" No comments")