From e9a3985a1f75861ff14957bc5ff95927976e72c5 Mon Sep 17 00:00:00 2001 From: kitos Date: Wed, 27 May 2026 10:53:39 +0200 Subject: [PATCH] fix(jira): create test tickets under campaign on activation When a campaign is activated (Start), iterate all its tests and create Jira tickets nested under the campaign ticket for any test that doesn't already have one. Mirrors the pattern used in generate_campaign_from_actor. --- backend/app/routers/campaigns.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/backend/app/routers/campaigns.py b/backend/app/routers/campaigns.py index 312b9a4..af78199 100644 --- a/backend/app/routers/campaigns.py +++ b/backend/app/routers/campaigns.py @@ -298,6 +298,29 @@ def activate_campaign( uow.commit() db.refresh(campaign) + # Create Jira test tickets for any campaign tests that don't have one yet, + # nested under the campaign's Jira ticket (non-fatal). + try: + from app.services.jira_service import ( + auto_create_test_issue, + get_campaign_jira_key, + get_test_jira_key, + ) + campaign_jira_key = get_campaign_jira_key(db, campaign_id) + if campaign_jira_key: + for ct in campaign.campaign_tests: + if ct.test and not get_test_jira_key(db, ct.test.id): + auto_create_test_issue( + db, ct.test, current_user, + parent_ticket_override=campaign_jira_key, + ) + db.commit() + except Exception: + logger.exception( + "Jira test ticket creation failed during activation of campaign %s", + campaign_id, + ) + return serialize_campaign(db, campaign)