python3-core-api-client 1.2__py3-none-any.whl → 2.1.0__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.
- cyberfusion/CoreApiClient/connector.py +1 -0
- cyberfusion/CoreApiClient/http.py +30 -1
- cyberfusion/CoreApiClient/models.py +1642 -4140
- cyberfusion/CoreApiClient/resources/basic_authentication_realms.py +56 -47
- cyberfusion/CoreApiClient/resources/borg_archives.py +81 -82
- cyberfusion/CoreApiClient/resources/borg_repositories.py +76 -77
- cyberfusion/CoreApiClient/resources/certificate_managers.py +63 -55
- cyberfusion/CoreApiClient/resources/certificates.py +34 -33
- cyberfusion/CoreApiClient/resources/clusters.py +1486 -153
- cyberfusion/CoreApiClient/resources/cmses.py +157 -156
- cyberfusion/CoreApiClient/resources/crons.py +41 -41
- cyberfusion/CoreApiClient/resources/custom_config_snippets.py +55 -47
- cyberfusion/CoreApiClient/resources/custom_configs.py +44 -44
- cyberfusion/CoreApiClient/resources/customers.py +53 -54
- cyberfusion/CoreApiClient/resources/daemons.py +54 -55
- cyberfusion/CoreApiClient/resources/database_user_grants.py +33 -53
- cyberfusion/CoreApiClient/resources/database_users.py +45 -45
- cyberfusion/CoreApiClient/resources/databases.py +80 -81
- cyberfusion/CoreApiClient/resources/domain_routers.py +23 -23
- cyberfusion/CoreApiClient/resources/firewall_groups.py +44 -44
- cyberfusion/CoreApiClient/resources/firewall_rules.py +36 -36
- cyberfusion/CoreApiClient/resources/fpm_pools.py +61 -61
- cyberfusion/CoreApiClient/resources/ftp_users.py +51 -49
- cyberfusion/CoreApiClient/resources/haproxy_listens.py +36 -36
- cyberfusion/CoreApiClient/resources/haproxy_listens_to_nodes.py +45 -39
- cyberfusion/CoreApiClient/resources/health.py +6 -5
- cyberfusion/CoreApiClient/resources/hosts_entries.py +33 -33
- cyberfusion/CoreApiClient/resources/htpasswd_files.py +36 -36
- cyberfusion/CoreApiClient/resources/htpasswd_users.py +44 -44
- cyberfusion/CoreApiClient/resources/login.py +15 -14
- cyberfusion/CoreApiClient/resources/logs.py +59 -58
- cyberfusion/CoreApiClient/resources/mail_accounts.py +60 -59
- cyberfusion/CoreApiClient/resources/mail_aliases.py +41 -41
- cyberfusion/CoreApiClient/resources/mail_domains.py +41 -41
- cyberfusion/CoreApiClient/resources/mail_hostnames.py +44 -44
- cyberfusion/CoreApiClient/resources/malwares.py +14 -38
- cyberfusion/CoreApiClient/resources/mariadb_encryption_keys.py +37 -31
- cyberfusion/CoreApiClient/resources/node_add_ons.py +39 -40
- cyberfusion/CoreApiClient/resources/nodes.py +60 -61
- cyberfusion/CoreApiClient/resources/passenger_apps.py +54 -54
- cyberfusion/CoreApiClient/resources/redis_instances.py +46 -46
- cyberfusion/CoreApiClient/resources/root_ssh_keys.py +41 -41
- cyberfusion/CoreApiClient/resources/security_txt_policies.py +56 -48
- cyberfusion/CoreApiClient/resources/sites.py +15 -15
- cyberfusion/CoreApiClient/resources/ssh_keys.py +41 -41
- cyberfusion/CoreApiClient/resources/task_collections.py +20 -20
- cyberfusion/CoreApiClient/resources/tombstones.py +15 -15
- cyberfusion/CoreApiClient/resources/unix_users.py +68 -69
- cyberfusion/CoreApiClient/resources/url_redirects.py +42 -42
- cyberfusion/CoreApiClient/resources/virtual_hosts.py +66 -66
- {python3_core_api_client-1.2.dist-info → python3_core_api_client-2.1.0.dist-info}/METADATA +44 -11
- python3_core_api_client-2.1.0.dist-info/RECORD +59 -0
- python3_core_api_client-1.2.dist-info/RECORD +0 -59
- {python3_core_api_client-1.2.dist-info → python3_core_api_client-2.1.0.dist-info}/WHEEL +0 -0
- {python3_core_api_client-1.2.dist-info → python3_core_api_client-2.1.0.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from cyberfusion.CoreApiClient import models
|
|
2
2
|
from typing import Optional, Union, List
|
|
3
3
|
|
|
4
|
+
from cyberfusion.CoreApiClient.http import DtoResponse
|
|
4
5
|
from cyberfusion.CoreApiClient.interfaces import Resource
|
|
5
6
|
|
|
6
7
|
|
|
@@ -11,14 +12,16 @@ class CustomConfigSnippets(Resource):
|
|
|
11
12
|
models.CustomConfigSnippetCreateFromContentsRequest,
|
|
12
13
|
models.CustomConfigSnippetCreateFromTemplateRequest,
|
|
13
14
|
],
|
|
14
|
-
) -> models.CustomConfigSnippetResource:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
15
|
+
) -> DtoResponse[models.CustomConfigSnippetResource]:
|
|
16
|
+
local_response = self.api_connector.send_or_fail(
|
|
17
|
+
"POST",
|
|
18
|
+
"/api/v1/custom-config-snippets",
|
|
19
|
+
data=request.dict(exclude_unset=True),
|
|
20
|
+
query_parameters={},
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
return DtoResponse.from_response(
|
|
24
|
+
local_response, models.CustomConfigSnippetResource
|
|
22
25
|
)
|
|
23
26
|
|
|
24
27
|
def list_custom_config_snippets(
|
|
@@ -28,34 +31,37 @@ class CustomConfigSnippets(Resource):
|
|
|
28
31
|
limit: Optional[int] = None,
|
|
29
32
|
filter_: Optional[List[str]] = None,
|
|
30
33
|
sort: Optional[List[str]] = None,
|
|
31
|
-
) -> list[models.CustomConfigSnippetResource]:
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
34
|
+
) -> DtoResponse[list[models.CustomConfigSnippetResource]]:
|
|
35
|
+
local_response = self.api_connector.send_or_fail(
|
|
36
|
+
"GET",
|
|
37
|
+
"/api/v1/custom-config-snippets",
|
|
38
|
+
data=None,
|
|
39
|
+
query_parameters={
|
|
40
|
+
"skip": skip,
|
|
41
|
+
"limit": limit,
|
|
42
|
+
"filter": filter_,
|
|
43
|
+
"sort": sort,
|
|
44
|
+
},
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
return DtoResponse.from_response(
|
|
48
|
+
local_response, models.CustomConfigSnippetResource
|
|
49
|
+
)
|
|
46
50
|
|
|
47
51
|
def read_custom_config_snippet(
|
|
48
52
|
self,
|
|
49
53
|
*,
|
|
50
54
|
id_: int,
|
|
51
|
-
) -> models.CustomConfigSnippetResource:
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
) -> DtoResponse[models.CustomConfigSnippetResource]:
|
|
56
|
+
local_response = self.api_connector.send_or_fail(
|
|
57
|
+
"GET",
|
|
58
|
+
f"/api/v1/custom-config-snippets/{id_}",
|
|
59
|
+
data=None,
|
|
60
|
+
query_parameters={},
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
return DtoResponse.from_response(
|
|
64
|
+
local_response, models.CustomConfigSnippetResource
|
|
59
65
|
)
|
|
60
66
|
|
|
61
67
|
def update_custom_config_snippet(
|
|
@@ -63,26 +69,28 @@ class CustomConfigSnippets(Resource):
|
|
|
63
69
|
request: models.CustomConfigSnippetUpdateRequest,
|
|
64
70
|
*,
|
|
65
71
|
id_: int,
|
|
66
|
-
) -> models.CustomConfigSnippetResource:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
) -> DtoResponse[models.CustomConfigSnippetResource]:
|
|
73
|
+
local_response = self.api_connector.send_or_fail(
|
|
74
|
+
"PATCH",
|
|
75
|
+
f"/api/v1/custom-config-snippets/{id_}",
|
|
76
|
+
data=request.dict(exclude_unset=True),
|
|
77
|
+
query_parameters={},
|
|
78
|
+
)
|
|
79
|
+
|
|
80
|
+
return DtoResponse.from_response(
|
|
81
|
+
local_response, models.CustomConfigSnippetResource
|
|
74
82
|
)
|
|
75
83
|
|
|
76
84
|
def delete_custom_config_snippet(
|
|
77
85
|
self,
|
|
78
86
|
*,
|
|
79
87
|
id_: int,
|
|
80
|
-
) -> models.DetailMessage:
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
query_parameters={},
|
|
87
|
-
).json
|
|
88
|
+
) -> DtoResponse[models.DetailMessage]:
|
|
89
|
+
local_response = self.api_connector.send_or_fail(
|
|
90
|
+
"DELETE",
|
|
91
|
+
f"/api/v1/custom-config-snippets/{id_}",
|
|
92
|
+
data=None,
|
|
93
|
+
query_parameters={},
|
|
88
94
|
)
|
|
95
|
+
|
|
96
|
+
return DtoResponse.from_response(local_response, models.DetailMessage)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from cyberfusion.CoreApiClient import models
|
|
2
2
|
from typing import Optional, List
|
|
3
3
|
|
|
4
|
+
from cyberfusion.CoreApiClient.http import DtoResponse
|
|
4
5
|
from cyberfusion.CoreApiClient.interfaces import Resource
|
|
5
6
|
|
|
6
7
|
|
|
@@ -8,16 +9,16 @@ class CustomConfigs(Resource):
|
|
|
8
9
|
def create_custom_config(
|
|
9
10
|
self,
|
|
10
11
|
request: models.CustomConfigCreateRequest,
|
|
11
|
-
) -> models.CustomConfigResource:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
query_parameters={},
|
|
18
|
-
).json
|
|
12
|
+
) -> DtoResponse[models.CustomConfigResource]:
|
|
13
|
+
local_response = self.api_connector.send_or_fail(
|
|
14
|
+
"POST",
|
|
15
|
+
"/api/v1/custom-configs",
|
|
16
|
+
data=request.dict(exclude_unset=True),
|
|
17
|
+
query_parameters={},
|
|
19
18
|
)
|
|
20
19
|
|
|
20
|
+
return DtoResponse.from_response(local_response, models.CustomConfigResource)
|
|
21
|
+
|
|
21
22
|
def list_custom_configs(
|
|
22
23
|
self,
|
|
23
24
|
*,
|
|
@@ -25,58 +26,57 @@ class CustomConfigs(Resource):
|
|
|
25
26
|
limit: Optional[int] = None,
|
|
26
27
|
filter_: Optional[List[str]] = None,
|
|
27
28
|
sort: Optional[List[str]] = None,
|
|
28
|
-
) -> list[models.CustomConfigResource]:
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
]
|
|
29
|
+
) -> DtoResponse[list[models.CustomConfigResource]]:
|
|
30
|
+
local_response = self.api_connector.send_or_fail(
|
|
31
|
+
"GET",
|
|
32
|
+
"/api/v1/custom-configs",
|
|
33
|
+
data=None,
|
|
34
|
+
query_parameters={
|
|
35
|
+
"skip": skip,
|
|
36
|
+
"limit": limit,
|
|
37
|
+
"filter": filter_,
|
|
38
|
+
"sort": sort,
|
|
39
|
+
},
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
return DtoResponse.from_response(local_response, models.CustomConfigResource)
|
|
43
43
|
|
|
44
44
|
def read_custom_config(
|
|
45
45
|
self,
|
|
46
46
|
*,
|
|
47
47
|
id_: int,
|
|
48
|
-
) -> models.CustomConfigResource:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
"GET", f"/api/v1/custom-configs/{id_}", data=None, query_parameters={}
|
|
52
|
-
).json
|
|
48
|
+
) -> DtoResponse[models.CustomConfigResource]:
|
|
49
|
+
local_response = self.api_connector.send_or_fail(
|
|
50
|
+
"GET", f"/api/v1/custom-configs/{id_}", data=None, query_parameters={}
|
|
53
51
|
)
|
|
54
52
|
|
|
53
|
+
return DtoResponse.from_response(local_response, models.CustomConfigResource)
|
|
54
|
+
|
|
55
55
|
def update_custom_config(
|
|
56
56
|
self,
|
|
57
57
|
request: models.CustomConfigUpdateRequest,
|
|
58
58
|
*,
|
|
59
59
|
id_: int,
|
|
60
|
-
) -> models.CustomConfigResource:
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
query_parameters={},
|
|
67
|
-
).json
|
|
60
|
+
) -> DtoResponse[models.CustomConfigResource]:
|
|
61
|
+
local_response = self.api_connector.send_or_fail(
|
|
62
|
+
"PATCH",
|
|
63
|
+
f"/api/v1/custom-configs/{id_}",
|
|
64
|
+
data=request.dict(exclude_unset=True),
|
|
65
|
+
query_parameters={},
|
|
68
66
|
)
|
|
69
67
|
|
|
68
|
+
return DtoResponse.from_response(local_response, models.CustomConfigResource)
|
|
69
|
+
|
|
70
70
|
def delete_custom_config(
|
|
71
71
|
self,
|
|
72
72
|
*,
|
|
73
73
|
id_: int,
|
|
74
|
-
) -> models.DetailMessage:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
query_parameters={},
|
|
81
|
-
).json
|
|
74
|
+
) -> DtoResponse[models.DetailMessage]:
|
|
75
|
+
local_response = self.api_connector.send_or_fail(
|
|
76
|
+
"DELETE",
|
|
77
|
+
f"/api/v1/custom-configs/{id_}",
|
|
78
|
+
data=None,
|
|
79
|
+
query_parameters={},
|
|
82
80
|
)
|
|
81
|
+
|
|
82
|
+
return DtoResponse.from_response(local_response, models.DetailMessage)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from cyberfusion.CoreApiClient import models
|
|
2
2
|
from typing import Optional, List
|
|
3
3
|
|
|
4
|
+
from cyberfusion.CoreApiClient.http import DtoResponse
|
|
4
5
|
from cyberfusion.CoreApiClient.interfaces import Resource
|
|
5
6
|
|
|
6
7
|
|
|
@@ -12,86 +13,84 @@ class Customers(Resource):
|
|
|
12
13
|
limit: Optional[int] = None,
|
|
13
14
|
filter_: Optional[List[str]] = None,
|
|
14
15
|
sort: Optional[List[str]] = None,
|
|
15
|
-
) -> list[models.CustomerResource]:
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
]
|
|
16
|
+
) -> DtoResponse[list[models.CustomerResource]]:
|
|
17
|
+
local_response = self.api_connector.send_or_fail(
|
|
18
|
+
"GET",
|
|
19
|
+
"/api/v1/customers",
|
|
20
|
+
data=None,
|
|
21
|
+
query_parameters={
|
|
22
|
+
"skip": skip,
|
|
23
|
+
"limit": limit,
|
|
24
|
+
"filter": filter_,
|
|
25
|
+
"sort": sort,
|
|
26
|
+
},
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
return DtoResponse.from_response(local_response, models.CustomerResource)
|
|
30
30
|
|
|
31
31
|
def read_customer(
|
|
32
32
|
self,
|
|
33
33
|
*,
|
|
34
34
|
id_: int,
|
|
35
|
-
) -> models.CustomerResource:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
"GET", f"/api/v1/customers/{id_}", data=None, query_parameters={}
|
|
39
|
-
).json
|
|
35
|
+
) -> DtoResponse[models.CustomerResource]:
|
|
36
|
+
local_response = self.api_connector.send_or_fail(
|
|
37
|
+
"GET", f"/api/v1/customers/{id_}", data=None, query_parameters={}
|
|
40
38
|
)
|
|
41
39
|
|
|
40
|
+
return DtoResponse.from_response(local_response, models.CustomerResource)
|
|
41
|
+
|
|
42
42
|
def list_ip_addresses_for_customer(
|
|
43
43
|
self,
|
|
44
44
|
*,
|
|
45
45
|
id_: int,
|
|
46
|
-
) -> models.CustomerIPAddresses:
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
query_parameters={},
|
|
53
|
-
).json
|
|
46
|
+
) -> DtoResponse[models.CustomerIPAddresses]:
|
|
47
|
+
local_response = self.api_connector.send_or_fail(
|
|
48
|
+
"GET",
|
|
49
|
+
f"/api/v1/customers/{id_}/ip-addresses",
|
|
50
|
+
data=None,
|
|
51
|
+
query_parameters={},
|
|
54
52
|
)
|
|
55
53
|
|
|
54
|
+
return DtoResponse.from_response(local_response, models.CustomerIPAddresses)
|
|
55
|
+
|
|
56
56
|
def create_ip_address_for_customer(
|
|
57
57
|
self,
|
|
58
58
|
request: models.CustomerIPAddressCreateRequest,
|
|
59
59
|
*,
|
|
60
60
|
id_: int,
|
|
61
|
-
) -> models.TaskCollectionResource:
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
query_parameters={},
|
|
68
|
-
).json
|
|
61
|
+
) -> DtoResponse[models.TaskCollectionResource]:
|
|
62
|
+
local_response = self.api_connector.send_or_fail(
|
|
63
|
+
"POST",
|
|
64
|
+
f"/api/v1/customers/{id_}/ip-addresses",
|
|
65
|
+
data=request.dict(exclude_unset=True),
|
|
66
|
+
query_parameters={},
|
|
69
67
|
)
|
|
70
68
|
|
|
69
|
+
return DtoResponse.from_response(local_response, models.TaskCollectionResource)
|
|
70
|
+
|
|
71
71
|
def delete_ip_address_for_customer(
|
|
72
72
|
self,
|
|
73
73
|
*,
|
|
74
74
|
id_: int,
|
|
75
75
|
ip_address: str,
|
|
76
|
-
) -> models.TaskCollectionResource:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
query_parameters={},
|
|
83
|
-
).json
|
|
76
|
+
) -> DtoResponse[models.TaskCollectionResource]:
|
|
77
|
+
local_response = self.api_connector.send_or_fail(
|
|
78
|
+
"DELETE",
|
|
79
|
+
f"/api/v1/customers/{id_}/ip-addresses/{ip_address}",
|
|
80
|
+
data=None,
|
|
81
|
+
query_parameters={},
|
|
84
82
|
)
|
|
85
83
|
|
|
84
|
+
return DtoResponse.from_response(local_response, models.TaskCollectionResource)
|
|
85
|
+
|
|
86
86
|
def get_ip_addresses_products_for_customers(
|
|
87
87
|
self,
|
|
88
|
-
) -> list[models.IPAddressProduct]:
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
]
|
|
88
|
+
) -> DtoResponse[list[models.IPAddressProduct]]:
|
|
89
|
+
local_response = self.api_connector.send_or_fail(
|
|
90
|
+
"GET",
|
|
91
|
+
"/api/v1/customers/ip-addresses/products",
|
|
92
|
+
data=None,
|
|
93
|
+
query_parameters={},
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
return DtoResponse.from_response(local_response, models.IPAddressProduct)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from cyberfusion.CoreApiClient import models
|
|
2
2
|
from typing import Optional, List
|
|
3
3
|
|
|
4
|
+
from cyberfusion.CoreApiClient.http import DtoResponse
|
|
4
5
|
from cyberfusion.CoreApiClient.interfaces import Resource
|
|
5
6
|
|
|
6
7
|
|
|
@@ -8,16 +9,16 @@ class Daemons(Resource):
|
|
|
8
9
|
def create_daemon(
|
|
9
10
|
self,
|
|
10
11
|
request: models.DaemonCreateRequest,
|
|
11
|
-
) -> models.DaemonResource:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
query_parameters={},
|
|
18
|
-
).json
|
|
12
|
+
) -> DtoResponse[models.DaemonResource]:
|
|
13
|
+
local_response = self.api_connector.send_or_fail(
|
|
14
|
+
"POST",
|
|
15
|
+
"/api/v1/daemons",
|
|
16
|
+
data=request.dict(exclude_unset=True),
|
|
17
|
+
query_parameters={},
|
|
19
18
|
)
|
|
20
19
|
|
|
20
|
+
return DtoResponse.from_response(local_response, models.DaemonResource)
|
|
21
|
+
|
|
21
22
|
def list_daemons(
|
|
22
23
|
self,
|
|
23
24
|
*,
|
|
@@ -25,59 +26,58 @@ class Daemons(Resource):
|
|
|
25
26
|
limit: Optional[int] = None,
|
|
26
27
|
filter_: Optional[List[str]] = None,
|
|
27
28
|
sort: Optional[List[str]] = None,
|
|
28
|
-
) -> list[models.DaemonResource]:
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
]
|
|
29
|
+
) -> DtoResponse[list[models.DaemonResource]]:
|
|
30
|
+
local_response = self.api_connector.send_or_fail(
|
|
31
|
+
"GET",
|
|
32
|
+
"/api/v1/daemons",
|
|
33
|
+
data=None,
|
|
34
|
+
query_parameters={
|
|
35
|
+
"skip": skip,
|
|
36
|
+
"limit": limit,
|
|
37
|
+
"filter": filter_,
|
|
38
|
+
"sort": sort,
|
|
39
|
+
},
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
return DtoResponse.from_response(local_response, models.DaemonResource)
|
|
43
43
|
|
|
44
44
|
def read_daemon(
|
|
45
45
|
self,
|
|
46
46
|
*,
|
|
47
47
|
id_: int,
|
|
48
|
-
) -> models.DaemonResource:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
"GET", f"/api/v1/daemons/{id_}", data=None, query_parameters={}
|
|
52
|
-
).json
|
|
48
|
+
) -> DtoResponse[models.DaemonResource]:
|
|
49
|
+
local_response = self.api_connector.send_or_fail(
|
|
50
|
+
"GET", f"/api/v1/daemons/{id_}", data=None, query_parameters={}
|
|
53
51
|
)
|
|
54
52
|
|
|
53
|
+
return DtoResponse.from_response(local_response, models.DaemonResource)
|
|
54
|
+
|
|
55
55
|
def update_daemon(
|
|
56
56
|
self,
|
|
57
57
|
request: models.DaemonUpdateRequest,
|
|
58
58
|
*,
|
|
59
59
|
id_: int,
|
|
60
|
-
) -> models.DaemonResource:
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
query_parameters={},
|
|
67
|
-
).json
|
|
60
|
+
) -> DtoResponse[models.DaemonResource]:
|
|
61
|
+
local_response = self.api_connector.send_or_fail(
|
|
62
|
+
"PATCH",
|
|
63
|
+
f"/api/v1/daemons/{id_}",
|
|
64
|
+
data=request.dict(exclude_unset=True),
|
|
65
|
+
query_parameters={},
|
|
68
66
|
)
|
|
69
67
|
|
|
68
|
+
return DtoResponse.from_response(local_response, models.DaemonResource)
|
|
69
|
+
|
|
70
70
|
def delete_daemon(
|
|
71
71
|
self,
|
|
72
72
|
*,
|
|
73
73
|
id_: int,
|
|
74
|
-
) -> models.DetailMessage:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
"DELETE", f"/api/v1/daemons/{id_}", data=None, query_parameters={}
|
|
78
|
-
).json
|
|
74
|
+
) -> DtoResponse[models.DetailMessage]:
|
|
75
|
+
local_response = self.api_connector.send_or_fail(
|
|
76
|
+
"DELETE", f"/api/v1/daemons/{id_}", data=None, query_parameters={}
|
|
79
77
|
)
|
|
80
78
|
|
|
79
|
+
return DtoResponse.from_response(local_response, models.DetailMessage)
|
|
80
|
+
|
|
81
81
|
def list_logs(
|
|
82
82
|
self,
|
|
83
83
|
*,
|
|
@@ -85,17 +85,16 @@ class Daemons(Resource):
|
|
|
85
85
|
timestamp: Optional[str] = None,
|
|
86
86
|
sort: Optional[str] = None,
|
|
87
87
|
limit: Optional[int] = None,
|
|
88
|
-
) -> list[models.DaemonLogResource]:
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
]
|
|
88
|
+
) -> DtoResponse[list[models.DaemonLogResource]]:
|
|
89
|
+
local_response = self.api_connector.send_or_fail(
|
|
90
|
+
"GET",
|
|
91
|
+
f"/api/v1/daemons/{daemon_id}/logs",
|
|
92
|
+
data=None,
|
|
93
|
+
query_parameters={
|
|
94
|
+
"timestamp": timestamp,
|
|
95
|
+
"sort": sort,
|
|
96
|
+
"limit": limit,
|
|
97
|
+
},
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
return DtoResponse.from_response(local_response, models.DaemonLogResource)
|