Skip to content

Commit 978c445

Browse files
committed
feat: create a should_skip function
1 parent e311aad commit 978c445

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

pr_agent/servers/gitlab_webhook.py

+8-4
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ async def _perform_commands_gitlab(commands_conf: str, agent: PRAgent, api_url:
7575
get_logger().error(f"Failed to perform command {command}: {e}")
7676

7777

78+
def should_skip_mr(draft: bool, mr_url: str):
79+
skip_draft_mr = get_settings().get("GITLAB.SKIP_DRAFT_MR", False)
80+
if draft and skip_draft_mr:
81+
get_logger().info(f"Skipping draft MR: {mr_url}")
82+
return True
83+
return False
7884

7985
@router.post("/webhook")
8086
async def gitlab_webhook(background_tasks: BackgroundTasks, request: Request):
@@ -130,8 +136,7 @@ async def inner(data: dict):
130136
url = data['object_attributes'].get('url')
131137
draft = data['object_attributes'].get('draft')
132138

133-
if draft and skip_draft_mr:
134-
get_logger().info(f"Skipping draft MR: {url}")
139+
if should_skip_mr(draft, url):
135140
return JSONResponse(status_code=status.HTTP_200_OK, content=jsonable_encoder({"message": "success"}))
136141

137142
get_logger().info(f"New merge request: {url}")
@@ -143,8 +148,7 @@ async def inner(data: dict):
143148
draft = mr.get('draft')
144149

145150
get_logger().info(f"A comment has been added to a merge request: {url}")
146-
if draft and skip_draft_mr:
147-
get_logger().info(f"Skipping draft MR: {url}")
151+
if should_skip_mr(draft, url):
148152
return JSONResponse(status_code=status.HTTP_200_OK, content=jsonable_encoder({"message": "success"}))
149153

150154
body = data.get('object_attributes', {}).get('note')

0 commit comments

Comments
 (0)