argus-alm 0.15.8__py3-none-any.whl → 0.15.10__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- argus/_version.py +2 -2
- argus/client/base.py +25 -2
- argus/client/driver_matrix_tests/client.py +4 -2
- argus/client/generic/client.py +4 -2
- argus/client/sct/client.py +5 -3
- argus/client/sirenada/client.py +4 -2
- {argus_alm-0.15.8.dist-info → argus_alm-0.15.10.dist-info}/METADATA +2 -1
- argus_alm-0.15.10.dist-info/RECORD +23 -0
- argus_alm-0.15.8.dist-info/RECORD +0 -23
- {argus_alm-0.15.8.dist-info → argus_alm-0.15.10.dist-info}/WHEEL +0 -0
- {argus_alm-0.15.8.dist-info → argus_alm-0.15.10.dist-info}/entry_points.txt +0 -0
- {argus_alm-0.15.8.dist-info → argus_alm-0.15.10.dist-info}/licenses/LICENSE +0 -0
- {argus_alm-0.15.8.dist-info → argus_alm-0.15.10.dist-info}/top_level.txt +0 -0
argus/_version.py
CHANGED
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.15.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 15,
|
|
31
|
+
__version__ = version = '0.15.10'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 15, 10)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
argus/client/base.py
CHANGED
|
@@ -5,6 +5,8 @@ from typing import Any, Type
|
|
|
5
5
|
from uuid import UUID
|
|
6
6
|
|
|
7
7
|
import requests
|
|
8
|
+
from requests.adapters import HTTPAdapter
|
|
9
|
+
from urllib3.util.retry import Retry
|
|
8
10
|
|
|
9
11
|
from argus.common.enums import TestStatus
|
|
10
12
|
from argus.client.generic_result import GenericResultTable
|
|
@@ -33,11 +35,30 @@ class ArgusClient:
|
|
|
33
35
|
FETCH_RESULTS = "/testrun/$type/$id/fetch_results"
|
|
34
36
|
FINALIZE = "/testrun/$type/$id/finalize"
|
|
35
37
|
|
|
36
|
-
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None
|
|
38
|
+
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None,
|
|
39
|
+
timeout: int = 60, max_retries: int = 3) -> None:
|
|
37
40
|
self._auth_token = auth_token
|
|
38
41
|
self._base_url = base_url
|
|
39
42
|
self._api_ver = api_version
|
|
43
|
+
self._timeout = timeout
|
|
40
44
|
self.session = requests.Session()
|
|
45
|
+
|
|
46
|
+
# Configure retry strategy
|
|
47
|
+
retry_strategy = Retry(
|
|
48
|
+
total=max_retries,
|
|
49
|
+
connect=max_retries,
|
|
50
|
+
read=max_retries,
|
|
51
|
+
status=0,
|
|
52
|
+
backoff_factor=1,
|
|
53
|
+
status_forcelist=(),
|
|
54
|
+
allowed_methods=["GET"],
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
# Mount adapter with retry strategy for both http and https
|
|
58
|
+
adapter = HTTPAdapter(max_retries=retry_strategy)
|
|
59
|
+
self.session.mount("http://", adapter)
|
|
60
|
+
self.session.mount("https://", adapter)
|
|
61
|
+
|
|
41
62
|
if extra_headers:
|
|
42
63
|
self.session.headers.update(extra_headers)
|
|
43
64
|
|
|
@@ -101,7 +122,8 @@ class ArgusClient:
|
|
|
101
122
|
response = self.session.get(
|
|
102
123
|
url=url,
|
|
103
124
|
params=params,
|
|
104
|
-
headers=self.request_headers
|
|
125
|
+
headers=self.request_headers,
|
|
126
|
+
timeout=self._timeout
|
|
105
127
|
)
|
|
106
128
|
LOGGER.debug("GET Response: %s %s", response.status_code, response.url)
|
|
107
129
|
|
|
@@ -124,6 +146,7 @@ class ArgusClient:
|
|
|
124
146
|
params=params,
|
|
125
147
|
json=body,
|
|
126
148
|
headers=self.request_headers,
|
|
149
|
+
timeout=self._timeout
|
|
127
150
|
)
|
|
128
151
|
LOGGER.debug("POST Response: %s %s", response.status_code, response.url)
|
|
129
152
|
|
|
@@ -12,8 +12,10 @@ class ArgusDriverMatrixClient(ArgusClient):
|
|
|
12
12
|
SUBMIT_DRIVER_FAILURE = "/driver_matrix/result/fail"
|
|
13
13
|
SUBMIT_ENV = "/driver_matrix/env/submit"
|
|
14
14
|
|
|
15
|
-
def __init__(self, run_id: UUID, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None
|
|
16
|
-
|
|
15
|
+
def __init__(self, run_id: UUID, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None,
|
|
16
|
+
timeout: int = 60, max_retries: int = 3) -> None:
|
|
17
|
+
super().__init__(auth_token, base_url, api_version, extra_headers=extra_headers,
|
|
18
|
+
timeout=timeout, max_retries=max_retries)
|
|
17
19
|
self.run_id = run_id
|
|
18
20
|
|
|
19
21
|
def submit_driver_matrix_run(self, job_name: str, job_url: str) -> None:
|
argus/client/generic/client.py
CHANGED
|
@@ -12,8 +12,10 @@ class ArgusGenericClient(ArgusClient):
|
|
|
12
12
|
class Routes(ArgusClient.Routes):
|
|
13
13
|
TRIGGER_JOBS = "/planning/plan/trigger"
|
|
14
14
|
|
|
15
|
-
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None
|
|
16
|
-
|
|
15
|
+
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None,
|
|
16
|
+
timeout: int = 180, max_retries: int = 3) -> None:
|
|
17
|
+
super().__init__(auth_token, base_url, api_version, extra_headers=extra_headers,
|
|
18
|
+
timeout=timeout, max_retries=max_retries)
|
|
17
19
|
|
|
18
20
|
def submit_generic_run(self, build_id: str, run_id: str, started_by: str, build_url: str, sub_type: str = None, scylla_version: str | None = None):
|
|
19
21
|
request_body = {
|
argus/client/sct/client.py
CHANGED
|
@@ -28,10 +28,12 @@ class ArgusSCTClient(ArgusClient):
|
|
|
28
28
|
SUBMIT_EVENTS = "/sct/$id/events/submit"
|
|
29
29
|
SUBMIT_EVENT = "/sct/$id/event/submit"
|
|
30
30
|
SUBMIT_JUNIT_REPORT = "/sct/$id/junit/submit"
|
|
31
|
-
SUBMIT_EMAIL = "/testrun/report"
|
|
31
|
+
SUBMIT_EMAIL = "/testrun/report/email"
|
|
32
32
|
|
|
33
|
-
def __init__(self, run_id: UUID, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None
|
|
34
|
-
|
|
33
|
+
def __init__(self, run_id: UUID, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None,
|
|
34
|
+
timeout: int = 60, max_retries: int = 3) -> None:
|
|
35
|
+
super().__init__(auth_token, base_url, api_version, extra_headers=extra_headers,
|
|
36
|
+
timeout=timeout, max_retries=max_retries)
|
|
35
37
|
self.run_id = run_id
|
|
36
38
|
|
|
37
39
|
def submit_sct_run(self, job_name: str, job_url: str, started_by: str, commit_id: str,
|
argus/client/sirenada/client.py
CHANGED
|
@@ -45,9 +45,11 @@ class ArgusSirenadaClient(ArgusClient):
|
|
|
45
45
|
"skipped": "skipped"
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None
|
|
48
|
+
def __init__(self, auth_token: str, base_url: str, api_version="v1", extra_headers: dict | None = None,
|
|
49
|
+
timeout: int = 60, max_retries: int = 3) -> None:
|
|
49
50
|
self.results_path: Path | None = None
|
|
50
|
-
super().__init__(auth_token, base_url, api_version, extra_headers=extra_headers
|
|
51
|
+
super().__init__(auth_token, base_url, api_version, extra_headers=extra_headers,
|
|
52
|
+
timeout=timeout, max_retries=max_retries)
|
|
51
53
|
|
|
52
54
|
def _verify_required_files_exist(self, results_path: Path):
|
|
53
55
|
assert (results_path / self._junit_xml_filename).exists(), "Missing jUnit XML results file!"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: argus-alm
|
|
3
|
-
Version: 0.15.
|
|
3
|
+
Version: 0.15.10
|
|
4
4
|
Summary: Argus
|
|
5
5
|
Author-email: Alexey Kartashov <alexey.kartashov@scylladb.com>, Łukasz Sójka <lukasz.sojka@scylladb.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -24,6 +24,7 @@ Requires-Dist: python-jenkins>=1.7.0; extra == "web-backend"
|
|
|
24
24
|
Requires-Dist: python-slugify~=6.1.1; extra == "web-backend"
|
|
25
25
|
Requires-Dist: pygithub>=2.6.1; extra == "web-backend"
|
|
26
26
|
Requires-Dist: boto3~=1.38.9; extra == "web-backend"
|
|
27
|
+
Requires-Dist: jira>=3.10.5; extra == "web-backend"
|
|
27
28
|
Requires-Dist: prometheus-flask-exporter>=0.23.2; extra == "web-backend"
|
|
28
29
|
Provides-Extra: docker-image
|
|
29
30
|
Requires-Dist: supervisor~=4.2.4; extra == "docker-image"
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
argus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
argus/_version.py,sha256=4uVtcREcPon7-Lck4ArrQWHqvO4Y03ptuPD8QKqRhSM,708
|
|
3
|
+
argus/client/__init__.py,sha256=bO9_j5_jK5kvTHR46KEZ0Y-p0li7CBW8QSd-K5Ez4vA,42
|
|
4
|
+
argus/client/base.py,sha256=M39ShKHcyIlpnFkvHgzpyUUBAf5BTTocYR8qOVg0pHA,9178
|
|
5
|
+
argus/client/generic_result.py,sha256=9D0zrpfEDiIL7PjL12TZnqk5Mi_1T1UvesF5wWeMfz0,6264
|
|
6
|
+
argus/client/driver_matrix_tests/cli.py,sha256=JpI0v1hzRQr9KkrxO7D4hEbkzumexFFC_iRM8558zHU,8375
|
|
7
|
+
argus/client/driver_matrix_tests/client.py,sha256=6wRRDO8tyM_1c3cP0vD-I4xkI8wKczb6-NPE-yvqy1g,2931
|
|
8
|
+
argus/client/generic/cli.py,sha256=jsdSwzwzefX1POyrZ4lFTRcjWPmTauuXBGjceM54Zk4,4707
|
|
9
|
+
argus/client/generic/client.py,sha256=-OLeLyXN5BBrv-QouDYH3IL3W17BhywiUrLEBA-CJzw,2097
|
|
10
|
+
argus/client/sct/client.py,sha256=oKm-tdH-HS6wrK0kcYzKfLYnhhwJW7J89lk3Hsj5sOw,12997
|
|
11
|
+
argus/client/sct/types.py,sha256=VLgVe7qPmJtCLqtPnuX8N8kMKZq-iY3SKz68nvU6nJ4,371
|
|
12
|
+
argus/client/sirenada/client.py,sha256=RGgx4uSGI3LN55gJC4-DbCamVidA8IE2CQmU3-P9tx8,6446
|
|
13
|
+
argus/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
+
argus/common/email.py,sha256=YUgin4yA3-1bH6HbtXIh09SLAzYSzSJPKM9sIvroAMA,842
|
|
15
|
+
argus/common/enums.py,sha256=FM308aseXxsaeOqoiyM-NIDWKHpbceLysd-sLDh7TkI,1287
|
|
16
|
+
argus/common/sct_types.py,sha256=GX0S1_eH3eBOO17WqBVtsDKzz86vgL2VUM7gi9Cjrmc,1649
|
|
17
|
+
argus/common/sirenada_types.py,sha256=CZH2JXA1KYUj29eXYe8rIAAWdN1XPqOsDPAXvM25bVQ,698
|
|
18
|
+
argus_alm-0.15.10.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
19
|
+
argus_alm-0.15.10.dist-info/METADATA,sha256=YT8S9y6TQ5eAjT3ovSyLWGsRUrTORZlxgb9EhsPip8I,5151
|
|
20
|
+
argus_alm-0.15.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
21
|
+
argus_alm-0.15.10.dist-info/entry_points.txt,sha256=5mSBLLPndhFHKY5M9SCF8WhDBAArrj-S2IL-uoiaJiE,140
|
|
22
|
+
argus_alm-0.15.10.dist-info/top_level.txt,sha256=Pea173vTU-Et8xmNCctS34REW4cH0Xmjyiztu0HuM0c,6
|
|
23
|
+
argus_alm-0.15.10.dist-info/RECORD,,
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
argus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
argus/_version.py,sha256=OZz2ObefAkpiEMaFTa9SJuKISgl89HYDOVrF-rvuYh8,706
|
|
3
|
-
argus/client/__init__.py,sha256=bO9_j5_jK5kvTHR46KEZ0Y-p0li7CBW8QSd-K5Ez4vA,42
|
|
4
|
-
argus/client/base.py,sha256=FZ9-quDXwViWbz892XnuZlWJiAmzpnTgvkRXV9i8HlE,8423
|
|
5
|
-
argus/client/generic_result.py,sha256=9D0zrpfEDiIL7PjL12TZnqk5Mi_1T1UvesF5wWeMfz0,6264
|
|
6
|
-
argus/client/driver_matrix_tests/cli.py,sha256=JpI0v1hzRQr9KkrxO7D4hEbkzumexFFC_iRM8558zHU,8375
|
|
7
|
-
argus/client/driver_matrix_tests/client.py,sha256=fFucqwog6WnDnje1xB-4ERfwHXblXP4upmtt9RtOkls,2806
|
|
8
|
-
argus/client/generic/cli.py,sha256=jsdSwzwzefX1POyrZ4lFTRcjWPmTauuXBGjceM54Zk4,4707
|
|
9
|
-
argus/client/generic/client.py,sha256=3MONtLIcF7rZ5x5OaAQKi4YGHCHb3-9ooCUhWtKs4C4,1971
|
|
10
|
-
argus/client/sct/client.py,sha256=3qn_2ioFEleg8XzZWXFvythTIpCwMPvLzXMBxf57fR8,12866
|
|
11
|
-
argus/client/sct/types.py,sha256=VLgVe7qPmJtCLqtPnuX8N8kMKZq-iY3SKz68nvU6nJ4,371
|
|
12
|
-
argus/client/sirenada/client.py,sha256=lzhmBFAUnvPSAJfCjeQ0L5nbp50Q0YLHwIondO9rvt4,6321
|
|
13
|
-
argus/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
-
argus/common/email.py,sha256=YUgin4yA3-1bH6HbtXIh09SLAzYSzSJPKM9sIvroAMA,842
|
|
15
|
-
argus/common/enums.py,sha256=FM308aseXxsaeOqoiyM-NIDWKHpbceLysd-sLDh7TkI,1287
|
|
16
|
-
argus/common/sct_types.py,sha256=GX0S1_eH3eBOO17WqBVtsDKzz86vgL2VUM7gi9Cjrmc,1649
|
|
17
|
-
argus/common/sirenada_types.py,sha256=CZH2JXA1KYUj29eXYe8rIAAWdN1XPqOsDPAXvM25bVQ,698
|
|
18
|
-
argus_alm-0.15.8.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
19
|
-
argus_alm-0.15.8.dist-info/METADATA,sha256=fn-TaUp-ZELmGImVprz5aQxhcvm-vTPd9o9I9ZYF1bI,5098
|
|
20
|
-
argus_alm-0.15.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
21
|
-
argus_alm-0.15.8.dist-info/entry_points.txt,sha256=5mSBLLPndhFHKY5M9SCF8WhDBAArrj-S2IL-uoiaJiE,140
|
|
22
|
-
argus_alm-0.15.8.dist-info/top_level.txt,sha256=Pea173vTU-Et8xmNCctS34REW4cH0Xmjyiztu0HuM0c,6
|
|
23
|
-
argus_alm-0.15.8.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|