feat(jira): pause/hold status mapping, RT/BT dates, TTP, attack_success 3-value field, hours

This commit is contained in:
kitos
2026-07-06 16:19:39 +02:00
parent 19c4866103
commit 022c1c756a
13 changed files with 433 additions and 22 deletions
@@ -223,6 +223,12 @@ def start_execution(db: Session, test: Test, user: User) -> Test:
except Exception as e:
logger.warning("Jira push failed for test %s: %s", test.id, e, exc_info=True)
try:
from app.services.jira_service import push_rt_started
push_rt_started(db, test)
except Exception as e:
logger.warning("Jira RT start date push failed for test %s: %s", test.id, e, exc_info=True)
return test
@@ -314,6 +320,12 @@ def submit_red_evidence(db: Session, test: Test, user: User) -> Test:
except Exception as e:
logger.warning("Jira push failed for test %s: %s", test.id, e, exc_info=True)
try:
from app.services.jira_service import push_rt_submitted
push_rt_submitted(db, test)
except Exception as e:
logger.warning("Jira RT end date push failed for test %s: %s", test.id, e, exc_info=True)
return test
@@ -410,6 +422,12 @@ def start_blue_work(db: Session, test: Test, user: User) -> Test:
except Exception as e:
logger.warning("Notification failed for test %s: %s", test.id, e, exc_info=True)
try:
from app.services.jira_service import push_bt_started
push_bt_started(db, test)
except Exception as e:
logger.warning("Jira BT start date push failed for test %s: %s", test.id, e, exc_info=True)
return test
@@ -494,6 +512,12 @@ def submit_blue_evidence(db: Session, test: Test, user: User) -> Test:
except Exception as e:
logger.warning("Jira push failed for test %s: %s", test.id, e, exc_info=True)
try:
from app.services.jira_service import push_bt_submitted
push_bt_submitted(db, test)
except Exception as e:
logger.warning("Jira BT end date push failed for test %s: %s", test.id, e, exc_info=True)
return test
@@ -637,6 +661,13 @@ def pause_timer(db: Session, test: Test, user: User) -> Test:
# Keyword argument: details
details={"state": test.state.value},
)
try:
from app.services.jira_service import push_pause_event
push_pause_event(db, test, user, resuming=False)
except Exception as e:
logger.warning("Jira pause push failed for test %s: %s", test.id, e, exc_info=True)
# Return test
return test
@@ -692,6 +723,13 @@ def resume_timer(db: Session, test: Test, user: User) -> Test:
# Keyword argument: details
details={"paused_seconds": paused_seconds, "state": test.state.value},
)
try:
from app.services.jira_service import push_pause_event
push_pause_event(db, test, user, resuming=True)
except Exception as e:
logger.warning("Jira resume push failed for test %s: %s", test.id, e, exc_info=True)
# Return test
return test