summaryrefslogtreecommitdiff
path: root/worker/GiteaWorker.py
diff options
context:
space:
mode:
authorBoYanZh <32470225+BoYanZh@users.noreply.github.com>2020-10-05 02:48:10 +0800
committerBoYanZh <32470225+BoYanZh@users.noreply.github.com>2020-10-05 02:48:10 +0800
commit11657edd4519e0432aa75324fdb0f9e9640b6494 (patch)
tree10835cf76628dc6a5b6c07975e967e4c55769b87 /worker/GiteaWorker.py
parentba5d08bcf2e545f03a174961c0e6f470f8b22d23 (diff)
update: gitea worker and minor fix
Diffstat (limited to 'worker/GiteaWorker.py')
-rw-r--r--worker/GiteaWorker.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/worker/GiteaWorker.py b/worker/GiteaWorker.py
new file mode 100644
index 0000000..7a2c79c
--- /dev/null
+++ b/worker/GiteaWorker.py
@@ -0,0 +1,34 @@
+from util import Logger, getProjRepoName
+import requests
+
+
+class GiteaWorker():
+ def __init__(self, args, baseUrl, orgName, token, hgroups,
+ logger=Logger()):
+ self.args = args
+ # self.id_ = id_
+ # self.name = name
+ # self.projNum = projNum
+ # self.projScores = projScores
+ self.logger = logger
+ self.names = {
+ item[1]: item[0]
+ for items in hgroups.values() for item in items
+ }
+ self.baseUrl = baseUrl
+ self.orgName = orgName
+ self.sess = requests.Session()
+ self.sess.params.update({"access_token": token})
+
+ def raiseIssues(self, scores):
+ for key, value in scores.items():
+ if not value.get('projComment'): continue
+ id_ = self.names[key]
+ repoName = getProjRepoName([id_, key, self.args.proj])
+ url = f"{self.baseUrl}/repos/{self.orgName}/{repoName}/issues"
+ data = {
+ "title": f"m{self.args.ms} feedback",
+ "body": '\n'.join(value.get('projComment')),
+ }
+ req = self.sess.post(url, data)
+ self.logger.debug(f"{repoName} issue {req.status_code} {req.text}")