@@ -668,27 +668,48 @@ def push_to_jira(obj, *args, **kwargs):
668668 raise ValueError (msg )
669669
670670 if isinstance (obj , Finding ):
671- finding = obj
672- if finding .has_jira_issue :
673- return update_jira_issue_for_finding (finding , * args , ** kwargs )
674- return add_jira_issue_for_finding (finding , * args , ** kwargs )
675-
676- if isinstance (obj , Engagement ):
677- engagement = obj
678- if engagement .has_jira_issue :
679- return update_epic (engagement , * args , ** kwargs )
680- return add_epic (engagement , * args , ** kwargs )
671+ return push_finding_to_jira (obj , * args , ** kwargs )
681672
682673 if isinstance (obj , Finding_Group ):
683- group = obj
684- if group .has_jira_issue :
685- return update_jira_issue_for_finding_group (group , * args , ** kwargs )
686- return add_jira_issue_for_finding_group (group , * args , ** kwargs )
674+ return push_finding_group_to_jira (obj , * args , ** kwargs )
687675
676+ if isinstance (obj , Engagement ):
677+ return push_engagement_to_jira (obj , * args , ** kwargs )
688678 logger .error ("unsupported object passed to push_to_jira: %s %i %s" , obj .__name__ , obj .id , obj )
689679 return None
690680
691681
682+ # we need thre separate celery tasks due to the decorators we're using to map to/from ids
683+ @dojo_model_to_id
684+ @dojo_async_task
685+ @app .task
686+ @dojo_model_from_id
687+ def push_finding_to_jira (finding , * args , ** kwargs ):
688+ if finding .has_jira_issue :
689+ return update_jira_issue (finding , * args , ** kwargs )
690+ return add_jira_issue (finding , * args , ** kwargs )
691+
692+
693+ @dojo_model_to_id
694+ @dojo_async_task
695+ @app .task
696+ @dojo_model_from_id (model = Finding_Group )
697+ def push_finding_group_to_jira (finding_group , * args , ** kwargs ):
698+ if finding_group .has_jira_issue :
699+ return update_jira_issue (finding_group , * args , ** kwargs )
700+ return add_jira_issue (finding_group , * args , ** kwargs )
701+
702+
703+ @dojo_model_to_id
704+ @dojo_async_task
705+ @app .task
706+ @dojo_model_from_id (model = Engagement )
707+ def push_engagement_to_jira (engagement , * args , ** kwargs ):
708+ if engagement .has_jira_issue :
709+ return update_epic (engagement , * args , ** kwargs )
710+ return add_epic (engagement , * args , ** kwargs )
711+
712+
692713def add_issues_to_epic (jira , obj , epic_id , issue_keys , * , ignore_epics = True ):
693714 try :
694715 return jira .add_issues_to_epic (epic_id = epic_id , issue_keys = issue_keys , ignore_epics = ignore_epics )
@@ -714,24 +735,6 @@ def add_issues_to_epic(jira, obj, epic_id, issue_keys, *, ignore_epics=True):
714735 return False
715736
716737
717- # we need two separate celery tasks due to the decorators we're using to map to/from ids
718-
719- @dojo_model_to_id
720- @dojo_async_task
721- @app .task
722- @dojo_model_from_id
723- def add_jira_issue_for_finding (finding , * args , ** kwargs ):
724- return add_jira_issue (finding , * args , ** kwargs )
725-
726-
727- @dojo_model_to_id
728- @dojo_async_task
729- @app .task
730- @dojo_model_from_id (model = Finding_Group )
731- def add_jira_issue_for_finding_group (finding_group , * args , ** kwargs ):
732- return add_jira_issue (finding_group , * args , ** kwargs )
733-
734-
735738def prepare_jira_issue_fields (
736739 project_key ,
737740 issuetype_name ,
@@ -927,24 +930,6 @@ def failure_to_add_message(message: str, exception: Exception, _: Any) -> bool:
927930 return True
928931
929932
930- # we need two separate celery tasks due to the decorators we're using to map to/from ids
931-
932- @dojo_model_to_id
933- @dojo_async_task
934- @app .task
935- @dojo_model_from_id
936- def update_jira_issue_for_finding (finding , * args , ** kwargs ):
937- return update_jira_issue (finding , * args , ** kwargs )
938-
939-
940- @dojo_model_to_id
941- @dojo_async_task
942- @app .task
943- @dojo_model_from_id (model = Finding_Group )
944- def update_jira_issue_for_finding_group (finding_group , * args , ** kwargs ):
945- return update_jira_issue (finding_group , * args , ** kwargs )
946-
947-
948933def update_jira_issue (obj , * args , ** kwargs ):
949934 def failure_to_update_message (message : str , exception : Exception , obj : Any ) -> bool :
950935 if exception :
0 commit comments