From 107a8c2e2ef82b398df8b7de7cba4746d944b9e5 Mon Sep 17 00:00:00 2001 From: Anders Roxell Date: Mon, 26 Jun 2023 16:00:24 +0200 Subject: [PATCH] jipsearch: flag parent This will show the parent Epic/Story/Task if any. Signed-off-by: Anders Roxell --- jipdate/jipsearch.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/jipdate/jipsearch.py b/jipdate/jipsearch.py index 3ad4d9d..a277328 100755 --- a/jipdate/jipsearch.py +++ b/jipdate/jipsearch.py @@ -160,6 +160,15 @@ def get_parser(): help="""Show information about a specific Epic/Story/Task.""", ) + parser.add_argument( + "-pk", + "--parent", + required=False, + action="store_true", + default=False, + help="""print parent key if available.""", + ) + parser.add_argument( "-v", required=False, @@ -267,6 +276,9 @@ def search_issues(jira, jql): for keys in re.findall(regex, cfg.args.format): fields.append(keys.split(":")[0]) + if cfg.args.parent: + fields.append("parent") + result = jira.search_issues( jql, startAt=result["startAt"], @@ -314,6 +326,15 @@ def print_issues(jira, issues): assignee_ = f", Assignee: {issue['fields']['assignee']['displayName']}, Assignee email: {issue['fields']['assignee']['emailAddress']}" output += assignee_ + if cfg.args.parent: + try: + field = issue["fields"]["parent"] + value = f" parent: {jira_link}/{field['key']}" + print(f"{output},{value}") + except KeyError: + print(f"No key 'parent'.") + continue + print(f"{output}") if cfg.args.description: print(f"# Description:")