metal-stack-api 0.0.22__py3-none-any.whl → 0.0.24__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.
Files changed (115) hide show
  1. {metal_stack_api-0.0.22.dist-info → metal_stack_api-0.0.24.dist-info}/METADATA +3 -2
  2. metal_stack_api-0.0.24.dist-info/RECORD +97 -0
  3. {metal_stack_api-0.0.22.dist-info → metal_stack_api-0.0.24.dist-info}/top_level.txt +0 -1
  4. metalstack/admin/v2/{filesystem_connecpy.py → filesystem_connect.py} +22 -22
  5. metalstack/admin/v2/filesystem_pb2.py +20 -19
  6. metalstack/admin/v2/filesystem_pb2.pyi +1 -0
  7. metalstack/admin/v2/{image_connecpy.py → image_connect.py} +24 -24
  8. metalstack/admin/v2/image_pb2.py +24 -23
  9. metalstack/admin/v2/image_pb2.pyi +1 -0
  10. metalstack/admin/v2/{ip_connecpy.py → ip_connect.py} +20 -20
  11. metalstack/admin/v2/ip_pb2.py +2 -2
  12. metalstack/admin/v2/{machine_connecpy.py → machine_connect.py} +20 -20
  13. metalstack/admin/v2/machine_pb2.py +15 -14
  14. metalstack/admin/v2/machine_pb2.pyi +1 -0
  15. metalstack/admin/v2/{network_connecpy.py → network_connect.py} +26 -26
  16. metalstack/admin/v2/network_pb2.py +45 -36
  17. metalstack/admin/v2/network_pb2.pyi +1 -0
  18. metalstack/admin/v2/{partition_connecpy.py → partition_connect.py} +24 -24
  19. metalstack/admin/v2/partition_pb2.py +23 -22
  20. metalstack/admin/v2/partition_pb2.pyi +1 -0
  21. metalstack/admin/v2/{size_connecpy.py → size_connect.py} +22 -22
  22. metalstack/admin/v2/size_pb2.py +20 -19
  23. metalstack/admin/v2/size_pb2.pyi +1 -0
  24. metalstack/admin/v2/switch_connect.py +444 -0
  25. metalstack/admin/v2/switch_pb2.py +108 -0
  26. metalstack/admin/v2/switch_pb2.pyi +114 -0
  27. metalstack/admin/v2/{tenant_connecpy.py → tenant_connect.py} +20 -20
  28. metalstack/admin/v2/tenant_pb2.py +18 -15
  29. metalstack/admin/v2/tenant_pb2.pyi +1 -0
  30. metalstack/admin/v2/{token_connecpy.py → token_connect.py} +20 -20
  31. metalstack/admin/v2/token_pb2.py +2 -2
  32. metalstack/api/v2/common_pb2.py +2 -2
  33. metalstack/api/v2/{filesystem_connecpy.py → filesystem_connect.py} +22 -22
  34. metalstack/api/v2/filesystem_pb2.py +54 -53
  35. metalstack/api/v2/filesystem_pb2.pyi +1 -0
  36. metalstack/api/v2/{health_connecpy.py → health_connect.py} +18 -18
  37. metalstack/api/v2/health_pb2.py +2 -2
  38. metalstack/api/v2/{image_connecpy.py → image_connect.py} +22 -22
  39. metalstack/api/v2/image_pb2.py +32 -31
  40. metalstack/api/v2/image_pb2.pyi +1 -0
  41. metalstack/api/v2/{ip_connecpy.py → ip_connect.py} +26 -26
  42. metalstack/api/v2/ip_pb2.py +41 -40
  43. metalstack/api/v2/ip_pb2.pyi +1 -0
  44. metalstack/api/v2/{machine_connecpy.py → machine_connect.py} +26 -26
  45. metalstack/api/v2/machine_pb2.py +122 -121
  46. metalstack/api/v2/machine_pb2.pyi +1 -0
  47. metalstack/api/v2/{method_connecpy.py → method_connect.py} +20 -20
  48. metalstack/api/v2/method_pb2.py +2 -2
  49. metalstack/api/v2/{network_connecpy.py → network_connect.py} +28 -28
  50. metalstack/api/v2/network_pb2.py +73 -66
  51. metalstack/api/v2/network_pb2.pyi +1 -0
  52. metalstack/api/v2/{partition_connecpy.py → partition_connect.py} +20 -20
  53. metalstack/api/v2/partition_pb2.py +25 -24
  54. metalstack/api/v2/partition_pb2.pyi +1 -0
  55. metalstack/api/v2/predefined_rules_pb2.py +50 -0
  56. metalstack/api/v2/predefined_rules_pb2.pyi +19 -0
  57. metalstack/api/v2/{project_connecpy.py → project_connect.py} +40 -40
  58. metalstack/api/v2/project_pb2.py +69 -64
  59. metalstack/api/v2/project_pb2.pyi +1 -0
  60. metalstack/api/v2/{size_connecpy.py → size_connect.py} +20 -20
  61. metalstack/api/v2/size_pb2.py +26 -25
  62. metalstack/api/v2/size_pb2.pyi +1 -0
  63. metalstack/api/v2/switch_pb2.py +62 -41
  64. metalstack/api/v2/switch_pb2.pyi +54 -11
  65. metalstack/api/v2/{tenant_connecpy.py → tenant_connect.py} +40 -40
  66. metalstack/api/v2/tenant_pb2.py +69 -64
  67. metalstack/api/v2/tenant_pb2.pyi +1 -0
  68. metalstack/api/v2/{token_connecpy.py → token_connect.py} +28 -28
  69. metalstack/api/v2/token_pb2.py +51 -50
  70. metalstack/api/v2/token_pb2.pyi +1 -0
  71. metalstack/api/v2/{user_connecpy.py → user_connect.py} +18 -18
  72. metalstack/api/v2/user_pb2.py +15 -11
  73. metalstack/api/v2/user_pb2.pyi +2 -0
  74. metalstack/api/v2/{version_connecpy.py → version_connect.py} +18 -18
  75. metalstack/api/v2/version_pb2.py +2 -2
  76. metalstack/client/client.py +56 -52
  77. metalstack/infra/v2/{bmc_connecpy.py → bmc_connect.py} +18 -18
  78. metalstack/infra/v2/bmc_pb2.py +2 -2
  79. metalstack/infra/v2/{switch_connecpy.py → switch_connect.py} +83 -18
  80. metalstack/infra/v2/switch_pb2.py +28 -10
  81. metalstack/infra/v2/switch_pb2.pyi +51 -0
  82. buf/__init__.py +0 -0
  83. buf/validate/__init__.py +0 -0
  84. buf/validate/validate_pb2.py +0 -450
  85. buf/validate/validate_pb2.pyi +0 -627
  86. buf/validate/validate_pb2_grpc.py +0 -4
  87. metal_stack_api-0.0.22.dist-info/RECORD +0 -124
  88. metalstack/admin/v2/filesystem_pb2_grpc.py +0 -169
  89. metalstack/admin/v2/image_pb2_grpc.py +0 -213
  90. metalstack/admin/v2/ip_pb2_grpc.py +0 -125
  91. metalstack/admin/v2/machine_pb2_grpc.py +0 -125
  92. metalstack/admin/v2/network_pb2_grpc.py +0 -257
  93. metalstack/admin/v2/partition_pb2_grpc.py +0 -213
  94. metalstack/admin/v2/size_pb2_grpc.py +0 -169
  95. metalstack/admin/v2/tenant_pb2_grpc.py +0 -125
  96. metalstack/admin/v2/token_pb2_grpc.py +0 -125
  97. metalstack/api/v2/common_pb2_grpc.py +0 -4
  98. metalstack/api/v2/filesystem_pb2_grpc.py +0 -169
  99. metalstack/api/v2/health_pb2_grpc.py +0 -81
  100. metalstack/api/v2/image_pb2_grpc.py +0 -169
  101. metalstack/api/v2/ip_pb2_grpc.py +0 -257
  102. metalstack/api/v2/machine_pb2_grpc.py +0 -257
  103. metalstack/api/v2/method_pb2_grpc.py +0 -128
  104. metalstack/api/v2/network_pb2_grpc.py +0 -301
  105. metalstack/api/v2/partition_pb2_grpc.py +0 -125
  106. metalstack/api/v2/project_pb2_grpc.py +0 -565
  107. metalstack/api/v2/size_pb2_grpc.py +0 -125
  108. metalstack/api/v2/switch_pb2_grpc.py +0 -4
  109. metalstack/api/v2/tenant_pb2_grpc.py +0 -565
  110. metalstack/api/v2/token_pb2_grpc.py +0 -301
  111. metalstack/api/v2/user_pb2_grpc.py +0 -81
  112. metalstack/api/v2/version_pb2_grpc.py +0 -81
  113. metalstack/infra/v2/bmc_pb2_grpc.py +0 -81
  114. metalstack/infra/v2/switch_pb2_grpc.py +0 -81
  115. {metal_stack_api-0.0.22.dist-info → metal_stack_api-0.0.24.dist-info}/WHEEL +0 -0
@@ -1,39 +1,39 @@
1
1
  # -*- coding: utf-8 -*-
2
- # Generated by https://github.com/i2y/connecpy/v2/protoc-gen-connecpy. DO NOT EDIT!
2
+ # Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
3
3
  # source: metalstack/api/v2/ip.proto
4
4
 
5
5
  from collections.abc import AsyncIterator, Iterable, Iterator, Mapping
6
6
  from typing import Protocol
7
7
 
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
8
+ from connectrpc.client import ConnectClient, ConnectClientSync
9
+ from connectrpc.code import Code
10
+ from connectrpc.errors import ConnectError
11
+ from connectrpc.interceptor import Interceptor, InterceptorSync
12
+ from connectrpc.method import IdempotencyLevel, MethodInfo
13
+ from connectrpc.request import Headers, RequestContext
14
+ from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
15
15
  import metalstack.api.v2.ip_pb2 as metalstack_dot_api_dot_v2_dot_ip__pb2
16
16
 
17
17
 
18
18
  class IPService(Protocol):
19
19
  async def get(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetResponse:
20
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
20
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
21
21
 
22
22
  async def create(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceCreateResponse:
23
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
23
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
24
24
 
25
25
  async def update(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceUpdateResponse:
26
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
26
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
27
27
 
28
28
  async def list(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceListResponse:
29
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
29
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
30
30
 
31
31
  async def delete(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceDeleteResponse:
32
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
32
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
33
33
 
34
34
 
35
- class IPServiceASGIApplication(ConnecpyASGIApplication):
36
- def __init__(self, service: IPService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None):
35
+ class IPServiceASGIApplication(ConnectASGIApplication):
36
+ def __init__(self, service: IPService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
37
37
  super().__init__(
38
38
  endpoints={
39
39
  "/metalstack.api.v2.IPService/Get": Endpoint.unary(
@@ -92,12 +92,12 @@ class IPServiceASGIApplication(ConnecpyASGIApplication):
92
92
  )
93
93
 
94
94
  @property
95
- def path(self):
95
+ def path(self) -> str:
96
96
  """Returns the URL path to mount the application to when serving multiple applications."""
97
97
  return "/metalstack.api.v2.IPService"
98
98
 
99
99
 
100
- class IPServiceClient(ConnecpyClient):
100
+ class IPServiceClient(ConnectClient):
101
101
  async def get(
102
102
  self,
103
103
  request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetRequest,
@@ -201,19 +201,19 @@ class IPServiceClient(ConnecpyClient):
201
201
 
202
202
  class IPServiceSync(Protocol):
203
203
  def get(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetResponse:
204
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
204
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
205
205
  def create(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceCreateResponse:
206
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
206
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
207
207
  def update(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceUpdateResponse:
208
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
208
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
209
209
  def list(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceListResponse:
210
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
210
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
211
211
  def delete(self, request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceDeleteResponse:
212
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
212
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
213
213
 
214
214
 
215
- class IPServiceWSGIApplication(ConnecpyWSGIApplication):
216
- def __init__(self, service: IPServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None):
215
+ class IPServiceWSGIApplication(ConnectWSGIApplication):
216
+ def __init__(self, service: IPServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
217
217
  super().__init__(
218
218
  endpoints={
219
219
  "/metalstack.api.v2.IPService/Get": EndpointSync.unary(
@@ -272,12 +272,12 @@ class IPServiceWSGIApplication(ConnecpyWSGIApplication):
272
272
  )
273
273
 
274
274
  @property
275
- def path(self):
275
+ def path(self) -> str:
276
276
  """Returns the URL path to mount the application to when serving multiple applications."""
277
277
  return "/metalstack.api.v2.IPService"
278
278
 
279
279
 
280
- class IPServiceClientSync(ConnecpyClientSync):
280
+ class IPServiceClientSync(ConnectClientSync):
281
281
  def get(
282
282
  self,
283
283
  request: metalstack_dot_api_dot_v2_dot_ip__pb2.IPServiceGetRequest,
@@ -2,7 +2,7 @@
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # NO CHECKED-IN PROTOBUF GENCODE
4
4
  # source: metalstack/api/v2/ip.proto
5
- # Protobuf Python Version: 6.32.0
5
+ # Protobuf Python Version: 6.32.1
6
6
  """Generated protocol buffer code."""
7
7
  from google.protobuf import descriptor as _descriptor
8
8
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -13,7 +13,7 @@ _runtime_version.ValidateProtobufRuntimeVersion(
13
13
  _runtime_version.Domain.PUBLIC,
14
14
  6,
15
15
  32,
16
- 0,
16
+ 1,
17
17
  '',
18
18
  'metalstack/api/v2/ip.proto'
19
19
  )
@@ -24,9 +24,10 @@ _sym_db = _symbol_database.Default()
24
24
 
25
25
  from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
26
26
  from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
27
+ from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2
27
28
 
28
29
 
29
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ametalstack/api/v2/ip.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\"\xf2\x02\n\x02IP\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12\x17\n\x02ip\x18\x03 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\x1e\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0b\x64\x65scription\x12$\n\x07network\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x07network\x12\"\n\x07project\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x37\n\x04type\x18\x08 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12+\n\tnamespace\x18\t \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\tnamespace\x88\x01\x01\x42\x0c\n\n_namespace\"\x8d\x01\n\x13IPServiceGetRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12+\n\tnamespace\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\tnamespace\x88\x01\x01\x42\x0c\n\n_namespace\"\xa2\x04\n\x16IPServiceCreateRequest\x12$\n\x07network\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x07network\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12#\n\x04name\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x00R\x04name\x88\x01\x01\x12/\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1c\n\x02ip\x18\x05 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x02R\x02ip\x88\x01\x01\x12\'\n\x07machine\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x03R\x07machine\x88\x01\x01\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x04R\x06labels\x88\x01\x01\x12<\n\x04type\x18\x08 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x04type\x88\x01\x01\x12X\n\x0e\x61\x64\x64ress_family\x18\t \x01(\x0e\x32\".metalstack.api.v2.IPAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\raddressFamily\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x05\n\x03_ipB\n\n\x08_machineB\t\n\x07_labelsB\x07\n\x05_typeB\x11\n\x0f_address_family\"\x9c\x03\n\x16IPServiceUpdateRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\"\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12#\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x00R\x04name\x88\x01\x01\x12/\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x02R\x04type\x88\x01\x01\x12<\n\x06labels\x18\x07 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x03R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x07\n\x05_typeB\t\n\x07_labels\"l\n\x14IPServiceListRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x30\n\x05query\x18\x02 \x01(\x0b\x32\x1a.metalstack.api.v2.IPQueryR\x05query\"\xae\x05\n\x07IPQuery\x12\x1c\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x00R\x02ip\x88\x01\x01\x12)\n\x07network\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x07network\x88\x01\x01\x12\'\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x02R\x07project\x88\x01\x01\x12#\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x03R\x04name\x88\x01\x01\x12!\n\x04uuid\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x04uuid\x88\x01\x01\x12\'\n\x07machine\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x05R\x07machine\x88\x01\x01\x12:\n\x12parent_prefix_cidr\x18\x07 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x06R\x10parentPrefixCidr\x88\x01\x01\x12\x36\n\x06labels\x18\x08 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x07R\x06labels\x88\x01\x01\x12<\n\x04type\x18\t \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x08R\x04type\x88\x01\x01\x12X\n\x0e\x61\x64\x64ress_family\x18\n \x01(\x0e\x32\".metalstack.api.v2.IPAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\tR\raddressFamily\x88\x01\x01\x12+\n\tnamespace\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\nR\tnamespace\x88\x01\x01\x42\x05\n\x03_ipB\n\n\x08_networkB\n\n\x08_projectB\x07\n\x05_nameB\x07\n\x05_uuidB\n\n\x08_machineB\x15\n\x13_parent_prefix_cidrB\t\n\x07_labelsB\x07\n\x05_typeB\x11\n\x0f_address_familyB\x0c\n\n_namespace\"U\n\x16IPServiceDeleteRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"=\n\x14IPServiceGetResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x17IPServiceUpdateResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x17IPServiceCreateResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x15IPServiceListResponse\x12\'\n\x03ips\x18\x01 \x03(\x0b\x32\x15.metalstack.api.v2.IPR\x03ips\"@\n\x17IPServiceDeleteResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip*g\n\x06IPType\x12\x17\n\x13IP_TYPE_UNSPECIFIED\x10\x00\x12$\n\x11IP_TYPE_EPHEMERAL\x10\x01\x1a\r\x82\xb2\x19\tephemeral\x12\x1e\n\x0eIP_TYPE_STATIC\x10\x02\x1a\n\x82\xb2\x19\x06static*|\n\x0fIPAddressFamily\x12!\n\x1dIP_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\"\n\x14IP_ADDRESS_FAMILY_V4\x10\x01\x1a\x08\x82\xb2\x19\x04ipv4\x12\"\n\x14IP_ADDRESS_FAMILY_V6\x10\x02\x1a\x08\x82\xb2\x19\x04ipv62\x93\x04\n\tIPService\x12\x63\n\x03Get\x12&.metalstack.api.v2.IPServiceGetRequest\x1a\'.metalstack.api.v2.IPServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12g\n\x06\x43reate\x12).metalstack.api.v2.IPServiceCreateRequest\x1a*.metalstack.api.v2.IPServiceCreateResponse\"\x06\xca\xf3\x18\x02\x01\x02\x12g\n\x06Update\x12).metalstack.api.v2.IPServiceUpdateRequest\x1a*.metalstack.api.v2.IPServiceUpdateResponse\"\x06\xca\xf3\x18\x02\x01\x02\x12\x66\n\x04List\x12\'.metalstack.api.v2.IPServiceListRequest\x1a(.metalstack.api.v2.IPServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12g\n\x06\x44\x65lete\x12).metalstack.api.v2.IPServiceDeleteRequest\x1a*.metalstack.api.v2.IPServiceDeleteResponse\"\x06\xca\xf3\x18\x02\x01\x02\x42\xbd\x01\n\x15\x63om.metalstack.api.v2B\x07IpProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3')
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ametalstack/api/v2/ip.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xf6\x02\n\x02IP\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12\x17\n\x02ip\x18\x03 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\x1f\n\x04name\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12-\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12$\n\x07network\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x07network\x12\"\n\x07project\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x37\n\x04type\x18\x08 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12+\n\tnamespace\x18\t \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\tnamespace\x88\x01\x01\x42\x0c\n\n_namespace\"\x8d\x01\n\x13IPServiceGetRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12+\n\tnamespace\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\tnamespace\x88\x01\x01\x42\x0c\n\n_namespace\"\xa6\x04\n\x16IPServiceCreateRequest\x12$\n\x07network\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x07network\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1c\n\x02ip\x18\x05 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x02R\x02ip\x88\x01\x01\x12\'\n\x07machine\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x03R\x07machine\x88\x01\x01\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x04R\x06labels\x88\x01\x01\x12<\n\x04type\x18\x08 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x04type\x88\x01\x01\x12X\n\x0e\x61\x64\x64ress_family\x18\t \x01(\x0e\x32\".metalstack.api.v2.IPAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\raddressFamily\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x05\n\x03_ipB\n\n\x08_machineB\t\n\x07_labelsB\x07\n\x05_typeB\x11\n\x0f_address_family\"\xa0\x03\n\x16IPServiceUpdateRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\"\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12$\n\x04name\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x02R\x04type\x88\x01\x01\x12<\n\x06labels\x18\x07 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x03R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x07\n\x05_typeB\t\n\x07_labels\"l\n\x14IPServiceListRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x30\n\x05query\x18\x02 \x01(\x0b\x32\x1a.metalstack.api.v2.IPQueryR\x05query\"\xaf\x05\n\x07IPQuery\x12\x1c\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x00R\x02ip\x88\x01\x01\x12)\n\x07network\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x07network\x88\x01\x01\x12\'\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x02R\x07project\x88\x01\x01\x12$\n\x04name\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x04name\x88\x01\x01\x12!\n\x04uuid\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x04uuid\x88\x01\x01\x12\'\n\x07machine\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x05R\x07machine\x88\x01\x01\x12:\n\x12parent_prefix_cidr\x18\x07 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x06R\x10parentPrefixCidr\x88\x01\x01\x12\x36\n\x06labels\x18\x08 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x07R\x06labels\x88\x01\x01\x12<\n\x04type\x18\t \x01(\x0e\x32\x19.metalstack.api.v2.IPTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x08R\x04type\x88\x01\x01\x12X\n\x0e\x61\x64\x64ress_family\x18\n \x01(\x0e\x32\".metalstack.api.v2.IPAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\tR\raddressFamily\x88\x01\x01\x12+\n\tnamespace\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\nR\tnamespace\x88\x01\x01\x42\x05\n\x03_ipB\n\n\x08_networkB\n\n\x08_projectB\x07\n\x05_nameB\x07\n\x05_uuidB\n\n\x08_machineB\x15\n\x13_parent_prefix_cidrB\t\n\x07_labelsB\x07\n\x05_typeB\x11\n\x0f_address_familyB\x0c\n\n_namespace\"U\n\x16IPServiceDeleteRequest\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"=\n\x14IPServiceGetResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x17IPServiceUpdateResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x17IPServiceCreateResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip\"@\n\x15IPServiceListResponse\x12\'\n\x03ips\x18\x01 \x03(\x0b\x32\x15.metalstack.api.v2.IPR\x03ips\"@\n\x17IPServiceDeleteResponse\x12%\n\x02ip\x18\x01 \x01(\x0b\x32\x15.metalstack.api.v2.IPR\x02ip*g\n\x06IPType\x12\x17\n\x13IP_TYPE_UNSPECIFIED\x10\x00\x12$\n\x11IP_TYPE_EPHEMERAL\x10\x01\x1a\r\x82\xb2\x19\tephemeral\x12\x1e\n\x0eIP_TYPE_STATIC\x10\x02\x1a\n\x82\xb2\x19\x06static*|\n\x0fIPAddressFamily\x12!\n\x1dIP_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\"\n\x14IP_ADDRESS_FAMILY_V4\x10\x01\x1a\x08\x82\xb2\x19\x04ipv4\x12\"\n\x14IP_ADDRESS_FAMILY_V6\x10\x02\x1a\x08\x82\xb2\x19\x04ipv62\x93\x04\n\tIPService\x12\x63\n\x03Get\x12&.metalstack.api.v2.IPServiceGetRequest\x1a\'.metalstack.api.v2.IPServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12g\n\x06\x43reate\x12).metalstack.api.v2.IPServiceCreateRequest\x1a*.metalstack.api.v2.IPServiceCreateResponse\"\x06\xca\xf3\x18\x02\x01\x02\x12g\n\x06Update\x12).metalstack.api.v2.IPServiceUpdateRequest\x1a*.metalstack.api.v2.IPServiceUpdateResponse\"\x06\xca\xf3\x18\x02\x01\x02\x12\x66\n\x04List\x12\'.metalstack.api.v2.IPServiceListRequest\x1a(.metalstack.api.v2.IPServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12g\n\x06\x44\x65lete\x12).metalstack.api.v2.IPServiceDeleteRequest\x1a*.metalstack.api.v2.IPServiceDeleteResponse\"\x06\xca\xf3\x18\x02\x01\x02\x42\xbd\x01\n\x15\x63om.metalstack.api.v2B\x07IpProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3')
30
31
 
31
32
  _globals = globals()
32
33
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -47,9 +48,9 @@ if not _descriptor._USE_C_DESCRIPTORS:
47
48
  _globals['_IP'].fields_by_name['ip']._loaded_options = None
48
49
  _globals['_IP'].fields_by_name['ip']._serialized_options = b'\272H\004r\002p\001'
49
50
  _globals['_IP'].fields_by_name['name']._loaded_options = None
50
- _globals['_IP'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
51
+ _globals['_IP'].fields_by_name['name']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
51
52
  _globals['_IP'].fields_by_name['description']._loaded_options = None
52
- _globals['_IP'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\200\001'
53
+ _globals['_IP'].fields_by_name['description']._serialized_options = b'\272H\010r\006\310\263\256\261\002\001'
53
54
  _globals['_IP'].fields_by_name['network']._loaded_options = None
54
55
  _globals['_IP'].fields_by_name['network']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
55
56
  _globals['_IP'].fields_by_name['project']._loaded_options = None
@@ -69,9 +70,9 @@ if not _descriptor._USE_C_DESCRIPTORS:
69
70
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['project']._loaded_options = None
70
71
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['project']._serialized_options = b'\272H\005r\003\260\001\001'
71
72
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['name']._loaded_options = None
72
- _globals['_IPSERVICECREATEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
73
+ _globals['_IPSERVICECREATEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
73
74
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['description']._loaded_options = None
74
- _globals['_IPSERVICECREATEREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\200\001'
75
+ _globals['_IPSERVICECREATEREQUEST'].fields_by_name['description']._serialized_options = b'\272H\010r\006\310\263\256\261\002\001'
75
76
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['ip']._loaded_options = None
76
77
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['ip']._serialized_options = b'\272H\004r\002p\001'
77
78
  _globals['_IPSERVICECREATEREQUEST'].fields_by_name['machine']._loaded_options = None
@@ -87,9 +88,9 @@ if not _descriptor._USE_C_DESCRIPTORS:
87
88
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['project']._loaded_options = None
88
89
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['project']._serialized_options = b'\272H\005r\003\260\001\001'
89
90
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['name']._loaded_options = None
90
- _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
91
+ _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
91
92
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['description']._loaded_options = None
92
- _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\200\001'
93
+ _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['description']._serialized_options = b'\272H\010r\006\310\263\256\261\002\001'
93
94
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['type']._loaded_options = None
94
95
  _globals['_IPSERVICEUPDATEREQUEST'].fields_by_name['type']._serialized_options = b'\272H\005\202\001\002\020\001'
95
96
  _globals['_IPSERVICELISTREQUEST'].fields_by_name['project']._loaded_options = None
@@ -101,7 +102,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
101
102
  _globals['_IPQUERY'].fields_by_name['project']._loaded_options = None
102
103
  _globals['_IPQUERY'].fields_by_name['project']._serialized_options = b'\272H\005r\003\260\001\001'
103
104
  _globals['_IPQUERY'].fields_by_name['name']._loaded_options = None
104
- _globals['_IPQUERY'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\002\030\200\001'
105
+ _globals['_IPQUERY'].fields_by_name['name']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
105
106
  _globals['_IPQUERY'].fields_by_name['uuid']._loaded_options = None
106
107
  _globals['_IPQUERY'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
107
108
  _globals['_IPQUERY'].fields_by_name['machine']._loaded_options = None
@@ -128,34 +129,34 @@ if not _descriptor._USE_C_DESCRIPTORS:
128
129
  _globals['_IPSERVICE'].methods_by_name['List']._serialized_options = b'\312\363\030\003\001\002\003\340\363\030\002'
129
130
  _globals['_IPSERVICE'].methods_by_name['Delete']._loaded_options = None
130
131
  _globals['_IPSERVICE'].methods_by_name['Delete']._serialized_options = b'\312\363\030\002\001\002'
131
- _globals['_IPTYPE']._serialized_start=2804
132
- _globals['_IPTYPE']._serialized_end=2907
133
- _globals['_IPADDRESSFAMILY']._serialized_start=2909
134
- _globals['_IPADDRESSFAMILY']._serialized_end=3033
135
- _globals['_IP']._serialized_start=111
136
- _globals['_IP']._serialized_end=481
137
- _globals['_IPSERVICEGETREQUEST']._serialized_start=484
138
- _globals['_IPSERVICEGETREQUEST']._serialized_end=625
139
- _globals['_IPSERVICECREATEREQUEST']._serialized_start=628
140
- _globals['_IPSERVICECREATEREQUEST']._serialized_end=1174
141
- _globals['_IPSERVICEUPDATEREQUEST']._serialized_start=1177
142
- _globals['_IPSERVICEUPDATEREQUEST']._serialized_end=1589
143
- _globals['_IPSERVICELISTREQUEST']._serialized_start=1591
144
- _globals['_IPSERVICELISTREQUEST']._serialized_end=1699
145
- _globals['_IPQUERY']._serialized_start=1702
146
- _globals['_IPQUERY']._serialized_end=2388
147
- _globals['_IPSERVICEDELETEREQUEST']._serialized_start=2390
148
- _globals['_IPSERVICEDELETEREQUEST']._serialized_end=2475
149
- _globals['_IPSERVICEGETRESPONSE']._serialized_start=2477
150
- _globals['_IPSERVICEGETRESPONSE']._serialized_end=2538
151
- _globals['_IPSERVICEUPDATERESPONSE']._serialized_start=2540
152
- _globals['_IPSERVICEUPDATERESPONSE']._serialized_end=2604
153
- _globals['_IPSERVICECREATERESPONSE']._serialized_start=2606
154
- _globals['_IPSERVICECREATERESPONSE']._serialized_end=2670
155
- _globals['_IPSERVICELISTRESPONSE']._serialized_start=2672
156
- _globals['_IPSERVICELISTRESPONSE']._serialized_end=2736
157
- _globals['_IPSERVICEDELETERESPONSE']._serialized_start=2738
158
- _globals['_IPSERVICEDELETERESPONSE']._serialized_end=2802
159
- _globals['_IPSERVICE']._serialized_start=3036
160
- _globals['_IPSERVICE']._serialized_end=3567
132
+ _globals['_IPTYPE']._serialized_start=2859
133
+ _globals['_IPTYPE']._serialized_end=2962
134
+ _globals['_IPADDRESSFAMILY']._serialized_start=2964
135
+ _globals['_IPADDRESSFAMILY']._serialized_end=3088
136
+ _globals['_IP']._serialized_start=153
137
+ _globals['_IP']._serialized_end=527
138
+ _globals['_IPSERVICEGETREQUEST']._serialized_start=530
139
+ _globals['_IPSERVICEGETREQUEST']._serialized_end=671
140
+ _globals['_IPSERVICECREATEREQUEST']._serialized_start=674
141
+ _globals['_IPSERVICECREATEREQUEST']._serialized_end=1224
142
+ _globals['_IPSERVICEUPDATEREQUEST']._serialized_start=1227
143
+ _globals['_IPSERVICEUPDATEREQUEST']._serialized_end=1643
144
+ _globals['_IPSERVICELISTREQUEST']._serialized_start=1645
145
+ _globals['_IPSERVICELISTREQUEST']._serialized_end=1753
146
+ _globals['_IPQUERY']._serialized_start=1756
147
+ _globals['_IPQUERY']._serialized_end=2443
148
+ _globals['_IPSERVICEDELETEREQUEST']._serialized_start=2445
149
+ _globals['_IPSERVICEDELETEREQUEST']._serialized_end=2530
150
+ _globals['_IPSERVICEGETRESPONSE']._serialized_start=2532
151
+ _globals['_IPSERVICEGETRESPONSE']._serialized_end=2593
152
+ _globals['_IPSERVICEUPDATERESPONSE']._serialized_start=2595
153
+ _globals['_IPSERVICEUPDATERESPONSE']._serialized_end=2659
154
+ _globals['_IPSERVICECREATERESPONSE']._serialized_start=2661
155
+ _globals['_IPSERVICECREATERESPONSE']._serialized_end=2725
156
+ _globals['_IPSERVICELISTRESPONSE']._serialized_start=2727
157
+ _globals['_IPSERVICELISTRESPONSE']._serialized_end=2791
158
+ _globals['_IPSERVICEDELETERESPONSE']._serialized_start=2793
159
+ _globals['_IPSERVICEDELETERESPONSE']._serialized_end=2857
160
+ _globals['_IPSERVICE']._serialized_start=3091
161
+ _globals['_IPSERVICE']._serialized_end=3622
161
162
  # @@protoc_insertion_point(module_scope)
@@ -1,5 +1,6 @@
1
1
  from buf.validate import validate_pb2 as _validate_pb2
2
2
  from metalstack.api.v2 import common_pb2 as _common_pb2
3
+ from metalstack.api.v2 import predefined_rules_pb2 as _predefined_rules_pb2
3
4
  from google.protobuf.internal import containers as _containers
4
5
  from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
5
6
  from google.protobuf import descriptor as _descriptor
@@ -1,39 +1,39 @@
1
1
  # -*- coding: utf-8 -*-
2
- # Generated by https://github.com/i2y/connecpy/v2/protoc-gen-connecpy. DO NOT EDIT!
2
+ # Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
3
3
  # source: metalstack/api/v2/machine.proto
4
4
 
5
5
  from collections.abc import AsyncIterator, Iterable, Iterator, Mapping
6
6
  from typing import Protocol
7
7
 
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
8
+ from connectrpc.client import ConnectClient, ConnectClientSync
9
+ from connectrpc.code import Code
10
+ from connectrpc.errors import ConnectError
11
+ from connectrpc.interceptor import Interceptor, InterceptorSync
12
+ from connectrpc.method import IdempotencyLevel, MethodInfo
13
+ from connectrpc.request import Headers, RequestContext
14
+ from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
15
15
  import metalstack.api.v2.machine_pb2 as metalstack_dot_api_dot_v2_dot_machine__pb2
16
16
 
17
17
 
18
18
  class MachineService(Protocol):
19
19
  async def get(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetResponse:
20
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
20
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
21
21
 
22
22
  async def create(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceCreateResponse:
23
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
23
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
24
24
 
25
25
  async def update(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceUpdateResponse:
26
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
26
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
27
27
 
28
28
  async def list(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceListResponse:
29
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
29
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
30
30
 
31
31
  async def delete(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceDeleteResponse:
32
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
32
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
33
33
 
34
34
 
35
- class MachineServiceASGIApplication(ConnecpyASGIApplication):
36
- def __init__(self, service: MachineService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None):
35
+ class MachineServiceASGIApplication(ConnectASGIApplication):
36
+ def __init__(self, service: MachineService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
37
37
  super().__init__(
38
38
  endpoints={
39
39
  "/metalstack.api.v2.MachineService/Get": Endpoint.unary(
@@ -92,12 +92,12 @@ class MachineServiceASGIApplication(ConnecpyASGIApplication):
92
92
  )
93
93
 
94
94
  @property
95
- def path(self):
95
+ def path(self) -> str:
96
96
  """Returns the URL path to mount the application to when serving multiple applications."""
97
97
  return "/metalstack.api.v2.MachineService"
98
98
 
99
99
 
100
- class MachineServiceClient(ConnecpyClient):
100
+ class MachineServiceClient(ConnectClient):
101
101
  async def get(
102
102
  self,
103
103
  request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetRequest,
@@ -201,19 +201,19 @@ class MachineServiceClient(ConnecpyClient):
201
201
 
202
202
  class MachineServiceSync(Protocol):
203
203
  def get(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetResponse:
204
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
204
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
205
205
  def create(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceCreateResponse:
206
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
206
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
207
207
  def update(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceUpdateResponse:
208
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
208
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
209
209
  def list(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceListResponse:
210
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
210
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
211
211
  def delete(self, request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceDeleteResponse:
212
- raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
212
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
213
213
 
214
214
 
215
- class MachineServiceWSGIApplication(ConnecpyWSGIApplication):
216
- def __init__(self, service: MachineServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None):
215
+ class MachineServiceWSGIApplication(ConnectWSGIApplication):
216
+ def __init__(self, service: MachineServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
217
217
  super().__init__(
218
218
  endpoints={
219
219
  "/metalstack.api.v2.MachineService/Get": EndpointSync.unary(
@@ -272,12 +272,12 @@ class MachineServiceWSGIApplication(ConnecpyWSGIApplication):
272
272
  )
273
273
 
274
274
  @property
275
- def path(self):
275
+ def path(self) -> str:
276
276
  """Returns the URL path to mount the application to when serving multiple applications."""
277
277
  return "/metalstack.api.v2.MachineService"
278
278
 
279
279
 
280
- class MachineServiceClientSync(ConnecpyClientSync):
280
+ class MachineServiceClientSync(ConnectClientSync):
281
281
  def get(
282
282
  self,
283
283
  request: metalstack_dot_api_dot_v2_dot_machine__pb2.MachineServiceGetRequest,