metal-stack-api 0.0.15__py3-none-any.whl → 0.0.16__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.
- {metal_stack_api-0.0.15.dist-info → metal_stack_api-0.0.16.dist-info}/METADATA +1 -1
- {metal_stack_api-0.0.15.dist-info → metal_stack_api-0.0.16.dist-info}/RECORD +29 -29
- metalstack/admin/v2/filesystem_connecpy.py +195 -160
- metalstack/admin/v2/image_connecpy.py +241 -197
- metalstack/admin/v2/ip_connecpy.py +144 -118
- metalstack/admin/v2/machine_connecpy.py +144 -118
- metalstack/admin/v2/network_connecpy.py +291 -238
- metalstack/admin/v2/partition_connecpy.py +241 -197
- metalstack/admin/v2/size_connecpy.py +195 -160
- metalstack/admin/v2/tenant_connecpy.py +144 -118
- metalstack/admin/v2/token_connecpy.py +144 -118
- metalstack/api/v2/filesystem_connecpy.py +241 -197
- metalstack/api/v2/health_connecpy.py +93 -76
- metalstack/api/v2/image_connecpy.py +195 -160
- metalstack/api/v2/ip_connecpy.py +291 -238
- metalstack/api/v2/machine_connecpy.py +291 -238
- metalstack/api/v2/method_connecpy.py +144 -118
- metalstack/api/v2/network_connecpy.py +341 -279
- metalstack/api/v2/partition_connecpy.py +144 -118
- metalstack/api/v2/project_connecpy.py +654 -538
- metalstack/api/v2/size_connecpy.py +144 -118
- metalstack/api/v2/tenant_connecpy.py +654 -538
- metalstack/api/v2/token_connecpy.py +341 -279
- metalstack/api/v2/user_connecpy.py +93 -76
- metalstack/api/v2/version_connecpy.py +93 -76
- metalstack/infra/v2/bmc_connecpy.py +93 -76
- metalstack/infra/v2/switch_connecpy.py +93 -76
- {metal_stack_api-0.0.15.dist-info → metal_stack_api-0.0.16.dist-info}/WHEEL +0 -0
- {metal_stack_api-0.0.15.dist-info → metal_stack_api-0.0.16.dist-info}/top_level.txt +0 -0
|
@@ -1,158 +1,184 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
|
-
# Generated by https://github.com/i2y/connecpy/protoc-gen-connecpy. DO NOT EDIT!
|
|
2
|
+
# Generated by https://github.com/i2y/connecpy/v2/protoc-gen-connecpy. DO NOT EDIT!
|
|
3
3
|
# source: metalstack/api/v2/method.proto
|
|
4
4
|
|
|
5
|
-
from
|
|
5
|
+
from collections.abc import AsyncIterator, Iterable, Iterator, Mapping
|
|
6
|
+
from typing import Protocol
|
|
6
7
|
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
from connecpy.
|
|
10
|
-
from connecpy.
|
|
11
|
-
from connecpy.
|
|
12
|
-
from connecpy.
|
|
13
|
-
from connecpy.
|
|
8
|
+
from connecpy.client import ConnecpyClient, ConnecpyClientSync
|
|
9
|
+
from connecpy.code import Code
|
|
10
|
+
from connecpy.exceptions import ConnecpyException
|
|
11
|
+
from connecpy.interceptor import Interceptor, InterceptorSync
|
|
12
|
+
from connecpy.method import IdempotencyLevel, MethodInfo
|
|
13
|
+
from connecpy.request import Headers, RequestContext
|
|
14
|
+
from connecpy.server import ConnecpyASGIApplication, ConnecpyWSGIApplication, Endpoint, EndpointSync
|
|
14
15
|
import metalstack.api.v2.method_pb2 as metalstack_dot_api_dot_v2_dot_method__pb2
|
|
15
16
|
|
|
16
17
|
|
|
17
18
|
class MethodService(Protocol):
|
|
18
|
-
async def
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
class MethodServiceServerSync(ConnecpyServer):
|
|
55
|
-
def __init__(self, *, service: MethodServiceSync, server_path_prefix=""):
|
|
56
|
-
super().__init__()
|
|
57
|
-
self._prefix = f"{server_path_prefix}/metalstack.api.v2.MethodService"
|
|
58
|
-
self._endpoints = {
|
|
59
|
-
"List": Endpoint[metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest, metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse](
|
|
60
|
-
service_name="MethodService",
|
|
61
|
-
name="List",
|
|
62
|
-
function=getattr(service, "List"),
|
|
63
|
-
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
64
|
-
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse,
|
|
65
|
-
allowed_methods=("POST",),
|
|
66
|
-
),
|
|
67
|
-
"TokenScopedList": Endpoint[metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest, metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse](
|
|
68
|
-
service_name="MethodService",
|
|
69
|
-
name="TokenScopedList",
|
|
70
|
-
function=getattr(service, "TokenScopedList"),
|
|
71
|
-
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
72
|
-
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse,
|
|
73
|
-
allowed_methods=("POST",),
|
|
74
|
-
),
|
|
75
|
-
}
|
|
19
|
+
async def list(self, request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse:
|
|
20
|
+
raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
|
|
21
|
+
|
|
22
|
+
async def token_scoped_list(self, request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse:
|
|
23
|
+
raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class MethodServiceASGIApplication(ConnecpyASGIApplication):
|
|
27
|
+
def __init__(self, service: MethodService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None):
|
|
28
|
+
super().__init__(
|
|
29
|
+
endpoints={
|
|
30
|
+
"/metalstack.api.v2.MethodService/List": Endpoint.unary(
|
|
31
|
+
method=MethodInfo(
|
|
32
|
+
name="List",
|
|
33
|
+
service_name="metalstack.api.v2.MethodService",
|
|
34
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
35
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse,
|
|
36
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
37
|
+
),
|
|
38
|
+
function=service.list,
|
|
39
|
+
),
|
|
40
|
+
"/metalstack.api.v2.MethodService/TokenScopedList": Endpoint.unary(
|
|
41
|
+
method=MethodInfo(
|
|
42
|
+
name="TokenScopedList",
|
|
43
|
+
service_name="metalstack.api.v2.MethodService",
|
|
44
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
45
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse,
|
|
46
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
47
|
+
),
|
|
48
|
+
function=service.token_scoped_list,
|
|
49
|
+
),
|
|
50
|
+
},
|
|
51
|
+
interceptors=interceptors,
|
|
52
|
+
read_max_bytes=read_max_bytes,
|
|
53
|
+
)
|
|
76
54
|
|
|
77
|
-
|
|
78
|
-
|
|
55
|
+
@property
|
|
56
|
+
def path(self):
|
|
57
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
58
|
+
return "/metalstack.api.v2.MethodService"
|
|
79
59
|
|
|
80
60
|
|
|
81
61
|
class MethodServiceClient(ConnecpyClient):
|
|
82
|
-
def
|
|
62
|
+
async def list(
|
|
83
63
|
self,
|
|
84
64
|
request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
85
65
|
*,
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
**kwargs,
|
|
66
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
67
|
+
timeout_ms: int | None = None,
|
|
89
68
|
) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse:
|
|
90
|
-
|
|
91
|
-
return self._make_request(
|
|
92
|
-
url=f"{server_path_prefix}/metalstack.api.v2.MethodService/List",
|
|
93
|
-
ctx=ctx,
|
|
69
|
+
return await self.execute_unary(
|
|
94
70
|
request=request,
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
71
|
+
method=MethodInfo(
|
|
72
|
+
name="List",
|
|
73
|
+
service_name="metalstack.api.v2.MethodService",
|
|
74
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
75
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse,
|
|
76
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
77
|
+
),
|
|
78
|
+
headers=headers,
|
|
79
|
+
timeout_ms=timeout_ms,
|
|
98
80
|
)
|
|
99
81
|
|
|
100
|
-
def
|
|
82
|
+
async def token_scoped_list(
|
|
101
83
|
self,
|
|
102
84
|
request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
103
85
|
*,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
**kwargs,
|
|
86
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
87
|
+
timeout_ms: int | None = None,
|
|
107
88
|
) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse:
|
|
108
|
-
|
|
109
|
-
return self._make_request(
|
|
110
|
-
url=f"{server_path_prefix}/metalstack.api.v2.MethodService/TokenScopedList",
|
|
111
|
-
ctx=ctx,
|
|
89
|
+
return await self.execute_unary(
|
|
112
90
|
request=request,
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
91
|
+
method=MethodInfo(
|
|
92
|
+
name="TokenScopedList",
|
|
93
|
+
service_name="metalstack.api.v2.MethodService",
|
|
94
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
95
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse,
|
|
96
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
97
|
+
),
|
|
98
|
+
headers=headers,
|
|
99
|
+
timeout_ms=timeout_ms,
|
|
116
100
|
)
|
|
117
101
|
|
|
118
102
|
|
|
119
|
-
class
|
|
120
|
-
|
|
103
|
+
class MethodServiceSync(Protocol):
|
|
104
|
+
def list(self, request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse:
|
|
105
|
+
raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
|
|
106
|
+
def token_scoped_list(self, request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse:
|
|
107
|
+
raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
class MethodServiceWSGIApplication(ConnecpyWSGIApplication):
|
|
111
|
+
def __init__(self, service: MethodServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None):
|
|
112
|
+
super().__init__(
|
|
113
|
+
endpoints={
|
|
114
|
+
"/metalstack.api.v2.MethodService/List": EndpointSync.unary(
|
|
115
|
+
method=MethodInfo(
|
|
116
|
+
name="List",
|
|
117
|
+
service_name="metalstack.api.v2.MethodService",
|
|
118
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
119
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse,
|
|
120
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
121
|
+
),
|
|
122
|
+
function=service.list,
|
|
123
|
+
),
|
|
124
|
+
"/metalstack.api.v2.MethodService/TokenScopedList": EndpointSync.unary(
|
|
125
|
+
method=MethodInfo(
|
|
126
|
+
name="TokenScopedList",
|
|
127
|
+
service_name="metalstack.api.v2.MethodService",
|
|
128
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
129
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse,
|
|
130
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
131
|
+
),
|
|
132
|
+
function=service.token_scoped_list,
|
|
133
|
+
),
|
|
134
|
+
},
|
|
135
|
+
interceptors=interceptors,
|
|
136
|
+
read_max_bytes=read_max_bytes,
|
|
137
|
+
)
|
|
138
|
+
|
|
139
|
+
@property
|
|
140
|
+
def path(self):
|
|
141
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
142
|
+
return "/metalstack.api.v2.MethodService"
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class MethodServiceClientSync(ConnecpyClientSync):
|
|
146
|
+
def list(
|
|
121
147
|
self,
|
|
122
148
|
request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
123
149
|
*,
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
session: Union[httpx.AsyncClient, None] = None,
|
|
127
|
-
**kwargs,
|
|
150
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
151
|
+
timeout_ms: int | None = None,
|
|
128
152
|
) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse:
|
|
129
|
-
|
|
130
|
-
return await self._make_request(
|
|
131
|
-
url=f"{server_path_prefix}/metalstack.api.v2.MethodService/List",
|
|
132
|
-
ctx=ctx,
|
|
153
|
+
return self.execute_unary(
|
|
133
154
|
request=request,
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
155
|
+
method=MethodInfo(
|
|
156
|
+
name="List",
|
|
157
|
+
service_name="metalstack.api.v2.MethodService",
|
|
158
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListRequest,
|
|
159
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceListResponse,
|
|
160
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
161
|
+
),
|
|
162
|
+
headers=headers,
|
|
163
|
+
timeout_ms=timeout_ms,
|
|
138
164
|
)
|
|
139
165
|
|
|
140
|
-
|
|
166
|
+
def token_scoped_list(
|
|
141
167
|
self,
|
|
142
168
|
request: metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
143
169
|
*,
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
session: Union[httpx.AsyncClient, None] = None,
|
|
147
|
-
**kwargs,
|
|
170
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
171
|
+
timeout_ms: int | None = None,
|
|
148
172
|
) -> metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse:
|
|
149
|
-
|
|
150
|
-
return await self._make_request(
|
|
151
|
-
url=f"{server_path_prefix}/metalstack.api.v2.MethodService/TokenScopedList",
|
|
152
|
-
ctx=ctx,
|
|
173
|
+
return self.execute_unary(
|
|
153
174
|
request=request,
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
175
|
+
method=MethodInfo(
|
|
176
|
+
name="TokenScopedList",
|
|
177
|
+
service_name="metalstack.api.v2.MethodService",
|
|
178
|
+
input=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListRequest,
|
|
179
|
+
output=metalstack_dot_api_dot_v2_dot_method__pb2.MethodServiceTokenScopedListResponse,
|
|
180
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
181
|
+
),
|
|
182
|
+
headers=headers,
|
|
183
|
+
timeout_ms=timeout_ms,
|
|
158
184
|
)
|