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

Fix per nuova versione API Jira OT

parent f8856f09
No related merge requests found
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