metalstack.cloud 0.15.2__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.
- buf/__init__.py +0 -0
- buf/validate/__init__.py +0 -0
- buf/validate/validate_pb2.py +450 -0
- buf/validate/validate_pb2.pyi +631 -0
- buf/validate/validate_pb2_grpc.py +4 -0
- metalstack_cloud-0.15.2.dist-info/METADATA +26 -0
- metalstack_cloud-0.15.2.dist-info/RECORD +111 -0
- metalstack_cloud-0.15.2.dist-info/WHEEL +5 -0
- metalstack_cloud-0.15.2.dist-info/top_level.txt +2 -0
- metalstackcloud/__init__.py +0 -0
- metalstackcloud/admin/__init__.py +0 -0
- metalstackcloud/admin/v1/__init__.py +0 -0
- metalstackcloud/admin/v1/cluster_connecpy.py +214 -0
- metalstackcloud/admin/v1/cluster_pb2.py +70 -0
- metalstackcloud/admin/v1/cluster_pb2.pyi +93 -0
- metalstackcloud/admin/v1/cluster_pb2_grpc.py +169 -0
- metalstackcloud/admin/v1/machine_pb2.py +42 -0
- metalstackcloud/admin/v1/machine_pb2.pyi +76 -0
- metalstackcloud/admin/v1/machine_pb2_grpc.py +4 -0
- metalstackcloud/admin/v1/payment_connecpy.py +158 -0
- metalstackcloud/admin/v1/payment_pb2.py +51 -0
- metalstackcloud/admin/v1/payment_pb2.pyi +33 -0
- metalstackcloud/admin/v1/payment_pb2_grpc.py +125 -0
- metalstackcloud/admin/v1/project_connecpy.py +102 -0
- metalstackcloud/admin/v1/project_pb2.py +49 -0
- metalstackcloud/admin/v1/project_pb2.pyi +34 -0
- metalstackcloud/admin/v1/project_pb2_grpc.py +81 -0
- metalstackcloud/admin/v1/storage_connecpy.py +214 -0
- metalstackcloud/admin/v1/storage_pb2.py +75 -0
- metalstackcloud/admin/v1/storage_pb2.pyi +149 -0
- metalstackcloud/admin/v1/storage_pb2_grpc.py +169 -0
- metalstackcloud/admin/v1/tenant_connecpy.py +270 -0
- metalstackcloud/admin/v1/tenant_pb2.py +66 -0
- metalstackcloud/admin/v1/tenant_pb2.pyi +72 -0
- metalstackcloud/admin/v1/tenant_pb2_grpc.py +213 -0
- metalstackcloud/admin/v1/token_connecpy.py +158 -0
- metalstackcloud/admin/v1/token_pb2.py +56 -0
- metalstackcloud/admin/v1/token_pb2.pyi +34 -0
- metalstackcloud/admin/v1/token_pb2_grpc.py +125 -0
- metalstackcloud/api/__init__.py +0 -0
- metalstackcloud/api/v1/__init__.py +0 -0
- metalstackcloud/api/v1/asset_connecpy.py +102 -0
- metalstackcloud/api/v1/asset_pb2.py +76 -0
- metalstackcloud/api/v1/asset_pb2.pyi +132 -0
- metalstackcloud/api/v1/asset_pb2_grpc.py +81 -0
- metalstackcloud/api/v1/audit_connecpy.py +158 -0
- metalstackcloud/api/v1/audit_pb2.py +84 -0
- metalstackcloud/api/v1/audit_pb2.pyi +95 -0
- metalstackcloud/api/v1/audit_pb2_grpc.py +125 -0
- metalstackcloud/api/v1/cluster_connecpy.py +494 -0
- metalstackcloud/api/v1/cluster_pb2.py +183 -0
- metalstackcloud/api/v1/cluster_pb2.pyi +311 -0
- metalstackcloud/api/v1/cluster_pb2_grpc.py +389 -0
- metalstackcloud/api/v1/common_pb2.py +52 -0
- metalstackcloud/api/v1/common_pb2.pyi +98 -0
- metalstackcloud/api/v1/common_pb2_grpc.py +4 -0
- metalstackcloud/api/v1/health_connecpy.py +102 -0
- metalstackcloud/api/v1/health_pb2.py +58 -0
- metalstackcloud/api/v1/health_pb2.pyi +74 -0
- metalstackcloud/api/v1/health_pb2_grpc.py +81 -0
- metalstackcloud/api/v1/ip_connecpy.py +326 -0
- metalstackcloud/api/v1/ip_pb2.py +110 -0
- metalstackcloud/api/v1/ip_pb2.pyi +122 -0
- metalstackcloud/api/v1/ip_pb2_grpc.py +257 -0
- metalstackcloud/api/v1/method_connecpy.py +158 -0
- metalstackcloud/api/v1/method_pb2.py +62 -0
- metalstackcloud/api/v1/method_pb2.pyi +50 -0
- metalstackcloud/api/v1/method_pb2_grpc.py +128 -0
- metalstackcloud/api/v1/payment_connecpy.py +550 -0
- metalstackcloud/api/v1/payment_pb2.py +134 -0
- metalstackcloud/api/v1/payment_pb2.pyi +291 -0
- metalstackcloud/api/v1/payment_pb2_grpc.py +433 -0
- metalstackcloud/api/v1/project_connecpy.py +718 -0
- metalstackcloud/api/v1/project_pb2.py +156 -0
- metalstackcloud/api/v1/project_pb2.pyi +234 -0
- metalstackcloud/api/v1/project_pb2_grpc.py +565 -0
- metalstackcloud/api/v1/snapshot_connecpy.py +214 -0
- metalstackcloud/api/v1/snapshot_pb2.py +75 -0
- metalstackcloud/api/v1/snapshot_pb2.pyi +109 -0
- metalstackcloud/api/v1/snapshot_pb2_grpc.py +169 -0
- metalstackcloud/api/v1/tenant_connecpy.py +774 -0
- metalstackcloud/api/v1/tenant_pb2.py +159 -0
- metalstackcloud/api/v1/tenant_pb2.pyi +305 -0
- metalstackcloud/api/v1/tenant_pb2_grpc.py +609 -0
- metalstackcloud/api/v1/token_connecpy.py +326 -0
- metalstackcloud/api/v1/token_pb2.py +131 -0
- metalstackcloud/api/v1/token_pb2.pyi +175 -0
- metalstackcloud/api/v1/token_pb2_grpc.py +257 -0
- metalstackcloud/api/v1/user_connecpy.py +102 -0
- metalstackcloud/api/v1/user_pb2.py +48 -0
- metalstackcloud/api/v1/user_pb2.pyi +42 -0
- metalstackcloud/api/v1/user_pb2_grpc.py +81 -0
- metalstackcloud/api/v1/version_connecpy.py +102 -0
- metalstackcloud/api/v1/version_pb2.py +46 -0
- metalstackcloud/api/v1/version_pb2.pyi +29 -0
- metalstackcloud/api/v1/version_pb2_grpc.py +81 -0
- metalstackcloud/api/v1/volume_connecpy.py +270 -0
- metalstackcloud/api/v1/volume_pb2.py +91 -0
- metalstackcloud/api/v1/volume_pb2.pyi +165 -0
- metalstackcloud/api/v1/volume_pb2_grpc.py +213 -0
- metalstackcloud/client.py +139 -0
- metalstackcloud/status/__init__.py +0 -0
- metalstackcloud/status/v1/__init__.py +0 -0
- metalstackcloud/status/v1/message_connecpy.py +102 -0
- metalstackcloud/status/v1/message_pb2.py +51 -0
- metalstackcloud/status/v1/message_pb2.pyi +65 -0
- metalstackcloud/status/v1/message_pb2_grpc.py +84 -0
- metalstackcloud/status/v1/status_connecpy.py +102 -0
- metalstackcloud/status/v1/status_pb2.py +45 -0
- metalstackcloud/status/v1/status_pb2.pyi +24 -0
- metalstackcloud/status/v1/status_pb2_grpc.py +84 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by https://github.com/i2y/connecpy/protoc-gen-connecpy. DO NOT EDIT!
|
|
3
|
+
# source: admin/v1/project.proto
|
|
4
|
+
|
|
5
|
+
from typing import Optional, Protocol, Union
|
|
6
|
+
|
|
7
|
+
import httpx
|
|
8
|
+
|
|
9
|
+
from connecpy.async_client import AsyncConnecpyClient
|
|
10
|
+
from connecpy.base import Endpoint
|
|
11
|
+
from connecpy.server import ConnecpyServer
|
|
12
|
+
from connecpy.client import ConnecpyClient
|
|
13
|
+
from connecpy.context import ClientContext, ServiceContext
|
|
14
|
+
import metalstackcloud.admin.v1.project_pb2 as admin_dot_v1_dot_project__pb2
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class ProjectService(Protocol):
|
|
18
|
+
async def List(self, req: admin_dot_v1_dot_project__pb2.ProjectServiceListRequest, ctx: ServiceContext) -> admin_dot_v1_dot_project__pb2.ProjectServiceListResponse: ...
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ProjectServiceServer(ConnecpyServer):
|
|
22
|
+
def __init__(self, *, service: ProjectService, server_path_prefix=""):
|
|
23
|
+
super().__init__()
|
|
24
|
+
self._prefix = f"{server_path_prefix}/admin.v1.ProjectService"
|
|
25
|
+
self._endpoints = {
|
|
26
|
+
"List": Endpoint[admin_dot_v1_dot_project__pb2.ProjectServiceListRequest, admin_dot_v1_dot_project__pb2.ProjectServiceListResponse](
|
|
27
|
+
service_name="ProjectService",
|
|
28
|
+
name="List",
|
|
29
|
+
function=getattr(service, "List"),
|
|
30
|
+
input=admin_dot_v1_dot_project__pb2.ProjectServiceListRequest,
|
|
31
|
+
output=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse,
|
|
32
|
+
allowed_methods=("POST",),
|
|
33
|
+
),
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
def serviceName(self):
|
|
37
|
+
return "admin.v1.ProjectService"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class ProjectServiceSync(Protocol):
|
|
41
|
+
def List(self, req: admin_dot_v1_dot_project__pb2.ProjectServiceListRequest, ctx: ServiceContext) -> admin_dot_v1_dot_project__pb2.ProjectServiceListResponse: ...
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class ProjectServiceServerSync(ConnecpyServer):
|
|
45
|
+
def __init__(self, *, service: ProjectServiceSync, server_path_prefix=""):
|
|
46
|
+
super().__init__()
|
|
47
|
+
self._prefix = f"{server_path_prefix}/admin.v1.ProjectService"
|
|
48
|
+
self._endpoints = {
|
|
49
|
+
"List": Endpoint[admin_dot_v1_dot_project__pb2.ProjectServiceListRequest, admin_dot_v1_dot_project__pb2.ProjectServiceListResponse](
|
|
50
|
+
service_name="ProjectService",
|
|
51
|
+
name="List",
|
|
52
|
+
function=getattr(service, "List"),
|
|
53
|
+
input=admin_dot_v1_dot_project__pb2.ProjectServiceListRequest,
|
|
54
|
+
output=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse,
|
|
55
|
+
allowed_methods=("POST",),
|
|
56
|
+
),
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
def serviceName(self):
|
|
60
|
+
return "admin.v1.ProjectService"
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class ProjectServiceClient(ConnecpyClient):
|
|
64
|
+
def List(
|
|
65
|
+
self,
|
|
66
|
+
request: admin_dot_v1_dot_project__pb2.ProjectServiceListRequest,
|
|
67
|
+
*,
|
|
68
|
+
ctx: Optional[ClientContext] = None,
|
|
69
|
+
server_path_prefix: str = "",
|
|
70
|
+
**kwargs,
|
|
71
|
+
) -> admin_dot_v1_dot_project__pb2.ProjectServiceListResponse:
|
|
72
|
+
method = "POST"
|
|
73
|
+
return self._make_request(
|
|
74
|
+
url=f"{server_path_prefix}/admin.v1.ProjectService/List",
|
|
75
|
+
ctx=ctx,
|
|
76
|
+
request=request,
|
|
77
|
+
response_class=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse,
|
|
78
|
+
method=method,
|
|
79
|
+
**kwargs,
|
|
80
|
+
)
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
class AsyncProjectServiceClient(AsyncConnecpyClient):
|
|
84
|
+
async def List(
|
|
85
|
+
self,
|
|
86
|
+
request: admin_dot_v1_dot_project__pb2.ProjectServiceListRequest,
|
|
87
|
+
*,
|
|
88
|
+
ctx: Optional[ClientContext] = None,
|
|
89
|
+
server_path_prefix: str = "",
|
|
90
|
+
session: Union[httpx.AsyncClient, None] = None,
|
|
91
|
+
**kwargs,
|
|
92
|
+
) -> admin_dot_v1_dot_project__pb2.ProjectServiceListResponse:
|
|
93
|
+
method = "POST"
|
|
94
|
+
return await self._make_request(
|
|
95
|
+
url=f"{server_path_prefix}/admin.v1.ProjectService/List",
|
|
96
|
+
ctx=ctx,
|
|
97
|
+
request=request,
|
|
98
|
+
response_class=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse,
|
|
99
|
+
method=method,
|
|
100
|
+
session=session,
|
|
101
|
+
**kwargs,
|
|
102
|
+
)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: admin/v1/project.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'admin/v1/project.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from metalstackcloud.api.v1 import common_pb2 as api_dot_v1_dot_common__pb2
|
|
26
|
+
from metalstackcloud.api.v1 import project_pb2 as api_dot_v1_dot_project__pb2
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x61\x64min/v1/project.proto\x12\x08\x61\x64min.v1\x1a\x13\x61pi/v1/common.proto\x1a\x14\x61pi/v1/project.proto\"\x8b\x02\n\x19ProjectServiceListRequest\x12&\n\x06paging\x18\x01 \x01(\x0b\x32\x0e.api.v1.PagingR\x06paging\x12 \n\ttenant_id\x18\x02 \x01(\tH\x00R\x08tenantId\x88\x01\x01\x12V\n\x0b\x61nnotations\x18\x03 \x03(\x0b\x32\x34.admin.v1.ProjectServiceListRequest.AnnotationsEntryR\x0b\x61nnotations\x1a>\n\x10\x41nnotationsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0c\n\n_tenant_id\"y\n\x1aProjectServiceListResponse\x12+\n\x08projects\x18\x01 \x03(\x0b\x32\x0f.api.v1.ProjectR\x08projects\x12 \n\tnext_page\x18\x02 \x01(\x04H\x00R\x08nextPage\x88\x01\x01\x42\x0c\n\n_next_page2k\n\x0eProjectService\x12Y\n\x04List\x12#.admin.v1.ProjectServiceListRequest\x1a$.admin.v1.ProjectServiceListResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x42\x93\x01\n\x0c\x63om.admin.v1B\x0cProjectProtoP\x01Z4github.com/metal-stack-cloud/api/go/admin/v1;adminv1\xa2\x02\x03\x41XX\xaa\x02\x08\x41\x64min.V1\xca\x02\x08\x41\x64min\\V1\xe2\x02\x14\x41\x64min\\V1\\GPBMetadata\xea\x02\tAdmin::V1b\x06proto3')
|
|
30
|
+
|
|
31
|
+
_globals = globals()
|
|
32
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
33
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'admin.v1.project_pb2', _globals)
|
|
34
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
35
|
+
_globals['DESCRIPTOR']._loaded_options = None
|
|
36
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\014com.admin.v1B\014ProjectProtoP\001Z4github.com/metal-stack-cloud/api/go/admin/v1;adminv1\242\002\003AXX\252\002\010Admin.V1\312\002\010Admin\\V1\342\002\024Admin\\V1\\GPBMetadata\352\002\tAdmin::V1'
|
|
37
|
+
_globals['_PROJECTSERVICELISTREQUEST_ANNOTATIONSENTRY']._loaded_options = None
|
|
38
|
+
_globals['_PROJECTSERVICELISTREQUEST_ANNOTATIONSENTRY']._serialized_options = b'8\001'
|
|
39
|
+
_globals['_PROJECTSERVICE'].methods_by_name['List']._loaded_options = None
|
|
40
|
+
_globals['_PROJECTSERVICE'].methods_by_name['List']._serialized_options = b'\322\363\030\002\001\002'
|
|
41
|
+
_globals['_PROJECTSERVICELISTREQUEST']._serialized_start=80
|
|
42
|
+
_globals['_PROJECTSERVICELISTREQUEST']._serialized_end=347
|
|
43
|
+
_globals['_PROJECTSERVICELISTREQUEST_ANNOTATIONSENTRY']._serialized_start=271
|
|
44
|
+
_globals['_PROJECTSERVICELISTREQUEST_ANNOTATIONSENTRY']._serialized_end=333
|
|
45
|
+
_globals['_PROJECTSERVICELISTRESPONSE']._serialized_start=349
|
|
46
|
+
_globals['_PROJECTSERVICELISTRESPONSE']._serialized_end=470
|
|
47
|
+
_globals['_PROJECTSERVICE']._serialized_start=472
|
|
48
|
+
_globals['_PROJECTSERVICE']._serialized_end=579
|
|
49
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from api.v1 import common_pb2 as _common_pb2
|
|
2
|
+
from api.v1 import project_pb2 as _project_pb2
|
|
3
|
+
from google.protobuf.internal import containers as _containers
|
|
4
|
+
from google.protobuf import descriptor as _descriptor
|
|
5
|
+
from google.protobuf import message as _message
|
|
6
|
+
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
|
|
7
|
+
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
8
|
+
|
|
9
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
10
|
+
|
|
11
|
+
class ProjectServiceListRequest(_message.Message):
|
|
12
|
+
__slots__ = ("paging", "tenant_id", "annotations")
|
|
13
|
+
class AnnotationsEntry(_message.Message):
|
|
14
|
+
__slots__ = ("key", "value")
|
|
15
|
+
KEY_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
+
VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
+
key: str
|
|
18
|
+
value: str
|
|
19
|
+
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
|
|
20
|
+
PAGING_FIELD_NUMBER: _ClassVar[int]
|
|
21
|
+
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
|
|
22
|
+
ANNOTATIONS_FIELD_NUMBER: _ClassVar[int]
|
|
23
|
+
paging: _common_pb2.Paging
|
|
24
|
+
tenant_id: str
|
|
25
|
+
annotations: _containers.ScalarMap[str, str]
|
|
26
|
+
def __init__(self, paging: _Optional[_Union[_common_pb2.Paging, _Mapping]] = ..., tenant_id: _Optional[str] = ..., annotations: _Optional[_Mapping[str, str]] = ...) -> None: ...
|
|
27
|
+
|
|
28
|
+
class ProjectServiceListResponse(_message.Message):
|
|
29
|
+
__slots__ = ("projects", "next_page")
|
|
30
|
+
PROJECTS_FIELD_NUMBER: _ClassVar[int]
|
|
31
|
+
NEXT_PAGE_FIELD_NUMBER: _ClassVar[int]
|
|
32
|
+
projects: _containers.RepeatedCompositeFieldContainer[_project_pb2.Project]
|
|
33
|
+
next_page: int
|
|
34
|
+
def __init__(self, projects: _Optional[_Iterable[_Union[_project_pb2.Project, _Mapping]]] = ..., next_page: _Optional[int] = ...) -> None: ...
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
|
+
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
|
+
import grpc
|
|
4
|
+
|
|
5
|
+
from metalstackcloud.admin.v1 import project_pb2 as admin_dot_v1_dot_project__pb2
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class ProjectServiceStub(object):
|
|
9
|
+
"""ProjectService serves project related functions
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
def __init__(self, channel):
|
|
13
|
+
"""Constructor.
|
|
14
|
+
|
|
15
|
+
Args:
|
|
16
|
+
channel: A grpc.Channel.
|
|
17
|
+
"""
|
|
18
|
+
self.List = channel.unary_unary(
|
|
19
|
+
'/admin.v1.ProjectService/List',
|
|
20
|
+
request_serializer=admin_dot_v1_dot_project__pb2.ProjectServiceListRequest.SerializeToString,
|
|
21
|
+
response_deserializer=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse.FromString,
|
|
22
|
+
_registered_method=True)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class ProjectServiceServicer(object):
|
|
26
|
+
"""ProjectService serves project related functions
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
def List(self, request, context):
|
|
30
|
+
"""List projects based on various filter criteria
|
|
31
|
+
"""
|
|
32
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
33
|
+
context.set_details('Method not implemented!')
|
|
34
|
+
raise NotImplementedError('Method not implemented!')
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def add_ProjectServiceServicer_to_server(servicer, server):
|
|
38
|
+
rpc_method_handlers = {
|
|
39
|
+
'List': grpc.unary_unary_rpc_method_handler(
|
|
40
|
+
servicer.List,
|
|
41
|
+
request_deserializer=admin_dot_v1_dot_project__pb2.ProjectServiceListRequest.FromString,
|
|
42
|
+
response_serializer=admin_dot_v1_dot_project__pb2.ProjectServiceListResponse.SerializeToString,
|
|
43
|
+
),
|
|
44
|
+
}
|
|
45
|
+
generic_handler = grpc.method_handlers_generic_handler(
|
|
46
|
+
'admin.v1.ProjectService', rpc_method_handlers)
|
|
47
|
+
server.add_generic_rpc_handlers((generic_handler,))
|
|
48
|
+
server.add_registered_method_handlers('admin.v1.ProjectService', rpc_method_handlers)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# This class is part of an EXPERIMENTAL API.
|
|
52
|
+
class ProjectService(object):
|
|
53
|
+
"""ProjectService serves project related functions
|
|
54
|
+
"""
|
|
55
|
+
|
|
56
|
+
@staticmethod
|
|
57
|
+
def List(request,
|
|
58
|
+
target,
|
|
59
|
+
options=(),
|
|
60
|
+
channel_credentials=None,
|
|
61
|
+
call_credentials=None,
|
|
62
|
+
insecure=False,
|
|
63
|
+
compression=None,
|
|
64
|
+
wait_for_ready=None,
|
|
65
|
+
timeout=None,
|
|
66
|
+
metadata=None):
|
|
67
|
+
return grpc.experimental.unary_unary(
|
|
68
|
+
request,
|
|
69
|
+
target,
|
|
70
|
+
'/admin.v1.ProjectService/List',
|
|
71
|
+
admin_dot_v1_dot_project__pb2.ProjectServiceListRequest.SerializeToString,
|
|
72
|
+
admin_dot_v1_dot_project__pb2.ProjectServiceListResponse.FromString,
|
|
73
|
+
options,
|
|
74
|
+
channel_credentials,
|
|
75
|
+
insecure,
|
|
76
|
+
call_credentials,
|
|
77
|
+
compression,
|
|
78
|
+
wait_for_ready,
|
|
79
|
+
timeout,
|
|
80
|
+
metadata,
|
|
81
|
+
_registered_method=True)
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by https://github.com/i2y/connecpy/protoc-gen-connecpy. DO NOT EDIT!
|
|
3
|
+
# source: admin/v1/storage.proto
|
|
4
|
+
|
|
5
|
+
from typing import Optional, Protocol, Union
|
|
6
|
+
|
|
7
|
+
import httpx
|
|
8
|
+
|
|
9
|
+
from connecpy.async_client import AsyncConnecpyClient
|
|
10
|
+
from connecpy.base import Endpoint
|
|
11
|
+
from connecpy.server import ConnecpyServer
|
|
12
|
+
from connecpy.client import ConnecpyClient
|
|
13
|
+
from connecpy.context import ClientContext, ServiceContext
|
|
14
|
+
import metalstackcloud.admin.v1.storage_pb2 as admin_dot_v1_dot_storage__pb2
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class StorageService(Protocol):
|
|
18
|
+
async def ClusterInfo(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse: ...
|
|
19
|
+
async def ListVolumes(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse: ...
|
|
20
|
+
async def ListSnapshots(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse: ...
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class StorageServiceServer(ConnecpyServer):
|
|
24
|
+
def __init__(self, *, service: StorageService, server_path_prefix=""):
|
|
25
|
+
super().__init__()
|
|
26
|
+
self._prefix = f"{server_path_prefix}/admin.v1.StorageService"
|
|
27
|
+
self._endpoints = {
|
|
28
|
+
"ClusterInfo": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest, admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse](
|
|
29
|
+
service_name="StorageService",
|
|
30
|
+
name="ClusterInfo",
|
|
31
|
+
function=getattr(service, "ClusterInfo"),
|
|
32
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest,
|
|
33
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse,
|
|
34
|
+
allowed_methods=("POST",),
|
|
35
|
+
),
|
|
36
|
+
"ListVolumes": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest, admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse](
|
|
37
|
+
service_name="StorageService",
|
|
38
|
+
name="ListVolumes",
|
|
39
|
+
function=getattr(service, "ListVolumes"),
|
|
40
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest,
|
|
41
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse,
|
|
42
|
+
allowed_methods=("POST",),
|
|
43
|
+
),
|
|
44
|
+
"ListSnapshots": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest, admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse](
|
|
45
|
+
service_name="StorageService",
|
|
46
|
+
name="ListSnapshots",
|
|
47
|
+
function=getattr(service, "ListSnapshots"),
|
|
48
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest,
|
|
49
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse,
|
|
50
|
+
allowed_methods=("POST",),
|
|
51
|
+
),
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
def serviceName(self):
|
|
55
|
+
return "admin.v1.StorageService"
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
class StorageServiceSync(Protocol):
|
|
59
|
+
def ClusterInfo(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse: ...
|
|
60
|
+
def ListVolumes(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse: ...
|
|
61
|
+
def ListSnapshots(self, req: admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest, ctx: ServiceContext) -> admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse: ...
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
class StorageServiceServerSync(ConnecpyServer):
|
|
65
|
+
def __init__(self, *, service: StorageServiceSync, server_path_prefix=""):
|
|
66
|
+
super().__init__()
|
|
67
|
+
self._prefix = f"{server_path_prefix}/admin.v1.StorageService"
|
|
68
|
+
self._endpoints = {
|
|
69
|
+
"ClusterInfo": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest, admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse](
|
|
70
|
+
service_name="StorageService",
|
|
71
|
+
name="ClusterInfo",
|
|
72
|
+
function=getattr(service, "ClusterInfo"),
|
|
73
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest,
|
|
74
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse,
|
|
75
|
+
allowed_methods=("POST",),
|
|
76
|
+
),
|
|
77
|
+
"ListVolumes": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest, admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse](
|
|
78
|
+
service_name="StorageService",
|
|
79
|
+
name="ListVolumes",
|
|
80
|
+
function=getattr(service, "ListVolumes"),
|
|
81
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest,
|
|
82
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse,
|
|
83
|
+
allowed_methods=("POST",),
|
|
84
|
+
),
|
|
85
|
+
"ListSnapshots": Endpoint[admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest, admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse](
|
|
86
|
+
service_name="StorageService",
|
|
87
|
+
name="ListSnapshots",
|
|
88
|
+
function=getattr(service, "ListSnapshots"),
|
|
89
|
+
input=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest,
|
|
90
|
+
output=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse,
|
|
91
|
+
allowed_methods=("POST",),
|
|
92
|
+
),
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
def serviceName(self):
|
|
96
|
+
return "admin.v1.StorageService"
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
class StorageServiceClient(ConnecpyClient):
|
|
100
|
+
def ClusterInfo(
|
|
101
|
+
self,
|
|
102
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest,
|
|
103
|
+
*,
|
|
104
|
+
ctx: Optional[ClientContext] = None,
|
|
105
|
+
server_path_prefix: str = "",
|
|
106
|
+
**kwargs,
|
|
107
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse:
|
|
108
|
+
method = "POST"
|
|
109
|
+
return self._make_request(
|
|
110
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ClusterInfo",
|
|
111
|
+
ctx=ctx,
|
|
112
|
+
request=request,
|
|
113
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse,
|
|
114
|
+
method=method,
|
|
115
|
+
**kwargs,
|
|
116
|
+
)
|
|
117
|
+
|
|
118
|
+
def ListVolumes(
|
|
119
|
+
self,
|
|
120
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest,
|
|
121
|
+
*,
|
|
122
|
+
ctx: Optional[ClientContext] = None,
|
|
123
|
+
server_path_prefix: str = "",
|
|
124
|
+
**kwargs,
|
|
125
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse:
|
|
126
|
+
method = "POST"
|
|
127
|
+
return self._make_request(
|
|
128
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ListVolumes",
|
|
129
|
+
ctx=ctx,
|
|
130
|
+
request=request,
|
|
131
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse,
|
|
132
|
+
method=method,
|
|
133
|
+
**kwargs,
|
|
134
|
+
)
|
|
135
|
+
|
|
136
|
+
def ListSnapshots(
|
|
137
|
+
self,
|
|
138
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest,
|
|
139
|
+
*,
|
|
140
|
+
ctx: Optional[ClientContext] = None,
|
|
141
|
+
server_path_prefix: str = "",
|
|
142
|
+
**kwargs,
|
|
143
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse:
|
|
144
|
+
method = "POST"
|
|
145
|
+
return self._make_request(
|
|
146
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ListSnapshots",
|
|
147
|
+
ctx=ctx,
|
|
148
|
+
request=request,
|
|
149
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse,
|
|
150
|
+
method=method,
|
|
151
|
+
**kwargs,
|
|
152
|
+
)
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
class AsyncStorageServiceClient(AsyncConnecpyClient):
|
|
156
|
+
async def ClusterInfo(
|
|
157
|
+
self,
|
|
158
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoRequest,
|
|
159
|
+
*,
|
|
160
|
+
ctx: Optional[ClientContext] = None,
|
|
161
|
+
server_path_prefix: str = "",
|
|
162
|
+
session: Union[httpx.AsyncClient, None] = None,
|
|
163
|
+
**kwargs,
|
|
164
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse:
|
|
165
|
+
method = "POST"
|
|
166
|
+
return await self._make_request(
|
|
167
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ClusterInfo",
|
|
168
|
+
ctx=ctx,
|
|
169
|
+
request=request,
|
|
170
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceClusterInfoResponse,
|
|
171
|
+
method=method,
|
|
172
|
+
session=session,
|
|
173
|
+
**kwargs,
|
|
174
|
+
)
|
|
175
|
+
|
|
176
|
+
async def ListVolumes(
|
|
177
|
+
self,
|
|
178
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesRequest,
|
|
179
|
+
*,
|
|
180
|
+
ctx: Optional[ClientContext] = None,
|
|
181
|
+
server_path_prefix: str = "",
|
|
182
|
+
session: Union[httpx.AsyncClient, None] = None,
|
|
183
|
+
**kwargs,
|
|
184
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse:
|
|
185
|
+
method = "POST"
|
|
186
|
+
return await self._make_request(
|
|
187
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ListVolumes",
|
|
188
|
+
ctx=ctx,
|
|
189
|
+
request=request,
|
|
190
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceListVolumesResponse,
|
|
191
|
+
method=method,
|
|
192
|
+
session=session,
|
|
193
|
+
**kwargs,
|
|
194
|
+
)
|
|
195
|
+
|
|
196
|
+
async def ListSnapshots(
|
|
197
|
+
self,
|
|
198
|
+
request: admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsRequest,
|
|
199
|
+
*,
|
|
200
|
+
ctx: Optional[ClientContext] = None,
|
|
201
|
+
server_path_prefix: str = "",
|
|
202
|
+
session: Union[httpx.AsyncClient, None] = None,
|
|
203
|
+
**kwargs,
|
|
204
|
+
) -> admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse:
|
|
205
|
+
method = "POST"
|
|
206
|
+
return await self._make_request(
|
|
207
|
+
url=f"{server_path_prefix}/admin.v1.StorageService/ListSnapshots",
|
|
208
|
+
ctx=ctx,
|
|
209
|
+
request=request,
|
|
210
|
+
response_class=admin_dot_v1_dot_storage__pb2.StorageServiceListSnapshotsResponse,
|
|
211
|
+
method=method,
|
|
212
|
+
session=session,
|
|
213
|
+
**kwargs,
|
|
214
|
+
)
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: admin/v1/storage.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'admin/v1/storage.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from metalstackcloud.api.v1 import common_pb2 as api_dot_v1_dot_common__pb2
|
|
26
|
+
from metalstackcloud.api.v1 import snapshot_pb2 as api_dot_v1_dot_snapshot__pb2
|
|
27
|
+
from metalstackcloud.api.v1 import volume_pb2 as api_dot_v1_dot_volume__pb2
|
|
28
|
+
from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x61\x64min/v1/storage.proto\x12\x08\x61\x64min.v1\x1a\x13\x61pi/v1/common.proto\x1a\x15\x61pi/v1/snapshot.proto\x1a\x13\x61pi/v1/volume.proto\x1a\x1b\x62uf/validate/validate.proto\"S\n StorageServiceClusterInfoRequest\x12!\n\tpartition\x18\x01 \x01(\tH\x00R\tpartition\x88\x01\x01\x42\x0c\n\n_partition\"W\n!StorageServiceClusterInfoResponse\x12\x32\n\x05infos\x18\x01 \x03(\x0b\x32\x1c.admin.v1.StorageClusterInfoR\x05infos\"\xe6\x04\n\x12StorageClusterInfo\x12\x1c\n\tpartition\x18\x01 \x01(\tR\tpartition\x12\x12\n\x04uuid\x18\x02 \x01(\tR\x04uuid\x12#\n\rsubsystem_nqn\x18\x03 \x01(\tR\x0csubsystemNqn\x12\x30\n\x14\x63urrent_max_replicas\x18\x04 \x01(\rR\x12\x63urrentMaxReplicas\x12\x34\n\x16supported_max_replicas\x18\x05 \x01(\rR\x14supportedMaxReplicas\x12>\n\nstatistics\x18\x06 \x01(\x0b\x32\x1e.admin.v1.ClusterStatisticsApiR\nstatistics\x12/\n\x06health\x18\x07 \x01(\x0b\x32\x17.admin.v1.ClusterHealthR\x06health\x12\x33\n\x16min_version_in_cluster\x18\x08 \x01(\tR\x13minVersionInCluster\x12.\n\x13min_allowed_version\x18\t \x01(\tR\x11minAllowedVersion\x12.\n\x13max_allowed_version\x18\n \x01(\tR\x11maxAllowedVersion\x12#\n\rapi_endpoints\x18\x0b \x03(\tR\x0c\x61piEndpoints\x12/\n\x13\x64iscovery_endpoints\x18\x0c \x03(\tR\x12\x64iscoveryEndpoints\x12\x35\n\x07servers\x18\r \x03(\x0b\x32\x1b.admin.v1.StorageServerInfoR\x07servers\"\xe2\x01\n\x11StorageServerInfo\x12\x12\n\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12:\n\x1arisk_of_service_loss_state\x18\x03 \x01(\tR\x16riskOfServiceLossState\x12\x14\n\x05state\x18\x04 \x01(\tR\x05state\x12)\n\x10server_endpoints\x18\x05 \x03(\tR\x0fserverEndpoints\x12(\n\x10light_os_version\x18\x06 \x01(\tR\x0elightOsVersion\"\xf3\x01\n\rClusterHealth\x12\x14\n\x05state\x18\x01 \x01(\tR\x05state\x12\x30\n\x14num_degraded_volumes\x18\x02 \x01(\rR\x12numDegradedVolumes\x12\x31\n\x15num_read_only_volumes\x18\x03 \x01(\rR\x12numReadOnlyVolumes\x12\x39\n\x19num_not_available_volumes\x18\x04 \x01(\rR\x16numNotAvailableVolumes\x12,\n\x12num_inactive_nodes\x18\x05 \x01(\rR\x10numInactiveNodes\"\x91\x05\n\x14\x43lusterStatisticsApi\x12<\n\x1ainstalled_physical_storage\x18\x01 \x01(\x04R\x18installedPhysicalStorage\x12\x38\n\x18managed_physical_storage\x18\x02 \x01(\x04R\x16managedPhysicalStorage\x12<\n\x1a\x65\x66\x66\x65\x63tive_physical_storage\x18\x03 \x01(\x04R\x18\x65\x66\x66\x65\x63tivePhysicalStorage\x12\'\n\x0flogical_storage\x18\x04 \x01(\x04R\x0elogicalStorage\x12\x30\n\x14logical_used_storage\x18\x05 \x01(\x04R\x12logicalUsedStorage\x12\x32\n\x15physical_used_storage\x18\x06 \x01(\x04R\x13physicalUsedStorage\x12R\n&physical_used_storage_including_parity\x18\x07 \x01(\x04R\"physicalUsedStorageIncludingParity\x12\x32\n\x15\x66ree_physical_storage\x18\x08 \x01(\x04R\x13\x66reePhysicalStorage\x12\x43\n\x1e\x65stimated_free_logical_storage\x18\t \x01(\x04R\x1b\x65stimatedFreeLogicalStorage\x12:\n\x19\x65stimated_logical_storage\x18\n \x01(\x04R\x17\x65stimatedLogicalStorage\x12+\n\x11\x63ompression_ratio\x18\x0b \x01(\x01R\x10\x63ompressionRatio\"\x80\x02\n StorageServiceListVolumesRequest\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12)\n\x07project\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x07project\x88\x01\x01\x12!\n\tpartition\x18\x03 \x01(\tH\x02R\tpartition\x88\x01\x01\x12\x17\n\x04name\x18\x04 \x01(\tH\x03R\x04name\x88\x01\x01\x12\x1b\n\x06tenant\x18\x05 \x01(\tH\x04R\x06tenant\x88\x01\x01\x42\x07\n\x05_uuidB\n\n\x08_projectB\x0c\n\n_partitionB\x07\n\x05_nameB\t\n\x07_tenant\"M\n!StorageServiceListVolumesResponse\x12(\n\x07volumes\x18\x01 \x03(\x0b\x32\x0e.api.v1.VolumeR\x07volumes\"\x82\x02\n\"StorageServiceListSnapshotsRequest\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12)\n\x07project\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x07project\x88\x01\x01\x12!\n\tpartition\x18\x03 \x01(\tH\x02R\tpartition\x88\x01\x01\x12\x17\n\x04name\x18\x04 \x01(\tH\x03R\x04name\x88\x01\x01\x12\x1b\n\x06tenant\x18\x05 \x01(\tH\x04R\x06tenant\x88\x01\x01\x42\x07\n\x05_uuidB\n\n\x08_projectB\x0c\n\n_partitionB\x07\n\x05_nameB\t\n\x07_tenant\"U\n#StorageServiceListSnapshotsResponse\x12.\n\tsnapshots\x18\x01 \x03(\x0b\x32\x10.api.v1.SnapshotR\tsnapshots2\xe6\x02\n\x0eStorageService\x12n\n\x0b\x43lusterInfo\x12*.admin.v1.StorageServiceClusterInfoRequest\x1a+.admin.v1.StorageServiceClusterInfoResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x12n\n\x0bListVolumes\x12*.admin.v1.StorageServiceListVolumesRequest\x1a+.admin.v1.StorageServiceListVolumesResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x12t\n\rListSnapshots\x12,.admin.v1.StorageServiceListSnapshotsRequest\x1a-.admin.v1.StorageServiceListSnapshotsResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x42\x93\x01\n\x0c\x63om.admin.v1B\x0cStorageProtoP\x01Z4github.com/metal-stack-cloud/api/go/admin/v1;adminv1\xa2\x02\x03\x41XX\xaa\x02\x08\x41\x64min.V1\xca\x02\x08\x41\x64min\\V1\xe2\x02\x14\x41\x64min\\V1\\GPBMetadata\xea\x02\tAdmin::V1b\x06proto3')
|
|
32
|
+
|
|
33
|
+
_globals = globals()
|
|
34
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
35
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'admin.v1.storage_pb2', _globals)
|
|
36
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
37
|
+
_globals['DESCRIPTOR']._loaded_options = None
|
|
38
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\014com.admin.v1B\014StorageProtoP\001Z4github.com/metal-stack-cloud/api/go/admin/v1;adminv1\242\002\003AXX\252\002\010Admin.V1\312\002\010Admin\\V1\342\002\024Admin\\V1\\GPBMetadata\352\002\tAdmin::V1'
|
|
39
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST'].fields_by_name['uuid']._loaded_options = None
|
|
40
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
41
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST'].fields_by_name['project']._loaded_options = None
|
|
42
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST'].fields_by_name['project']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
|
|
43
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST'].fields_by_name['uuid']._loaded_options = None
|
|
44
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
45
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST'].fields_by_name['project']._loaded_options = None
|
|
46
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST'].fields_by_name['project']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
|
|
47
|
+
_globals['_STORAGESERVICE'].methods_by_name['ClusterInfo']._loaded_options = None
|
|
48
|
+
_globals['_STORAGESERVICE'].methods_by_name['ClusterInfo']._serialized_options = b'\322\363\030\002\001\002'
|
|
49
|
+
_globals['_STORAGESERVICE'].methods_by_name['ListVolumes']._loaded_options = None
|
|
50
|
+
_globals['_STORAGESERVICE'].methods_by_name['ListVolumes']._serialized_options = b'\322\363\030\002\001\002'
|
|
51
|
+
_globals['_STORAGESERVICE'].methods_by_name['ListSnapshots']._loaded_options = None
|
|
52
|
+
_globals['_STORAGESERVICE'].methods_by_name['ListSnapshots']._serialized_options = b'\322\363\030\002\001\002'
|
|
53
|
+
_globals['_STORAGESERVICECLUSTERINFOREQUEST']._serialized_start=130
|
|
54
|
+
_globals['_STORAGESERVICECLUSTERINFOREQUEST']._serialized_end=213
|
|
55
|
+
_globals['_STORAGESERVICECLUSTERINFORESPONSE']._serialized_start=215
|
|
56
|
+
_globals['_STORAGESERVICECLUSTERINFORESPONSE']._serialized_end=302
|
|
57
|
+
_globals['_STORAGECLUSTERINFO']._serialized_start=305
|
|
58
|
+
_globals['_STORAGECLUSTERINFO']._serialized_end=919
|
|
59
|
+
_globals['_STORAGESERVERINFO']._serialized_start=922
|
|
60
|
+
_globals['_STORAGESERVERINFO']._serialized_end=1148
|
|
61
|
+
_globals['_CLUSTERHEALTH']._serialized_start=1151
|
|
62
|
+
_globals['_CLUSTERHEALTH']._serialized_end=1394
|
|
63
|
+
_globals['_CLUSTERSTATISTICSAPI']._serialized_start=1397
|
|
64
|
+
_globals['_CLUSTERSTATISTICSAPI']._serialized_end=2054
|
|
65
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST']._serialized_start=2057
|
|
66
|
+
_globals['_STORAGESERVICELISTVOLUMESREQUEST']._serialized_end=2313
|
|
67
|
+
_globals['_STORAGESERVICELISTVOLUMESRESPONSE']._serialized_start=2315
|
|
68
|
+
_globals['_STORAGESERVICELISTVOLUMESRESPONSE']._serialized_end=2392
|
|
69
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST']._serialized_start=2395
|
|
70
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSREQUEST']._serialized_end=2653
|
|
71
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSRESPONSE']._serialized_start=2655
|
|
72
|
+
_globals['_STORAGESERVICELISTSNAPSHOTSRESPONSE']._serialized_end=2740
|
|
73
|
+
_globals['_STORAGESERVICE']._serialized_start=2743
|
|
74
|
+
_globals['_STORAGESERVICE']._serialized_end=3101
|
|
75
|
+
# @@protoc_insertion_point(module_scope)
|