summaryrefslogtreecommitdiff
path: root/phabricator_tasks/get_task_data.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2024-09-16 17:20:05 +0100
committerDaniil Baturin <daniil@baturin.org>2024-09-16 17:20:05 +0100
commitbb4203d7c2f93a612cbad2e67c0f7d4c20d19f14 (patch)
tree21263947d1e90be89324278d877822d7f52bb3a0 /phabricator_tasks/get_task_data.py
parent5cd9d55166b35aae421616122bfb1fce2679559c (diff)
downloadvyos-infrastructure-main.tar.gz
vyos-infrastructure-main.zip
Add logic for tagging tasks based on their issue type and difficulty levelHEADmain
for ease of searching until Phorge adds native support for searching by custom fields
Diffstat (limited to 'phabricator_tasks/get_task_data.py')
-rw-r--r--phabricator_tasks/get_task_data.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/phabricator_tasks/get_task_data.py b/phabricator_tasks/get_task_data.py
index 6a2fef7..43d5301 100644
--- a/phabricator_tasks/get_task_data.py
+++ b/phabricator_tasks/get_task_data.py
@@ -1,6 +1,8 @@
'''
get all tasks and project information from vyos.dev
+Example:
+
{
"task_id": 6473,
"task_name": "bgp: missing completion helper for peer-groups inside a VRF",
@@ -15,6 +17,8 @@ get all tasks and project information from vyos.dev
"project_id": "PHID-PROJ-qakk4yrxprecshrgbehq"
}
],
+ "issue_type": "bug",
+ "difficulty_level": "easy",
"task_open": true
}
@@ -115,6 +119,16 @@ def unassign_task(task_id, token):
except Exception as e:
print(f'T{task_id} Error: {e}')
+def add_project(task_id, project, token):
+ phab = phab_api(token)
+ try:
+ response = phab.maniphest.edit(
+ objectIdentifier=task_id,
+ transactions=[{'type': 'projects.add', 'value': [project]}]
+ )
+ except Exception as e:
+ print(f'T{task_id} Error: {e}')
+
def get_task_data(token):
phab = phab_api(token)
# get list with all open status namens
@@ -155,6 +169,8 @@ def get_task_data(token):
'task_status': task['fields']['status']['value'],
'assigned_user': task['fields']['ownerPHID'],
'last_modified': task['fields']['dateModified'],
+ 'issue_type': task["fields"]["custom.issue-type"],
+ 'difficulty_level': task["fields"]["custom.difficulty-level"],
'projects': []
}
if task['fields']['status']['value'] in open_status_list: