Unverified Commit 92ba4fdc authored by Cristiano Serri's avatar Cristiano Serri
Browse files

Fix per nuova versione API Jira OT

parent f8856f09
Showing with 36 additions and 9 deletions
+36 -9
......@@ -66,7 +66,10 @@ class JiraAdapter(object):
w for w in worklogs if (
(w.author.name if hasattr(w.author, 'name') else w.author.displayName) == display_name
if not isinstance(w, dict)
else w['author'].get('displayName') == conf.get('displayName')
else (
w['author'].get('displayName') == conf.get('displayName')
or w['author'].get('accountId') == conf.get('authorAccountId')
)
)
]
if lista_worklogs:
......
......@@ -2,21 +2,33 @@ import json
from config import conf
import requests
from jira_adapter import JiraAdapter
from requests.auth import HTTPBasicAuth
from constants import jira_server
class JiraOT(JiraAdapter):
def add_worklog(self, issue, time_spent_seconds=None, comment=None, started=None, user=None, ufficio_remoto="Ufficio"):
issue_id = requests.request(
method="GET",
url=f"{jira_server[self.sistema]}rest/api/3/issue/{issue}",
data={},
headers={
"Accept": "application/json",
"Content-Type": "application/json"
},
auth=HTTPBasicAuth(conf['user'], conf['password'])
).json()['id']
res = requests.request(
method="POST",
url="https://api.tempo.io/core/3/worklogs",
url="https://api.tempo.io/4/worklogs",
headers={
'Authorization': f"Bearer {conf['tempo_token']}",
'Content-Type': 'application/json'
},
data=json.dumps({
"issueKey": str(self.jira.issue(id=issue).id),
"issueId": issue_id,
"timeSpentSeconds": int(time_spent_seconds),
"startDate": started.strftime('%Y-%m-%d'),
"startTime": "08:00:00",
......
......@@ -37,7 +37,7 @@ class MyJira(JIRA):
def delete(self):
requests.request(
method="DELETE",
url=f"https://api.tempo.io/core/3/worklogs/{self['tempoWorklogId']}",
url=f"https://api.tempo.io/4/worklogs/{self['tempoWorklogId']}",
headers={'Authorization': f'Bearer {conf["tempo_token"]}', },
data={}
)
......@@ -48,14 +48,26 @@ class MyJira(JIRA):
offset = 0
data_fine = self._ultimo_del_mese(data_inizio)
issue_id = requests.request(
method="GET",
url=f"{jira_server[self.sistema]}rest/api/3/issue/{issue}",
data={},
headers={
"Accept": "application/json",
"Content-Type": "application/json"
},
auth=HTTPBasicAuth(conf['user'], conf['password'])
).json()['id']
print(f'id issue = {issue_id}')
while count == limit:
response = requests.request(
method="GET",
url=f"https://api.tempo.io/core/3/worklogs?issue={issue}&offset={offset}&limit={limit}&from={data_inizio}&to={data_fine}",
url=f"https://api.tempo.io/4/worklogs?issueId={issue_id}&offset={offset}&limit={limit}&from={data_inizio}&to={data_fine}",
headers={
'Authorization': f"Bearer {conf['tempo_token']}",
},
data={}
}
)
response_json = response.json()
list_ret += [Worklog(x) for x in response_json['results']]
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment