Skip to content

Commit 6a501ed

Browse files
Set explicit Celery priorities on post-processing, grading, and JIRA tasks
- post_process_finding_save: priority=3 (user-triggered, regular task) - post_process_findings_batch: priority=4 (background batch processing) - calculate_grade: priority=4 (background processing) - All JIRA tasks (push_finding_to_jira, push_finding_group_to_jira, push_engagement_to_jira, close_epic, update_epic, add_epic): priority=4 (integrations tier, should not compete with imports for worker slots)
1 parent 70b93d0 commit 6a501ed

3 files changed

Lines changed: 9 additions & 9 deletions

File tree

dojo/finding/helper.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -396,7 +396,7 @@ def add_findings_to_auto_group(name, findings, group_by, *, create_finding_group
396396
finding_group.findings.add(*findings)
397397

398398

399-
@app.task
399+
@app.task(priority=3)
400400
def post_process_finding_save(finding_id, dedupe_option=True, rules_option=True, product_grading_option=True, # noqa: FBT002
401401
issue_updater_option=True, push_to_jira=False, user=None, *args, **kwargs): # noqa: FBT002 - this is bit hard to fix nice have this universally fixed
402402
finding = get_object_or_none(Finding, id=finding_id)
@@ -459,7 +459,7 @@ def post_process_finding_save_internal(finding, dedupe_option=True, rules_option
459459
jira_helper.push_to_jira(finding.finding_group)
460460

461461

462-
@app.task
462+
@app.task(priority=4)
463463
def post_process_findings_batch(
464464
finding_ids,
465465
*args,

dojo/jira_link/helper.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -778,7 +778,7 @@ def push_to_jira(obj, *args, **kwargs):
778778

779779

780780
# we need thre separate celery tasks due to the decorators we're using to map to/from ids
781-
@app.task(priority=3)
781+
@app.task(priority=4)
782782
def push_finding_to_jira(finding_id, *args, **kwargs):
783783
finding = get_object_or_none(Finding, id=finding_id)
784784
if not finding:
@@ -790,7 +790,7 @@ def push_finding_to_jira(finding_id, *args, **kwargs):
790790
return add_jira_issue(finding, *args, **kwargs)
791791

792792

793-
@app.task(priority=3)
793+
@app.task(priority=4)
794794
def push_finding_group_to_jira(finding_group_id, *args, **kwargs):
795795
finding_group = get_object_or_none(Finding_Group, id=finding_group_id)
796796
if not finding_group:
@@ -806,7 +806,7 @@ def push_finding_group_to_jira(finding_group_id, *args, **kwargs):
806806
return add_jira_issue(finding_group, *args, **kwargs)
807807

808808

809-
@app.task(priority=3)
809+
@app.task(priority=4)
810810
def push_engagement_to_jira(engagement_id, *args, **kwargs):
811811
engagement = get_object_or_none(Engagement, id=engagement_id)
812812
if not engagement:
@@ -1395,7 +1395,7 @@ def jira_check_attachment(issue, source_file_name):
13951395
return file_exists
13961396

13971397

1398-
@app.task(priority=3)
1398+
@app.task(priority=4)
13991399
def close_epic(engagement_id, push_to_jira, **kwargs):
14001400
engagement = get_object_or_none(Engagement, id=engagement_id)
14011401
if not engagement:
@@ -1443,7 +1443,7 @@ def close_epic(engagement_id, push_to_jira, **kwargs):
14431443
return False
14441444

14451445

1446-
@app.task(priority=3)
1446+
@app.task(priority=4)
14471447
def update_epic(engagement_id, **kwargs):
14481448
engagement = get_object_or_none(Engagement, id=engagement_id)
14491449
if not engagement:
@@ -1489,7 +1489,7 @@ def update_epic(engagement_id, **kwargs):
14891489
return False
14901490

14911491

1492-
@app.task(priority=3)
1492+
@app.task(priority=4)
14931493
def add_epic(engagement_id, **kwargs):
14941494
engagement = get_object_or_none(Engagement, id=engagement_id)
14951495
if not engagement:

dojo/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1254,7 +1254,7 @@ def grade_product(crit, high, med, low):
12541254
return max(health, 5)
12551255

12561256

1257-
@app.task
1257+
@app.task(priority=4)
12581258
def calculate_grade(product_id, *args, **kwargs):
12591259
product = get_object_or_none(Product, id=product_id)
12601260
if not product:

0 commit comments

Comments
 (0)