metal-stack-api 0.0.37__py3-none-any.whl → 0.0.39__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metal-stack-api
3
- Version: 0.0.37
3
+ Version: 0.0.39
4
4
  Summary: Python API client for metal-stack api
5
5
  Home-page: https://github.com/metal-stack/api
6
6
  Author: metal-stack authors
@@ -26,8 +26,8 @@ metalstack/admin/v2/size_connect.py,sha256=EeDMcsNDo9nN7LetIkaB5sxGMk1CqZGfFtWza
26
26
  metalstack/admin/v2/size_pb2.py,sha256=RfNZRLJZy_fQ9LU9I5I6L5MWylPzPDrl2m8q9VQ1Kow,6457
27
27
  metalstack/admin/v2/size_pb2.pyi,sha256=xMbYS7HghgaPMCOpAwmdadGBOp_BU7TvF4QTJuMaMMs,2664
28
28
  metalstack/admin/v2/switch_connect.py,sha256=c_xsfMKHL-K9QLTQr5ApKU5WOaqErTGDVyF2l2dIUFE,22352
29
- metalstack/admin/v2/switch_pb2.py,sha256=bZIho6Wc8llIGcwH5e_Uy5JSwsDvgIMj9Kh69n8XRnw,12277
30
- metalstack/admin/v2/switch_pb2.pyi,sha256=v9S2jHGKVf9qKJEOTNY6On1T5Se1ahLJjepD2FPgboY,5586
29
+ metalstack/admin/v2/switch_pb2.py,sha256=GPVgs04bfWy2t6u7bnXSB1yBqPI5310JZI_GMrxjghI,12168
30
+ metalstack/admin/v2/switch_pb2.pyi,sha256=7llyR9m7oMugurT1FADS35BpMSAN-K4ErWYHPVA5l7U,5312
31
31
  metalstack/admin/v2/tenant_connect.py,sha256=yxL56ifI-VSE1O-We4V8naqc0QXKhlkqZaGOm_f1n0c,8788
32
32
  metalstack/admin/v2/tenant_pb2.py,sha256=LbMSxlil9NdM20e2Cg1q8Edd2PGdvf8lXSt8sqZpQnQ,5680
33
33
  metalstack/admin/v2/tenant_pb2.pyi,sha256=ZI3HryRUf7bWAwKMWsfDa55fS6FVrsxStMyV4sU3cz0,2303
@@ -73,8 +73,8 @@ metalstack/api/v2/project_pb2.pyi,sha256=eXMPrsbYVzWmnBhwAh-jtAmUxjFtJnO29QsMUTs
73
73
  metalstack/api/v2/size_connect.py,sha256=E5eeRVtJBtYPXTfxD9brW8nlRyReWyrYg2Nkf18havc,8428
74
74
  metalstack/api/v2/size_pb2.py,sha256=7j7lP7V1euX7jG-S31wcvzxqGYHSxHbx8syzr6pL2gY,8598
75
75
  metalstack/api/v2/size_pb2.pyi,sha256=DfGRiWwmqSs9C_UP20quu0zVTw3bhUPd6Zsr4OwJIe8,3901
76
- metalstack/api/v2/switch_pb2.py,sha256=fNW5CIXluGqOd1bTAqS4q51ZcneZpLLeldEhh1-p5IM,17509
77
- metalstack/api/v2/switch_pb2.pyi,sha256=-PRJ0p6OqeJ0ssEqthkrWgtsTaCBvvoqju7KIEqieQY,8664
76
+ metalstack/api/v2/switch_pb2.py,sha256=nu1YOQ0bhKuEk1fprZJUHi0L4H74b-lmMVmUqprJq6w,18448
77
+ metalstack/api/v2/switch_pb2.pyi,sha256=cn66PLxXx64cVaVgoSoKicwbTDXFBaH9jVPA8zlLqgQ,9555
78
78
  metalstack/api/v2/tenant_connect.py,sha256=mNezBaubV6HuCXbLGuzCPr4nuDam6LY9wkVUuuKW7uU,46635
79
79
  metalstack/api/v2/tenant_pb2.py,sha256=HqPDWwnTS51GAe6jb2JRI4jnOeBreK1kGTgoXtm2rI8,19629
80
80
  metalstack/api/v2/tenant_pb2.pyi,sha256=kDqFMIecnoaBqbJyfN5aQWch7iapYjiBuKs8gx7sLHs,11128
@@ -93,16 +93,16 @@ metalstack/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
93
93
  metalstack/client/client.py,sha256=ibIDoxhh2RH93WqeGySSg2mGVOtNMd5Hni69r7iNi-I,6881
94
94
  metalstack/infra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
95
95
  metalstack/infra/v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
96
- metalstack/infra/v2/bmc_connect.py,sha256=OJQQnWJmYANeDoCcwQDR-wQUiyZ0bNlNsOxDFFnaklk,5332
97
- metalstack/infra/v2/bmc_pb2.py,sha256=ARIJOqCWe_Qz_-QK7nz3Pddya11sJRhkN3Z3gPGMEbA,2689
98
- metalstack/infra/v2/bmc_pb2.pyi,sha256=e4FGBnDQhg6K_zlhoC170lw-0OSlSdHK3So6r3Reh1E,444
96
+ metalstack/infra/v2/bmc_connect.py,sha256=II-IwRgSMDeIK_deNgZy-B9MI-Bl96FFG9yjuD3SCXc,8923
97
+ metalstack/infra/v2/bmc_pb2.py,sha256=lBjvMyLfSPbvrJJyX1Oq-2ZM8ioOCeIUjxDwqD7yKBY,3432
98
+ metalstack/infra/v2/bmc_pb2.pyi,sha256=nZG-sqy-vTtwrwS8-iy39IcmbhwZy5x8YzSbZtoG6Zg,661
99
99
  metalstack/infra/v2/event_connect.py,sha256=BW8pvUWXgo9g0rWM_8NrBIVBUUe1-caUHEPJIdRmBbY,5318
100
100
  metalstack/infra/v2/event_pb2.py,sha256=2gk7mMaNNDZisZRIjkfAeOcEUZgMj17HcrF3jzEH36Y,8284
101
101
  metalstack/infra/v2/event_pb2.pyi,sha256=zhCAu1V2qizwNiLTyq-mvG_t0ZUw1phhTR2CvLSOjCw,3813
102
102
  metalstack/infra/v2/switch_connect.py,sha256=TftYMAVcYhwFaenInmBK21CnGTyN5pXNDrKQLDWFTz4,12319
103
- metalstack/infra/v2/switch_pb2.py,sha256=YSGPr501YDAIWGLGCXuGJxVYyU-hUYQCHRWz8huxxxY,7736
104
- metalstack/infra/v2/switch_pb2.pyi,sha256=SSUHCM5ImRTV1U1X_uEA51qWZYtEd-_ZesVESiKeWNw,4309
105
- metal_stack_api-0.0.37.dist-info/METADATA,sha256=hE5LR5lAyV74zx0BwgOe963c9Oy3KXQt39WxBsPaDno,874
106
- metal_stack_api-0.0.37.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
107
- metal_stack_api-0.0.37.dist-info/top_level.txt,sha256=OqZoCBTOYMgPJJ3GbO1ZfY7eRpW9Ljc5g3Ajlu44n2I,11
108
- metal_stack_api-0.0.37.dist-info/RECORD,,
103
+ metalstack/infra/v2/switch_pb2.py,sha256=Uyk6UZUfKG238cmLNXW3i207svRGtqGhehnA9IIyZ2Q,7234
104
+ metalstack/infra/v2/switch_pb2.pyi,sha256=8A-LhS2remAxa_g86cgLFfqucrkgGlI3ihZE9LlNuGY,3768
105
+ metal_stack_api-0.0.39.dist-info/METADATA,sha256=MfKp87wJfKLo2GeHHd6y9XnOczBZnRQ4MPMQ_41L3Hw,874
106
+ metal_stack_api-0.0.39.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
107
+ metal_stack_api-0.0.39.dist-info/top_level.txt,sha256=OqZoCBTOYMgPJJ3GbO1ZfY7eRpW9Ljc5g3Ajlu44n2I,11
108
+ metal_stack_api-0.0.39.dist-info/RECORD,,
@@ -29,7 +29,7 @@ from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_
29
29
  from metalstack.api.v2 import switch_pb2 as metalstack_dot_api_dot_v2_dot_switch__pb2
30
30
 
31
31
 
32
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n metalstack/admin/v2/switch.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"8\n\x17SwitchServiceGetRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\"M\n\x18SwitchServiceGetResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"P\n\x18SwitchServiceListRequest\x12\x34\n\x05query\x18\x01 \x01(\x0b\x32\x1e.metalstack.api.v2.SwitchQueryR\x05query\"R\n\x19SwitchServiceListResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches\"\x90\x06\n\x1aSwitchServiceUpdateRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\x39\n\nupdated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x0b\x64\x65scription\x88\x01\x01\x12V\n\x0creplace_mode\x18\x05 \x01(\x0e\x32$.metalstack.api.v2.SwitchReplaceModeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x01R\x0breplaceMode\x88\x01\x01\x12\x31\n\rmanagement_ip\x18\x06 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x02R\x0cmanagementIp\x88\x01\x01\x12\x39\n\x0fmanagement_user\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x0emanagementUser\x88\x01\x01\x12\x39\n\x0f\x63onsole_command\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x04R\x0e\x63onsoleCommand\x88\x01\x01\x12\x30\n\x04nics\x18\t \x03(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x04nics\x12\x30\n\x02os\x18\n \x01(\x0b\x32\x1b.metalstack.api.v2.SwitchOSH\x05R\x02os\x88\x01\x01\x12U\n\x13machine_connections\x18\x0b \x03(\x0b\x32$.metalstack.api.v2.MachineConnectionR\x12machineConnectionsB\x0e\n\x0c_descriptionB\x0f\n\r_replace_modeB\x10\n\x0e_management_ipB\x12\n\x10_management_userB\x12\n\x10_console_commandB\x05\n\x03_os\"P\n\x1bSwitchServiceUpdateResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"Q\n\x1aSwitchServiceDeleteRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x14\n\x05\x66orce\x18\x02 \x01(\x08R\x05\x66orce\"P\n\x1bSwitchServiceDeleteResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"y\n\x1bSwitchServiceMigrateRequest\x12,\n\nold_switch\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\toldSwitch\x12,\n\nnew_switch\x18\x02 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\tnewSwitch\"Q\n\x1cSwitchServiceMigrateResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"\xa8\x01\n\x18SwitchServicePortRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12&\n\x08nic_name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07nicName\x12\x45\n\x06status\x18\x03 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06status\"N\n\x19SwitchServicePortResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch2\xbf\x05\n\rSwitchService\x12n\n\x03Get\x12,.metalstack.admin.v2.SwitchServiceGetRequest\x1a-.metalstack.admin.v2.SwitchServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12q\n\x04List\x12-.metalstack.admin.v2.SwitchServiceListRequest\x1a..metalstack.admin.v2.SwitchServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12r\n\x06Update\x12/.metalstack.admin.v2.SwitchServiceUpdateRequest\x1a\x30.metalstack.admin.v2.SwitchServiceUpdateResponse\"\x05\xd2\xf3\x18\x01\x01\x12r\n\x06\x44\x65lete\x12/.metalstack.admin.v2.SwitchServiceDeleteRequest\x1a\x30.metalstack.admin.v2.SwitchServiceDeleteResponse\"\x05\xd2\xf3\x18\x01\x01\x12u\n\x07Migrate\x12\x30.metalstack.admin.v2.SwitchServiceMigrateRequest\x1a\x31.metalstack.admin.v2.SwitchServiceMigrateResponse\"\x05\xd2\xf3\x18\x01\x01\x12l\n\x04Port\x12-.metalstack.admin.v2.SwitchServicePortRequest\x1a..metalstack.admin.v2.SwitchServicePortResponse\"\x05\xd2\xf3\x18\x01\x01\x42\xcf\x01\n\x17\x63om.metalstack.admin.v2B\x0bSwitchProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3')
32
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n metalstack/admin/v2/switch.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"8\n\x17SwitchServiceGetRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\"M\n\x18SwitchServiceGetResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"P\n\x18SwitchServiceListRequest\x12\x34\n\x05query\x18\x01 \x01(\x0b\x32\x1e.metalstack.api.v2.SwitchQueryR\x05query\"R\n\x19SwitchServiceListResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches\"\xb9\x05\n\x1aSwitchServiceUpdateRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\x39\n\nupdated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x0b\x64\x65scription\x88\x01\x01\x12V\n\x0creplace_mode\x18\x05 \x01(\x0e\x32$.metalstack.api.v2.SwitchReplaceModeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x01R\x0breplaceMode\x88\x01\x01\x12\x31\n\rmanagement_ip\x18\x06 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x02R\x0cmanagementIp\x88\x01\x01\x12\x39\n\x0fmanagement_user\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x0emanagementUser\x88\x01\x01\x12\x39\n\x0f\x63onsole_command\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x04R\x0e\x63onsoleCommand\x88\x01\x01\x12\x30\n\x04nics\x18\t \x03(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x04nics\x12\x30\n\x02os\x18\n \x01(\x0b\x32\x1b.metalstack.api.v2.SwitchOSH\x05R\x02os\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0f\n\r_replace_modeB\x10\n\x0e_management_ipB\x12\n\x10_management_userB\x12\n\x10_console_commandB\x05\n\x03_os\"P\n\x1bSwitchServiceUpdateResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"Q\n\x1aSwitchServiceDeleteRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x14\n\x05\x66orce\x18\x02 \x01(\x08R\x05\x66orce\"P\n\x1bSwitchServiceDeleteResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"y\n\x1bSwitchServiceMigrateRequest\x12,\n\nold_switch\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\toldSwitch\x12,\n\nnew_switch\x18\x02 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\tnewSwitch\"Q\n\x1cSwitchServiceMigrateResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"\xa8\x01\n\x18SwitchServicePortRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12&\n\x08nic_name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07nicName\x12\x45\n\x06status\x18\x03 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06status\"N\n\x19SwitchServicePortResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch2\xbf\x05\n\rSwitchService\x12n\n\x03Get\x12,.metalstack.admin.v2.SwitchServiceGetRequest\x1a-.metalstack.admin.v2.SwitchServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12q\n\x04List\x12-.metalstack.admin.v2.SwitchServiceListRequest\x1a..metalstack.admin.v2.SwitchServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12r\n\x06Update\x12/.metalstack.admin.v2.SwitchServiceUpdateRequest\x1a\x30.metalstack.admin.v2.SwitchServiceUpdateResponse\"\x05\xd2\xf3\x18\x01\x01\x12r\n\x06\x44\x65lete\x12/.metalstack.admin.v2.SwitchServiceDeleteRequest\x1a\x30.metalstack.admin.v2.SwitchServiceDeleteResponse\"\x05\xd2\xf3\x18\x01\x01\x12u\n\x07Migrate\x12\x30.metalstack.admin.v2.SwitchServiceMigrateRequest\x1a\x31.metalstack.admin.v2.SwitchServiceMigrateResponse\"\x05\xd2\xf3\x18\x01\x01\x12l\n\x04Port\x12-.metalstack.admin.v2.SwitchServicePortRequest\x1a..metalstack.admin.v2.SwitchServicePortResponse\"\x05\xd2\xf3\x18\x01\x01\x42\xcf\x01\n\x17\x63om.metalstack.admin.v2B\x0bSwitchProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3')
33
33
 
34
34
  _globals = globals()
35
35
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -86,21 +86,21 @@ if not _descriptor._USE_C_DESCRIPTORS:
86
86
  _globals['_SWITCHSERVICELISTRESPONSE']._serialized_start=444
87
87
  _globals['_SWITCHSERVICELISTRESPONSE']._serialized_end=526
88
88
  _globals['_SWITCHSERVICEUPDATEREQUEST']._serialized_start=529
89
- _globals['_SWITCHSERVICEUPDATEREQUEST']._serialized_end=1313
90
- _globals['_SWITCHSERVICEUPDATERESPONSE']._serialized_start=1315
91
- _globals['_SWITCHSERVICEUPDATERESPONSE']._serialized_end=1395
92
- _globals['_SWITCHSERVICEDELETEREQUEST']._serialized_start=1397
93
- _globals['_SWITCHSERVICEDELETEREQUEST']._serialized_end=1478
94
- _globals['_SWITCHSERVICEDELETERESPONSE']._serialized_start=1480
95
- _globals['_SWITCHSERVICEDELETERESPONSE']._serialized_end=1560
96
- _globals['_SWITCHSERVICEMIGRATEREQUEST']._serialized_start=1562
97
- _globals['_SWITCHSERVICEMIGRATEREQUEST']._serialized_end=1683
98
- _globals['_SWITCHSERVICEMIGRATERESPONSE']._serialized_start=1685
99
- _globals['_SWITCHSERVICEMIGRATERESPONSE']._serialized_end=1766
100
- _globals['_SWITCHSERVICEPORTREQUEST']._serialized_start=1769
101
- _globals['_SWITCHSERVICEPORTREQUEST']._serialized_end=1937
102
- _globals['_SWITCHSERVICEPORTRESPONSE']._serialized_start=1939
103
- _globals['_SWITCHSERVICEPORTRESPONSE']._serialized_end=2017
104
- _globals['_SWITCHSERVICE']._serialized_start=2020
105
- _globals['_SWITCHSERVICE']._serialized_end=2723
89
+ _globals['_SWITCHSERVICEUPDATEREQUEST']._serialized_end=1226
90
+ _globals['_SWITCHSERVICEUPDATERESPONSE']._serialized_start=1228
91
+ _globals['_SWITCHSERVICEUPDATERESPONSE']._serialized_end=1308
92
+ _globals['_SWITCHSERVICEDELETEREQUEST']._serialized_start=1310
93
+ _globals['_SWITCHSERVICEDELETEREQUEST']._serialized_end=1391
94
+ _globals['_SWITCHSERVICEDELETERESPONSE']._serialized_start=1393
95
+ _globals['_SWITCHSERVICEDELETERESPONSE']._serialized_end=1473
96
+ _globals['_SWITCHSERVICEMIGRATEREQUEST']._serialized_start=1475
97
+ _globals['_SWITCHSERVICEMIGRATEREQUEST']._serialized_end=1596
98
+ _globals['_SWITCHSERVICEMIGRATERESPONSE']._serialized_start=1598
99
+ _globals['_SWITCHSERVICEMIGRATERESPONSE']._serialized_end=1679
100
+ _globals['_SWITCHSERVICEPORTREQUEST']._serialized_start=1682
101
+ _globals['_SWITCHSERVICEPORTREQUEST']._serialized_end=1850
102
+ _globals['_SWITCHSERVICEPORTRESPONSE']._serialized_start=1852
103
+ _globals['_SWITCHSERVICEPORTRESPONSE']._serialized_end=1930
104
+ _globals['_SWITCHSERVICE']._serialized_start=1933
105
+ _globals['_SWITCHSERVICE']._serialized_end=2636
106
106
  # @@protoc_insertion_point(module_scope)
@@ -38,7 +38,7 @@ class SwitchServiceListResponse(_message.Message):
38
38
  def __init__(self, switches: _Optional[_Iterable[_Union[_switch_pb2.Switch, _Mapping]]] = ...) -> None: ...
39
39
 
40
40
  class SwitchServiceUpdateRequest(_message.Message):
41
- __slots__ = ("id", "update_meta", "updated_at", "description", "replace_mode", "management_ip", "management_user", "console_command", "nics", "os", "machine_connections")
41
+ __slots__ = ("id", "update_meta", "updated_at", "description", "replace_mode", "management_ip", "management_user", "console_command", "nics", "os")
42
42
  ID_FIELD_NUMBER: _ClassVar[int]
43
43
  UPDATE_META_FIELD_NUMBER: _ClassVar[int]
44
44
  UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@@ -49,7 +49,6 @@ class SwitchServiceUpdateRequest(_message.Message):
49
49
  CONSOLE_COMMAND_FIELD_NUMBER: _ClassVar[int]
50
50
  NICS_FIELD_NUMBER: _ClassVar[int]
51
51
  OS_FIELD_NUMBER: _ClassVar[int]
52
- MACHINE_CONNECTIONS_FIELD_NUMBER: _ClassVar[int]
53
52
  id: str
54
53
  update_meta: _common_pb2.UpdateMeta
55
54
  updated_at: _timestamp_pb2.Timestamp
@@ -60,8 +59,7 @@ class SwitchServiceUpdateRequest(_message.Message):
60
59
  console_command: str
61
60
  nics: _containers.RepeatedCompositeFieldContainer[_switch_pb2.SwitchNic]
62
61
  os: _switch_pb2.SwitchOS
63
- machine_connections: _containers.RepeatedCompositeFieldContainer[_switch_pb2.MachineConnection]
64
- def __init__(self, id: _Optional[str] = ..., update_meta: _Optional[_Union[_common_pb2.UpdateMeta, _Mapping]] = ..., updated_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., description: _Optional[str] = ..., replace_mode: _Optional[_Union[_switch_pb2.SwitchReplaceMode, str]] = ..., management_ip: _Optional[str] = ..., management_user: _Optional[str] = ..., console_command: _Optional[str] = ..., nics: _Optional[_Iterable[_Union[_switch_pb2.SwitchNic, _Mapping]]] = ..., os: _Optional[_Union[_switch_pb2.SwitchOS, _Mapping]] = ..., machine_connections: _Optional[_Iterable[_Union[_switch_pb2.MachineConnection, _Mapping]]] = ...) -> None: ...
62
+ def __init__(self, id: _Optional[str] = ..., update_meta: _Optional[_Union[_common_pb2.UpdateMeta, _Mapping]] = ..., updated_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., description: _Optional[str] = ..., replace_mode: _Optional[_Union[_switch_pb2.SwitchReplaceMode, str]] = ..., management_ip: _Optional[str] = ..., management_user: _Optional[str] = ..., console_command: _Optional[str] = ..., nics: _Optional[_Iterable[_Union[_switch_pb2.SwitchNic, _Mapping]]] = ..., os: _Optional[_Union[_switch_pb2.SwitchOS, _Mapping]] = ...) -> None: ...
65
63
 
66
64
  class SwitchServiceUpdateResponse(_message.Message):
67
65
  __slots__ = ("switch",)
@@ -23,12 +23,13 @@ _sym_db = _symbol_database.Default()
23
23
 
24
24
 
25
25
  from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
26
+ from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
26
27
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
27
28
  from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
28
29
  from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2
29
30
 
30
31
 
31
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1emetalstack/api/v2/switch.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xb0\x05\n\x06Switch\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12-\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12$\n\x04rack\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04rack\x88\x01\x01\x12)\n\tpartition\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\tpartition\x12Q\n\x0creplace_mode\x18\x06 \x01(\x0e\x32$.metalstack.api.v2.SwitchReplaceModeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breplaceMode\x12,\n\rmanagement_ip\x18\x07 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x0cmanagementIp\x12\x38\n\x0fmanagement_user\x18\x08 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x0emanagementUser\x88\x01\x01\x12\x38\n\x0f\x63onsole_command\x18\t \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x02R\x0e\x63onsoleCommand\x88\x01\x01\x12\x30\n\x04nics\x18\n \x03(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x04nics\x12+\n\x02os\x18\x0b \x01(\x0b\x32\x1b.metalstack.api.v2.SwitchOSR\x02os\x12U\n\x13machine_connections\x18\x0c \x03(\x0b\x32$.metalstack.api.v2.MachineConnectionR\x12machineConnectionsB\x07\n\x05_rackB\x12\n\x10_management_userB\x12\n\x10_console_command\"\xb1\x01\n\x08SwitchOS\x12\x43\n\x06vendor\x18\x01 \x01(\x0e\x32!.metalstack.api.v2.SwitchOSVendorB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06vendor\x12%\n\x07version\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07version\x12\x39\n\x12metal_core_version\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x10metalCoreVersion\"\x9c\x03\n\tSwitchNic\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12+\n\nidentifier\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\nidentifier\x12\x1d\n\x03mac\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\"\n\x03vrf\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x03vrf\x88\x01\x01\x12\x36\n\x05state\x18\x05 \x01(\x0b\x32\x1b.metalstack.api.v2.NicStateH\x01R\x05state\x88\x01\x01\x12@\n\nbgp_filter\x18\x06 \x01(\x0b\x32\x1c.metalstack.api.v2.BGPFilterH\x02R\tbgpFilter\x88\x01\x01\x12P\n\x0e\x62gp_port_state\x18\x07 \x01(\x0b\x32%.metalstack.api.v2.SwitchBGPPortStateH\x03R\x0c\x62gpPortState\x88\x01\x01\x42\x06\n\x04_vrfB\x08\n\x06_stateB\r\n\x0b_bgp_filterB\x11\n\x0f_bgp_port_state\"T\n\tBGPFilter\x12\"\n\x05\x63idrs\x18\x01 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xe0\xb3\xae\xb1\x02\x01R\x05\x63idrs\x12#\n\x04vnis\x18\x02 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\"\x07r\x05\x10\x02\x18\x80\x01R\x04vnis\"\x92\x03\n\x12SwitchBGPPortState\x12\'\n\x08neighbor\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x08neighbor\x12*\n\npeer_group\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\tpeerGroup\x12&\n\x08vrf_name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07vrfName\x12\x42\n\tbgp_state\x18\x04 \x01(\x0e\x32\x1b.metalstack.api.v2.BGPStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x62gpState\x12S\n\x18\x62gp_timer_up_established\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x15\x62gpTimerUpEstablished\x12.\n\x13sent_prefix_counter\x18\x06 \x01(\x04R\x11sentPrefixCounter\x12\x36\n\x17\x61\x63\x63\x65pted_prefix_counter\x18\x07 \x01(\x04R\x15\x61\x63\x63\x65ptedPrefixCounter\"\xab\x01\n\x08NicState\x12L\n\x07\x64\x65sired\x18\x01 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x07\x64\x65sired\x88\x01\x01\x12\x45\n\x06\x61\x63tual\x18\x02 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06\x61\x63tualB\n\n\x08_desired\"b\n\x11MachineConnection\x12\x1d\n\nmachine_id\x18\x01 \x01(\tR\tmachineId\x12.\n\x03nic\x18\x02 \x01(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x03nic\"\xe3\x01\n\x0bSwitchQuery\x12\"\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12.\n\tpartition\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x01R\tpartition\x88\x01\x01\x12$\n\x04rack\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x02R\x04rack\x88\x01\x01\x12\x35\n\x02os\x18\x04 \x01(\x0b\x32 .metalstack.api.v2.SwitchOSQueryH\x03R\x02os\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_partitionB\x07\n\x05_rackB\x05\n\x03_os\"\x9c\x01\n\rSwitchOSQuery\x12H\n\x06vendor\x18\x01 \x01(\x0e\x32!.metalstack.api.v2.SwitchOSVendorB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x06vendor\x88\x01\x01\x12*\n\x07version\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x07version\x88\x01\x01\x42\t\n\x07_vendorB\n\n\x08_version*\x8b\x02\n\x08\x42GPState\x12\x19\n\x15\x42GP_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x0e\x42GP_STATE_IDLE\x10\x01\x1a\x08\x82\xb2\x19\x04idle\x12\"\n\x11\x42GP_STATE_CONNECT\x10\x02\x1a\x0b\x82\xb2\x19\x07\x63onnect\x12 \n\x10\x42GP_STATE_ACTIVE\x10\x03\x1a\n\x82\xb2\x19\x06\x61\x63tive\x12&\n\x13\x42GP_STATE_OPEN_SENT\x10\x04\x1a\r\x82\xb2\x19\topen-sent\x12,\n\x16\x42GP_STATE_OPEN_CONFIRM\x10\x05\x1a\x10\x82\xb2\x19\x0copen-confirm\x12*\n\x15\x42GP_STATE_ESTABLISHED\x10\x06\x1a\x0f\x82\xb2\x19\x0b\x65stablished*\x9c\x01\n\x11SwitchReplaceMode\x12#\n\x1fSWITCH_REPLACE_MODE_UNSPECIFIED\x10\x00\x12,\n\x1bSWITCH_REPLACE_MODE_REPLACE\x10\x01\x1a\x0b\x82\xb2\x19\x07replace\x12\x34\n\x1fSWITCH_REPLACE_MODE_OPERATIONAL\x10\x02\x1a\x0f\x82\xb2\x19\x0boperational*\x84\x01\n\x0eSwitchOSVendor\x12 \n\x1cSWITCH_OS_VENDOR_UNSPECIFIED\x10\x00\x12)\n\x18SWITCH_OS_VENDOR_CUMULUS\x10\x01\x1a\x0b\x82\xb2\x19\x07\x43umulus\x12%\n\x16SWITCH_OS_VENDOR_SONIC\x10\x02\x1a\t\x82\xb2\x19\x05SONiC*\xad\x01\n\x10SwitchPortStatus\x12\"\n\x1eSWITCH_PORT_STATUS_UNSPECIFIED\x10\x00\x12!\n\x15SWITCH_PORT_STATUS_UP\x10\x01\x1a\x06\x82\xb2\x19\x02up\x12%\n\x17SWITCH_PORT_STATUS_DOWN\x10\x02\x1a\x08\x82\xb2\x19\x04\x64own\x12+\n\x1aSWITCH_PORT_STATUS_UNKNOWN\x10\x03\x1a\x0b\x82\xb2\x19\x07unknownB\xc1\x01\n\x15\x63om.metalstack.api.v2B\x0bSwitchProtoP\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')
32
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1emetalstack/api/v2/switch.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xb3\x06\n\x06Switch\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12-\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12$\n\x04rack\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04rack\x88\x01\x01\x12)\n\tpartition\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\tpartition\x12Q\n\x0creplace_mode\x18\x06 \x01(\x0e\x32$.metalstack.api.v2.SwitchReplaceModeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breplaceMode\x12,\n\rmanagement_ip\x18\x07 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x0cmanagementIp\x12\x38\n\x0fmanagement_user\x18\x08 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x01R\x0emanagementUser\x88\x01\x01\x12\x38\n\x0f\x63onsole_command\x18\t \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x02R\x0e\x63onsoleCommand\x88\x01\x01\x12\x30\n\x04nics\x18\n \x03(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x04nics\x12+\n\x02os\x18\x0b \x01(\x0b\x32\x1b.metalstack.api.v2.SwitchOSR\x02os\x12U\n\x13machine_connections\x18\x0c \x03(\x0b\x32$.metalstack.api.v2.MachineConnectionR\x12machineConnections\x12:\n\tlast_sync\x18\r \x01(\x0b\x32\x1d.metalstack.api.v2.SwitchSyncR\x08lastSync\x12\x45\n\x0flast_sync_error\x18\x0e \x01(\x0b\x32\x1d.metalstack.api.v2.SwitchSyncR\rlastSyncErrorB\x07\n\x05_rackB\x12\n\x10_management_userB\x12\n\x10_console_command\"\xb1\x01\n\x08SwitchOS\x12\x43\n\x06vendor\x18\x01 \x01(\x0e\x32!.metalstack.api.v2.SwitchOSVendorB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06vendor\x12%\n\x07version\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07version\x12\x39\n\x12metal_core_version\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x10metalCoreVersion\"\x9c\x03\n\tSwitchNic\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12+\n\nidentifier\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\nidentifier\x12\x1d\n\x03mac\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\"\n\x03vrf\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x03vrf\x88\x01\x01\x12\x36\n\x05state\x18\x05 \x01(\x0b\x32\x1b.metalstack.api.v2.NicStateH\x01R\x05state\x88\x01\x01\x12@\n\nbgp_filter\x18\x06 \x01(\x0b\x32\x1c.metalstack.api.v2.BGPFilterH\x02R\tbgpFilter\x88\x01\x01\x12P\n\x0e\x62gp_port_state\x18\x07 \x01(\x0b\x32%.metalstack.api.v2.SwitchBGPPortStateH\x03R\x0c\x62gpPortState\x88\x01\x01\x42\x06\n\x04_vrfB\x08\n\x06_stateB\r\n\x0b_bgp_filterB\x11\n\x0f_bgp_port_state\"T\n\tBGPFilter\x12\"\n\x05\x63idrs\x18\x01 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xe0\xb3\xae\xb1\x02\x01R\x05\x63idrs\x12#\n\x04vnis\x18\x02 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\"\x07r\x05\x10\x02\x18\x80\x01R\x04vnis\"\x92\x03\n\x12SwitchBGPPortState\x12\'\n\x08neighbor\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x08neighbor\x12*\n\npeer_group\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\tpeerGroup\x12&\n\x08vrf_name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07vrfName\x12\x42\n\tbgp_state\x18\x04 \x01(\x0e\x32\x1b.metalstack.api.v2.BGPStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x62gpState\x12S\n\x18\x62gp_timer_up_established\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x15\x62gpTimerUpEstablished\x12.\n\x13sent_prefix_counter\x18\x06 \x01(\x04R\x11sentPrefixCounter\x12\x36\n\x17\x61\x63\x63\x65pted_prefix_counter\x18\x07 \x01(\x04R\x15\x61\x63\x63\x65ptedPrefixCounter\"\xab\x01\n\x08NicState\x12L\n\x07\x64\x65sired\x18\x01 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x07\x64\x65sired\x88\x01\x01\x12\x45\n\x06\x61\x63tual\x18\x02 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06\x61\x63tualB\n\n\x08_desired\"b\n\x11MachineConnection\x12\x1d\n\nmachine_id\x18\x01 \x01(\tR\tmachineId\x12.\n\x03nic\x18\x02 \x01(\x0b\x32\x1c.metalstack.api.v2.SwitchNicR\x03nic\"\xe3\x01\n\x0bSwitchQuery\x12\"\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12.\n\tpartition\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x01R\tpartition\x88\x01\x01\x12$\n\x04rack\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x02R\x04rack\x88\x01\x01\x12\x35\n\x02os\x18\x04 \x01(\x0b\x32 .metalstack.api.v2.SwitchOSQueryH\x03R\x02os\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_partitionB\x07\n\x05_rackB\x05\n\x03_os\"\x9c\x01\n\rSwitchOSQuery\x12H\n\x06vendor\x18\x01 \x01(\x0e\x32!.metalstack.api.v2.SwitchOSVendorB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x06vendor\x88\x01\x01\x12*\n\x07version\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x07version\x88\x01\x01\x42\t\n\x07_vendorB\n\n\x08_version\"\x98\x01\n\nSwitchSync\x12.\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04time\x12\x35\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationR\x08\x64uration\x12\x19\n\x05\x65rror\x18\x03 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x42\x08\n\x06_error*\x89\x02\n\x08\x42GPState\x12\x19\n\x15\x42GP_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x0e\x42GP_STATE_IDLE\x10\x01\x1a\x08\x82\xb2\x19\x04Idle\x12\"\n\x11\x42GP_STATE_CONNECT\x10\x02\x1a\x0b\x82\xb2\x19\x07\x43onnect\x12 \n\x10\x42GP_STATE_ACTIVE\x10\x03\x1a\n\x82\xb2\x19\x06\x41\x63tive\x12%\n\x13\x42GP_STATE_OPEN_SENT\x10\x04\x1a\x0c\x82\xb2\x19\x08OpenSent\x12+\n\x16\x42GP_STATE_OPEN_CONFIRM\x10\x05\x1a\x0f\x82\xb2\x19\x0bOpenConfirm\x12*\n\x15\x42GP_STATE_ESTABLISHED\x10\x06\x1a\x0f\x82\xb2\x19\x0b\x45stablished*\xa2\x01\n\x11SwitchReplaceMode\x12)\n\x1fSWITCH_REPLACE_MODE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12,\n\x1bSWITCH_REPLACE_MODE_REPLACE\x10\x01\x1a\x0b\x82\xb2\x19\x07replace\x12\x34\n\x1fSWITCH_REPLACE_MODE_OPERATIONAL\x10\x02\x1a\x0f\x82\xb2\x19\x0boperational*\x84\x01\n\x0eSwitchOSVendor\x12 \n\x1cSWITCH_OS_VENDOR_UNSPECIFIED\x10\x00\x12)\n\x18SWITCH_OS_VENDOR_CUMULUS\x10\x01\x1a\x0b\x82\xb2\x19\x07\x43umulus\x12%\n\x16SWITCH_OS_VENDOR_SONIC\x10\x02\x1a\t\x82\xb2\x19\x05SONiC*\xad\x01\n\x10SwitchPortStatus\x12\"\n\x1eSWITCH_PORT_STATUS_UNSPECIFIED\x10\x00\x12!\n\x15SWITCH_PORT_STATUS_UP\x10\x01\x1a\x06\x82\xb2\x19\x02up\x12%\n\x17SWITCH_PORT_STATUS_DOWN\x10\x02\x1a\x08\x82\xb2\x19\x04\x64own\x12+\n\x1aSWITCH_PORT_STATUS_UNKNOWN\x10\x03\x1a\x0b\x82\xb2\x19\x07unknownB\xc1\x01\n\x15\x63om.metalstack.api.v2B\x0bSwitchProtoP\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')
32
33
 
33
34
  _globals = globals()
34
35
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -37,17 +38,19 @@ if not _descriptor._USE_C_DESCRIPTORS:
37
38
  _globals['DESCRIPTOR']._loaded_options = None
38
39
  _globals['DESCRIPTOR']._serialized_options = b'\n\025com.metalstack.api.v2B\013SwitchProtoP\001Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\242\002\003MAX\252\002\021Metalstack.Api.V2\312\002\021Metalstack\\Api\\V2\342\002\035Metalstack\\Api\\V2\\GPBMetadata\352\002\023Metalstack::Api::V2'
39
40
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_IDLE"]._loaded_options = None
40
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_IDLE"]._serialized_options = b'\202\262\031\004idle'
41
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_IDLE"]._serialized_options = b'\202\262\031\004Idle'
41
42
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_CONNECT"]._loaded_options = None
42
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_CONNECT"]._serialized_options = b'\202\262\031\007connect'
43
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_CONNECT"]._serialized_options = b'\202\262\031\007Connect'
43
44
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_ACTIVE"]._loaded_options = None
44
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_ACTIVE"]._serialized_options = b'\202\262\031\006active'
45
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_ACTIVE"]._serialized_options = b'\202\262\031\006Active'
45
46
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_SENT"]._loaded_options = None
46
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_SENT"]._serialized_options = b'\202\262\031\topen-sent'
47
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_SENT"]._serialized_options = b'\202\262\031\010OpenSent'
47
48
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_CONFIRM"]._loaded_options = None
48
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_CONFIRM"]._serialized_options = b'\202\262\031\014open-confirm'
49
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_OPEN_CONFIRM"]._serialized_options = b'\202\262\031\013OpenConfirm'
49
50
  _globals['_BGPSTATE'].values_by_name["BGP_STATE_ESTABLISHED"]._loaded_options = None
50
- _globals['_BGPSTATE'].values_by_name["BGP_STATE_ESTABLISHED"]._serialized_options = b'\202\262\031\013established'
51
+ _globals['_BGPSTATE'].values_by_name["BGP_STATE_ESTABLISHED"]._serialized_options = b'\202\262\031\013Established'
52
+ _globals['_SWITCHREPLACEMODE'].values_by_name["SWITCH_REPLACE_MODE_UNSPECIFIED"]._loaded_options = None
53
+ _globals['_SWITCHREPLACEMODE'].values_by_name["SWITCH_REPLACE_MODE_UNSPECIFIED"]._serialized_options = b'\202\262\031\000'
51
54
  _globals['_SWITCHREPLACEMODE'].values_by_name["SWITCH_REPLACE_MODE_REPLACE"]._loaded_options = None
52
55
  _globals['_SWITCHREPLACEMODE'].values_by_name["SWITCH_REPLACE_MODE_REPLACE"]._serialized_options = b'\202\262\031\007replace'
53
56
  _globals['_SWITCHREPLACEMODE'].values_by_name["SWITCH_REPLACE_MODE_OPERATIONAL"]._loaded_options = None
@@ -118,30 +121,32 @@ if not _descriptor._USE_C_DESCRIPTORS:
118
121
  _globals['_SWITCHOSQUERY'].fields_by_name['vendor']._serialized_options = b'\272H\005\202\001\002\020\001'
119
122
  _globals['_SWITCHOSQUERY'].fields_by_name['version']._loaded_options = None
120
123
  _globals['_SWITCHOSQUERY'].fields_by_name['version']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
121
- _globals['_BGPSTATE']._serialized_start=2630
122
- _globals['_BGPSTATE']._serialized_end=2897
123
- _globals['_SWITCHREPLACEMODE']._serialized_start=2900
124
- _globals['_SWITCHREPLACEMODE']._serialized_end=3056
125
- _globals['_SWITCHOSVENDOR']._serialized_start=3059
126
- _globals['_SWITCHOSVENDOR']._serialized_end=3191
127
- _globals['_SWITCHPORTSTATUS']._serialized_start=3194
128
- _globals['_SWITCHPORTSTATUS']._serialized_end=3367
129
- _globals['_SWITCH']._serialized_start=190
130
- _globals['_SWITCH']._serialized_end=878
131
- _globals['_SWITCHOS']._serialized_start=881
132
- _globals['_SWITCHOS']._serialized_end=1058
133
- _globals['_SWITCHNIC']._serialized_start=1061
134
- _globals['_SWITCHNIC']._serialized_end=1473
135
- _globals['_BGPFILTER']._serialized_start=1475
136
- _globals['_BGPFILTER']._serialized_end=1559
137
- _globals['_SWITCHBGPPORTSTATE']._serialized_start=1562
138
- _globals['_SWITCHBGPPORTSTATE']._serialized_end=1964
139
- _globals['_NICSTATE']._serialized_start=1967
140
- _globals['_NICSTATE']._serialized_end=2138
141
- _globals['_MACHINECONNECTION']._serialized_start=2140
142
- _globals['_MACHINECONNECTION']._serialized_end=2238
143
- _globals['_SWITCHQUERY']._serialized_start=2241
144
- _globals['_SWITCHQUERY']._serialized_end=2468
145
- _globals['_SWITCHOSQUERY']._serialized_start=2471
146
- _globals['_SWITCHOSQUERY']._serialized_end=2627
124
+ _globals['_BGPSTATE']._serialized_start=2948
125
+ _globals['_BGPSTATE']._serialized_end=3213
126
+ _globals['_SWITCHREPLACEMODE']._serialized_start=3216
127
+ _globals['_SWITCHREPLACEMODE']._serialized_end=3378
128
+ _globals['_SWITCHOSVENDOR']._serialized_start=3381
129
+ _globals['_SWITCHOSVENDOR']._serialized_end=3513
130
+ _globals['_SWITCHPORTSTATUS']._serialized_start=3516
131
+ _globals['_SWITCHPORTSTATUS']._serialized_end=3689
132
+ _globals['_SWITCH']._serialized_start=222
133
+ _globals['_SWITCH']._serialized_end=1041
134
+ _globals['_SWITCHOS']._serialized_start=1044
135
+ _globals['_SWITCHOS']._serialized_end=1221
136
+ _globals['_SWITCHNIC']._serialized_start=1224
137
+ _globals['_SWITCHNIC']._serialized_end=1636
138
+ _globals['_BGPFILTER']._serialized_start=1638
139
+ _globals['_BGPFILTER']._serialized_end=1722
140
+ _globals['_SWITCHBGPPORTSTATE']._serialized_start=1725
141
+ _globals['_SWITCHBGPPORTSTATE']._serialized_end=2127
142
+ _globals['_NICSTATE']._serialized_start=2130
143
+ _globals['_NICSTATE']._serialized_end=2301
144
+ _globals['_MACHINECONNECTION']._serialized_start=2303
145
+ _globals['_MACHINECONNECTION']._serialized_end=2401
146
+ _globals['_SWITCHQUERY']._serialized_start=2404
147
+ _globals['_SWITCHQUERY']._serialized_end=2631
148
+ _globals['_SWITCHOSQUERY']._serialized_start=2634
149
+ _globals['_SWITCHOSQUERY']._serialized_end=2790
150
+ _globals['_SWITCHSYNC']._serialized_start=2793
151
+ _globals['_SWITCHSYNC']._serialized_end=2945
147
152
  # @@protoc_insertion_point(module_scope)
@@ -1,6 +1,7 @@
1
1
  import datetime
2
2
 
3
3
  from buf.validate import validate_pb2 as _validate_pb2
4
+ from google.protobuf import duration_pb2 as _duration_pb2
4
5
  from google.protobuf import timestamp_pb2 as _timestamp_pb2
5
6
  from metalstack.api.v2 import common_pb2 as _common_pb2
6
7
  from metalstack.api.v2 import predefined_rules_pb2 as _predefined_rules_pb2
@@ -60,7 +61,7 @@ SWITCH_PORT_STATUS_DOWN: SwitchPortStatus
60
61
  SWITCH_PORT_STATUS_UNKNOWN: SwitchPortStatus
61
62
 
62
63
  class Switch(_message.Message):
63
- __slots__ = ("id", "meta", "description", "rack", "partition", "replace_mode", "management_ip", "management_user", "console_command", "nics", "os", "machine_connections")
64
+ __slots__ = ("id", "meta", "description", "rack", "partition", "replace_mode", "management_ip", "management_user", "console_command", "nics", "os", "machine_connections", "last_sync", "last_sync_error")
64
65
  ID_FIELD_NUMBER: _ClassVar[int]
65
66
  META_FIELD_NUMBER: _ClassVar[int]
66
67
  DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
@@ -73,6 +74,8 @@ class Switch(_message.Message):
73
74
  NICS_FIELD_NUMBER: _ClassVar[int]
74
75
  OS_FIELD_NUMBER: _ClassVar[int]
75
76
  MACHINE_CONNECTIONS_FIELD_NUMBER: _ClassVar[int]
77
+ LAST_SYNC_FIELD_NUMBER: _ClassVar[int]
78
+ LAST_SYNC_ERROR_FIELD_NUMBER: _ClassVar[int]
76
79
  id: str
77
80
  meta: _common_pb2.Meta
78
81
  description: str
@@ -85,7 +88,9 @@ class Switch(_message.Message):
85
88
  nics: _containers.RepeatedCompositeFieldContainer[SwitchNic]
86
89
  os: SwitchOS
87
90
  machine_connections: _containers.RepeatedCompositeFieldContainer[MachineConnection]
88
- def __init__(self, id: _Optional[str] = ..., meta: _Optional[_Union[_common_pb2.Meta, _Mapping]] = ..., description: _Optional[str] = ..., rack: _Optional[str] = ..., partition: _Optional[str] = ..., replace_mode: _Optional[_Union[SwitchReplaceMode, str]] = ..., management_ip: _Optional[str] = ..., management_user: _Optional[str] = ..., console_command: _Optional[str] = ..., nics: _Optional[_Iterable[_Union[SwitchNic, _Mapping]]] = ..., os: _Optional[_Union[SwitchOS, _Mapping]] = ..., machine_connections: _Optional[_Iterable[_Union[MachineConnection, _Mapping]]] = ...) -> None: ...
91
+ last_sync: SwitchSync
92
+ last_sync_error: SwitchSync
93
+ def __init__(self, id: _Optional[str] = ..., meta: _Optional[_Union[_common_pb2.Meta, _Mapping]] = ..., description: _Optional[str] = ..., rack: _Optional[str] = ..., partition: _Optional[str] = ..., replace_mode: _Optional[_Union[SwitchReplaceMode, str]] = ..., management_ip: _Optional[str] = ..., management_user: _Optional[str] = ..., console_command: _Optional[str] = ..., nics: _Optional[_Iterable[_Union[SwitchNic, _Mapping]]] = ..., os: _Optional[_Union[SwitchOS, _Mapping]] = ..., machine_connections: _Optional[_Iterable[_Union[MachineConnection, _Mapping]]] = ..., last_sync: _Optional[_Union[SwitchSync, _Mapping]] = ..., last_sync_error: _Optional[_Union[SwitchSync, _Mapping]] = ...) -> None: ...
89
94
 
90
95
  class SwitchOS(_message.Message):
91
96
  __slots__ = ("vendor", "version", "metal_core_version")
@@ -176,3 +181,13 @@ class SwitchOSQuery(_message.Message):
176
181
  vendor: SwitchOSVendor
177
182
  version: str
178
183
  def __init__(self, vendor: _Optional[_Union[SwitchOSVendor, str]] = ..., version: _Optional[str] = ...) -> None: ...
184
+
185
+ class SwitchSync(_message.Message):
186
+ __slots__ = ("time", "duration", "error")
187
+ TIME_FIELD_NUMBER: _ClassVar[int]
188
+ DURATION_FIELD_NUMBER: _ClassVar[int]
189
+ ERROR_FIELD_NUMBER: _ClassVar[int]
190
+ time: _timestamp_pb2.Timestamp
191
+ duration: _duration_pb2.Duration
192
+ error: str
193
+ def __init__(self, time: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., duration: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., error: _Optional[str] = ...) -> None: ...
@@ -19,6 +19,9 @@ class BMCService(Protocol):
19
19
  async def update_b_m_c_info(self, request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.UpdateBMCInfoRequest, ctx: RequestContext) -> metalstack_dot_infra_dot_v2_dot_bmc__pb2.UpdateBMCInfoResponse:
20
20
  raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
21
21
 
22
+ def wait_for_machine_event(self, request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest, ctx: RequestContext) -> AsyncIterator[metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse]:
23
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
24
+
22
25
 
23
26
  class BMCServiceASGIApplication(ConnectASGIApplication):
24
27
  def __init__(self, service: BMCService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
@@ -34,6 +37,16 @@ class BMCServiceASGIApplication(ConnectASGIApplication):
34
37
  ),
35
38
  function=service.update_b_m_c_info,
36
39
  ),
40
+ "/metalstack.infra.v2.BMCService/WaitForMachineEvent": Endpoint.server_stream(
41
+ method=MethodInfo(
42
+ name="WaitForMachineEvent",
43
+ service_name="metalstack.infra.v2.BMCService",
44
+ input=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
45
+ output=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse,
46
+ idempotency_level=IdempotencyLevel.UNKNOWN,
47
+ ),
48
+ function=service.wait_for_machine_event,
49
+ ),
37
50
  },
38
51
  interceptors=interceptors,
39
52
  read_max_bytes=read_max_bytes,
@@ -66,10 +79,32 @@ class BMCServiceClient(ConnectClient):
66
79
  timeout_ms=timeout_ms,
67
80
  )
68
81
 
82
+ def wait_for_machine_event(
83
+ self,
84
+ request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
85
+ *,
86
+ headers: Headers | Mapping[str, str] | None = None,
87
+ timeout_ms: int | None = None,
88
+ ) -> AsyncIterator[metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse]:
89
+ return self.execute_server_stream(
90
+ request=request,
91
+ method=MethodInfo(
92
+ name="WaitForMachineEvent",
93
+ service_name="metalstack.infra.v2.BMCService",
94
+ input=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
95
+ output=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse,
96
+ idempotency_level=IdempotencyLevel.UNKNOWN,
97
+ ),
98
+ headers=headers,
99
+ timeout_ms=timeout_ms,
100
+ )
101
+
69
102
 
70
103
  class BMCServiceSync(Protocol):
71
104
  def update_b_m_c_info(self, request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.UpdateBMCInfoRequest, ctx: RequestContext) -> metalstack_dot_infra_dot_v2_dot_bmc__pb2.UpdateBMCInfoResponse:
72
105
  raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
106
+ def wait_for_machine_event(self, request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest, ctx: RequestContext) -> Iterator[metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse]:
107
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
73
108
 
74
109
 
75
110
  class BMCServiceWSGIApplication(ConnectWSGIApplication):
@@ -86,6 +121,16 @@ class BMCServiceWSGIApplication(ConnectWSGIApplication):
86
121
  ),
87
122
  function=service.update_b_m_c_info,
88
123
  ),
124
+ "/metalstack.infra.v2.BMCService/WaitForMachineEvent": EndpointSync.server_stream(
125
+ method=MethodInfo(
126
+ name="WaitForMachineEvent",
127
+ service_name="metalstack.infra.v2.BMCService",
128
+ input=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
129
+ output=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse,
130
+ idempotency_level=IdempotencyLevel.UNKNOWN,
131
+ ),
132
+ function=service.wait_for_machine_event,
133
+ ),
89
134
  },
90
135
  interceptors=interceptors,
91
136
  read_max_bytes=read_max_bytes,
@@ -117,3 +162,23 @@ class BMCServiceClientSync(ConnectClientSync):
117
162
  headers=headers,
118
163
  timeout_ms=timeout_ms,
119
164
  )
165
+
166
+ def wait_for_machine_event(
167
+ self,
168
+ request: metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
169
+ *,
170
+ headers: Headers | Mapping[str, str] | None = None,
171
+ timeout_ms: int | None = None,
172
+ ) -> Iterator[metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse]:
173
+ return self.execute_server_stream(
174
+ request=request,
175
+ method=MethodInfo(
176
+ name="WaitForMachineEvent",
177
+ service_name="metalstack.infra.v2.BMCService",
178
+ input=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventRequest,
179
+ output=metalstack_dot_infra_dot_v2_dot_bmc__pb2.WaitForMachineEventResponse,
180
+ idempotency_level=IdempotencyLevel.UNKNOWN,
181
+ ),
182
+ headers=headers,
183
+ timeout_ms=timeout_ms,
184
+ )
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
25
25
  from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
26
26
 
27
27
 
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dmetalstack/infra/v2/bmc.proto\x12\x13metalstack.infra.v2\x1a\x1emetalstack/api/v2/common.proto\"\x16\n\x14UpdateBMCInfoRequest\"\x17\n\x15UpdateBMCInfoResponse2\x7f\n\nBMCService\x12q\n\rUpdateBMCInfo\x12).metalstack.infra.v2.UpdateBMCInfoRequest\x1a*.metalstack.infra.v2.UpdateBMCInfoResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x42\xcc\x01\n\x17\x63om.metalstack.infra.v2B\x08\x42mcProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dmetalstack/infra/v2/bmc.proto\x12\x13metalstack.infra.v2\x1a\x1emetalstack/api/v2/common.proto\"\x16\n\x14UpdateBMCInfoRequest\"\x17\n\x15UpdateBMCInfoResponse\"\x1c\n\x1aWaitForMachineEventRequest\"\x1d\n\x1bWaitForMachineEventResponse2\x87\x02\n\nBMCService\x12q\n\rUpdateBMCInfo\x12).metalstack.infra.v2.UpdateBMCInfoRequest\x1a*.metalstack.infra.v2.UpdateBMCInfoResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x12\x85\x01\n\x13WaitForMachineEvent\x12/.metalstack.infra.v2.WaitForMachineEventRequest\x1a\x30.metalstack.infra.v2.WaitForMachineEventResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x30\x01\x42\xcc\x01\n\x17\x63om.metalstack.infra.v2B\x08\x42mcProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3')
29
29
 
30
30
  _globals = globals()
31
31
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -35,10 +35,16 @@ if not _descriptor._USE_C_DESCRIPTORS:
35
35
  _globals['DESCRIPTOR']._serialized_options = b'\n\027com.metalstack.infra.v2B\010BmcProtoP\001Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\242\002\003MIX\252\002\023Metalstack.Infra.V2\312\002\023Metalstack\\Infra\\V2\342\002\037Metalstack\\Infra\\V2\\GPBMetadata\352\002\025Metalstack::Infra::V2'
36
36
  _globals['_BMCSERVICE'].methods_by_name['UpdateBMCInfo']._loaded_options = None
37
37
  _globals['_BMCSERVICE'].methods_by_name['UpdateBMCInfo']._serialized_options = b'\340\363\030\002\352\363\030\001\001'
38
+ _globals['_BMCSERVICE'].methods_by_name['WaitForMachineEvent']._loaded_options = None
39
+ _globals['_BMCSERVICE'].methods_by_name['WaitForMachineEvent']._serialized_options = b'\340\363\030\002\352\363\030\001\001'
38
40
  _globals['_UPDATEBMCINFOREQUEST']._serialized_start=86
39
41
  _globals['_UPDATEBMCINFOREQUEST']._serialized_end=108
40
42
  _globals['_UPDATEBMCINFORESPONSE']._serialized_start=110
41
43
  _globals['_UPDATEBMCINFORESPONSE']._serialized_end=133
42
- _globals['_BMCSERVICE']._serialized_start=135
43
- _globals['_BMCSERVICE']._serialized_end=262
44
+ _globals['_WAITFORMACHINEEVENTREQUEST']._serialized_start=135
45
+ _globals['_WAITFORMACHINEEVENTREQUEST']._serialized_end=163
46
+ _globals['_WAITFORMACHINEEVENTRESPONSE']._serialized_start=165
47
+ _globals['_WAITFORMACHINEEVENTRESPONSE']._serialized_end=194
48
+ _globals['_BMCSERVICE']._serialized_start=197
49
+ _globals['_BMCSERVICE']._serialized_end=460
44
50
  # @@protoc_insertion_point(module_scope)
@@ -12,3 +12,11 @@ class UpdateBMCInfoRequest(_message.Message):
12
12
  class UpdateBMCInfoResponse(_message.Message):
13
13
  __slots__ = ()
14
14
  def __init__(self) -> None: ...
15
+
16
+ class WaitForMachineEventRequest(_message.Message):
17
+ __slots__ = ()
18
+ def __init__(self) -> None: ...
19
+
20
+ class WaitForMachineEventResponse(_message.Message):
21
+ __slots__ = ()
22
+ def __init__(self) -> None: ...
@@ -24,13 +24,12 @@ _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 google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
27
- from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
28
27
  from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
29
28
  from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2
30
29
  from metalstack.api.v2 import switch_pb2 as metalstack_dot_api_dot_v2_dot_switch__pb2
31
30
 
32
31
 
33
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n metalstack/infra/v2/switch.proto\x12\x13metalstack.infra.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"8\n\x17SwitchServiceGetRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\"M\n\x18SwitchServiceGetResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"Q\n\x1cSwitchServiceRegisterRequest\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"R\n\x1dSwitchServiceRegisterResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"\xbb\x04\n\x1dSwitchServiceHeartbeatRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x35\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationR\x08\x64uration\x12\x19\n\x05\x65rror\x18\x03 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x12\x63\n\x0bport_states\x18\x04 \x03(\x0b\x32\x42.metalstack.infra.v2.SwitchServiceHeartbeatRequest.PortStatesEntryR\nportStates\x12m\n\x0f\x62gp_port_states\x18\x05 \x03(\x0b\x32\x45.metalstack.infra.v2.SwitchServiceHeartbeatRequest.BgpPortStatesEntryR\rbgpPortStates\x1a\x62\n\x0fPortStatesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x39\n\x05value\x18\x02 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusR\x05value:\x02\x38\x01\x1ag\n\x12\x42gpPortStatesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12;\n\x05value\x18\x02 \x01(\x0b\x32%.metalstack.api.v2.SwitchBGPPortStateR\x05value:\x02\x38\x01\x42\x08\n\x06_error\"\xb7\x01\n\x1eSwitchServiceHeartbeatResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12<\n\tlast_sync\x18\x02 \x01(\x0b\x32\x1f.metalstack.infra.v2.SwitchSyncR\x08lastSync\x12G\n\x0flast_sync_error\x18\x03 \x01(\x0b\x32\x1f.metalstack.infra.v2.SwitchSyncR\rlastSyncError\"\x98\x01\n\nSwitchSync\x12.\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04time\x12\x35\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationR\x08\x64uration\x12\x19\n\x05\x65rror\x18\x03 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x42\x08\n\x06_error2\xfe\x02\n\rSwitchService\x12n\n\x03Get\x12,.metalstack.infra.v2.SwitchServiceGetRequest\x1a-.metalstack.infra.v2.SwitchServiceGetResponse\"\n\xe0\xf3\x18\x02\xea\xf3\x18\x02\x01\x02\x12|\n\x08Register\x12\x31.metalstack.infra.v2.SwitchServiceRegisterRequest\x1a\x32.metalstack.infra.v2.SwitchServiceRegisterResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x12\x7f\n\tHeartbeat\x12\x32.metalstack.infra.v2.SwitchServiceHeartbeatRequest\x1a\x33.metalstack.infra.v2.SwitchServiceHeartbeatResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x42\xcf\x01\n\x17\x63om.metalstack.infra.v2B\x0bSwitchProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3')
32
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n metalstack/infra/v2/switch.proto\x12\x13metalstack.infra.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"8\n\x17SwitchServiceGetRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\"M\n\x18SwitchServiceGetResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"Q\n\x1cSwitchServiceRegisterRequest\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"R\n\x1dSwitchServiceRegisterResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"\xbb\x04\n\x1dSwitchServiceHeartbeatRequest\x12\x1d\n\x02id\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x35\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationR\x08\x64uration\x12\x19\n\x05\x65rror\x18\x03 \x01(\tH\x00R\x05\x65rror\x88\x01\x01\x12\x63\n\x0bport_states\x18\x04 \x03(\x0b\x32\x42.metalstack.infra.v2.SwitchServiceHeartbeatRequest.PortStatesEntryR\nportStates\x12m\n\x0f\x62gp_port_states\x18\x05 \x03(\x0b\x32\x45.metalstack.infra.v2.SwitchServiceHeartbeatRequest.BgpPortStatesEntryR\rbgpPortStates\x1a\x62\n\x0fPortStatesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x39\n\x05value\x18\x02 \x01(\x0e\x32#.metalstack.api.v2.SwitchPortStatusR\x05value:\x02\x38\x01\x1ag\n\x12\x42gpPortStatesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12;\n\x05value\x18\x02 \x01(\x0b\x32%.metalstack.api.v2.SwitchBGPPortStateR\x05value:\x02\x38\x01\x42\x08\n\x06_error\"\xb3\x01\n\x1eSwitchServiceHeartbeatResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12:\n\tlast_sync\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.SwitchSyncR\x08lastSync\x12\x45\n\x0flast_sync_error\x18\x03 \x01(\x0b\x32\x1d.metalstack.api.v2.SwitchSyncR\rlastSyncError2\xfe\x02\n\rSwitchService\x12n\n\x03Get\x12,.metalstack.infra.v2.SwitchServiceGetRequest\x1a-.metalstack.infra.v2.SwitchServiceGetResponse\"\n\xe0\xf3\x18\x02\xea\xf3\x18\x02\x01\x02\x12|\n\x08Register\x12\x31.metalstack.infra.v2.SwitchServiceRegisterRequest\x1a\x32.metalstack.infra.v2.SwitchServiceRegisterResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x12\x7f\n\tHeartbeat\x12\x32.metalstack.infra.v2.SwitchServiceHeartbeatRequest\x1a\x33.metalstack.infra.v2.SwitchServiceHeartbeatResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x42\xcf\x01\n\x17\x63om.metalstack.infra.v2B\x0bSwitchProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3')
34
33
 
35
34
  _globals = globals()
36
35
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -52,24 +51,22 @@ if not _descriptor._USE_C_DESCRIPTORS:
52
51
  _globals['_SWITCHSERVICE'].methods_by_name['Register']._serialized_options = b'\340\363\030\002\352\363\030\001\001'
53
52
  _globals['_SWITCHSERVICE'].methods_by_name['Heartbeat']._loaded_options = None
54
53
  _globals['_SWITCHSERVICE'].methods_by_name['Heartbeat']._serialized_options = b'\340\363\030\002\352\363\030\001\001'
55
- _globals['_SWITCHSERVICEGETREQUEST']._serialized_start=257
56
- _globals['_SWITCHSERVICEGETREQUEST']._serialized_end=313
57
- _globals['_SWITCHSERVICEGETRESPONSE']._serialized_start=315
58
- _globals['_SWITCHSERVICEGETRESPONSE']._serialized_end=392
59
- _globals['_SWITCHSERVICEREGISTERREQUEST']._serialized_start=394
60
- _globals['_SWITCHSERVICEREGISTERREQUEST']._serialized_end=475
61
- _globals['_SWITCHSERVICEREGISTERRESPONSE']._serialized_start=477
62
- _globals['_SWITCHSERVICEREGISTERRESPONSE']._serialized_end=559
63
- _globals['_SWITCHSERVICEHEARTBEATREQUEST']._serialized_start=562
64
- _globals['_SWITCHSERVICEHEARTBEATREQUEST']._serialized_end=1133
65
- _globals['_SWITCHSERVICEHEARTBEATREQUEST_PORTSTATESENTRY']._serialized_start=920
66
- _globals['_SWITCHSERVICEHEARTBEATREQUEST_PORTSTATESENTRY']._serialized_end=1018
67
- _globals['_SWITCHSERVICEHEARTBEATREQUEST_BGPPORTSTATESENTRY']._serialized_start=1020
68
- _globals['_SWITCHSERVICEHEARTBEATREQUEST_BGPPORTSTATESENTRY']._serialized_end=1123
69
- _globals['_SWITCHSERVICEHEARTBEATRESPONSE']._serialized_start=1136
70
- _globals['_SWITCHSERVICEHEARTBEATRESPONSE']._serialized_end=1319
71
- _globals['_SWITCHSYNC']._serialized_start=1322
72
- _globals['_SWITCHSYNC']._serialized_end=1474
73
- _globals['_SWITCHSERVICE']._serialized_start=1477
74
- _globals['_SWITCHSERVICE']._serialized_end=1859
54
+ _globals['_SWITCHSERVICEGETREQUEST']._serialized_start=224
55
+ _globals['_SWITCHSERVICEGETREQUEST']._serialized_end=280
56
+ _globals['_SWITCHSERVICEGETRESPONSE']._serialized_start=282
57
+ _globals['_SWITCHSERVICEGETRESPONSE']._serialized_end=359
58
+ _globals['_SWITCHSERVICEREGISTERREQUEST']._serialized_start=361
59
+ _globals['_SWITCHSERVICEREGISTERREQUEST']._serialized_end=442
60
+ _globals['_SWITCHSERVICEREGISTERRESPONSE']._serialized_start=444
61
+ _globals['_SWITCHSERVICEREGISTERRESPONSE']._serialized_end=526
62
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST']._serialized_start=529
63
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST']._serialized_end=1100
64
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST_PORTSTATESENTRY']._serialized_start=887
65
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST_PORTSTATESENTRY']._serialized_end=985
66
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST_BGPPORTSTATESENTRY']._serialized_start=987
67
+ _globals['_SWITCHSERVICEHEARTBEATREQUEST_BGPPORTSTATESENTRY']._serialized_end=1090
68
+ _globals['_SWITCHSERVICEHEARTBEATRESPONSE']._serialized_start=1103
69
+ _globals['_SWITCHSERVICEHEARTBEATRESPONSE']._serialized_end=1282
70
+ _globals['_SWITCHSERVICE']._serialized_start=1285
71
+ _globals['_SWITCHSERVICE']._serialized_end=1667
75
72
  # @@protoc_insertion_point(module_scope)
@@ -2,7 +2,6 @@ import datetime
2
2
 
3
3
  from buf.validate import validate_pb2 as _validate_pb2
4
4
  from google.protobuf import duration_pb2 as _duration_pb2
5
- from google.protobuf import timestamp_pb2 as _timestamp_pb2
6
5
  from metalstack.api.v2 import common_pb2 as _common_pb2
7
6
  from metalstack.api.v2 import predefined_rules_pb2 as _predefined_rules_pb2
8
7
  from metalstack.api.v2 import switch_pb2 as _switch_pb2
@@ -72,16 +71,6 @@ class SwitchServiceHeartbeatResponse(_message.Message):
72
71
  LAST_SYNC_FIELD_NUMBER: _ClassVar[int]
73
72
  LAST_SYNC_ERROR_FIELD_NUMBER: _ClassVar[int]
74
73
  id: str
75
- last_sync: SwitchSync
76
- last_sync_error: SwitchSync
77
- def __init__(self, id: _Optional[str] = ..., last_sync: _Optional[_Union[SwitchSync, _Mapping]] = ..., last_sync_error: _Optional[_Union[SwitchSync, _Mapping]] = ...) -> None: ...
78
-
79
- class SwitchSync(_message.Message):
80
- __slots__ = ("time", "duration", "error")
81
- TIME_FIELD_NUMBER: _ClassVar[int]
82
- DURATION_FIELD_NUMBER: _ClassVar[int]
83
- ERROR_FIELD_NUMBER: _ClassVar[int]
84
- time: _timestamp_pb2.Timestamp
85
- duration: _duration_pb2.Duration
86
- error: str
87
- def __init__(self, time: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., duration: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., error: _Optional[str] = ...) -> None: ...
74
+ last_sync: _switch_pb2.SwitchSync
75
+ last_sync_error: _switch_pb2.SwitchSync
76
+ def __init__(self, id: _Optional[str] = ..., last_sync: _Optional[_Union[_switch_pb2.SwitchSync, _Mapping]] = ..., last_sync_error: _Optional[_Union[_switch_pb2.SwitchSync, _Mapping]] = ...) -> None: ...