From 2c924dc8d55a3266b17be973a9ce6fdda2387e16 Mon Sep 17 00:00:00 2001 From: Ilja Rotar Date: Mon, 31 Aug 2026 14:29:03 +0200 Subject: [PATCH 1/5] Add partition for network external members query --- doc/index.html | 7 +++++ go/metalstack/api/v2/network.pb.go | 20 ++++++++++--- js/metalstack/api/v2/network_pb.d.ts | 6 ++++ js/metalstack/api/v2/network_pb.js | 2 +- js/metalstack/api/v2/network_pb.ts | 9 +++++- proto/metalstack/api/v2/network.proto | 2 ++ python/metalstack/api/v2/network_pb2.py | 38 +++++++++++++----------- python/metalstack/api/v2/network_pb2.pyi | 6 ++-- 8 files changed, 64 insertions(+), 26 deletions(-) diff --git a/doc/index.html b/doc/index.html index c427c1d6..3a592e11 100644 --- a/doc/index.html +++ b/doc/index.html @@ -8612,6 +8612,13 @@

ExternalNetworkMemberQuery

Rack for which the members of the network are queried.

+ + partition + string + optional +

Partition where the members of the network reside..

+ + diff --git a/go/metalstack/api/v2/network.pb.go b/go/metalstack/api/v2/network.pb.go index a8f37110..415b9d93 100644 --- a/go/metalstack/api/v2/network.pb.go +++ b/go/metalstack/api/v2/network.pb.go @@ -1280,7 +1280,9 @@ type ExternalNetworkMemberQuery struct { // Switch whose ports are queried. Switch *string `protobuf:"bytes,1,opt,name=switch,proto3,oneof" json:"switch,omitempty"` // Rack for which the members of the network are queried. - Rack *string `protobuf:"bytes,2,opt,name=rack,proto3,oneof" json:"rack,omitempty"` + Rack *string `protobuf:"bytes,2,opt,name=rack,proto3,oneof" json:"rack,omitempty"` + // Partition where the members of the network reside.. + Partition *string `protobuf:"bytes,3,opt,name=partition,proto3,oneof" json:"partition,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -1329,6 +1331,13 @@ func (x *ExternalNetworkMemberQuery) GetRack() string { return "" } +func (x *ExternalNetworkMemberQuery) GetPartition() string { + if x != nil && x.Partition != nil { + return *x.Partition + } + return "" +} + // ChildPrefixLength. type ChildPrefixLength struct { state protoimpl.MessageState `protogen:"open.v1"` @@ -1683,13 +1692,16 @@ const file_metalstack_api_v2_network_proto_rawDesc = "" + "\x0f_address_familyB\a\n" + "\x05_typeB\v\n" + "\t_nat_typeB\t\n" + - "\a_labels\"\x82\x01\n" + + "\a_labels\"\xc0\x01\n" + "\x1aExternalNetworkMemberQuery\x12*\n" + "\x06switch\x18\x01 \x01(\tB\r\xbaH\n" + "r\b\xc0\xb3\xae\xb1\x02\x01h\x01H\x00R\x06switch\x88\x01\x01\x12$\n" + - "\x04rack\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04rack\x88\x01\x01B\t\n" + + "\x04rack\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04rack\x88\x01\x01\x12.\n" + + "\tpartition\x18\x03 \x01(\tB\v\xbaH\br\x06г\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01B\t\n" + "\a_switchB\a\n" + - "\x05_rack\"n\n" + + "\x05_rackB\f\n" + + "\n" + + "_partition\"n\n" + "\x11ChildPrefixLength\x12\"\n" + "\x04ipv4\x18\x01 \x01(\rB\t\xbaH\x06*\x04\x18 \x00H\x00R\x04ipv4\x88\x01\x01\x12#\n" + "\x04ipv6\x18\x02 \x01(\rB\n" + diff --git a/js/metalstack/api/v2/network_pb.d.ts b/js/metalstack/api/v2/network_pb.d.ts index f73aae16..d03f38e2 100644 --- a/js/metalstack/api/v2/network_pb.d.ts +++ b/js/metalstack/api/v2/network_pb.d.ts @@ -546,6 +546,12 @@ export type ExternalNetworkMemberQuery = Message<"metalstack.api.v2.ExternalNetw * @generated from field: optional string rack = 2; */ rack?: string | undefined; + /** + * Partition where the members of the network reside.. + * + * @generated from field: optional string partition = 3; + */ + partition?: string | undefined; }; /** * Describes the message metalstack.api.v2.ExternalNetworkMemberQuery. diff --git a/js/metalstack/api/v2/network_pb.js b/js/metalstack/api/v2/network_pb.js index 540dcfd9..370cc131 100644 --- a/js/metalstack/api/v2/network_pb.js +++ b/js/metalstack/api/v2/network_pb.js @@ -8,7 +8,7 @@ import { file_metalstack_api_v2_predefined_rules } from "./predefined_rules_pb"; /** * Describes the file metalstack/api/v2/network.proto. */ -export const file_metalstack_api_v2_network = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9uZXR3b3JrLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJRChhOZXR3b3JrU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhwKB3Byb2plY3QYAiABKAlCC7pICNgBAXIDsAEBIkgKGU5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsi3AMKG05ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBIZCgdwcm9qZWN0GAEgASgJQgi6SAVyA7ABARIeCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgEIAEoCUILukgIcgbQs66xAgFIAogBARIpCgZsYWJlbHMYBSABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHMSKAoOcGFyZW50X25ldHdvcmsYBiABKAlCC7pICHIGwLOusQIBSAOIAQESOQoGbGVuZ3RoGAcgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARJOCg5hZGRyZXNzX2ZhbWlseRgIIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgFiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIq4CChtOZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEjoKC3VwZGF0ZV9tZXRhGAIgASgLMh0ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTWV0YUIGukgDyAEBEhkKB3Byb2plY3QYAyABKAlCCLpIBXIDsAEBEh4KBG5hbWUYBCABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBSABKAlCC7pICHIGyLOusQIBSAGIAQESNAoGbGFiZWxzGAYgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAKIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19sYWJlbHMiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJpChlOZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJ1CiVOZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IlYKJk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1Jlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJRChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBIksKHE5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsizQYKB05ldHdvcmsSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAUgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KB3Byb2plY3QYBiABKAlCCLpIBXIDsAEBSAOIAQESIAoJbmFtZXNwYWNlGAcgASgJQgi6SAVyA7ABAUgEiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjYKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAESNgoIbmF0X3R5cGUYDSABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5OQVRUeXBlQgi6SAWCAQIQARIQCgN2cmYYDiABKA1IBYgBARIoCg5wYXJlbnRfbmV0d29yaxgPIAEoCUILukgIcgbAs66xAgFIBogBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGBAgAygJQgy6SAmSAQa4pLOxAgESOgoLY29uc3VtcHRpb24YESABKAsyJS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrQ29uc3VtcHRpb25CBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgwKCl9wYXJ0aXRpb25CCgoIX3Byb2plY3RCDAoKX25hbWVzcGFjZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29yayLzBQoMTmV0d29ya1F1ZXJ5EhwKAmlkGAEgASgJQgu6SAhyBsCzrrECAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAKIAQESIwoJcGFydGl0aW9uGAQgASgJQgu6SAhyBtCzrrECAUgDiAEBEh4KB3Byb2plY3QYBSABKAlCCLpIBXIDsAEBSASIAQESIAoJbmFtZXNwYWNlGAYgASgJQgi6SAVyA7ABAUgFiAEBEh4KCHByZWZpeGVzGAcgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCCADKAlCDLpICZIBBriks7ECARIQCgN2cmYYCSABKA1IBogBARIoCg5wYXJlbnRfbmV0d29yaxgKIAEoCUILukgIcgbAs66xAgFIB4gBARJOCg5hZGRyZXNzX2ZhbWlseRgLIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgIiAEBEjsKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAFICYgBARI7CghuYXRfdHlwZRgNIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAqIAQESLgoGbGFiZWxzGA4gASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAuIAQFCBQoDX2lkQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQgoKCF9wcm9qZWN0QgwKCl9uYW1lc3BhY2VCBgoEX3ZyZkIRCg9fcGFyZW50X25ldHdvcmtCEQoPX2FkZHJlc3NfZmFtaWx5QgcKBV90eXBlQgsKCV9uYXRfdHlwZUIJCgdfbGFiZWxzInQKGkV4dGVybmFsTmV0d29ya01lbWJlclF1ZXJ5EiIKBnN3aXRjaBgBIAEoCUINukgKcgjAs66xAgFoAUgAiAEBEh4KBHJhY2sYAiABKAlCC7pICHIGwLOusQIBSAGIAQFCCQoHX3N3aXRjaEIHCgVfcmFjayJiChFDaGlsZFByZWZpeExlbmd0aBIcCgRpcHY0GAEgASgNQgm6SAYqBBggIABIAIgBARIdCgRpcHY2GAIgASgNQgq6SAcqBRiAASAASAGIAQFCBwoFX2lwdjRCBwoFX2lwdjYicgoSTmV0d29ya0NvbnN1bXB0aW9uEi0KBGlwdjQYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVXNhZ2USLQoEaXB2NhgCIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtVc2FnZSJqCgxOZXR3b3JrVXNhZ2USFQoNYXZhaWxhYmxlX2lwcxgBIAEoBBIQCgh1c2VkX2lwcxgCIAEoBBIaChJhdmFpbGFibGVfcHJlZml4ZXMYAyABKAQSFQoNdXNlZF9wcmVmaXhlcxgEIAEoBCJUChVFeHRlcm5hbE5ldHdvcmtNZW1iZXISGwoGc3dpdGNoGAEgASgJQgu6SAhyBsCzrrECARIeCgVwb3J0cxgCIAMoCUIPukgMkgEJ0KSzsQIBEIAQKm0KB05BVFR5cGUSGAoUTkFUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1OQVRfVFlQRV9OT05FEAEaCIKyGQRub25lEisKGE5BVF9UWVBFX0lQVjRfTUFTUVVFUkFERRACGg2CshkJaXB2NC1tYXNxKq0CCgtOZXR3b3JrVHlwZRIcChhORVRXT1JLX1RZUEVfVU5TUEVDSUZJRUQQABInChVORVRXT1JLX1RZUEVfRVhURVJOQUwQARoMgrIZCGV4dGVybmFsEicKFU5FVFdPUktfVFlQRV9VTkRFUkxBWRACGgyCshkIdW5kZXJsYXkSIQoSTkVUV09SS19UWVBFX1NVUEVSEAMaCYKyGQVzdXBlchI3Ch1ORVRXT1JLX1RZUEVfU1VQRVJfTkFNRVNQQUNFRBAEGhSCshkQc3VwZXItbmFtZXNwYWNlZBIhChJORVRXT1JLX1RZUEVfQ0hJTEQQBRoJgrIZBWNoaWxkEi8KGU5FVFdPUktfVFlQRV9DSElMRF9TSEFSRUQQBhoQgrIZDGNoaWxkLXNoYXJlZCrHAQoUTmV0d29ya0FkZHJlc3NGYW1pbHkSJgoiTkVUV09SS19BRERSRVNTX0ZBTUlMWV9VTlNQRUNJRklFRBAAEicKGU5FVFdPUktfQUREUkVTU19GQU1JTFlfVjQQARoIgrIZBGlwdjQSJwoZTkVUV09SS19BRERSRVNTX0ZBTUlMWV9WNhACGgiCshkEaXB2NhI1CiFORVRXT1JLX0FERFJFU1NfRkFNSUxZX0RVQUxfU1RBQ0sQAxoOgrIZCmR1YWwtc3RhY2sy7QUKDk5ldHdvcmtTZXJ2aWNlEm0KA0dldBIrLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBosLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkNyZWF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGVXBkYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJwCgRMaXN0EiwubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBotLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlIgvK8xgDAQID4PMYAhKUAQoQTGlzdEJhc2VOZXR3b3JrcxI4Lm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1JlcXVlc3QaOS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXNwb25zZSILyvMYAwECA+DzGAISdQoGRGVsZXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZSIKyvMYAgEC4PMYAULCAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQgxOZXR3b3JrUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); +export const file_metalstack_api_v2_network = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9uZXR3b3JrLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJRChhOZXR3b3JrU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhwKB3Byb2plY3QYAiABKAlCC7pICNgBAXIDsAEBIkgKGU5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsi3AMKG05ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBIZCgdwcm9qZWN0GAEgASgJQgi6SAVyA7ABARIeCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgEIAEoCUILukgIcgbQs66xAgFIAogBARIpCgZsYWJlbHMYBSABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHMSKAoOcGFyZW50X25ldHdvcmsYBiABKAlCC7pICHIGwLOusQIBSAOIAQESOQoGbGVuZ3RoGAcgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARJOCg5hZGRyZXNzX2ZhbWlseRgIIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgFiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIq4CChtOZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEjoKC3VwZGF0ZV9tZXRhGAIgASgLMh0ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTWV0YUIGukgDyAEBEhkKB3Byb2plY3QYAyABKAlCCLpIBXIDsAEBEh4KBG5hbWUYBCABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBSABKAlCC7pICHIGyLOusQIBSAGIAQESNAoGbGFiZWxzGAYgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAKIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19sYWJlbHMiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJpChlOZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJ1CiVOZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IlYKJk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1Jlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJRChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBIksKHE5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsizQYKB05ldHdvcmsSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAUgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KB3Byb2plY3QYBiABKAlCCLpIBXIDsAEBSAOIAQESIAoJbmFtZXNwYWNlGAcgASgJQgi6SAVyA7ABAUgEiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjYKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAESNgoIbmF0X3R5cGUYDSABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5OQVRUeXBlQgi6SAWCAQIQARIQCgN2cmYYDiABKA1IBYgBARIoCg5wYXJlbnRfbmV0d29yaxgPIAEoCUILukgIcgbAs66xAgFIBogBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGBAgAygJQgy6SAmSAQa4pLOxAgESOgoLY29uc3VtcHRpb24YESABKAsyJS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrQ29uc3VtcHRpb25CBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgwKCl9wYXJ0aXRpb25CCgoIX3Byb2plY3RCDAoKX25hbWVzcGFjZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29yayLzBQoMTmV0d29ya1F1ZXJ5EhwKAmlkGAEgASgJQgu6SAhyBsCzrrECAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAKIAQESIwoJcGFydGl0aW9uGAQgASgJQgu6SAhyBtCzrrECAUgDiAEBEh4KB3Byb2plY3QYBSABKAlCCLpIBXIDsAEBSASIAQESIAoJbmFtZXNwYWNlGAYgASgJQgi6SAVyA7ABAUgFiAEBEh4KCHByZWZpeGVzGAcgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCCADKAlCDLpICZIBBriks7ECARIQCgN2cmYYCSABKA1IBogBARIoCg5wYXJlbnRfbmV0d29yaxgKIAEoCUILukgIcgbAs66xAgFIB4gBARJOCg5hZGRyZXNzX2ZhbWlseRgLIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgIiAEBEjsKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAFICYgBARI7CghuYXRfdHlwZRgNIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAqIAQESLgoGbGFiZWxzGA4gASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAuIAQFCBQoDX2lkQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQgoKCF9wcm9qZWN0QgwKCl9uYW1lc3BhY2VCBgoEX3ZyZkIRCg9fcGFyZW50X25ldHdvcmtCEQoPX2FkZHJlc3NfZmFtaWx5QgcKBV90eXBlQgsKCV9uYXRfdHlwZUIJCgdfbGFiZWxzIqcBChpFeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeRIiCgZzd2l0Y2gYASABKAlCDbpICnIIwLOusQIBaAFIAIgBARIeCgRyYWNrGAIgASgJQgu6SAhyBsCzrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgDIAEoCUILukgIcgbQs66xAgFIAogBAUIJCgdfc3dpdGNoQgcKBV9yYWNrQgwKCl9wYXJ0aXRpb24iYgoRQ2hpbGRQcmVmaXhMZW5ndGgSHAoEaXB2NBgBIAEoDUIJukgGKgQYICAASACIAQESHQoEaXB2NhgCIAEoDUIKukgHKgUYgAEgAEgBiAEBQgcKBV9pcHY0QgcKBV9pcHY2InIKEk5ldHdvcmtDb25zdW1wdGlvbhItCgRpcHY0GAEgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1VzYWdlEi0KBGlwdjYYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVXNhZ2UiagoMTmV0d29ya1VzYWdlEhUKDWF2YWlsYWJsZV9pcHMYASABKAQSEAoIdXNlZF9pcHMYAiABKAQSGgoSYXZhaWxhYmxlX3ByZWZpeGVzGAMgASgEEhUKDXVzZWRfcHJlZml4ZXMYBCABKAQiVAoVRXh0ZXJuYWxOZXR3b3JrTWVtYmVyEhsKBnN3aXRjaBgBIAEoCUILukgIcgbAs66xAgESHgoFcG9ydHMYAiADKAlCD7pIDJIBCdCks7ECARCAECptCgdOQVRUeXBlEhgKFE5BVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNTkFUX1RZUEVfTk9ORRABGgiCshkEbm9uZRIrChhOQVRfVFlQRV9JUFY0X01BU1FVRVJBREUQAhoNgrIZCWlwdjQtbWFzcSqtAgoLTmV0d29ya1R5cGUSHAoYTkVUV09SS19UWVBFX1VOU1BFQ0lGSUVEEAASJwoVTkVUV09SS19UWVBFX0VYVEVSTkFMEAEaDIKyGQhleHRlcm5hbBInChVORVRXT1JLX1RZUEVfVU5ERVJMQVkQAhoMgrIZCHVuZGVybGF5EiEKEk5FVFdPUktfVFlQRV9TVVBFUhADGgmCshkFc3VwZXISNwodTkVUV09SS19UWVBFX1NVUEVSX05BTUVTUEFDRUQQBBoUgrIZEHN1cGVyLW5hbWVzcGFjZWQSIQoSTkVUV09SS19UWVBFX0NISUxEEAUaCYKyGQVjaGlsZBIvChlORVRXT1JLX1RZUEVfQ0hJTERfU0hBUkVEEAYaEIKyGQxjaGlsZC1zaGFyZWQqxwEKFE5ldHdvcmtBZGRyZXNzRmFtaWx5EiYKIk5FVFdPUktfQUREUkVTU19GQU1JTFlfVU5TUEVDSUZJRUQQABInChlORVRXT1JLX0FERFJFU1NfRkFNSUxZX1Y0EAEaCIKyGQRpcHY0EicKGU5FVFdPUktfQUREUkVTU19GQU1JTFlfVjYQAhoIgrIZBGlwdjYSNQohTkVUV09SS19BRERSRVNTX0ZBTUlMWV9EVUFMX1NUQUNLEAMaDoKyGQpkdWFsLXN0YWNrMu0FCg5OZXR3b3JrU2VydmljZRJtCgNHZXQSKy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLC5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUdldFJlc3BvbnNlIgvK8xgDAQID4PMYAhJ1CgZDcmVhdGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEnUKBlVwZGF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAEScAoETGlzdBIsLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QaLS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSILyvMYAwECA+DzGAISlAEKEExpc3RCYXNlTmV0d29ya3MSOC5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0GjkubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VMaXN0QmFzZU5ldHdvcmtzUmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkRlbGV0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCsrzGAIBAuDzGAFCwgEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIMTmV0d29ya1Byb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * Describes the message metalstack.api.v2.NetworkServiceGetRequest. * Use `create(NetworkServiceGetRequestSchema)` to create a new message. diff --git a/js/metalstack/api/v2/network_pb.ts b/js/metalstack/api/v2/network_pb.ts index 92ff3e2a..6cb29371 100644 --- a/js/metalstack/api/v2/network_pb.ts +++ b/js/metalstack/api/v2/network_pb.ts @@ -14,7 +14,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/api/v2/network.proto. */ export const file_metalstack_api_v2_network: GenFile = /*@__PURE__*/ - fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9uZXR3b3JrLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJRChhOZXR3b3JrU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhwKB3Byb2plY3QYAiABKAlCC7pICNgBAXIDsAEBIkgKGU5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsi3AMKG05ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBIZCgdwcm9qZWN0GAEgASgJQgi6SAVyA7ABARIeCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgEIAEoCUILukgIcgbQs66xAgFIAogBARIpCgZsYWJlbHMYBSABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHMSKAoOcGFyZW50X25ldHdvcmsYBiABKAlCC7pICHIGwLOusQIBSAOIAQESOQoGbGVuZ3RoGAcgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARJOCg5hZGRyZXNzX2ZhbWlseRgIIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgFiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIq4CChtOZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEjoKC3VwZGF0ZV9tZXRhGAIgASgLMh0ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTWV0YUIGukgDyAEBEhkKB3Byb2plY3QYAyABKAlCCLpIBXIDsAEBEh4KBG5hbWUYBCABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBSABKAlCC7pICHIGyLOusQIBSAGIAQESNAoGbGFiZWxzGAYgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAKIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19sYWJlbHMiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJpChlOZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJ1CiVOZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IlYKJk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1Jlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJRChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBIksKHE5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsizQYKB05ldHdvcmsSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAUgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KB3Byb2plY3QYBiABKAlCCLpIBXIDsAEBSAOIAQESIAoJbmFtZXNwYWNlGAcgASgJQgi6SAVyA7ABAUgEiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjYKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAESNgoIbmF0X3R5cGUYDSABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5OQVRUeXBlQgi6SAWCAQIQARIQCgN2cmYYDiABKA1IBYgBARIoCg5wYXJlbnRfbmV0d29yaxgPIAEoCUILukgIcgbAs66xAgFIBogBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGBAgAygJQgy6SAmSAQa4pLOxAgESOgoLY29uc3VtcHRpb24YESABKAsyJS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrQ29uc3VtcHRpb25CBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgwKCl9wYXJ0aXRpb25CCgoIX3Byb2plY3RCDAoKX25hbWVzcGFjZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29yayLzBQoMTmV0d29ya1F1ZXJ5EhwKAmlkGAEgASgJQgu6SAhyBsCzrrECAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAKIAQESIwoJcGFydGl0aW9uGAQgASgJQgu6SAhyBtCzrrECAUgDiAEBEh4KB3Byb2plY3QYBSABKAlCCLpIBXIDsAEBSASIAQESIAoJbmFtZXNwYWNlGAYgASgJQgi6SAVyA7ABAUgFiAEBEh4KCHByZWZpeGVzGAcgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCCADKAlCDLpICZIBBriks7ECARIQCgN2cmYYCSABKA1IBogBARIoCg5wYXJlbnRfbmV0d29yaxgKIAEoCUILukgIcgbAs66xAgFIB4gBARJOCg5hZGRyZXNzX2ZhbWlseRgLIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgIiAEBEjsKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAFICYgBARI7CghuYXRfdHlwZRgNIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAqIAQESLgoGbGFiZWxzGA4gASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAuIAQFCBQoDX2lkQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQgoKCF9wcm9qZWN0QgwKCl9uYW1lc3BhY2VCBgoEX3ZyZkIRCg9fcGFyZW50X25ldHdvcmtCEQoPX2FkZHJlc3NfZmFtaWx5QgcKBV90eXBlQgsKCV9uYXRfdHlwZUIJCgdfbGFiZWxzInQKGkV4dGVybmFsTmV0d29ya01lbWJlclF1ZXJ5EiIKBnN3aXRjaBgBIAEoCUINukgKcgjAs66xAgFoAUgAiAEBEh4KBHJhY2sYAiABKAlCC7pICHIGwLOusQIBSAGIAQFCCQoHX3N3aXRjaEIHCgVfcmFjayJiChFDaGlsZFByZWZpeExlbmd0aBIcCgRpcHY0GAEgASgNQgm6SAYqBBggIABIAIgBARIdCgRpcHY2GAIgASgNQgq6SAcqBRiAASAASAGIAQFCBwoFX2lwdjRCBwoFX2lwdjYicgoSTmV0d29ya0NvbnN1bXB0aW9uEi0KBGlwdjQYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVXNhZ2USLQoEaXB2NhgCIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtVc2FnZSJqCgxOZXR3b3JrVXNhZ2USFQoNYXZhaWxhYmxlX2lwcxgBIAEoBBIQCgh1c2VkX2lwcxgCIAEoBBIaChJhdmFpbGFibGVfcHJlZml4ZXMYAyABKAQSFQoNdXNlZF9wcmVmaXhlcxgEIAEoBCJUChVFeHRlcm5hbE5ldHdvcmtNZW1iZXISGwoGc3dpdGNoGAEgASgJQgu6SAhyBsCzrrECARIeCgVwb3J0cxgCIAMoCUIPukgMkgEJ0KSzsQIBEIAQKm0KB05BVFR5cGUSGAoUTkFUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1OQVRfVFlQRV9OT05FEAEaCIKyGQRub25lEisKGE5BVF9UWVBFX0lQVjRfTUFTUVVFUkFERRACGg2CshkJaXB2NC1tYXNxKq0CCgtOZXR3b3JrVHlwZRIcChhORVRXT1JLX1RZUEVfVU5TUEVDSUZJRUQQABInChVORVRXT1JLX1RZUEVfRVhURVJOQUwQARoMgrIZCGV4dGVybmFsEicKFU5FVFdPUktfVFlQRV9VTkRFUkxBWRACGgyCshkIdW5kZXJsYXkSIQoSTkVUV09SS19UWVBFX1NVUEVSEAMaCYKyGQVzdXBlchI3Ch1ORVRXT1JLX1RZUEVfU1VQRVJfTkFNRVNQQUNFRBAEGhSCshkQc3VwZXItbmFtZXNwYWNlZBIhChJORVRXT1JLX1RZUEVfQ0hJTEQQBRoJgrIZBWNoaWxkEi8KGU5FVFdPUktfVFlQRV9DSElMRF9TSEFSRUQQBhoQgrIZDGNoaWxkLXNoYXJlZCrHAQoUTmV0d29ya0FkZHJlc3NGYW1pbHkSJgoiTkVUV09SS19BRERSRVNTX0ZBTUlMWV9VTlNQRUNJRklFRBAAEicKGU5FVFdPUktfQUREUkVTU19GQU1JTFlfVjQQARoIgrIZBGlwdjQSJwoZTkVUV09SS19BRERSRVNTX0ZBTUlMWV9WNhACGgiCshkEaXB2NhI1CiFORVRXT1JLX0FERFJFU1NfRkFNSUxZX0RVQUxfU1RBQ0sQAxoOgrIZCmR1YWwtc3RhY2sy7QUKDk5ldHdvcmtTZXJ2aWNlEm0KA0dldBIrLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBosLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkNyZWF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGVXBkYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJwCgRMaXN0EiwubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBotLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlIgvK8xgDAQID4PMYAhKUAQoQTGlzdEJhc2VOZXR3b3JrcxI4Lm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1JlcXVlc3QaOS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXNwb25zZSILyvMYAwECA+DzGAISdQoGRGVsZXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZSIKyvMYAgEC4PMYAULCAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQgxOZXR3b3JrUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); + fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9uZXR3b3JrLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJRChhOZXR3b3JrU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhwKB3Byb2plY3QYAiABKAlCC7pICNgBAXIDsAEBIkgKGU5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsi3AMKG05ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBIZCgdwcm9qZWN0GAEgASgJQgi6SAVyA7ABARIeCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgEIAEoCUILukgIcgbQs66xAgFIAogBARIpCgZsYWJlbHMYBSABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHMSKAoOcGFyZW50X25ldHdvcmsYBiABKAlCC7pICHIGwLOusQIBSAOIAQESOQoGbGVuZ3RoGAcgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARJOCg5hZGRyZXNzX2ZhbWlseRgIIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgFiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIq4CChtOZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEjoKC3VwZGF0ZV9tZXRhGAIgASgLMh0ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTWV0YUIGukgDyAEBEhkKB3Byb2plY3QYAyABKAlCCLpIBXIDsAEBEh4KBG5hbWUYBCABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBSABKAlCC7pICHIGyLOusQIBSAGIAQESNAoGbGFiZWxzGAYgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAKIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19sYWJlbHMiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJpChlOZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJ1CiVOZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0EhwKB3Byb2plY3QYASABKAlCC7pICNgBAXIDsAEBEi4KBXF1ZXJ5GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1F1ZXJ5IlYKJk5ldHdvcmtTZXJ2aWNlTGlzdEJhc2VOZXR3b3Jrc1Jlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJRChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBIksKHE5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsizQYKB05ldHdvcmsSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAUgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KB3Byb2plY3QYBiABKAlCCLpIBXIDsAEBSAOIAQESIAoJbmFtZXNwYWNlGAcgASgJQgi6SAVyA7ABAUgEiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjYKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAESNgoIbmF0X3R5cGUYDSABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5OQVRUeXBlQgi6SAWCAQIQARIQCgN2cmYYDiABKA1IBYgBARIoCg5wYXJlbnRfbmV0d29yaxgPIAEoCUILukgIcgbAs66xAgFIBogBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGBAgAygJQgy6SAmSAQa4pLOxAgESOgoLY29uc3VtcHRpb24YESABKAsyJS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrQ29uc3VtcHRpb25CBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgwKCl9wYXJ0aXRpb25CCgoIX3Byb2plY3RCDAoKX25hbWVzcGFjZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29yayLzBQoMTmV0d29ya1F1ZXJ5EhwKAmlkGAEgASgJQgu6SAhyBsCzrrECAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAKIAQESIwoJcGFydGl0aW9uGAQgASgJQgu6SAhyBtCzrrECAUgDiAEBEh4KB3Byb2plY3QYBSABKAlCCLpIBXIDsAEBSASIAQESIAoJbmFtZXNwYWNlGAYgASgJQgi6SAVyA7ABAUgFiAEBEh4KCHByZWZpeGVzGAcgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCCADKAlCDLpICZIBBriks7ECARIQCgN2cmYYCSABKA1IBogBARIoCg5wYXJlbnRfbmV0d29yaxgKIAEoCUILukgIcgbAs66xAgFIB4gBARJOCg5hZGRyZXNzX2ZhbWlseRgLIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgIiAEBEjsKBHR5cGUYDCABKA4yHi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVHlwZUIIukgFggECEAFICYgBARI7CghuYXRfdHlwZRgNIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAqIAQESLgoGbGFiZWxzGA4gASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAuIAQFCBQoDX2lkQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfcGFydGl0aW9uQgoKCF9wcm9qZWN0QgwKCl9uYW1lc3BhY2VCBgoEX3ZyZkIRCg9fcGFyZW50X25ldHdvcmtCEQoPX2FkZHJlc3NfZmFtaWx5QgcKBV90eXBlQgsKCV9uYXRfdHlwZUIJCgdfbGFiZWxzIqcBChpFeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeRIiCgZzd2l0Y2gYASABKAlCDbpICnIIwLOusQIBaAFIAIgBARIeCgRyYWNrGAIgASgJQgu6SAhyBsCzrrECAUgBiAEBEiMKCXBhcnRpdGlvbhgDIAEoCUILukgIcgbQs66xAgFIAogBAUIJCgdfc3dpdGNoQgcKBV9yYWNrQgwKCl9wYXJ0aXRpb24iYgoRQ2hpbGRQcmVmaXhMZW5ndGgSHAoEaXB2NBgBIAEoDUIJukgGKgQYICAASACIAQESHQoEaXB2NhgCIAEoDUIKukgHKgUYgAEgAEgBiAEBQgcKBV9pcHY0QgcKBV9pcHY2InIKEk5ldHdvcmtDb25zdW1wdGlvbhItCgRpcHY0GAEgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1VzYWdlEi0KBGlwdjYYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrVXNhZ2UiagoMTmV0d29ya1VzYWdlEhUKDWF2YWlsYWJsZV9pcHMYASABKAQSEAoIdXNlZF9pcHMYAiABKAQSGgoSYXZhaWxhYmxlX3ByZWZpeGVzGAMgASgEEhUKDXVzZWRfcHJlZml4ZXMYBCABKAQiVAoVRXh0ZXJuYWxOZXR3b3JrTWVtYmVyEhsKBnN3aXRjaBgBIAEoCUILukgIcgbAs66xAgESHgoFcG9ydHMYAiADKAlCD7pIDJIBCdCks7ECARCAECptCgdOQVRUeXBlEhgKFE5BVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNTkFUX1RZUEVfTk9ORRABGgiCshkEbm9uZRIrChhOQVRfVFlQRV9JUFY0X01BU1FVRVJBREUQAhoNgrIZCWlwdjQtbWFzcSqtAgoLTmV0d29ya1R5cGUSHAoYTkVUV09SS19UWVBFX1VOU1BFQ0lGSUVEEAASJwoVTkVUV09SS19UWVBFX0VYVEVSTkFMEAEaDIKyGQhleHRlcm5hbBInChVORVRXT1JLX1RZUEVfVU5ERVJMQVkQAhoMgrIZCHVuZGVybGF5EiEKEk5FVFdPUktfVFlQRV9TVVBFUhADGgmCshkFc3VwZXISNwodTkVUV09SS19UWVBFX1NVUEVSX05BTUVTUEFDRUQQBBoUgrIZEHN1cGVyLW5hbWVzcGFjZWQSIQoSTkVUV09SS19UWVBFX0NISUxEEAUaCYKyGQVjaGlsZBIvChlORVRXT1JLX1RZUEVfQ0hJTERfU0hBUkVEEAYaEIKyGQxjaGlsZC1zaGFyZWQqxwEKFE5ldHdvcmtBZGRyZXNzRmFtaWx5EiYKIk5FVFdPUktfQUREUkVTU19GQU1JTFlfVU5TUEVDSUZJRUQQABInChlORVRXT1JLX0FERFJFU1NfRkFNSUxZX1Y0EAEaCIKyGQRpcHY0EicKGU5FVFdPUktfQUREUkVTU19GQU1JTFlfVjYQAhoIgrIZBGlwdjYSNQohTkVUV09SS19BRERSRVNTX0ZBTUlMWV9EVUFMX1NUQUNLEAMaDoKyGQpkdWFsLXN0YWNrMu0FCg5OZXR3b3JrU2VydmljZRJtCgNHZXQSKy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLC5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUdldFJlc3BvbnNlIgvK8xgDAQID4PMYAhJ1CgZDcmVhdGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEnUKBlVwZGF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAEScAoETGlzdBIsLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QaLS5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSILyvMYAwECA+DzGAISlAEKEExpc3RCYXNlTmV0d29ya3MSOC5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrU2VydmljZUxpc3RCYXNlTmV0d29ya3NSZXF1ZXN0GjkubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1NlcnZpY2VMaXN0QmFzZU5ldHdvcmtzUmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkRlbGV0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCsrzGAIBAuDzGAFCwgEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIMTmV0d29ya1Byb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * NetworkServiceGetRequest. @@ -645,6 +645,13 @@ export type ExternalNetworkMemberQuery = Message<"metalstack.api.v2.ExternalNetw * @generated from field: optional string rack = 2; */ rack?: string | undefined; + + /** + * Partition where the members of the network reside.. + * + * @generated from field: optional string partition = 3; + */ + partition?: string | undefined; }; /** diff --git a/proto/metalstack/api/v2/network.proto b/proto/metalstack/api/v2/network.proto index 67f6bc71..05a86e29 100644 --- a/proto/metalstack/api/v2/network.proto +++ b/proto/metalstack/api/v2/network.proto @@ -242,6 +242,8 @@ message ExternalNetworkMemberQuery { }]; // Rack for which the members of the network are queried. optional string rack = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; + // Partition where the members of the network reside.. + optional string partition = 3 [(buf.validate.field).string.(metalstack.api.v2.is_partition) = true]; } // ChildPrefixLength. diff --git a/python/metalstack/api/v2/network_pb2.py b/python/metalstack/api/v2/network_pb2.py index 43e626e1..c601e049 100644 --- a/python/metalstack/api/v2/network_pb2.py +++ b/python/metalstack/api/v2/network_pb2.py @@ -27,7 +27,7 @@ from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/api/v2/network.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"^\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12%\n\x07project\x18\x02 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xb1\x04\n\x1bNetworkServiceCreateRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12\x31\n\x06labels\x18\x05 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsR\x06labels\x12\x37\n\x0eparent_network\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\rparentNetwork\x88\x01\x01\x12\x41\n\x06length\x18\x07 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x08 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\raddressFamily\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xe2\x02\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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\"\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\x06labels\x18\x06 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labels\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"y\n\x19NetworkServiceListRequest\x12%\n\x07project\x18\x01 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"\x85\x01\n%NetworkServiceListBaseNetworksRequest\x12%\n\x07project\x18\x01 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"`\n&NetworkServiceListBaseNetworksResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"^\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa4\x08\n\x07Network\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\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.\n\tpartition\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x03R\x07project\x88\x01\x01\x12+\n\tnamespace\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\tnamespace\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12<\n\x04type\x18\x0c \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12?\n\x08nat_type\x18\r \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07natType\x12\x15\n\x03vrf\x18\x0e \x01(\rH\x05R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0f \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x06R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x10 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12G\n\x0b\x63onsumption\x18\x11 \x01(\x0b\x32%.metalstack.api.v2.NetworkConsumptionR\x0b\x63onsumptionB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\x0c\n\n_namespaceB\x06\n\x04_vrfB\x11\n\x0f_parent_network\"\x82\x07\n\x0cNetworkQuery\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12+\n\tnamespace\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x05R\tnamespace\x88\x01\x01\x12(\n\x08prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x15\n\x03vrf\x18\t \x01(\rH\x06R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\n \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x07R\rparentNetwork\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x0b \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x08R\raddressFamily\x88\x01\x01\x12\x41\n\x04type\x18\x0c \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\tR\x04type\x88\x01\x01\x12\x44\n\x08nat_type\x18\r \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\x07natType\x88\x01\x01\x12\x36\n\x06labels\x18\x0e \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x0bR\x06labels\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\x0c\n\n_namespaceB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\x11\n\x0f_address_familyB\x07\n\x05_typeB\x0b\n\t_nat_typeB\t\n\x07_labels\"\x82\x01\n\x1a\x45xternalNetworkMemberQuery\x12*\n\x06switch\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01H\x00R\x06switch\x88\x01\x01\x12$\n\x04rack\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04rack\x88\x01\x01\x42\t\n\x07_switchB\x07\n\x05_rack\"n\n\x11\x43hildPrefixLength\x12\"\n\x04ipv4\x18\x01 \x01(\rB\t\xbaH\x06*\x04\x18 \x00H\x00R\x04ipv4\x88\x01\x01\x12#\n\x04ipv6\x18\x02 \x01(\rB\n\xbaH\x07*\x05\x18\x80\x01 \x00H\x01R\x04ipv6\x88\x01\x01\x42\x07\n\x05_ipv4B\x07\n\x05_ipv6\"~\n\x12NetworkConsumption\x12\x33\n\x04ipv4\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkUsageR\x04ipv4\x12\x33\n\x04ipv6\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkUsageR\x04ipv6\"\xa2\x01\n\x0cNetworkUsage\x12#\n\ravailable_ips\x18\x01 \x01(\x04R\x0c\x61vailableIps\x12\x19\n\x08used_ips\x18\x02 \x01(\x04R\x07usedIps\x12-\n\x12\x61vailable_prefixes\x18\x03 \x01(\x04R\x11\x61vailablePrefixes\x12#\n\rused_prefixes\x18\x04 \x01(\x04R\x0cusedPrefixes\"c\n\x15\x45xternalNetworkMember\x12#\n\x06switch\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x06switch\x12%\n\x05ports\x18\x02 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x80\x10\xd0\xa4\xb3\xb1\x02\x01R\x05ports*m\n\x07NATType\x12\x18\n\x14NAT_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\rNAT_TYPE_NONE\x10\x01\x1a\x08\x82\xb2\x19\x04none\x12+\n\x18NAT_TYPE_IPV4_MASQUERADE\x10\x02\x1a\r\x82\xb2\x19\tipv4-masq*\xad\x02\n\x0bNetworkType\x12\x1c\n\x18NETWORK_TYPE_UNSPECIFIED\x10\x00\x12\'\n\x15NETWORK_TYPE_EXTERNAL\x10\x01\x1a\x0c\x82\xb2\x19\x08\x65xternal\x12\'\n\x15NETWORK_TYPE_UNDERLAY\x10\x02\x1a\x0c\x82\xb2\x19\x08underlay\x12!\n\x12NETWORK_TYPE_SUPER\x10\x03\x1a\t\x82\xb2\x19\x05super\x12\x37\n\x1dNETWORK_TYPE_SUPER_NAMESPACED\x10\x04\x1a\x14\x82\xb2\x19\x10super-namespaced\x12!\n\x12NETWORK_TYPE_CHILD\x10\x05\x1a\t\x82\xb2\x19\x05\x63hild\x12/\n\x19NETWORK_TYPE_CHILD_SHARED\x10\x06\x1a\x10\x82\xb2\x19\x0c\x63hild-shared*\xc7\x01\n\x14NetworkAddressFamily\x12&\n\"NETWORK_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\'\n\x19NETWORK_ADDRESS_FAMILY_V4\x10\x01\x1a\x08\x82\xb2\x19\x04ipv4\x12\'\n\x19NETWORK_ADDRESS_FAMILY_V6\x10\x02\x1a\x08\x82\xb2\x19\x04ipv6\x12\x35\n!NETWORK_ADDRESS_FAMILY_DUAL_STACK\x10\x03\x1a\x0e\x82\xb2\x19\ndual-stack2\xed\x05\n\x0eNetworkService\x12m\n\x03Get\x12+.metalstack.api.v2.NetworkServiceGetRequest\x1a,.metalstack.api.v2.NetworkServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x43reate\x12..metalstack.api.v2.NetworkServiceCreateRequest\x1a/.metalstack.api.v2.NetworkServiceCreateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06Update\x12..metalstack.api.v2.NetworkServiceUpdateRequest\x1a/.metalstack.api.v2.NetworkServiceUpdateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12p\n\x04List\x12,.metalstack.api.v2.NetworkServiceListRequest\x1a-.metalstack.api.v2.NetworkServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12\x94\x01\n\x10ListBaseNetworks\x12\x38.metalstack.api.v2.NetworkServiceListBaseNetworksRequest\x1a\x39.metalstack.api.v2.NetworkServiceListBaseNetworksResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x44\x65lete\x12..metalstack.api.v2.NetworkServiceDeleteRequest\x1a/.metalstack.api.v2.NetworkServiceDeleteResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x42\xc2\x01\n\x15\x63om.metalstack.api.v2B\x0cNetworkProtoP\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') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/api/v2/network.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"^\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12%\n\x07project\x18\x02 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xb1\x04\n\x1bNetworkServiceCreateRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12\x31\n\x06labels\x18\x05 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsR\x06labels\x12\x37\n\x0eparent_network\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\rparentNetwork\x88\x01\x01\x12\x41\n\x06length\x18\x07 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x08 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\raddressFamily\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xe2\x02\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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\"\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\x06labels\x18\x06 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labels\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"y\n\x19NetworkServiceListRequest\x12%\n\x07project\x18\x01 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"\x85\x01\n%NetworkServiceListBaseNetworksRequest\x12%\n\x07project\x18\x01 \x01(\tB\x0b\xbaH\x08r\x03\xb0\x01\x01\xd8\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"`\n&NetworkServiceListBaseNetworksResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"^\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa4\x08\n\x07Network\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\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.\n\tpartition\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x03R\x07project\x88\x01\x01\x12+\n\tnamespace\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\tnamespace\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12<\n\x04type\x18\x0c \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12?\n\x08nat_type\x18\r \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07natType\x12\x15\n\x03vrf\x18\x0e \x01(\rH\x05R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0f \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x06R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x10 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12G\n\x0b\x63onsumption\x18\x11 \x01(\x0b\x32%.metalstack.api.v2.NetworkConsumptionR\x0b\x63onsumptionB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\x0c\n\n_namespaceB\x06\n\x04_vrfB\x11\n\x0f_parent_network\"\x82\x07\n\x0cNetworkQuery\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12+\n\tnamespace\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x05R\tnamespace\x88\x01\x01\x12(\n\x08prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x15\n\x03vrf\x18\t \x01(\rH\x06R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\n \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x07R\rparentNetwork\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x0b \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x08R\raddressFamily\x88\x01\x01\x12\x41\n\x04type\x18\x0c \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\tR\x04type\x88\x01\x01\x12\x44\n\x08nat_type\x18\r \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\x07natType\x88\x01\x01\x12\x36\n\x06labels\x18\x0e \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x0bR\x06labels\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\x0c\n\n_namespaceB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\x11\n\x0f_address_familyB\x07\n\x05_typeB\x0b\n\t_nat_typeB\t\n\x07_labels\"\xc0\x01\n\x1a\x45xternalNetworkMemberQuery\x12*\n\x06switch\x18\x01 \x01(\tB\r\xbaH\nr\x08h\x01\xc0\xb3\xae\xb1\x02\x01H\x00R\x06switch\x88\x01\x01\x12$\n\x04rack\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04rack\x88\x01\x01\x12.\n\tpartition\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x42\t\n\x07_switchB\x07\n\x05_rackB\x0c\n\n_partition\"n\n\x11\x43hildPrefixLength\x12\"\n\x04ipv4\x18\x01 \x01(\rB\t\xbaH\x06*\x04\x18 \x00H\x00R\x04ipv4\x88\x01\x01\x12#\n\x04ipv6\x18\x02 \x01(\rB\n\xbaH\x07*\x05\x18\x80\x01 \x00H\x01R\x04ipv6\x88\x01\x01\x42\x07\n\x05_ipv4B\x07\n\x05_ipv6\"~\n\x12NetworkConsumption\x12\x33\n\x04ipv4\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkUsageR\x04ipv4\x12\x33\n\x04ipv6\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkUsageR\x04ipv6\"\xa2\x01\n\x0cNetworkUsage\x12#\n\ravailable_ips\x18\x01 \x01(\x04R\x0c\x61vailableIps\x12\x19\n\x08used_ips\x18\x02 \x01(\x04R\x07usedIps\x12-\n\x12\x61vailable_prefixes\x18\x03 \x01(\x04R\x11\x61vailablePrefixes\x12#\n\rused_prefixes\x18\x04 \x01(\x04R\x0cusedPrefixes\"c\n\x15\x45xternalNetworkMember\x12#\n\x06switch\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x06switch\x12%\n\x05ports\x18\x02 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x80\x10\xd0\xa4\xb3\xb1\x02\x01R\x05ports*m\n\x07NATType\x12\x18\n\x14NAT_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\rNAT_TYPE_NONE\x10\x01\x1a\x08\x82\xb2\x19\x04none\x12+\n\x18NAT_TYPE_IPV4_MASQUERADE\x10\x02\x1a\r\x82\xb2\x19\tipv4-masq*\xad\x02\n\x0bNetworkType\x12\x1c\n\x18NETWORK_TYPE_UNSPECIFIED\x10\x00\x12\'\n\x15NETWORK_TYPE_EXTERNAL\x10\x01\x1a\x0c\x82\xb2\x19\x08\x65xternal\x12\'\n\x15NETWORK_TYPE_UNDERLAY\x10\x02\x1a\x0c\x82\xb2\x19\x08underlay\x12!\n\x12NETWORK_TYPE_SUPER\x10\x03\x1a\t\x82\xb2\x19\x05super\x12\x37\n\x1dNETWORK_TYPE_SUPER_NAMESPACED\x10\x04\x1a\x14\x82\xb2\x19\x10super-namespaced\x12!\n\x12NETWORK_TYPE_CHILD\x10\x05\x1a\t\x82\xb2\x19\x05\x63hild\x12/\n\x19NETWORK_TYPE_CHILD_SHARED\x10\x06\x1a\x10\x82\xb2\x19\x0c\x63hild-shared*\xc7\x01\n\x14NetworkAddressFamily\x12&\n\"NETWORK_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\'\n\x19NETWORK_ADDRESS_FAMILY_V4\x10\x01\x1a\x08\x82\xb2\x19\x04ipv4\x12\'\n\x19NETWORK_ADDRESS_FAMILY_V6\x10\x02\x1a\x08\x82\xb2\x19\x04ipv6\x12\x35\n!NETWORK_ADDRESS_FAMILY_DUAL_STACK\x10\x03\x1a\x0e\x82\xb2\x19\ndual-stack2\xed\x05\n\x0eNetworkService\x12m\n\x03Get\x12+.metalstack.api.v2.NetworkServiceGetRequest\x1a,.metalstack.api.v2.NetworkServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x43reate\x12..metalstack.api.v2.NetworkServiceCreateRequest\x1a/.metalstack.api.v2.NetworkServiceCreateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06Update\x12..metalstack.api.v2.NetworkServiceUpdateRequest\x1a/.metalstack.api.v2.NetworkServiceUpdateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12p\n\x04List\x12,.metalstack.api.v2.NetworkServiceListRequest\x1a-.metalstack.api.v2.NetworkServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12\x94\x01\n\x10ListBaseNetworks\x12\x38.metalstack.api.v2.NetworkServiceListBaseNetworksRequest\x1a\x39.metalstack.api.v2.NetworkServiceListBaseNetworksResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x44\x65lete\x12..metalstack.api.v2.NetworkServiceDeleteRequest\x1a/.metalstack.api.v2.NetworkServiceDeleteResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x42\xc2\x01\n\x15\x63om.metalstack.api.v2B\x0cNetworkProtoP\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -143,6 +143,8 @@ _globals['_EXTERNALNETWORKMEMBERQUERY'].fields_by_name['switch']._serialized_options = b'\272H\nr\010h\001\300\263\256\261\002\001' _globals['_EXTERNALNETWORKMEMBERQUERY'].fields_by_name['rack']._loaded_options = None _globals['_EXTERNALNETWORKMEMBERQUERY'].fields_by_name['rack']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_EXTERNALNETWORKMEMBERQUERY'].fields_by_name['partition']._loaded_options = None + _globals['_EXTERNALNETWORKMEMBERQUERY'].fields_by_name['partition']._serialized_options = b'\272H\010r\006\320\263\256\261\002\001' _globals['_CHILDPREFIXLENGTH'].fields_by_name['ipv4']._loaded_options = None _globals['_CHILDPREFIXLENGTH'].fields_by_name['ipv4']._serialized_options = b'\272H\006*\004\030 \000' _globals['_CHILDPREFIXLENGTH'].fields_by_name['ipv6']._loaded_options = None @@ -163,12 +165,12 @@ _globals['_NETWORKSERVICE'].methods_by_name['ListBaseNetworks']._serialized_options = b'\312\363\030\003\001\002\003\340\363\030\002' _globals['_NETWORKSERVICE'].methods_by_name['Delete']._loaded_options = None _globals['_NETWORKSERVICE'].methods_by_name['Delete']._serialized_options = b'\312\363\030\002\001\002\340\363\030\001' - _globals['_NATTYPE']._serialized_start=4657 - _globals['_NATTYPE']._serialized_end=4766 - _globals['_NETWORKTYPE']._serialized_start=4769 - _globals['_NETWORKTYPE']._serialized_end=5070 - _globals['_NETWORKADDRESSFAMILY']._serialized_start=5073 - _globals['_NETWORKADDRESSFAMILY']._serialized_end=5272 + _globals['_NATTYPE']._serialized_start=4719 + _globals['_NATTYPE']._serialized_end=4828 + _globals['_NETWORKTYPE']._serialized_start=4831 + _globals['_NETWORKTYPE']._serialized_end=5132 + _globals['_NETWORKADDRESSFAMILY']._serialized_start=5135 + _globals['_NETWORKADDRESSFAMILY']._serialized_end=5334 _globals['_NETWORKSERVICEGETREQUEST']._serialized_start=157 _globals['_NETWORKSERVICEGETREQUEST']._serialized_end=251 _globals['_NETWORKSERVICEGETRESPONSE']._serialized_start=253 @@ -198,15 +200,15 @@ _globals['_NETWORKQUERY']._serialized_start=3118 _globals['_NETWORKQUERY']._serialized_end=4016 _globals['_EXTERNALNETWORKMEMBERQUERY']._serialized_start=4019 - _globals['_EXTERNALNETWORKMEMBERQUERY']._serialized_end=4149 - _globals['_CHILDPREFIXLENGTH']._serialized_start=4151 - _globals['_CHILDPREFIXLENGTH']._serialized_end=4261 - _globals['_NETWORKCONSUMPTION']._serialized_start=4263 - _globals['_NETWORKCONSUMPTION']._serialized_end=4389 - _globals['_NETWORKUSAGE']._serialized_start=4392 - _globals['_NETWORKUSAGE']._serialized_end=4554 - _globals['_EXTERNALNETWORKMEMBER']._serialized_start=4556 - _globals['_EXTERNALNETWORKMEMBER']._serialized_end=4655 - _globals['_NETWORKSERVICE']._serialized_start=5275 - _globals['_NETWORKSERVICE']._serialized_end=6024 + _globals['_EXTERNALNETWORKMEMBERQUERY']._serialized_end=4211 + _globals['_CHILDPREFIXLENGTH']._serialized_start=4213 + _globals['_CHILDPREFIXLENGTH']._serialized_end=4323 + _globals['_NETWORKCONSUMPTION']._serialized_start=4325 + _globals['_NETWORKCONSUMPTION']._serialized_end=4451 + _globals['_NETWORKUSAGE']._serialized_start=4454 + _globals['_NETWORKUSAGE']._serialized_end=4616 + _globals['_EXTERNALNETWORKMEMBER']._serialized_start=4618 + _globals['_EXTERNALNETWORKMEMBER']._serialized_end=4717 + _globals['_NETWORKSERVICE']._serialized_start=5337 + _globals['_NETWORKSERVICE']._serialized_end=6086 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/network_pb2.pyi b/python/metalstack/api/v2/network_pb2.pyi index a5eef080..bd760212 100644 --- a/python/metalstack/api/v2/network_pb2.pyi +++ b/python/metalstack/api/v2/network_pb2.pyi @@ -222,12 +222,14 @@ class NetworkQuery(_message.Message): def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., partition: _Optional[str] = ..., project: _Optional[str] = ..., namespace: _Optional[str] = ..., prefixes: _Optional[_Iterable[str]] = ..., destination_prefixes: _Optional[_Iterable[str]] = ..., vrf: _Optional[int] = ..., parent_network: _Optional[str] = ..., address_family: _Optional[_Union[NetworkAddressFamily, str]] = ..., type: _Optional[_Union[NetworkType, str]] = ..., nat_type: _Optional[_Union[NATType, str]] = ..., labels: _Optional[_Union[_common_pb2.Labels, _Mapping]] = ...) -> None: ... class ExternalNetworkMemberQuery(_message.Message): - __slots__ = ("switch", "rack") + __slots__ = ("switch", "rack", "partition") SWITCH_FIELD_NUMBER: _ClassVar[int] RACK_FIELD_NUMBER: _ClassVar[int] + PARTITION_FIELD_NUMBER: _ClassVar[int] switch: str rack: str - def __init__(self, switch: _Optional[str] = ..., rack: _Optional[str] = ...) -> None: ... + partition: str + def __init__(self, switch: _Optional[str] = ..., rack: _Optional[str] = ..., partition: _Optional[str] = ...) -> None: ... class ChildPrefixLength(_message.Message): __slots__ = ("ipv4", "ipv6") From 84141ef242c1c321b6b2b7e2c2245d6590afded9 Mon Sep 17 00:00:00 2001 From: Ilja Rotar Date: Mon, 31 Aug 2026 15:17:54 +0200 Subject: [PATCH 2/5] rename add and remove external members endpoints --- doc/index.html | 28 +- .../v2/adminv2connect/network.connect.go | 92 +-- go/metalstack/admin/v2/network.pb.go | 172 +++--- go/permissions/servicepermissions.go | 582 +++++++++--------- js/metalstack/admin/v2/network_pb.d.ts | 56 +- js/metalstack/admin/v2/network_pb.js | 26 +- js/metalstack/admin/v2/network_pb.ts | 58 +- proto/metalstack/admin/v2/network.proto | 12 +- python/metalstack/admin/v2/network_connect.py | 96 +-- python/metalstack/admin/v2/network_pb2.py | 66 +- python/metalstack/admin/v2/network_pb2.pyi | 8 +- 11 files changed, 598 insertions(+), 598 deletions(-) diff --git a/doc/index.html b/doc/index.html index 3a592e11..61eb9ad6 100644 --- a/doc/index.html +++ b/doc/index.html @@ -1659,11 +1659,11 @@

Table of Contents

  • - MNetworkServiceAddExternalMemberRequest + MNetworkServiceAddExternalMembersRequest
  • - MNetworkServiceAddExternalMemberResponse + MNetworkServiceAddExternalMembersResponse
  • @@ -1707,11 +1707,11 @@

    Table of Contents

  • - MNetworkServiceRemoveExternalMemberRequest + MNetworkServiceRemoveExternalMembersRequest
  • - MNetworkServiceRemoveExternalMemberResponse + MNetworkServiceRemoveExternalMembersResponse
  • @@ -14565,7 +14565,7 @@

    metalstack/admin/v2/network.proto

    -

    NetworkServiceAddExternalMemberRequest

    +

    NetworkServiceAddExternalMembersRequest

    NetworkServiceAddExternalMemberRequest is the request payload for adding an external member to a network.

    @@ -14597,7 +14597,7 @@

    NetworkServi -

    NetworkServiceAddExternalMemberResponse

    +

    NetworkServiceAddExternalMembersResponse

    NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network.

    @@ -14980,7 +14980,7 @@

    NetworkServiceListRespon -

    NetworkServiceRemoveExternalMemberRequest

    +

    NetworkServiceRemoveExternalMembersRequest

    NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network.

    @@ -15011,7 +15011,7 @@

    NetworkSe -

    NetworkServiceRemoveExternalMemberResponse

    +

    NetworkServiceRemoveExternalMembersResponse

    NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network.

    @@ -15217,16 +15217,16 @@

    NetworkService

    - AddExternalMember - NetworkServiceAddExternalMemberRequest - NetworkServiceAddExternalMemberResponse + AddExternalMembers + NetworkServiceAddExternalMembersRequest + NetworkServiceAddExternalMembersResponse

    Adds an external member to a network.

    - RemoveExternalMember - NetworkServiceRemoveExternalMemberRequest - NetworkServiceRemoveExternalMemberResponse + RemoveExternalMembers + NetworkServiceRemoveExternalMembersRequest + NetworkServiceRemoveExternalMembersResponse

    Removes an external member from a network.

    diff --git a/go/metalstack/admin/v2/adminv2connect/network.connect.go b/go/metalstack/admin/v2/adminv2connect/network.connect.go index 7a45c08a..da813153 100644 --- a/go/metalstack/admin/v2/adminv2connect/network.connect.go +++ b/go/metalstack/admin/v2/adminv2connect/network.connect.go @@ -46,12 +46,12 @@ const ( // NetworkServiceListExternalMembersProcedure is the fully-qualified name of the NetworkService's // ListExternalMembers RPC. NetworkServiceListExternalMembersProcedure = "/metalstack.admin.v2.NetworkService/ListExternalMembers" - // NetworkServiceAddExternalMemberProcedure is the fully-qualified name of the NetworkService's - // AddExternalMember RPC. - NetworkServiceAddExternalMemberProcedure = "/metalstack.admin.v2.NetworkService/AddExternalMember" - // NetworkServiceRemoveExternalMemberProcedure is the fully-qualified name of the NetworkService's - // RemoveExternalMember RPC. - NetworkServiceRemoveExternalMemberProcedure = "/metalstack.admin.v2.NetworkService/RemoveExternalMember" + // NetworkServiceAddExternalMembersProcedure is the fully-qualified name of the NetworkService's + // AddExternalMembers RPC. + NetworkServiceAddExternalMembersProcedure = "/metalstack.admin.v2.NetworkService/AddExternalMembers" + // NetworkServiceRemoveExternalMembersProcedure is the fully-qualified name of the NetworkService's + // RemoveExternalMembers RPC. + NetworkServiceRemoveExternalMembersProcedure = "/metalstack.admin.v2.NetworkService/RemoveExternalMembers" ) // NetworkServiceClient is a client for the metalstack.admin.v2.NetworkService service. @@ -69,9 +69,9 @@ type NetworkServiceClient interface { // Lists external members of a network. ListExternalMembers(context.Context, *v2.NetworkServiceListExternalMembersRequest) (*v2.NetworkServiceListExternalMembersResponse, error) // Adds an external member to a network. - AddExternalMember(context.Context, *v2.NetworkServiceAddExternalMemberRequest) (*v2.NetworkServiceAddExternalMemberResponse, error) + AddExternalMembers(context.Context, *v2.NetworkServiceAddExternalMembersRequest) (*v2.NetworkServiceAddExternalMembersResponse, error) // Removes an external member from a network. - RemoveExternalMember(context.Context, *v2.NetworkServiceRemoveExternalMemberRequest) (*v2.NetworkServiceRemoveExternalMemberResponse, error) + RemoveExternalMembers(context.Context, *v2.NetworkServiceRemoveExternalMembersRequest) (*v2.NetworkServiceRemoveExternalMembersResponse, error) } // NewNetworkServiceClient constructs a client for the metalstack.admin.v2.NetworkService service. @@ -121,16 +121,16 @@ func NewNetworkServiceClient(httpClient connect.HTTPClient, baseURL string, opts connect.WithSchema(networkServiceMethods.ByName("ListExternalMembers")), connect.WithClientOptions(opts...), ), - addExternalMember: connect.NewClient[v2.NetworkServiceAddExternalMemberRequest, v2.NetworkServiceAddExternalMemberResponse]( + addExternalMembers: connect.NewClient[v2.NetworkServiceAddExternalMembersRequest, v2.NetworkServiceAddExternalMembersResponse]( httpClient, - baseURL+NetworkServiceAddExternalMemberProcedure, - connect.WithSchema(networkServiceMethods.ByName("AddExternalMember")), + baseURL+NetworkServiceAddExternalMembersProcedure, + connect.WithSchema(networkServiceMethods.ByName("AddExternalMembers")), connect.WithClientOptions(opts...), ), - removeExternalMember: connect.NewClient[v2.NetworkServiceRemoveExternalMemberRequest, v2.NetworkServiceRemoveExternalMemberResponse]( + removeExternalMembers: connect.NewClient[v2.NetworkServiceRemoveExternalMembersRequest, v2.NetworkServiceRemoveExternalMembersResponse]( httpClient, - baseURL+NetworkServiceRemoveExternalMemberProcedure, - connect.WithSchema(networkServiceMethods.ByName("RemoveExternalMember")), + baseURL+NetworkServiceRemoveExternalMembersProcedure, + connect.WithSchema(networkServiceMethods.ByName("RemoveExternalMembers")), connect.WithClientOptions(opts...), ), } @@ -138,14 +138,14 @@ func NewNetworkServiceClient(httpClient connect.HTTPClient, baseURL string, opts // networkServiceClient implements NetworkServiceClient. type networkServiceClient struct { - get *connect.Client[v2.NetworkServiceGetRequest, v2.NetworkServiceGetResponse] - create *connect.Client[v2.NetworkServiceCreateRequest, v2.NetworkServiceCreateResponse] - update *connect.Client[v2.NetworkServiceUpdateRequest, v2.NetworkServiceUpdateResponse] - delete *connect.Client[v2.NetworkServiceDeleteRequest, v2.NetworkServiceDeleteResponse] - list *connect.Client[v2.NetworkServiceListRequest, v2.NetworkServiceListResponse] - listExternalMembers *connect.Client[v2.NetworkServiceListExternalMembersRequest, v2.NetworkServiceListExternalMembersResponse] - addExternalMember *connect.Client[v2.NetworkServiceAddExternalMemberRequest, v2.NetworkServiceAddExternalMemberResponse] - removeExternalMember *connect.Client[v2.NetworkServiceRemoveExternalMemberRequest, v2.NetworkServiceRemoveExternalMemberResponse] + get *connect.Client[v2.NetworkServiceGetRequest, v2.NetworkServiceGetResponse] + create *connect.Client[v2.NetworkServiceCreateRequest, v2.NetworkServiceCreateResponse] + update *connect.Client[v2.NetworkServiceUpdateRequest, v2.NetworkServiceUpdateResponse] + delete *connect.Client[v2.NetworkServiceDeleteRequest, v2.NetworkServiceDeleteResponse] + list *connect.Client[v2.NetworkServiceListRequest, v2.NetworkServiceListResponse] + listExternalMembers *connect.Client[v2.NetworkServiceListExternalMembersRequest, v2.NetworkServiceListExternalMembersResponse] + addExternalMembers *connect.Client[v2.NetworkServiceAddExternalMembersRequest, v2.NetworkServiceAddExternalMembersResponse] + removeExternalMembers *connect.Client[v2.NetworkServiceRemoveExternalMembersRequest, v2.NetworkServiceRemoveExternalMembersResponse] } // Get calls metalstack.admin.v2.NetworkService.Get. @@ -202,18 +202,18 @@ func (c *networkServiceClient) ListExternalMembers(ctx context.Context, req *v2. return nil, err } -// AddExternalMember calls metalstack.admin.v2.NetworkService.AddExternalMember. -func (c *networkServiceClient) AddExternalMember(ctx context.Context, req *v2.NetworkServiceAddExternalMemberRequest) (*v2.NetworkServiceAddExternalMemberResponse, error) { - response, err := c.addExternalMember.CallUnary(ctx, connect.NewRequest(req)) +// AddExternalMembers calls metalstack.admin.v2.NetworkService.AddExternalMembers. +func (c *networkServiceClient) AddExternalMembers(ctx context.Context, req *v2.NetworkServiceAddExternalMembersRequest) (*v2.NetworkServiceAddExternalMembersResponse, error) { + response, err := c.addExternalMembers.CallUnary(ctx, connect.NewRequest(req)) if response != nil { return response.Msg, err } return nil, err } -// RemoveExternalMember calls metalstack.admin.v2.NetworkService.RemoveExternalMember. -func (c *networkServiceClient) RemoveExternalMember(ctx context.Context, req *v2.NetworkServiceRemoveExternalMemberRequest) (*v2.NetworkServiceRemoveExternalMemberResponse, error) { - response, err := c.removeExternalMember.CallUnary(ctx, connect.NewRequest(req)) +// RemoveExternalMembers calls metalstack.admin.v2.NetworkService.RemoveExternalMembers. +func (c *networkServiceClient) RemoveExternalMembers(ctx context.Context, req *v2.NetworkServiceRemoveExternalMembersRequest) (*v2.NetworkServiceRemoveExternalMembersResponse, error) { + response, err := c.removeExternalMembers.CallUnary(ctx, connect.NewRequest(req)) if response != nil { return response.Msg, err } @@ -235,9 +235,9 @@ type NetworkServiceHandler interface { // Lists external members of a network. ListExternalMembers(context.Context, *v2.NetworkServiceListExternalMembersRequest) (*v2.NetworkServiceListExternalMembersResponse, error) // Adds an external member to a network. - AddExternalMember(context.Context, *v2.NetworkServiceAddExternalMemberRequest) (*v2.NetworkServiceAddExternalMemberResponse, error) + AddExternalMembers(context.Context, *v2.NetworkServiceAddExternalMembersRequest) (*v2.NetworkServiceAddExternalMembersResponse, error) // Removes an external member from a network. - RemoveExternalMember(context.Context, *v2.NetworkServiceRemoveExternalMemberRequest) (*v2.NetworkServiceRemoveExternalMemberResponse, error) + RemoveExternalMembers(context.Context, *v2.NetworkServiceRemoveExternalMembersRequest) (*v2.NetworkServiceRemoveExternalMembersResponse, error) } // NewNetworkServiceHandler builds an HTTP handler from the service implementation. It returns the @@ -283,16 +283,16 @@ func NewNetworkServiceHandler(svc NetworkServiceHandler, opts ...connect.Handler connect.WithSchema(networkServiceMethods.ByName("ListExternalMembers")), connect.WithHandlerOptions(opts...), ) - networkServiceAddExternalMemberHandler := connect.NewUnaryHandlerSimple( - NetworkServiceAddExternalMemberProcedure, - svc.AddExternalMember, - connect.WithSchema(networkServiceMethods.ByName("AddExternalMember")), + networkServiceAddExternalMembersHandler := connect.NewUnaryHandlerSimple( + NetworkServiceAddExternalMembersProcedure, + svc.AddExternalMembers, + connect.WithSchema(networkServiceMethods.ByName("AddExternalMembers")), connect.WithHandlerOptions(opts...), ) - networkServiceRemoveExternalMemberHandler := connect.NewUnaryHandlerSimple( - NetworkServiceRemoveExternalMemberProcedure, - svc.RemoveExternalMember, - connect.WithSchema(networkServiceMethods.ByName("RemoveExternalMember")), + networkServiceRemoveExternalMembersHandler := connect.NewUnaryHandlerSimple( + NetworkServiceRemoveExternalMembersProcedure, + svc.RemoveExternalMembers, + connect.WithSchema(networkServiceMethods.ByName("RemoveExternalMembers")), connect.WithHandlerOptions(opts...), ) return "/metalstack.admin.v2.NetworkService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { @@ -309,10 +309,10 @@ func NewNetworkServiceHandler(svc NetworkServiceHandler, opts ...connect.Handler networkServiceListHandler.ServeHTTP(w, r) case NetworkServiceListExternalMembersProcedure: networkServiceListExternalMembersHandler.ServeHTTP(w, r) - case NetworkServiceAddExternalMemberProcedure: - networkServiceAddExternalMemberHandler.ServeHTTP(w, r) - case NetworkServiceRemoveExternalMemberProcedure: - networkServiceRemoveExternalMemberHandler.ServeHTTP(w, r) + case NetworkServiceAddExternalMembersProcedure: + networkServiceAddExternalMembersHandler.ServeHTTP(w, r) + case NetworkServiceRemoveExternalMembersProcedure: + networkServiceRemoveExternalMembersHandler.ServeHTTP(w, r) default: http.NotFound(w, r) } @@ -346,10 +346,10 @@ func (UnimplementedNetworkServiceHandler) ListExternalMembers(context.Context, * return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.NetworkService.ListExternalMembers is not implemented")) } -func (UnimplementedNetworkServiceHandler) AddExternalMember(context.Context, *v2.NetworkServiceAddExternalMemberRequest) (*v2.NetworkServiceAddExternalMemberResponse, error) { - return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.NetworkService.AddExternalMember is not implemented")) +func (UnimplementedNetworkServiceHandler) AddExternalMembers(context.Context, *v2.NetworkServiceAddExternalMembersRequest) (*v2.NetworkServiceAddExternalMembersResponse, error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.NetworkService.AddExternalMembers is not implemented")) } -func (UnimplementedNetworkServiceHandler) RemoveExternalMember(context.Context, *v2.NetworkServiceRemoveExternalMemberRequest) (*v2.NetworkServiceRemoveExternalMemberResponse, error) { - return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.NetworkService.RemoveExternalMember is not implemented")) +func (UnimplementedNetworkServiceHandler) RemoveExternalMembers(context.Context, *v2.NetworkServiceRemoveExternalMembersRequest) (*v2.NetworkServiceRemoveExternalMembersResponse, error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.NetworkService.RemoveExternalMembers is not implemented")) } diff --git a/go/metalstack/admin/v2/network.pb.go b/go/metalstack/admin/v2/network.pb.go index 2df52560..2e792fe6 100644 --- a/go/metalstack/admin/v2/network.pb.go +++ b/go/metalstack/admin/v2/network.pb.go @@ -598,7 +598,7 @@ func (x *NetworkServiceListExternalMembersRequest) GetQuery() *v2.ExternalNetwor } // NetworkServiceAddExternalMemberRequest is the request payload for adding an external member to a network. -type NetworkServiceAddExternalMemberRequest struct { +type NetworkServiceAddExternalMembersRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Network to add the member to. Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` @@ -609,20 +609,20 @@ type NetworkServiceAddExternalMemberRequest struct { sizeCache protoimpl.SizeCache } -func (x *NetworkServiceAddExternalMemberRequest) Reset() { - *x = NetworkServiceAddExternalMemberRequest{} +func (x *NetworkServiceAddExternalMembersRequest) Reset() { + *x = NetworkServiceAddExternalMembersRequest{} mi := &file_metalstack_admin_v2_network_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *NetworkServiceAddExternalMemberRequest) String() string { +func (x *NetworkServiceAddExternalMembersRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NetworkServiceAddExternalMemberRequest) ProtoMessage() {} +func (*NetworkServiceAddExternalMembersRequest) ProtoMessage() {} -func (x *NetworkServiceAddExternalMemberRequest) ProtoReflect() protoreflect.Message { +func (x *NetworkServiceAddExternalMembersRequest) ProtoReflect() protoreflect.Message { mi := &file_metalstack_admin_v2_network_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -634,19 +634,19 @@ func (x *NetworkServiceAddExternalMemberRequest) ProtoReflect() protoreflect.Mes return mi.MessageOf(x) } -// Deprecated: Use NetworkServiceAddExternalMemberRequest.ProtoReflect.Descriptor instead. -func (*NetworkServiceAddExternalMemberRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use NetworkServiceAddExternalMembersRequest.ProtoReflect.Descriptor instead. +func (*NetworkServiceAddExternalMembersRequest) Descriptor() ([]byte, []int) { return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{7} } -func (x *NetworkServiceAddExternalMemberRequest) GetNetwork() string { +func (x *NetworkServiceAddExternalMembersRequest) GetNetwork() string { if x != nil { return x.Network } return "" } -func (x *NetworkServiceAddExternalMemberRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { +func (x *NetworkServiceAddExternalMembersRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { if x != nil { return x.SwitchPorts } @@ -654,7 +654,7 @@ func (x *NetworkServiceAddExternalMemberRequest) GetSwitchPorts() []*v2.External } // NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network. -type NetworkServiceRemoveExternalMemberRequest struct { +type NetworkServiceRemoveExternalMembersRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Network to remove the member from. Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` @@ -664,20 +664,20 @@ type NetworkServiceRemoveExternalMemberRequest struct { sizeCache protoimpl.SizeCache } -func (x *NetworkServiceRemoveExternalMemberRequest) Reset() { - *x = NetworkServiceRemoveExternalMemberRequest{} +func (x *NetworkServiceRemoveExternalMembersRequest) Reset() { + *x = NetworkServiceRemoveExternalMembersRequest{} mi := &file_metalstack_admin_v2_network_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *NetworkServiceRemoveExternalMemberRequest) String() string { +func (x *NetworkServiceRemoveExternalMembersRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NetworkServiceRemoveExternalMemberRequest) ProtoMessage() {} +func (*NetworkServiceRemoveExternalMembersRequest) ProtoMessage() {} -func (x *NetworkServiceRemoveExternalMemberRequest) ProtoReflect() protoreflect.Message { +func (x *NetworkServiceRemoveExternalMembersRequest) ProtoReflect() protoreflect.Message { mi := &file_metalstack_admin_v2_network_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -689,19 +689,19 @@ func (x *NetworkServiceRemoveExternalMemberRequest) ProtoReflect() protoreflect. return mi.MessageOf(x) } -// Deprecated: Use NetworkServiceRemoveExternalMemberRequest.ProtoReflect.Descriptor instead. -func (*NetworkServiceRemoveExternalMemberRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use NetworkServiceRemoveExternalMembersRequest.ProtoReflect.Descriptor instead. +func (*NetworkServiceRemoveExternalMembersRequest) Descriptor() ([]byte, []int) { return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{8} } -func (x *NetworkServiceRemoveExternalMemberRequest) GetNetwork() string { +func (x *NetworkServiceRemoveExternalMembersRequest) GetNetwork() string { if x != nil { return x.Network } return "" } -func (x *NetworkServiceRemoveExternalMemberRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { +func (x *NetworkServiceRemoveExternalMembersRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { if x != nil { return x.SwitchPorts } @@ -939,7 +939,7 @@ func (x *NetworkServiceListExternalMembersResponse) GetMembers() []*v2.ExternalN } // NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network. -type NetworkServiceAddExternalMemberResponse struct { +type NetworkServiceAddExternalMembersResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Switch contains the updated switch. Switch *v2.Switch `protobuf:"bytes,1,opt,name=switch,proto3" json:"switch,omitempty"` @@ -947,20 +947,20 @@ type NetworkServiceAddExternalMemberResponse struct { sizeCache protoimpl.SizeCache } -func (x *NetworkServiceAddExternalMemberResponse) Reset() { - *x = NetworkServiceAddExternalMemberResponse{} +func (x *NetworkServiceAddExternalMembersResponse) Reset() { + *x = NetworkServiceAddExternalMembersResponse{} mi := &file_metalstack_admin_v2_network_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *NetworkServiceAddExternalMemberResponse) String() string { +func (x *NetworkServiceAddExternalMembersResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NetworkServiceAddExternalMemberResponse) ProtoMessage() {} +func (*NetworkServiceAddExternalMembersResponse) ProtoMessage() {} -func (x *NetworkServiceAddExternalMemberResponse) ProtoReflect() protoreflect.Message { +func (x *NetworkServiceAddExternalMembersResponse) ProtoReflect() protoreflect.Message { mi := &file_metalstack_admin_v2_network_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -972,12 +972,12 @@ func (x *NetworkServiceAddExternalMemberResponse) ProtoReflect() protoreflect.Me return mi.MessageOf(x) } -// Deprecated: Use NetworkServiceAddExternalMemberResponse.ProtoReflect.Descriptor instead. -func (*NetworkServiceAddExternalMemberResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use NetworkServiceAddExternalMembersResponse.ProtoReflect.Descriptor instead. +func (*NetworkServiceAddExternalMembersResponse) Descriptor() ([]byte, []int) { return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{14} } -func (x *NetworkServiceAddExternalMemberResponse) GetSwitch() *v2.Switch { +func (x *NetworkServiceAddExternalMembersResponse) GetSwitch() *v2.Switch { if x != nil { return x.Switch } @@ -985,7 +985,7 @@ func (x *NetworkServiceAddExternalMemberResponse) GetSwitch() *v2.Switch { } // NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. -type NetworkServiceRemoveExternalMemberResponse struct { +type NetworkServiceRemoveExternalMembersResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Switch contains the updated switch. Switch *v2.Switch `protobuf:"bytes,1,opt,name=switch,proto3" json:"switch,omitempty"` @@ -993,20 +993,20 @@ type NetworkServiceRemoveExternalMemberResponse struct { sizeCache protoimpl.SizeCache } -func (x *NetworkServiceRemoveExternalMemberResponse) Reset() { - *x = NetworkServiceRemoveExternalMemberResponse{} +func (x *NetworkServiceRemoveExternalMembersResponse) Reset() { + *x = NetworkServiceRemoveExternalMembersResponse{} mi := &file_metalstack_admin_v2_network_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *NetworkServiceRemoveExternalMemberResponse) String() string { +func (x *NetworkServiceRemoveExternalMembersResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NetworkServiceRemoveExternalMemberResponse) ProtoMessage() {} +func (*NetworkServiceRemoveExternalMembersResponse) ProtoMessage() {} -func (x *NetworkServiceRemoveExternalMemberResponse) ProtoReflect() protoreflect.Message { +func (x *NetworkServiceRemoveExternalMembersResponse) ProtoReflect() protoreflect.Message { mi := &file_metalstack_admin_v2_network_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1018,12 +1018,12 @@ func (x *NetworkServiceRemoveExternalMemberResponse) ProtoReflect() protoreflect return mi.MessageOf(x) } -// Deprecated: Use NetworkServiceRemoveExternalMemberResponse.ProtoReflect.Descriptor instead. -func (*NetworkServiceRemoveExternalMemberResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use NetworkServiceRemoveExternalMembersResponse.ProtoReflect.Descriptor instead. +func (*NetworkServiceRemoveExternalMembersResponse) Descriptor() ([]byte, []int) { return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{15} } -func (x *NetworkServiceRemoveExternalMemberResponse) GetSwitch() *v2.Switch { +func (x *NetworkServiceRemoveExternalMembersResponse) GetSwitch() *v2.Switch { if x != nil { return x.Switch } @@ -1099,11 +1099,11 @@ const file_metalstack_admin_v2_network_proto_rawDesc = "" + "\x05query\x18\x01 \x01(\v2\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n" + "(NetworkServiceListExternalMembersRequest\x12%\n" + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12C\n" + - "\x05query\x18\x02 \x01(\v2-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa6\x01\n" + - "&NetworkServiceAddExternalMemberRequest\x12%\n" + + "\x05query\x18\x02 \x01(\v2-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n" + + "'NetworkServiceAddExternalMembersRequest\x12%\n" + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12U\n" + - "\fswitch_ports\x18\x02 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberB\b\xbaH\x05\x92\x01\x02\x10\bR\vswitchPorts\"\xa9\x01\n" + - ")NetworkServiceRemoveExternalMemberRequest\x12%\n" + + "\fswitch_ports\x18\x02 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberB\b\xbaH\x05\x92\x01\x02\x10\bR\vswitchPorts\"\xaa\x01\n" + + "*NetworkServiceRemoveExternalMembersRequest\x12%\n" + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12U\n" + "\fswitch_ports\x18\x02 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberB\b\xbaH\x05\x92\x01\x02\x10\bR\vswitchPorts\"T\n" + "\x1cNetworkServiceCreateResponse\x124\n" + @@ -1115,11 +1115,11 @@ const file_metalstack_admin_v2_network_proto_rawDesc = "" + "\x1aNetworkServiceListResponse\x126\n" + "\bnetworks\x18\x01 \x03(\v2\x1a.metalstack.api.v2.NetworkR\bnetworks\"o\n" + ")NetworkServiceListExternalMembersResponse\x12B\n" + - "\amembers\x18\x01 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberR\amembers\"\\\n" + - "'NetworkServiceAddExternalMemberResponse\x121\n" + - "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch\"_\n" + - "*NetworkServiceRemoveExternalMemberResponse\x121\n" + - "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch2\xc9\b\n" + + "\amembers\x18\x01 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberR\amembers\"]\n" + + "(NetworkServiceAddExternalMembersResponse\x121\n" + + "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch\"`\n" + + "+NetworkServiceRemoveExternalMembersResponse\x121\n" + + "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch2\xcf\b\n" + "\x0eNetworkService\x12p\n" + "\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n" + "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n" + @@ -1129,9 +1129,9 @@ const file_metalstack_admin_v2_network_proto_rawDesc = "" + "\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n" + "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n" + "\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n" + - "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x99\x01\n" + - "\x11AddExternalMember\x12;.metalstack.admin.v2.NetworkServiceAddExternalMemberRequest\x1a<.metalstack.admin.v2.NetworkServiceAddExternalMemberResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa2\x01\n" + - "\x14RemoveExternalMember\x12>.metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest\x1a?.metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01B\xd0\x01\n" + + "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n" + + "\x12AddExternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n" + + "\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01B\xd0\x01\n" + "\x17com.metalstack.admin.v2B\fNetworkProtoP\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" var ( @@ -1148,34 +1148,34 @@ func file_metalstack_admin_v2_network_proto_rawDescGZIP() []byte { var file_metalstack_admin_v2_network_proto_msgTypes = make([]protoimpl.MessageInfo, 16) var file_metalstack_admin_v2_network_proto_goTypes = []any{ - (*NetworkServiceGetRequest)(nil), // 0: metalstack.admin.v2.NetworkServiceGetRequest - (*NetworkServiceGetResponse)(nil), // 1: metalstack.admin.v2.NetworkServiceGetResponse - (*NetworkServiceCreateRequest)(nil), // 2: metalstack.admin.v2.NetworkServiceCreateRequest - (*NetworkServiceUpdateRequest)(nil), // 3: metalstack.admin.v2.NetworkServiceUpdateRequest - (*NetworkServiceDeleteRequest)(nil), // 4: metalstack.admin.v2.NetworkServiceDeleteRequest - (*NetworkServiceListRequest)(nil), // 5: metalstack.admin.v2.NetworkServiceListRequest - (*NetworkServiceListExternalMembersRequest)(nil), // 6: metalstack.admin.v2.NetworkServiceListExternalMembersRequest - (*NetworkServiceAddExternalMemberRequest)(nil), // 7: metalstack.admin.v2.NetworkServiceAddExternalMemberRequest - (*NetworkServiceRemoveExternalMemberRequest)(nil), // 8: metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest - (*NetworkServiceCreateResponse)(nil), // 9: metalstack.admin.v2.NetworkServiceCreateResponse - (*NetworkServiceUpdateResponse)(nil), // 10: metalstack.admin.v2.NetworkServiceUpdateResponse - (*NetworkServiceDeleteResponse)(nil), // 11: metalstack.admin.v2.NetworkServiceDeleteResponse - (*NetworkServiceListResponse)(nil), // 12: metalstack.admin.v2.NetworkServiceListResponse - (*NetworkServiceListExternalMembersResponse)(nil), // 13: metalstack.admin.v2.NetworkServiceListExternalMembersResponse - (*NetworkServiceAddExternalMemberResponse)(nil), // 14: metalstack.admin.v2.NetworkServiceAddExternalMemberResponse - (*NetworkServiceRemoveExternalMemberResponse)(nil), // 15: metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse - (*v2.Network)(nil), // 16: metalstack.api.v2.Network - (v2.NetworkType)(0), // 17: metalstack.api.v2.NetworkType - (*v2.Labels)(nil), // 18: metalstack.api.v2.Labels - (*v2.ChildPrefixLength)(nil), // 19: metalstack.api.v2.ChildPrefixLength - (v2.NATType)(0), // 20: metalstack.api.v2.NATType - (v2.NetworkAddressFamily)(0), // 21: metalstack.api.v2.NetworkAddressFamily - (*v2.UpdateMeta)(nil), // 22: metalstack.api.v2.UpdateMeta - (*v2.UpdateLabels)(nil), // 23: metalstack.api.v2.UpdateLabels - (*v2.NetworkQuery)(nil), // 24: metalstack.api.v2.NetworkQuery - (*v2.ExternalNetworkMemberQuery)(nil), // 25: metalstack.api.v2.ExternalNetworkMemberQuery - (*v2.ExternalNetworkMember)(nil), // 26: metalstack.api.v2.ExternalNetworkMember - (*v2.Switch)(nil), // 27: metalstack.api.v2.Switch + (*NetworkServiceGetRequest)(nil), // 0: metalstack.admin.v2.NetworkServiceGetRequest + (*NetworkServiceGetResponse)(nil), // 1: metalstack.admin.v2.NetworkServiceGetResponse + (*NetworkServiceCreateRequest)(nil), // 2: metalstack.admin.v2.NetworkServiceCreateRequest + (*NetworkServiceUpdateRequest)(nil), // 3: metalstack.admin.v2.NetworkServiceUpdateRequest + (*NetworkServiceDeleteRequest)(nil), // 4: metalstack.admin.v2.NetworkServiceDeleteRequest + (*NetworkServiceListRequest)(nil), // 5: metalstack.admin.v2.NetworkServiceListRequest + (*NetworkServiceListExternalMembersRequest)(nil), // 6: metalstack.admin.v2.NetworkServiceListExternalMembersRequest + (*NetworkServiceAddExternalMembersRequest)(nil), // 7: metalstack.admin.v2.NetworkServiceAddExternalMembersRequest + (*NetworkServiceRemoveExternalMembersRequest)(nil), // 8: metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest + (*NetworkServiceCreateResponse)(nil), // 9: metalstack.admin.v2.NetworkServiceCreateResponse + (*NetworkServiceUpdateResponse)(nil), // 10: metalstack.admin.v2.NetworkServiceUpdateResponse + (*NetworkServiceDeleteResponse)(nil), // 11: metalstack.admin.v2.NetworkServiceDeleteResponse + (*NetworkServiceListResponse)(nil), // 12: metalstack.admin.v2.NetworkServiceListResponse + (*NetworkServiceListExternalMembersResponse)(nil), // 13: metalstack.admin.v2.NetworkServiceListExternalMembersResponse + (*NetworkServiceAddExternalMembersResponse)(nil), // 14: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse + (*NetworkServiceRemoveExternalMembersResponse)(nil), // 15: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse + (*v2.Network)(nil), // 16: metalstack.api.v2.Network + (v2.NetworkType)(0), // 17: metalstack.api.v2.NetworkType + (*v2.Labels)(nil), // 18: metalstack.api.v2.Labels + (*v2.ChildPrefixLength)(nil), // 19: metalstack.api.v2.ChildPrefixLength + (v2.NATType)(0), // 20: metalstack.api.v2.NATType + (v2.NetworkAddressFamily)(0), // 21: metalstack.api.v2.NetworkAddressFamily + (*v2.UpdateMeta)(nil), // 22: metalstack.api.v2.UpdateMeta + (*v2.UpdateLabels)(nil), // 23: metalstack.api.v2.UpdateLabels + (*v2.NetworkQuery)(nil), // 24: metalstack.api.v2.NetworkQuery + (*v2.ExternalNetworkMemberQuery)(nil), // 25: metalstack.api.v2.ExternalNetworkMemberQuery + (*v2.ExternalNetworkMember)(nil), // 26: metalstack.api.v2.ExternalNetworkMember + (*v2.Switch)(nil), // 27: metalstack.api.v2.Switch } var file_metalstack_admin_v2_network_proto_depIdxs = []int32{ 16, // 0: metalstack.admin.v2.NetworkServiceGetResponse.network:type_name -> metalstack.api.v2.Network @@ -1193,31 +1193,31 @@ var file_metalstack_admin_v2_network_proto_depIdxs = []int32{ 20, // 12: metalstack.admin.v2.NetworkServiceUpdateRequest.nat_type:type_name -> metalstack.api.v2.NATType 24, // 13: metalstack.admin.v2.NetworkServiceListRequest.query:type_name -> metalstack.api.v2.NetworkQuery 25, // 14: metalstack.admin.v2.NetworkServiceListExternalMembersRequest.query:type_name -> metalstack.api.v2.ExternalNetworkMemberQuery - 26, // 15: metalstack.admin.v2.NetworkServiceAddExternalMemberRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember - 26, // 16: metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember + 26, // 15: metalstack.admin.v2.NetworkServiceAddExternalMembersRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember + 26, // 16: metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember 16, // 17: metalstack.admin.v2.NetworkServiceCreateResponse.network:type_name -> metalstack.api.v2.Network 16, // 18: metalstack.admin.v2.NetworkServiceUpdateResponse.network:type_name -> metalstack.api.v2.Network 16, // 19: metalstack.admin.v2.NetworkServiceDeleteResponse.network:type_name -> metalstack.api.v2.Network 16, // 20: metalstack.admin.v2.NetworkServiceListResponse.networks:type_name -> metalstack.api.v2.Network 26, // 21: metalstack.admin.v2.NetworkServiceListExternalMembersResponse.members:type_name -> metalstack.api.v2.ExternalNetworkMember - 27, // 22: metalstack.admin.v2.NetworkServiceAddExternalMemberResponse.switch:type_name -> metalstack.api.v2.Switch - 27, // 23: metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse.switch:type_name -> metalstack.api.v2.Switch + 27, // 22: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse.switch:type_name -> metalstack.api.v2.Switch + 27, // 23: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse.switch:type_name -> metalstack.api.v2.Switch 0, // 24: metalstack.admin.v2.NetworkService.Get:input_type -> metalstack.admin.v2.NetworkServiceGetRequest 2, // 25: metalstack.admin.v2.NetworkService.Create:input_type -> metalstack.admin.v2.NetworkServiceCreateRequest 3, // 26: metalstack.admin.v2.NetworkService.Update:input_type -> metalstack.admin.v2.NetworkServiceUpdateRequest 4, // 27: metalstack.admin.v2.NetworkService.Delete:input_type -> metalstack.admin.v2.NetworkServiceDeleteRequest 5, // 28: metalstack.admin.v2.NetworkService.List:input_type -> metalstack.admin.v2.NetworkServiceListRequest 6, // 29: metalstack.admin.v2.NetworkService.ListExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceListExternalMembersRequest - 7, // 30: metalstack.admin.v2.NetworkService.AddExternalMember:input_type -> metalstack.admin.v2.NetworkServiceAddExternalMemberRequest - 8, // 31: metalstack.admin.v2.NetworkService.RemoveExternalMember:input_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest + 7, // 30: metalstack.admin.v2.NetworkService.AddExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersRequest + 8, // 31: metalstack.admin.v2.NetworkService.RemoveExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest 1, // 32: metalstack.admin.v2.NetworkService.Get:output_type -> metalstack.admin.v2.NetworkServiceGetResponse 9, // 33: metalstack.admin.v2.NetworkService.Create:output_type -> metalstack.admin.v2.NetworkServiceCreateResponse 10, // 34: metalstack.admin.v2.NetworkService.Update:output_type -> metalstack.admin.v2.NetworkServiceUpdateResponse 11, // 35: metalstack.admin.v2.NetworkService.Delete:output_type -> metalstack.admin.v2.NetworkServiceDeleteResponse 12, // 36: metalstack.admin.v2.NetworkService.List:output_type -> metalstack.admin.v2.NetworkServiceListResponse 13, // 37: metalstack.admin.v2.NetworkService.ListExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceListExternalMembersResponse - 14, // 38: metalstack.admin.v2.NetworkService.AddExternalMember:output_type -> metalstack.admin.v2.NetworkServiceAddExternalMemberResponse - 15, // 39: metalstack.admin.v2.NetworkService.RemoveExternalMember:output_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse + 14, // 38: metalstack.admin.v2.NetworkService.AddExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersResponse + 15, // 39: metalstack.admin.v2.NetworkService.RemoveExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse 32, // [32:40] is the sub-list for method output_type 24, // [24:32] is the sub-list for method input_type 24, // [24:24] is the sub-list for extension type_name diff --git a/go/permissions/servicepermissions.go b/go/permissions/servicepermissions.go index 74d53ff5..d503829c 100755 --- a/go/permissions/servicepermissions.go +++ b/go/permissions/servicepermissions.go @@ -55,74 +55,74 @@ func GetServicePermissions() *ServicePermissions { Roles: Roles{ Admin: Admin{ apiv2.AdminRole_ADMIN_ROLE_EDITOR: map[string]struct{}{ - "/metalstack.admin.v2.AuditService/Get": {}, - "/metalstack.admin.v2.AuditService/List": {}, - "/metalstack.admin.v2.ComponentService/Delete": {}, - "/metalstack.admin.v2.ComponentService/Get": {}, - "/metalstack.admin.v2.ComponentService/List": {}, - "/metalstack.admin.v2.FilesystemService/Create": {}, - "/metalstack.admin.v2.FilesystemService/Delete": {}, - "/metalstack.admin.v2.FilesystemService/Match": {}, - "/metalstack.admin.v2.FilesystemService/Update": {}, - "/metalstack.admin.v2.IPService/List": {}, - "/metalstack.admin.v2.ImageService/Create": {}, - "/metalstack.admin.v2.ImageService/Delete": {}, - "/metalstack.admin.v2.ImageService/Update": {}, - "/metalstack.admin.v2.ImageService/Usage": {}, - "/metalstack.admin.v2.MachineService/BMCCommand": {}, - "/metalstack.admin.v2.MachineService/ConsolePassword": {}, - "/metalstack.admin.v2.MachineService/Delete": {}, - "/metalstack.admin.v2.MachineService/Get": {}, - "/metalstack.admin.v2.MachineService/GetBMC": {}, - "/metalstack.admin.v2.MachineService/Issues": {}, - "/metalstack.admin.v2.MachineService/List": {}, - "/metalstack.admin.v2.MachineService/ListBMC": {}, - "/metalstack.admin.v2.MachineService/SetState": {}, - "/metalstack.admin.v2.NetworkService/AddExternalMember": {}, - "/metalstack.admin.v2.NetworkService/Create": {}, - "/metalstack.admin.v2.NetworkService/Delete": {}, - "/metalstack.admin.v2.NetworkService/Get": {}, - "/metalstack.admin.v2.NetworkService/List": {}, - "/metalstack.admin.v2.NetworkService/ListExternalMembers": {}, - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": {}, - "/metalstack.admin.v2.NetworkService/Update": {}, - "/metalstack.admin.v2.PartitionService/Capacity": {}, - "/metalstack.admin.v2.PartitionService/Create": {}, - "/metalstack.admin.v2.PartitionService/Delete": {}, - "/metalstack.admin.v2.PartitionService/Update": {}, - "/metalstack.admin.v2.ProjectService/List": {}, - "/metalstack.admin.v2.SizeImageConstraintService/Create": {}, - "/metalstack.admin.v2.SizeImageConstraintService/Delete": {}, - "/metalstack.admin.v2.SizeImageConstraintService/Get": {}, - "/metalstack.admin.v2.SizeImageConstraintService/List": {}, - "/metalstack.admin.v2.SizeImageConstraintService/Update": {}, - "/metalstack.admin.v2.SizeReservationService/Create": {}, - "/metalstack.admin.v2.SizeReservationService/Delete": {}, - "/metalstack.admin.v2.SizeReservationService/List": {}, - "/metalstack.admin.v2.SizeReservationService/Update": {}, - "/metalstack.admin.v2.SizeService/Create": {}, - "/metalstack.admin.v2.SizeService/Delete": {}, - "/metalstack.admin.v2.SizeService/Update": {}, - "/metalstack.admin.v2.SwitchService/ConnectedMachines": {}, - "/metalstack.admin.v2.SwitchService/Delete": {}, - "/metalstack.admin.v2.SwitchService/Get": {}, - "/metalstack.admin.v2.SwitchService/List": {}, - "/metalstack.admin.v2.SwitchService/Migrate": {}, - "/metalstack.admin.v2.SwitchService/Port": {}, - "/metalstack.admin.v2.SwitchService/Update": {}, - "/metalstack.admin.v2.TaskService/Delete": {}, - "/metalstack.admin.v2.TaskService/Get": {}, - "/metalstack.admin.v2.TaskService/List": {}, - "/metalstack.admin.v2.TaskService/Queues": {}, - "/metalstack.admin.v2.TenantService/AddMember": {}, - "/metalstack.admin.v2.TenantService/Create": {}, - "/metalstack.admin.v2.TenantService/List": {}, - "/metalstack.admin.v2.TenantService/RemoveMember": {}, - "/metalstack.admin.v2.TokenService/Create": {}, - "/metalstack.admin.v2.TokenService/List": {}, - "/metalstack.admin.v2.TokenService/Revoke": {}, - "/metalstack.admin.v2.VPNService/AuthKey": {}, - "/metalstack.admin.v2.VPNService/ListNodes": {}, + "/metalstack.admin.v2.AuditService/Get": {}, + "/metalstack.admin.v2.AuditService/List": {}, + "/metalstack.admin.v2.ComponentService/Delete": {}, + "/metalstack.admin.v2.ComponentService/Get": {}, + "/metalstack.admin.v2.ComponentService/List": {}, + "/metalstack.admin.v2.FilesystemService/Create": {}, + "/metalstack.admin.v2.FilesystemService/Delete": {}, + "/metalstack.admin.v2.FilesystemService/Match": {}, + "/metalstack.admin.v2.FilesystemService/Update": {}, + "/metalstack.admin.v2.IPService/List": {}, + "/metalstack.admin.v2.ImageService/Create": {}, + "/metalstack.admin.v2.ImageService/Delete": {}, + "/metalstack.admin.v2.ImageService/Update": {}, + "/metalstack.admin.v2.ImageService/Usage": {}, + "/metalstack.admin.v2.MachineService/BMCCommand": {}, + "/metalstack.admin.v2.MachineService/ConsolePassword": {}, + "/metalstack.admin.v2.MachineService/Delete": {}, + "/metalstack.admin.v2.MachineService/Get": {}, + "/metalstack.admin.v2.MachineService/GetBMC": {}, + "/metalstack.admin.v2.MachineService/Issues": {}, + "/metalstack.admin.v2.MachineService/List": {}, + "/metalstack.admin.v2.MachineService/ListBMC": {}, + "/metalstack.admin.v2.MachineService/SetState": {}, + "/metalstack.admin.v2.NetworkService/AddExternalMembers": {}, + "/metalstack.admin.v2.NetworkService/Create": {}, + "/metalstack.admin.v2.NetworkService/Delete": {}, + "/metalstack.admin.v2.NetworkService/Get": {}, + "/metalstack.admin.v2.NetworkService/List": {}, + "/metalstack.admin.v2.NetworkService/ListExternalMembers": {}, + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": {}, + "/metalstack.admin.v2.NetworkService/Update": {}, + "/metalstack.admin.v2.PartitionService/Capacity": {}, + "/metalstack.admin.v2.PartitionService/Create": {}, + "/metalstack.admin.v2.PartitionService/Delete": {}, + "/metalstack.admin.v2.PartitionService/Update": {}, + "/metalstack.admin.v2.ProjectService/List": {}, + "/metalstack.admin.v2.SizeImageConstraintService/Create": {}, + "/metalstack.admin.v2.SizeImageConstraintService/Delete": {}, + "/metalstack.admin.v2.SizeImageConstraintService/Get": {}, + "/metalstack.admin.v2.SizeImageConstraintService/List": {}, + "/metalstack.admin.v2.SizeImageConstraintService/Update": {}, + "/metalstack.admin.v2.SizeReservationService/Create": {}, + "/metalstack.admin.v2.SizeReservationService/Delete": {}, + "/metalstack.admin.v2.SizeReservationService/List": {}, + "/metalstack.admin.v2.SizeReservationService/Update": {}, + "/metalstack.admin.v2.SizeService/Create": {}, + "/metalstack.admin.v2.SizeService/Delete": {}, + "/metalstack.admin.v2.SizeService/Update": {}, + "/metalstack.admin.v2.SwitchService/ConnectedMachines": {}, + "/metalstack.admin.v2.SwitchService/Delete": {}, + "/metalstack.admin.v2.SwitchService/Get": {}, + "/metalstack.admin.v2.SwitchService/List": {}, + "/metalstack.admin.v2.SwitchService/Migrate": {}, + "/metalstack.admin.v2.SwitchService/Port": {}, + "/metalstack.admin.v2.SwitchService/Update": {}, + "/metalstack.admin.v2.TaskService/Delete": {}, + "/metalstack.admin.v2.TaskService/Get": {}, + "/metalstack.admin.v2.TaskService/List": {}, + "/metalstack.admin.v2.TaskService/Queues": {}, + "/metalstack.admin.v2.TenantService/AddMember": {}, + "/metalstack.admin.v2.TenantService/Create": {}, + "/metalstack.admin.v2.TenantService/List": {}, + "/metalstack.admin.v2.TenantService/RemoveMember": {}, + "/metalstack.admin.v2.TokenService/Create": {}, + "/metalstack.admin.v2.TokenService/List": {}, + "/metalstack.admin.v2.TokenService/Revoke": {}, + "/metalstack.admin.v2.VPNService/AuthKey": {}, + "/metalstack.admin.v2.VPNService/ListNodes": {}, }, apiv2.AdminRole_ADMIN_ROLE_VIEWER: map[string]struct{}{ "/metalstack.admin.v2.AuditService/Get": {}, @@ -309,13 +309,13 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.MachineService/List": {}, "/metalstack.admin.v2.MachineService/ListBMC": {}, "/metalstack.admin.v2.MachineService/SetState": {}, - "/metalstack.admin.v2.NetworkService/AddExternalMember": {}, + "/metalstack.admin.v2.NetworkService/AddExternalMembers": {}, "/metalstack.admin.v2.NetworkService/Create": {}, "/metalstack.admin.v2.NetworkService/Delete": {}, "/metalstack.admin.v2.NetworkService/Get": {}, "/metalstack.admin.v2.NetworkService/List": {}, "/metalstack.admin.v2.NetworkService/ListExternalMembers": {}, - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": {}, + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": {}, "/metalstack.admin.v2.NetworkService/Update": {}, "/metalstack.admin.v2.PartitionService/Capacity": {}, "/metalstack.admin.v2.PartitionService/Create": {}, @@ -476,74 +476,74 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.api.v2.UserService/Get": true, }, Admin: map[string]bool{ - "/metalstack.admin.v2.AuditService/Get": true, - "/metalstack.admin.v2.AuditService/List": true, - "/metalstack.admin.v2.ComponentService/Delete": true, - "/metalstack.admin.v2.ComponentService/Get": true, - "/metalstack.admin.v2.ComponentService/List": true, - "/metalstack.admin.v2.FilesystemService/Create": true, - "/metalstack.admin.v2.FilesystemService/Delete": true, - "/metalstack.admin.v2.FilesystemService/Match": true, - "/metalstack.admin.v2.FilesystemService/Update": true, - "/metalstack.admin.v2.IPService/List": true, - "/metalstack.admin.v2.ImageService/Create": true, - "/metalstack.admin.v2.ImageService/Delete": true, - "/metalstack.admin.v2.ImageService/Update": true, - "/metalstack.admin.v2.ImageService/Usage": true, - "/metalstack.admin.v2.MachineService/BMCCommand": true, - "/metalstack.admin.v2.MachineService/ConsolePassword": true, - "/metalstack.admin.v2.MachineService/Delete": true, - "/metalstack.admin.v2.MachineService/Get": true, - "/metalstack.admin.v2.MachineService/GetBMC": true, - "/metalstack.admin.v2.MachineService/Issues": true, - "/metalstack.admin.v2.MachineService/List": true, - "/metalstack.admin.v2.MachineService/ListBMC": true, - "/metalstack.admin.v2.MachineService/SetState": true, - "/metalstack.admin.v2.NetworkService/AddExternalMember": true, - "/metalstack.admin.v2.NetworkService/Create": true, - "/metalstack.admin.v2.NetworkService/Delete": true, - "/metalstack.admin.v2.NetworkService/Get": true, - "/metalstack.admin.v2.NetworkService/List": true, - "/metalstack.admin.v2.NetworkService/ListExternalMembers": true, - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": true, - "/metalstack.admin.v2.NetworkService/Update": true, - "/metalstack.admin.v2.PartitionService/Capacity": true, - "/metalstack.admin.v2.PartitionService/Create": true, - "/metalstack.admin.v2.PartitionService/Delete": true, - "/metalstack.admin.v2.PartitionService/Update": true, - "/metalstack.admin.v2.ProjectService/List": true, - "/metalstack.admin.v2.SizeImageConstraintService/Create": true, - "/metalstack.admin.v2.SizeImageConstraintService/Delete": true, - "/metalstack.admin.v2.SizeImageConstraintService/Get": true, - "/metalstack.admin.v2.SizeImageConstraintService/List": true, - "/metalstack.admin.v2.SizeImageConstraintService/Update": true, - "/metalstack.admin.v2.SizeReservationService/Create": true, - "/metalstack.admin.v2.SizeReservationService/Delete": true, - "/metalstack.admin.v2.SizeReservationService/List": true, - "/metalstack.admin.v2.SizeReservationService/Update": true, - "/metalstack.admin.v2.SizeService/Create": true, - "/metalstack.admin.v2.SizeService/Delete": true, - "/metalstack.admin.v2.SizeService/Update": true, - "/metalstack.admin.v2.SwitchService/ConnectedMachines": true, - "/metalstack.admin.v2.SwitchService/Delete": true, - "/metalstack.admin.v2.SwitchService/Get": true, - "/metalstack.admin.v2.SwitchService/List": true, - "/metalstack.admin.v2.SwitchService/Migrate": true, - "/metalstack.admin.v2.SwitchService/Port": true, - "/metalstack.admin.v2.SwitchService/Update": true, - "/metalstack.admin.v2.TaskService/Delete": true, - "/metalstack.admin.v2.TaskService/Get": true, - "/metalstack.admin.v2.TaskService/List": true, - "/metalstack.admin.v2.TaskService/Queues": true, - "/metalstack.admin.v2.TenantService/AddMember": true, - "/metalstack.admin.v2.TenantService/Create": true, - "/metalstack.admin.v2.TenantService/List": true, - "/metalstack.admin.v2.TenantService/RemoveMember": true, - "/metalstack.admin.v2.TokenService/Create": true, - "/metalstack.admin.v2.TokenService/List": true, - "/metalstack.admin.v2.TokenService/Revoke": true, - "/metalstack.admin.v2.VPNService/AuthKey": true, - "/metalstack.admin.v2.VPNService/ListNodes": true, + "/metalstack.admin.v2.AuditService/Get": true, + "/metalstack.admin.v2.AuditService/List": true, + "/metalstack.admin.v2.ComponentService/Delete": true, + "/metalstack.admin.v2.ComponentService/Get": true, + "/metalstack.admin.v2.ComponentService/List": true, + "/metalstack.admin.v2.FilesystemService/Create": true, + "/metalstack.admin.v2.FilesystemService/Delete": true, + "/metalstack.admin.v2.FilesystemService/Match": true, + "/metalstack.admin.v2.FilesystemService/Update": true, + "/metalstack.admin.v2.IPService/List": true, + "/metalstack.admin.v2.ImageService/Create": true, + "/metalstack.admin.v2.ImageService/Delete": true, + "/metalstack.admin.v2.ImageService/Update": true, + "/metalstack.admin.v2.ImageService/Usage": true, + "/metalstack.admin.v2.MachineService/BMCCommand": true, + "/metalstack.admin.v2.MachineService/ConsolePassword": true, + "/metalstack.admin.v2.MachineService/Delete": true, + "/metalstack.admin.v2.MachineService/Get": true, + "/metalstack.admin.v2.MachineService/GetBMC": true, + "/metalstack.admin.v2.MachineService/Issues": true, + "/metalstack.admin.v2.MachineService/List": true, + "/metalstack.admin.v2.MachineService/ListBMC": true, + "/metalstack.admin.v2.MachineService/SetState": true, + "/metalstack.admin.v2.NetworkService/AddExternalMembers": true, + "/metalstack.admin.v2.NetworkService/Create": true, + "/metalstack.admin.v2.NetworkService/Delete": true, + "/metalstack.admin.v2.NetworkService/Get": true, + "/metalstack.admin.v2.NetworkService/List": true, + "/metalstack.admin.v2.NetworkService/ListExternalMembers": true, + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": true, + "/metalstack.admin.v2.NetworkService/Update": true, + "/metalstack.admin.v2.PartitionService/Capacity": true, + "/metalstack.admin.v2.PartitionService/Create": true, + "/metalstack.admin.v2.PartitionService/Delete": true, + "/metalstack.admin.v2.PartitionService/Update": true, + "/metalstack.admin.v2.ProjectService/List": true, + "/metalstack.admin.v2.SizeImageConstraintService/Create": true, + "/metalstack.admin.v2.SizeImageConstraintService/Delete": true, + "/metalstack.admin.v2.SizeImageConstraintService/Get": true, + "/metalstack.admin.v2.SizeImageConstraintService/List": true, + "/metalstack.admin.v2.SizeImageConstraintService/Update": true, + "/metalstack.admin.v2.SizeReservationService/Create": true, + "/metalstack.admin.v2.SizeReservationService/Delete": true, + "/metalstack.admin.v2.SizeReservationService/List": true, + "/metalstack.admin.v2.SizeReservationService/Update": true, + "/metalstack.admin.v2.SizeService/Create": true, + "/metalstack.admin.v2.SizeService/Delete": true, + "/metalstack.admin.v2.SizeService/Update": true, + "/metalstack.admin.v2.SwitchService/ConnectedMachines": true, + "/metalstack.admin.v2.SwitchService/Delete": true, + "/metalstack.admin.v2.SwitchService/Get": true, + "/metalstack.admin.v2.SwitchService/List": true, + "/metalstack.admin.v2.SwitchService/Migrate": true, + "/metalstack.admin.v2.SwitchService/Port": true, + "/metalstack.admin.v2.SwitchService/Update": true, + "/metalstack.admin.v2.TaskService/Delete": true, + "/metalstack.admin.v2.TaskService/Get": true, + "/metalstack.admin.v2.TaskService/List": true, + "/metalstack.admin.v2.TaskService/Queues": true, + "/metalstack.admin.v2.TenantService/AddMember": true, + "/metalstack.admin.v2.TenantService/Create": true, + "/metalstack.admin.v2.TenantService/List": true, + "/metalstack.admin.v2.TenantService/RemoveMember": true, + "/metalstack.admin.v2.TokenService/Create": true, + "/metalstack.admin.v2.TokenService/List": true, + "/metalstack.admin.v2.TokenService/Revoke": true, + "/metalstack.admin.v2.VPNService/AuthKey": true, + "/metalstack.admin.v2.VPNService/ListNodes": true, }, Infra: map[string]bool{ "/metalstack.infra.v2.BMCService/BMCCommandDone": true, @@ -612,159 +612,159 @@ func GetServicePermissions() *ServicePermissions { }, }, Auditable: map[string]bool{ - "/metalstack.admin.v2.AuditService/Get": true, - "/metalstack.admin.v2.AuditService/List": true, - "/metalstack.admin.v2.ComponentService/Delete": true, - "/metalstack.admin.v2.ComponentService/Get": false, - "/metalstack.admin.v2.ComponentService/List": false, - "/metalstack.admin.v2.FilesystemService/Create": true, - "/metalstack.admin.v2.FilesystemService/Delete": true, - "/metalstack.admin.v2.FilesystemService/Match": false, - "/metalstack.admin.v2.FilesystemService/Update": true, - "/metalstack.admin.v2.IPService/List": false, - "/metalstack.admin.v2.ImageService/Create": true, - "/metalstack.admin.v2.ImageService/Delete": true, - "/metalstack.admin.v2.ImageService/Update": true, - "/metalstack.admin.v2.ImageService/Usage": true, - "/metalstack.admin.v2.MachineService/BMCCommand": true, - "/metalstack.admin.v2.MachineService/ConsolePassword": true, - "/metalstack.admin.v2.MachineService/Delete": true, - "/metalstack.admin.v2.MachineService/Get": false, - "/metalstack.admin.v2.MachineService/GetBMC": true, - "/metalstack.admin.v2.MachineService/Issues": false, - "/metalstack.admin.v2.MachineService/List": false, - "/metalstack.admin.v2.MachineService/ListBMC": true, - "/metalstack.admin.v2.MachineService/SetState": true, - "/metalstack.admin.v2.NetworkService/AddExternalMember": true, - "/metalstack.admin.v2.NetworkService/Create": true, - "/metalstack.admin.v2.NetworkService/Delete": true, - "/metalstack.admin.v2.NetworkService/Get": false, - "/metalstack.admin.v2.NetworkService/List": false, - "/metalstack.admin.v2.NetworkService/ListExternalMembers": false, - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": true, - "/metalstack.admin.v2.NetworkService/Update": true, - "/metalstack.admin.v2.PartitionService/Capacity": false, - "/metalstack.admin.v2.PartitionService/Create": true, - "/metalstack.admin.v2.PartitionService/Delete": true, - "/metalstack.admin.v2.PartitionService/Update": true, - "/metalstack.admin.v2.ProjectService/List": false, - "/metalstack.admin.v2.SizeImageConstraintService/Create": true, - "/metalstack.admin.v2.SizeImageConstraintService/Delete": true, - "/metalstack.admin.v2.SizeImageConstraintService/Get": false, - "/metalstack.admin.v2.SizeImageConstraintService/List": false, - "/metalstack.admin.v2.SizeImageConstraintService/Update": true, - "/metalstack.admin.v2.SizeReservationService/Create": true, - "/metalstack.admin.v2.SizeReservationService/Delete": true, - "/metalstack.admin.v2.SizeReservationService/List": false, - "/metalstack.admin.v2.SizeReservationService/Update": true, - "/metalstack.admin.v2.SizeService/Create": true, - "/metalstack.admin.v2.SizeService/Delete": true, - "/metalstack.admin.v2.SizeService/Update": true, - "/metalstack.admin.v2.SwitchService/ConnectedMachines": false, - "/metalstack.admin.v2.SwitchService/Delete": true, - "/metalstack.admin.v2.SwitchService/Get": false, - "/metalstack.admin.v2.SwitchService/List": false, - "/metalstack.admin.v2.SwitchService/Migrate": true, - "/metalstack.admin.v2.SwitchService/Port": true, - "/metalstack.admin.v2.SwitchService/Update": true, - "/metalstack.admin.v2.TaskService/Delete": true, - "/metalstack.admin.v2.TaskService/Get": true, - "/metalstack.admin.v2.TaskService/List": true, - "/metalstack.admin.v2.TaskService/Queues": true, - "/metalstack.admin.v2.TenantService/AddMember": true, - "/metalstack.admin.v2.TenantService/Create": true, - "/metalstack.admin.v2.TenantService/List": true, - "/metalstack.admin.v2.TenantService/RemoveMember": true, - "/metalstack.admin.v2.TokenService/Create": true, - "/metalstack.admin.v2.TokenService/List": true, - "/metalstack.admin.v2.TokenService/Revoke": true, - "/metalstack.admin.v2.VPNService/AuthKey": true, - "/metalstack.admin.v2.VPNService/ListNodes": true, - "/metalstack.api.v2.AuditService/Get": false, - "/metalstack.api.v2.AuditService/List": false, - "/metalstack.api.v2.FilesystemService/Get": false, - "/metalstack.api.v2.FilesystemService/List": false, - "/metalstack.api.v2.HealthService/Get": false, - "/metalstack.api.v2.IPService/Create": true, - "/metalstack.api.v2.IPService/Delete": true, - "/metalstack.api.v2.IPService/Get": false, - "/metalstack.api.v2.IPService/List": false, - "/metalstack.api.v2.IPService/Update": true, - "/metalstack.api.v2.ImageService/Get": false, - "/metalstack.api.v2.ImageService/Latest": false, - "/metalstack.api.v2.ImageService/List": false, - "/metalstack.api.v2.MachineService/BMCCommand": true, - "/metalstack.api.v2.MachineService/Create": true, - "/metalstack.api.v2.MachineService/Delete": true, - "/metalstack.api.v2.MachineService/Get": false, - "/metalstack.api.v2.MachineService/GetBMC": true, - "/metalstack.api.v2.MachineService/List": false, - "/metalstack.api.v2.MachineService/Update": true, - "/metalstack.api.v2.MethodService/List": true, - "/metalstack.api.v2.MethodService/TokenScopedList": true, - "/metalstack.api.v2.NetworkService/Create": true, - "/metalstack.api.v2.NetworkService/Delete": true, - "/metalstack.api.v2.NetworkService/Get": false, - "/metalstack.api.v2.NetworkService/List": false, - "/metalstack.api.v2.NetworkService/ListBaseNetworks": false, - "/metalstack.api.v2.NetworkService/Update": true, - "/metalstack.api.v2.PartitionService/Get": false, - "/metalstack.api.v2.PartitionService/List": false, - "/metalstack.api.v2.ProjectService/AddMember": true, - "/metalstack.api.v2.ProjectService/Create": true, - "/metalstack.api.v2.ProjectService/Delete": true, - "/metalstack.api.v2.ProjectService/Get": false, - "/metalstack.api.v2.ProjectService/Invite": true, - "/metalstack.api.v2.ProjectService/InviteAccept": true, - "/metalstack.api.v2.ProjectService/InviteDelete": true, - "/metalstack.api.v2.ProjectService/InviteGet": false, - "/metalstack.api.v2.ProjectService/InvitesList": false, - "/metalstack.api.v2.ProjectService/Leave": true, - "/metalstack.api.v2.ProjectService/List": false, - "/metalstack.api.v2.ProjectService/RemoveMember": true, - "/metalstack.api.v2.ProjectService/Update": true, - "/metalstack.api.v2.ProjectService/UpdateMember": true, - "/metalstack.api.v2.SizeImageConstraintService/Try": false, - "/metalstack.api.v2.SizeReservationService/Get": false, - "/metalstack.api.v2.SizeReservationService/List": false, - "/metalstack.api.v2.SizeService/Get": false, - "/metalstack.api.v2.SizeService/List": false, - "/metalstack.api.v2.TenantService/AddMember": true, - "/metalstack.api.v2.TenantService/Create": true, - "/metalstack.api.v2.TenantService/Delete": true, - "/metalstack.api.v2.TenantService/Get": false, - "/metalstack.api.v2.TenantService/Invite": true, - "/metalstack.api.v2.TenantService/InviteAccept": true, - "/metalstack.api.v2.TenantService/InviteDelete": true, - "/metalstack.api.v2.TenantService/InviteGet": false, - "/metalstack.api.v2.TenantService/InvitesList": false, - "/metalstack.api.v2.TenantService/Leave": true, - "/metalstack.api.v2.TenantService/List": false, - "/metalstack.api.v2.TenantService/RemoveMember": true, - "/metalstack.api.v2.TenantService/Update": true, - "/metalstack.api.v2.TenantService/UpdateMember": true, - "/metalstack.api.v2.TokenService/Create": true, - "/metalstack.api.v2.TokenService/Get": true, - "/metalstack.api.v2.TokenService/List": true, - "/metalstack.api.v2.TokenService/Refresh": true, - "/metalstack.api.v2.TokenService/Revoke": true, - "/metalstack.api.v2.TokenService/Update": true, - "/metalstack.api.v2.UserService/Get": true, - "/metalstack.api.v2.VersionService/Get": false, - "/metalstack.infra.v2.BMCService/BMCCommandDone": true, - "/metalstack.infra.v2.BMCService/UpdateBMCInfo": false, - "/metalstack.infra.v2.BMCService/WaitForBMCCommand": false, - "/metalstack.infra.v2.BootService/Boot": false, - "/metalstack.infra.v2.BootService/Dhcp": false, - "/metalstack.infra.v2.BootService/InstallationSucceeded": false, - "/metalstack.infra.v2.BootService/Register": false, - "/metalstack.infra.v2.BootService/SuperUserPassword": false, - "/metalstack.infra.v2.BootService/Wait": false, - "/metalstack.infra.v2.ComponentService/Ping": false, - "/metalstack.infra.v2.EventService/Send": false, - "/metalstack.infra.v2.SwitchService/Get": false, - "/metalstack.infra.v2.SwitchService/Heartbeat": false, - "/metalstack.infra.v2.SwitchService/Register": false, + "/metalstack.admin.v2.AuditService/Get": true, + "/metalstack.admin.v2.AuditService/List": true, + "/metalstack.admin.v2.ComponentService/Delete": true, + "/metalstack.admin.v2.ComponentService/Get": false, + "/metalstack.admin.v2.ComponentService/List": false, + "/metalstack.admin.v2.FilesystemService/Create": true, + "/metalstack.admin.v2.FilesystemService/Delete": true, + "/metalstack.admin.v2.FilesystemService/Match": false, + "/metalstack.admin.v2.FilesystemService/Update": true, + "/metalstack.admin.v2.IPService/List": false, + "/metalstack.admin.v2.ImageService/Create": true, + "/metalstack.admin.v2.ImageService/Delete": true, + "/metalstack.admin.v2.ImageService/Update": true, + "/metalstack.admin.v2.ImageService/Usage": true, + "/metalstack.admin.v2.MachineService/BMCCommand": true, + "/metalstack.admin.v2.MachineService/ConsolePassword": true, + "/metalstack.admin.v2.MachineService/Delete": true, + "/metalstack.admin.v2.MachineService/Get": false, + "/metalstack.admin.v2.MachineService/GetBMC": true, + "/metalstack.admin.v2.MachineService/Issues": false, + "/metalstack.admin.v2.MachineService/List": false, + "/metalstack.admin.v2.MachineService/ListBMC": true, + "/metalstack.admin.v2.MachineService/SetState": true, + "/metalstack.admin.v2.NetworkService/AddExternalMembers": true, + "/metalstack.admin.v2.NetworkService/Create": true, + "/metalstack.admin.v2.NetworkService/Delete": true, + "/metalstack.admin.v2.NetworkService/Get": false, + "/metalstack.admin.v2.NetworkService/List": false, + "/metalstack.admin.v2.NetworkService/ListExternalMembers": false, + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": true, + "/metalstack.admin.v2.NetworkService/Update": true, + "/metalstack.admin.v2.PartitionService/Capacity": false, + "/metalstack.admin.v2.PartitionService/Create": true, + "/metalstack.admin.v2.PartitionService/Delete": true, + "/metalstack.admin.v2.PartitionService/Update": true, + "/metalstack.admin.v2.ProjectService/List": false, + "/metalstack.admin.v2.SizeImageConstraintService/Create": true, + "/metalstack.admin.v2.SizeImageConstraintService/Delete": true, + "/metalstack.admin.v2.SizeImageConstraintService/Get": false, + "/metalstack.admin.v2.SizeImageConstraintService/List": false, + "/metalstack.admin.v2.SizeImageConstraintService/Update": true, + "/metalstack.admin.v2.SizeReservationService/Create": true, + "/metalstack.admin.v2.SizeReservationService/Delete": true, + "/metalstack.admin.v2.SizeReservationService/List": false, + "/metalstack.admin.v2.SizeReservationService/Update": true, + "/metalstack.admin.v2.SizeService/Create": true, + "/metalstack.admin.v2.SizeService/Delete": true, + "/metalstack.admin.v2.SizeService/Update": true, + "/metalstack.admin.v2.SwitchService/ConnectedMachines": false, + "/metalstack.admin.v2.SwitchService/Delete": true, + "/metalstack.admin.v2.SwitchService/Get": false, + "/metalstack.admin.v2.SwitchService/List": false, + "/metalstack.admin.v2.SwitchService/Migrate": true, + "/metalstack.admin.v2.SwitchService/Port": true, + "/metalstack.admin.v2.SwitchService/Update": true, + "/metalstack.admin.v2.TaskService/Delete": true, + "/metalstack.admin.v2.TaskService/Get": true, + "/metalstack.admin.v2.TaskService/List": true, + "/metalstack.admin.v2.TaskService/Queues": true, + "/metalstack.admin.v2.TenantService/AddMember": true, + "/metalstack.admin.v2.TenantService/Create": true, + "/metalstack.admin.v2.TenantService/List": true, + "/metalstack.admin.v2.TenantService/RemoveMember": true, + "/metalstack.admin.v2.TokenService/Create": true, + "/metalstack.admin.v2.TokenService/List": true, + "/metalstack.admin.v2.TokenService/Revoke": true, + "/metalstack.admin.v2.VPNService/AuthKey": true, + "/metalstack.admin.v2.VPNService/ListNodes": true, + "/metalstack.api.v2.AuditService/Get": false, + "/metalstack.api.v2.AuditService/List": false, + "/metalstack.api.v2.FilesystemService/Get": false, + "/metalstack.api.v2.FilesystemService/List": false, + "/metalstack.api.v2.HealthService/Get": false, + "/metalstack.api.v2.IPService/Create": true, + "/metalstack.api.v2.IPService/Delete": true, + "/metalstack.api.v2.IPService/Get": false, + "/metalstack.api.v2.IPService/List": false, + "/metalstack.api.v2.IPService/Update": true, + "/metalstack.api.v2.ImageService/Get": false, + "/metalstack.api.v2.ImageService/Latest": false, + "/metalstack.api.v2.ImageService/List": false, + "/metalstack.api.v2.MachineService/BMCCommand": true, + "/metalstack.api.v2.MachineService/Create": true, + "/metalstack.api.v2.MachineService/Delete": true, + "/metalstack.api.v2.MachineService/Get": false, + "/metalstack.api.v2.MachineService/GetBMC": true, + "/metalstack.api.v2.MachineService/List": false, + "/metalstack.api.v2.MachineService/Update": true, + "/metalstack.api.v2.MethodService/List": true, + "/metalstack.api.v2.MethodService/TokenScopedList": true, + "/metalstack.api.v2.NetworkService/Create": true, + "/metalstack.api.v2.NetworkService/Delete": true, + "/metalstack.api.v2.NetworkService/Get": false, + "/metalstack.api.v2.NetworkService/List": false, + "/metalstack.api.v2.NetworkService/ListBaseNetworks": false, + "/metalstack.api.v2.NetworkService/Update": true, + "/metalstack.api.v2.PartitionService/Get": false, + "/metalstack.api.v2.PartitionService/List": false, + "/metalstack.api.v2.ProjectService/AddMember": true, + "/metalstack.api.v2.ProjectService/Create": true, + "/metalstack.api.v2.ProjectService/Delete": true, + "/metalstack.api.v2.ProjectService/Get": false, + "/metalstack.api.v2.ProjectService/Invite": true, + "/metalstack.api.v2.ProjectService/InviteAccept": true, + "/metalstack.api.v2.ProjectService/InviteDelete": true, + "/metalstack.api.v2.ProjectService/InviteGet": false, + "/metalstack.api.v2.ProjectService/InvitesList": false, + "/metalstack.api.v2.ProjectService/Leave": true, + "/metalstack.api.v2.ProjectService/List": false, + "/metalstack.api.v2.ProjectService/RemoveMember": true, + "/metalstack.api.v2.ProjectService/Update": true, + "/metalstack.api.v2.ProjectService/UpdateMember": true, + "/metalstack.api.v2.SizeImageConstraintService/Try": false, + "/metalstack.api.v2.SizeReservationService/Get": false, + "/metalstack.api.v2.SizeReservationService/List": false, + "/metalstack.api.v2.SizeService/Get": false, + "/metalstack.api.v2.SizeService/List": false, + "/metalstack.api.v2.TenantService/AddMember": true, + "/metalstack.api.v2.TenantService/Create": true, + "/metalstack.api.v2.TenantService/Delete": true, + "/metalstack.api.v2.TenantService/Get": false, + "/metalstack.api.v2.TenantService/Invite": true, + "/metalstack.api.v2.TenantService/InviteAccept": true, + "/metalstack.api.v2.TenantService/InviteDelete": true, + "/metalstack.api.v2.TenantService/InviteGet": false, + "/metalstack.api.v2.TenantService/InvitesList": false, + "/metalstack.api.v2.TenantService/Leave": true, + "/metalstack.api.v2.TenantService/List": false, + "/metalstack.api.v2.TenantService/RemoveMember": true, + "/metalstack.api.v2.TenantService/Update": true, + "/metalstack.api.v2.TenantService/UpdateMember": true, + "/metalstack.api.v2.TokenService/Create": true, + "/metalstack.api.v2.TokenService/Get": true, + "/metalstack.api.v2.TokenService/List": true, + "/metalstack.api.v2.TokenService/Refresh": true, + "/metalstack.api.v2.TokenService/Revoke": true, + "/metalstack.api.v2.TokenService/Update": true, + "/metalstack.api.v2.UserService/Get": true, + "/metalstack.api.v2.VersionService/Get": false, + "/metalstack.infra.v2.BMCService/BMCCommandDone": true, + "/metalstack.infra.v2.BMCService/UpdateBMCInfo": false, + "/metalstack.infra.v2.BMCService/WaitForBMCCommand": false, + "/metalstack.infra.v2.BootService/Boot": false, + "/metalstack.infra.v2.BootService/Dhcp": false, + "/metalstack.infra.v2.BootService/InstallationSucceeded": false, + "/metalstack.infra.v2.BootService/Register": false, + "/metalstack.infra.v2.BootService/SuperUserPassword": false, + "/metalstack.infra.v2.BootService/Wait": false, + "/metalstack.infra.v2.ComponentService/Ping": false, + "/metalstack.infra.v2.EventService/Send": false, + "/metalstack.infra.v2.SwitchService/Get": false, + "/metalstack.infra.v2.SwitchService/Heartbeat": false, + "/metalstack.infra.v2.SwitchService/Register": false, }, } } diff --git a/js/metalstack/admin/v2/network_pb.d.ts b/js/metalstack/admin/v2/network_pb.d.ts index 6a911de3..69abe427 100644 --- a/js/metalstack/admin/v2/network_pb.d.ts +++ b/js/metalstack/admin/v2/network_pb.d.ts @@ -304,9 +304,9 @@ export declare const NetworkServiceListExternalMembersRequestSchema: GenMessage< /** * NetworkServiceAddExternalMemberRequest is the request payload for adding an external member to a network. * - * @generated from message metalstack.admin.v2.NetworkServiceAddExternalMemberRequest + * @generated from message metalstack.admin.v2.NetworkServiceAddExternalMembersRequest */ -export type NetworkServiceAddExternalMemberRequest = Message<"metalstack.admin.v2.NetworkServiceAddExternalMemberRequest"> & { +export type NetworkServiceAddExternalMembersRequest = Message<"metalstack.admin.v2.NetworkServiceAddExternalMembersRequest"> & { /** * Network to add the member to. * @@ -322,16 +322,16 @@ export type NetworkServiceAddExternalMemberRequest = Message<"metalstack.admin.v switchPorts: ExternalNetworkMember[]; }; /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberRequest. - * Use `create(NetworkServiceAddExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersRequest. + * Use `create(NetworkServiceAddExternalMembersRequestSchema)` to create a new message. */ -export declare const NetworkServiceAddExternalMemberRequestSchema: GenMessage; +export declare const NetworkServiceAddExternalMembersRequestSchema: GenMessage; /** * NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network. * - * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest + * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest */ -export type NetworkServiceRemoveExternalMemberRequest = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest"> & { +export type NetworkServiceRemoveExternalMembersRequest = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest"> & { /** * Network to remove the member from. * @@ -346,10 +346,10 @@ export type NetworkServiceRemoveExternalMemberRequest = Message<"metalstack.admi switchPorts: ExternalNetworkMember[]; }; /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest. - * Use `create(NetworkServiceRemoveExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest. + * Use `create(NetworkServiceRemoveExternalMembersRequestSchema)` to create a new message. */ -export declare const NetworkServiceRemoveExternalMemberRequestSchema: GenMessage; +export declare const NetworkServiceRemoveExternalMembersRequestSchema: GenMessage; /** * NetworkServiceCreateResponse is the response payload for creating a network. * @@ -443,9 +443,9 @@ export declare const NetworkServiceListExternalMembersResponseSchema: GenMessage /** * NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network. * - * @generated from message metalstack.admin.v2.NetworkServiceAddExternalMemberResponse + * @generated from message metalstack.admin.v2.NetworkServiceAddExternalMembersResponse */ -export type NetworkServiceAddExternalMemberResponse = Message<"metalstack.admin.v2.NetworkServiceAddExternalMemberResponse"> & { +export type NetworkServiceAddExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceAddExternalMembersResponse"> & { /** * Switch contains the updated switch. * @@ -454,16 +454,16 @@ export type NetworkServiceAddExternalMemberResponse = Message<"metalstack.admin. switch?: Switch | undefined; }; /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberResponse. - * Use `create(NetworkServiceAddExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersResponse. + * Use `create(NetworkServiceAddExternalMembersResponseSchema)` to create a new message. */ -export declare const NetworkServiceAddExternalMemberResponseSchema: GenMessage; +export declare const NetworkServiceAddExternalMembersResponseSchema: GenMessage; /** * NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. * - * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse + * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse */ -export type NetworkServiceRemoveExternalMemberResponse = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse"> & { +export type NetworkServiceRemoveExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse"> & { /** * Switch contains the updated switch. * @@ -472,10 +472,10 @@ export type NetworkServiceRemoveExternalMemberResponse = Message<"metalstack.adm switch?: Switch | undefined; }; /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse. - * Use `create(NetworkServiceRemoveExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse. + * Use `create(NetworkServiceRemoveExternalMembersResponseSchema)` to create a new message. */ -export declare const NetworkServiceRemoveExternalMemberResponseSchema: GenMessage; +export declare const NetworkServiceRemoveExternalMembersResponseSchema: GenMessage; /** * NetworkService provides network management operations. * @@ -545,21 +545,21 @@ export declare const NetworkService: GenService<{ /** * Adds an external member to a network. * - * @generated from rpc metalstack.admin.v2.NetworkService.AddExternalMember + * @generated from rpc metalstack.admin.v2.NetworkService.AddExternalMembers */ - addExternalMember: { + addExternalMembers: { methodKind: "unary"; - input: typeof NetworkServiceAddExternalMemberRequestSchema; - output: typeof NetworkServiceAddExternalMemberResponseSchema; + input: typeof NetworkServiceAddExternalMembersRequestSchema; + output: typeof NetworkServiceAddExternalMembersResponseSchema; }; /** * Removes an external member from a network. * - * @generated from rpc metalstack.admin.v2.NetworkService.RemoveExternalMember + * @generated from rpc metalstack.admin.v2.NetworkService.RemoveExternalMembers */ - removeExternalMember: { + removeExternalMembers: { methodKind: "unary"; - input: typeof NetworkServiceRemoveExternalMemberRequestSchema; - output: typeof NetworkServiceRemoveExternalMemberResponseSchema; + input: typeof NetworkServiceRemoveExternalMembersRequestSchema; + output: typeof NetworkServiceRemoveExternalMembersResponseSchema; }; }>; diff --git a/js/metalstack/admin/v2/network_pb.js b/js/metalstack/admin/v2/network_pb.js index d459084d..afe9d17b 100644 --- a/js/metalstack/admin/v2/network_pb.js +++ b/js/metalstack/admin/v2/network_pb.js @@ -10,7 +10,7 @@ import { file_metalstack_api_v2_switch } from "../../api/v2/switch_pb"; /** * Describes the file metalstack/admin/v2/network.proto. */ -export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKQAQomTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlclJlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESSAoMc3dpdGNoX3BvcnRzGAIgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyQgi6SAWSAQIQCCKTAQopTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlclJlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESSAoMc3dpdGNoX3BvcnRzGAIgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyQgi6SAWSAQIQCCJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIksKHE5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJKChpOZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZRIsCghuZXR3b3JrcxgBIAMoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiZgopTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USOQoHbWVtYmVycxgBIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlciJUCidOZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlcKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJSZXNwb25zZRIpCgZzd2l0Y2gYASABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2gyyQgKDk5ldHdvcmtTZXJ2aWNlEnAKA0dldBItLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0Gi4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlc3BvbnNlIgrS8xgCAQLg8xgCEngKBkNyZWF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGVXBkYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZEZWxldGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBEnMKBExpc3QSLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlIgrS8xgCAQLg8xgCEqABChNMaXN0RXh0ZXJuYWxNZW1iZXJzEj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIK0vMYAgEC4PMYAhKZAQoRQWRkRXh0ZXJuYWxNZW1iZXISOy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJSZXF1ZXN0GjwubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyUmVzcG9uc2UiCdLzGAEB4PMYARKiAQoUUmVtb3ZlRXh0ZXJuYWxNZW1iZXISPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJSZXF1ZXN0Gj8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyUmVzcG9uc2UiCdLzGAEB4PMYAULQAQoXY29tLm1ldGFsc3RhY2suYWRtaW4udjJCDE5ldHdvcmtQcm90b1ABWjlnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FkbWluL3YyO2FkbWludjKiAgNNQViqAhNNZXRhbHN0YWNrLkFkbWluLlYyygITTWV0YWxzdGFja1xBZG1pblxWMuICH01ldGFsc3RhY2tcQWRtaW5cVjJcR1BCTWV0YWRhdGHqAhVNZXRhbHN0YWNrOjpBZG1pbjo6VjJiBnByb3RvMw", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); +export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlUKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlgKK05ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoMs8ICg5OZXR3b3JrU2VydmljZRJwCgNHZXQSLS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXNwb25zZSIK0vMYAgEC4PMYAhJ4CgZDcmVhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBlVwZGF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGRGVsZXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARJzCgRMaXN0Ei4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAhKgAQoTTGlzdEV4dGVybmFsTWVtYmVycxI9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo+Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2UiCtLzGAIBAuDzGAISnAEKEkFkZEV4dGVybmFsTWVtYmVycxI8Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAESpQEKFVJlbW92ZUV4dGVybmFsTWVtYmVycxI/Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0GkAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAFC0AEKF2NvbS5tZXRhbHN0YWNrLmFkbWluLnYyQgxOZXR3b3JrUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * Describes the message metalstack.admin.v2.NetworkServiceGetRequest. * Use `create(NetworkServiceGetRequestSchema)` to create a new message. @@ -47,15 +47,15 @@ export const NetworkServiceListRequestSchema = /*@__PURE__*/ messageDesc(file_me */ export const NetworkServiceListExternalMembersRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 6); /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberRequest. - * Use `create(NetworkServiceAddExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersRequest. + * Use `create(NetworkServiceAddExternalMembersRequestSchema)` to create a new message. */ -export const NetworkServiceAddExternalMemberRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 7); +export const NetworkServiceAddExternalMembersRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 7); /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest. - * Use `create(NetworkServiceRemoveExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest. + * Use `create(NetworkServiceRemoveExternalMembersRequestSchema)` to create a new message. */ -export const NetworkServiceRemoveExternalMemberRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 8); +export const NetworkServiceRemoveExternalMembersRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 8); /** * Describes the message metalstack.admin.v2.NetworkServiceCreateResponse. * Use `create(NetworkServiceCreateResponseSchema)` to create a new message. @@ -82,15 +82,15 @@ export const NetworkServiceListResponseSchema = /*@__PURE__*/ messageDesc(file_m */ export const NetworkServiceListExternalMembersResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 13); /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberResponse. - * Use `create(NetworkServiceAddExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersResponse. + * Use `create(NetworkServiceAddExternalMembersResponseSchema)` to create a new message. */ -export const NetworkServiceAddExternalMemberResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 14); +export const NetworkServiceAddExternalMembersResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 14); /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse. - * Use `create(NetworkServiceRemoveExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse. + * Use `create(NetworkServiceRemoveExternalMembersResponseSchema)` to create a new message. */ -export const NetworkServiceRemoveExternalMemberResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 15); +export const NetworkServiceRemoveExternalMembersResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 15); /** * NetworkService provides network management operations. * diff --git a/js/metalstack/admin/v2/network_pb.ts b/js/metalstack/admin/v2/network_pb.ts index d7df24a2..1853919f 100644 --- a/js/metalstack/admin/v2/network_pb.ts +++ b/js/metalstack/admin/v2/network_pb.ts @@ -18,7 +18,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/admin/v2/network.proto. */ export const file_metalstack_admin_v2_network: GenFile = /*@__PURE__*/ - fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKQAQomTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlclJlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESSAoMc3dpdGNoX3BvcnRzGAIgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyQgi6SAWSAQIQCCKTAQopTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlclJlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESSAoMc3dpdGNoX3BvcnRzGAIgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyQgi6SAWSAQIQCCJLChxOZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIksKHE5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJKChpOZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZRIsCghuZXR3b3JrcxgBIAMoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiZgopTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USOQoHbWVtYmVycxgBIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlciJUCidOZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlcKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJSZXNwb25zZRIpCgZzd2l0Y2gYASABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2gyyQgKDk5ldHdvcmtTZXJ2aWNlEnAKA0dldBItLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0Gi4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlc3BvbnNlIgrS8xgCAQLg8xgCEngKBkNyZWF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGVXBkYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZEZWxldGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBEnMKBExpc3QSLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlIgrS8xgCAQLg8xgCEqABChNMaXN0RXh0ZXJuYWxNZW1iZXJzEj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIK0vMYAgEC4PMYAhKZAQoRQWRkRXh0ZXJuYWxNZW1iZXISOy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJSZXF1ZXN0GjwubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyUmVzcG9uc2UiCdLzGAEB4PMYARKiAQoUUmVtb3ZlRXh0ZXJuYWxNZW1iZXISPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJSZXF1ZXN0Gj8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyUmVzcG9uc2UiCdLzGAEB4PMYAULQAQoXY29tLm1ldGFsc3RhY2suYWRtaW4udjJCDE5ldHdvcmtQcm90b1ABWjlnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FkbWluL3YyO2FkbWludjKiAgNNQViqAhNNZXRhbHN0YWNrLkFkbWluLlYyygITTWV0YWxzdGFja1xBZG1pblxWMuICH01ldGFsc3RhY2tcQWRtaW5cVjJcR1BCTWV0YWRhdGHqAhVNZXRhbHN0YWNrOjpBZG1pbjo6VjJiBnByb3RvMw", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); + fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlUKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlgKK05ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoMs8ICg5OZXR3b3JrU2VydmljZRJwCgNHZXQSLS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXNwb25zZSIK0vMYAgEC4PMYAhJ4CgZDcmVhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBlVwZGF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGRGVsZXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARJzCgRMaXN0Ei4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAhKgAQoTTGlzdEV4dGVybmFsTWVtYmVycxI9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo+Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2UiCtLzGAIBAuDzGAISnAEKEkFkZEV4dGVybmFsTWVtYmVycxI8Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAESpQEKFVJlbW92ZUV4dGVybmFsTWVtYmVycxI/Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0GkAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAFC0AEKF2NvbS5tZXRhbHN0YWNrLmFkbWluLnYyQgxOZXR3b3JrUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * NetworkServiceGetRequest is the request payload for getting a network. @@ -366,9 +366,9 @@ export const NetworkServiceListExternalMembersRequestSchema: GenMessage & { +export type NetworkServiceAddExternalMembersRequest = Message<"metalstack.admin.v2.NetworkServiceAddExternalMembersRequest"> & { /** * Network to add the member to. * @@ -386,18 +386,18 @@ export type NetworkServiceAddExternalMemberRequest = Message<"metalstack.admin.v }; /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberRequest. - * Use `create(NetworkServiceAddExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersRequest. + * Use `create(NetworkServiceAddExternalMembersRequestSchema)` to create a new message. */ -export const NetworkServiceAddExternalMemberRequestSchema: GenMessage = /*@__PURE__*/ +export const NetworkServiceAddExternalMembersRequestSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 7); /** * NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network. * - * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest + * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest */ -export type NetworkServiceRemoveExternalMemberRequest = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest"> & { +export type NetworkServiceRemoveExternalMembersRequest = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest"> & { /** * Network to remove the member from. * @@ -414,10 +414,10 @@ export type NetworkServiceRemoveExternalMemberRequest = Message<"metalstack.admi }; /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest. - * Use `create(NetworkServiceRemoveExternalMemberRequestSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest. + * Use `create(NetworkServiceRemoveExternalMembersRequestSchema)` to create a new message. */ -export const NetworkServiceRemoveExternalMemberRequestSchema: GenMessage = /*@__PURE__*/ +export const NetworkServiceRemoveExternalMembersRequestSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 8); /** @@ -528,9 +528,9 @@ export const NetworkServiceListExternalMembersResponseSchema: GenMessage & { +export type NetworkServiceAddExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceAddExternalMembersResponse"> & { /** * Switch contains the updated switch. * @@ -540,18 +540,18 @@ export type NetworkServiceAddExternalMemberResponse = Message<"metalstack.admin. }; /** - * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMemberResponse. - * Use `create(NetworkServiceAddExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersResponse. + * Use `create(NetworkServiceAddExternalMembersResponseSchema)` to create a new message. */ -export const NetworkServiceAddExternalMemberResponseSchema: GenMessage = /*@__PURE__*/ +export const NetworkServiceAddExternalMembersResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 14); /** * NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. * - * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse + * @generated from message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse */ -export type NetworkServiceRemoveExternalMemberResponse = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse"> & { +export type NetworkServiceRemoveExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse"> & { /** * Switch contains the updated switch. * @@ -561,10 +561,10 @@ export type NetworkServiceRemoveExternalMemberResponse = Message<"metalstack.adm }; /** - * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse. - * Use `create(NetworkServiceRemoveExternalMemberResponseSchema)` to create a new message. + * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse. + * Use `create(NetworkServiceRemoveExternalMembersResponseSchema)` to create a new message. */ -export const NetworkServiceRemoveExternalMemberResponseSchema: GenMessage = /*@__PURE__*/ +export const NetworkServiceRemoveExternalMembersResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_network, 15); /** @@ -636,22 +636,22 @@ export const NetworkService: GenService<{ /** * Adds an external member to a network. * - * @generated from rpc metalstack.admin.v2.NetworkService.AddExternalMember + * @generated from rpc metalstack.admin.v2.NetworkService.AddExternalMembers */ - addExternalMember: { + addExternalMembers: { methodKind: "unary"; - input: typeof NetworkServiceAddExternalMemberRequestSchema; - output: typeof NetworkServiceAddExternalMemberResponseSchema; + input: typeof NetworkServiceAddExternalMembersRequestSchema; + output: typeof NetworkServiceAddExternalMembersResponseSchema; }, /** * Removes an external member from a network. * - * @generated from rpc metalstack.admin.v2.NetworkService.RemoveExternalMember + * @generated from rpc metalstack.admin.v2.NetworkService.RemoveExternalMembers */ - removeExternalMember: { + removeExternalMembers: { methodKind: "unary"; - input: typeof NetworkServiceRemoveExternalMemberRequestSchema; - output: typeof NetworkServiceRemoveExternalMemberResponseSchema; + input: typeof NetworkServiceRemoveExternalMembersRequestSchema; + output: typeof NetworkServiceRemoveExternalMembersResponseSchema; }, }> = /*@__PURE__*/ serviceDesc(file_metalstack_admin_v2_network, 0); diff --git a/proto/metalstack/admin/v2/network.proto b/proto/metalstack/admin/v2/network.proto index c8aabc5c..7206c744 100644 --- a/proto/metalstack/admin/v2/network.proto +++ b/proto/metalstack/admin/v2/network.proto @@ -44,12 +44,12 @@ service NetworkService { option (metalstack.api.v2.auditing) = AUDITING_EXCLUDED; } // Adds an external member to a network. - rpc AddExternalMember(NetworkServiceAddExternalMemberRequest) returns (NetworkServiceAddExternalMemberResponse) { + rpc AddExternalMembers(NetworkServiceAddExternalMembersRequest) returns (NetworkServiceAddExternalMembersResponse) { option (metalstack.api.v2.admin_roles) = ADMIN_ROLE_EDITOR; option (metalstack.api.v2.auditing) = AUDITING_INCLUDED; } // Removes an external member from a network. - rpc RemoveExternalMember(NetworkServiceRemoveExternalMemberRequest) returns (NetworkServiceRemoveExternalMemberResponse) { + rpc RemoveExternalMembers(NetworkServiceRemoveExternalMembersRequest) returns (NetworkServiceRemoveExternalMembersResponse) { option (metalstack.api.v2.admin_roles) = ADMIN_ROLE_EDITOR; option (metalstack.api.v2.auditing) = AUDITING_INCLUDED; } @@ -155,7 +155,7 @@ message NetworkServiceListExternalMembersRequest { } // NetworkServiceAddExternalMemberRequest is the request payload for adding an external member to a network. -message NetworkServiceAddExternalMemberRequest { +message NetworkServiceAddExternalMembersRequest { // Network to add the member to. string network = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; // SwitchPorts contains the ports of a switch that should be added to the network. @@ -164,7 +164,7 @@ message NetworkServiceAddExternalMemberRequest { } // NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network. -message NetworkServiceRemoveExternalMemberRequest { +message NetworkServiceRemoveExternalMembersRequest { // Network to remove the member from. string network = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; // SwitchPorts contains the ports of a switch that should be removed from the network. @@ -202,13 +202,13 @@ message NetworkServiceListExternalMembersResponse { } // NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network. -message NetworkServiceAddExternalMemberResponse { +message NetworkServiceAddExternalMembersResponse { // Switch contains the updated switch. metalstack.api.v2.Switch switch = 1; } // NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. -message NetworkServiceRemoveExternalMemberResponse { +message NetworkServiceRemoveExternalMembersResponse { // Switch contains the updated switch. metalstack.api.v2.Switch switch = 1; } diff --git a/python/metalstack/admin/v2/network_connect.py b/python/metalstack/admin/v2/network_connect.py index e881d653..3666c6db 100644 --- a/python/metalstack/admin/v2/network_connect.py +++ b/python/metalstack/admin/v2/network_connect.py @@ -36,10 +36,10 @@ async def list(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.Netwo async def list_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceListExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceListExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - async def add_external_member(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse: + async def add_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - async def remove_external_member(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse: + async def remove_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") @@ -108,25 +108,25 @@ def __init__(self, service: NetworkService | AsyncGenerator[NetworkService], *, ), function=svc.list_external_members, ), - "/metalstack.admin.v2.NetworkService/AddExternalMember": Endpoint.unary( + "/metalstack.admin.v2.NetworkService/AddExternalMembers": Endpoint.unary( method=MethodInfo( - name="AddExternalMember", + name="AddExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), - function=svc.add_external_member, + function=svc.add_external_members, ), - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": Endpoint.unary( + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": Endpoint.unary( method=MethodInfo( - name="RemoveExternalMember", + name="RemoveExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), - function=svc.remove_external_member, + function=svc.remove_external_members, ), }, interceptors=interceptors, @@ -262,40 +262,40 @@ async def list_external_members( timeout_ms=timeout_ms, ) - async def add_external_member( + async def add_external_members( self, - request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, + request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, *, headers: Headers | Mapping[str, str] | None = None, timeout_ms: int | None = None, - ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse: + ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse: return await self.execute_unary( request=request, method=MethodInfo( - name="AddExternalMember", + name="AddExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), headers=headers, timeout_ms=timeout_ms, ) - async def remove_external_member( + async def remove_external_members( self, - request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, + request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, *, headers: Headers | Mapping[str, str] | None = None, timeout_ms: int | None = None, - ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse: + ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse: return await self.execute_unary( request=request, method=MethodInfo( - name="RemoveExternalMember", + name="RemoveExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), headers=headers, @@ -319,9 +319,9 @@ def list(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") def list_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceListExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceListExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - def add_external_member(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse: + def add_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - def remove_external_member(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse: + def remove_external_members(self, request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") @@ -389,25 +389,25 @@ def __init__(self, service: NetworkServiceSync, interceptors: Iterable[Intercept ), function=service.list_external_members, ), - "/metalstack.admin.v2.NetworkService/AddExternalMember": EndpointSync.unary( + "/metalstack.admin.v2.NetworkService/AddExternalMembers": EndpointSync.unary( method=MethodInfo( - name="AddExternalMember", + name="AddExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), - function=service.add_external_member, + function=service.add_external_members, ), - "/metalstack.admin.v2.NetworkService/RemoveExternalMember": EndpointSync.unary( + "/metalstack.admin.v2.NetworkService/RemoveExternalMembers": EndpointSync.unary( method=MethodInfo( - name="RemoveExternalMember", + name="RemoveExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), - function=service.remove_external_member, + function=service.remove_external_members, ), }, interceptors=interceptors, @@ -543,40 +543,40 @@ def list_external_members( timeout_ms=timeout_ms, ) - def add_external_member( + def add_external_members( self, - request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, + request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, *, headers: Headers | Mapping[str, str] | None = None, timeout_ms: int | None = None, - ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse: + ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse: return self.execute_unary( request=request, method=MethodInfo( - name="AddExternalMember", + name="AddExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceAddExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), headers=headers, timeout_ms=timeout_ms, ) - def remove_external_member( + def remove_external_members( self, - request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, + request: metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, *, headers: Headers | Mapping[str, str] | None = None, timeout_ms: int | None = None, - ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse: + ) -> metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse: return self.execute_unary( request=request, method=MethodInfo( - name="RemoveExternalMember", + name="RemoveExternalMembers", service_name="metalstack.admin.v2.NetworkService", - input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberRequest, - output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMemberResponse, + input=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersRequest, + output=metalstack_dot_admin_dot_v2_dot_network__pb2.NetworkServiceRemoveExternalMembersResponse, idempotency_level=IdempotencyLevel.UNKNOWN, ), headers=headers, diff --git a/python/metalstack/admin/v2/network_pb2.py b/python/metalstack/admin/v2/network_pb2.py index 882dec0c..d4fb2699 100644 --- a/python/metalstack/admin/v2/network_pb2.py +++ b/python/metalstack/admin/v2/network_pb2.py @@ -29,7 +29,7 @@ from metalstack.api.v2 import switch_pb2 as metalstack_dot_api_dot_v2_dot_switch__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa6\x01\n&NetworkServiceAddExternalMemberRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"\xa9\x01\n)NetworkServiceRemoveExternalMemberRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"\\\n\'NetworkServiceAddExternalMemberResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"_\n*NetworkServiceRemoveExternalMemberResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch2\xc9\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x99\x01\n\x11\x41\x64\x64\x45xternalMember\x12;.metalstack.admin.v2.NetworkServiceAddExternalMemberRequest\x1a<.metalstack.admin.v2.NetworkServiceAddExternalMemberResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa2\x01\n\x14RemoveExternalMember\x12>.metalstack.admin.v2.NetworkServiceRemoveExternalMemberRequest\x1a?.metalstack.admin.v2.NetworkServiceRemoveExternalMemberResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n\'NetworkServiceAddExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"\xaa\x01\n*NetworkServiceRemoveExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"]\n(NetworkServiceAddExternalMembersResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"`\n+NetworkServiceRemoveExternalMembersResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch2\xcf\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n\x12\x41\x64\x64\x45xternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -83,14 +83,14 @@ _globals['_NETWORKSERVICEDELETEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST'].fields_by_name['network']._loaded_options = None _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST'].fields_by_name['network']._loaded_options = None - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST'].fields_by_name['switch_ports']._loaded_options = None - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST'].fields_by_name['network']._loaded_options = None - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST'].fields_by_name['switch_ports']._loaded_options = None - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['network']._loaded_options = None + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._loaded_options = None + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['network']._loaded_options = None + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._loaded_options = None + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' _globals['_NETWORKSERVICE'].methods_by_name['Get']._loaded_options = None _globals['_NETWORKSERVICE'].methods_by_name['Get']._serialized_options = b'\322\363\030\002\001\002\340\363\030\002' _globals['_NETWORKSERVICE'].methods_by_name['Create']._loaded_options = None @@ -103,10 +103,10 @@ _globals['_NETWORKSERVICE'].methods_by_name['List']._serialized_options = b'\322\363\030\002\001\002\340\363\030\002' _globals['_NETWORKSERVICE'].methods_by_name['ListExternalMembers']._loaded_options = None _globals['_NETWORKSERVICE'].methods_by_name['ListExternalMembers']._serialized_options = b'\322\363\030\002\001\002\340\363\030\002' - _globals['_NETWORKSERVICE'].methods_by_name['AddExternalMember']._loaded_options = None - _globals['_NETWORKSERVICE'].methods_by_name['AddExternalMember']._serialized_options = b'\322\363\030\001\001\340\363\030\001' - _globals['_NETWORKSERVICE'].methods_by_name['RemoveExternalMember']._loaded_options = None - _globals['_NETWORKSERVICE'].methods_by_name['RemoveExternalMember']._serialized_options = b'\322\363\030\001\001\340\363\030\001' + _globals['_NETWORKSERVICE'].methods_by_name['AddExternalMembers']._loaded_options = None + _globals['_NETWORKSERVICE'].methods_by_name['AddExternalMembers']._serialized_options = b'\322\363\030\001\001\340\363\030\001' + _globals['_NETWORKSERVICE'].methods_by_name['RemoveExternalMembers']._loaded_options = None + _globals['_NETWORKSERVICE'].methods_by_name['RemoveExternalMembers']._serialized_options = b'\322\363\030\001\001\340\363\030\001' _globals['_NETWORKSERVICEGETREQUEST']._serialized_start=226 _globals['_NETWORKSERVICEGETREQUEST']._serialized_end=281 _globals['_NETWORKSERVICEGETRESPONSE']._serialized_start=283 @@ -121,24 +121,24 @@ _globals['_NETWORKSERVICELISTREQUEST']._serialized_end=2580 _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST']._serialized_start=2583 _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST']._serialized_end=2733 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST']._serialized_start=2736 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERREQUEST']._serialized_end=2902 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST']._serialized_start=2905 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERREQUEST']._serialized_end=3074 - _globals['_NETWORKSERVICECREATERESPONSE']._serialized_start=3076 - _globals['_NETWORKSERVICECREATERESPONSE']._serialized_end=3160 - _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_start=3162 - _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_end=3246 - _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_start=3248 - _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_end=3332 - _globals['_NETWORKSERVICELISTRESPONSE']._serialized_start=3334 - _globals['_NETWORKSERVICELISTRESPONSE']._serialized_end=3418 - _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_start=3420 - _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_end=3531 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERRESPONSE']._serialized_start=3533 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERRESPONSE']._serialized_end=3625 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERRESPONSE']._serialized_start=3627 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERRESPONSE']._serialized_end=3722 - _globals['_NETWORKSERVICE']._serialized_start=3725 - _globals['_NETWORKSERVICE']._serialized_end=4822 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST']._serialized_start=2736 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST']._serialized_end=2903 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_start=2906 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_end=3076 + _globals['_NETWORKSERVICECREATERESPONSE']._serialized_start=3078 + _globals['_NETWORKSERVICECREATERESPONSE']._serialized_end=3162 + _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_start=3164 + _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_end=3248 + _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_start=3250 + _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_end=3334 + _globals['_NETWORKSERVICELISTRESPONSE']._serialized_start=3336 + _globals['_NETWORKSERVICELISTRESPONSE']._serialized_end=3420 + _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_start=3422 + _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_end=3533 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_start=3535 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_end=3628 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_start=3630 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_end=3726 + _globals['_NETWORKSERVICE']._serialized_start=3729 + _globals['_NETWORKSERVICE']._serialized_end=4832 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/admin/v2/network_pb2.pyi b/python/metalstack/admin/v2/network_pb2.pyi index e2c8a08f..66be3370 100644 --- a/python/metalstack/admin/v2/network_pb2.pyi +++ b/python/metalstack/admin/v2/network_pb2.pyi @@ -109,7 +109,7 @@ class NetworkServiceListExternalMembersRequest(_message.Message): query: _network_pb2.ExternalNetworkMemberQuery def __init__(self, network: _Optional[str] = ..., query: _Optional[_Union[_network_pb2.ExternalNetworkMemberQuery, _Mapping]] = ...) -> None: ... -class NetworkServiceAddExternalMemberRequest(_message.Message): +class NetworkServiceAddExternalMembersRequest(_message.Message): __slots__ = ("network", "switch_ports") NETWORK_FIELD_NUMBER: _ClassVar[int] SWITCH_PORTS_FIELD_NUMBER: _ClassVar[int] @@ -117,7 +117,7 @@ class NetworkServiceAddExternalMemberRequest(_message.Message): switch_ports: _containers.RepeatedCompositeFieldContainer[_network_pb2.ExternalNetworkMember] def __init__(self, network: _Optional[str] = ..., switch_ports: _Optional[_Iterable[_Union[_network_pb2.ExternalNetworkMember, _Mapping]]] = ...) -> None: ... -class NetworkServiceRemoveExternalMemberRequest(_message.Message): +class NetworkServiceRemoveExternalMembersRequest(_message.Message): __slots__ = ("network", "switch_ports") NETWORK_FIELD_NUMBER: _ClassVar[int] SWITCH_PORTS_FIELD_NUMBER: _ClassVar[int] @@ -155,13 +155,13 @@ class NetworkServiceListExternalMembersResponse(_message.Message): members: _containers.RepeatedCompositeFieldContainer[_network_pb2.ExternalNetworkMember] def __init__(self, members: _Optional[_Iterable[_Union[_network_pb2.ExternalNetworkMember, _Mapping]]] = ...) -> None: ... -class NetworkServiceAddExternalMemberResponse(_message.Message): +class NetworkServiceAddExternalMembersResponse(_message.Message): __slots__ = ("switch",) SWITCH_FIELD_NUMBER: _ClassVar[int] switch: _switch_pb2.Switch def __init__(self, switch: _Optional[_Union[_switch_pb2.Switch, _Mapping]] = ...) -> None: ... -class NetworkServiceRemoveExternalMemberResponse(_message.Message): +class NetworkServiceRemoveExternalMembersResponse(_message.Message): __slots__ = ("switch",) SWITCH_FIELD_NUMBER: _ClassVar[int] switch: _switch_pb2.Switch From b7c1cf418cfd216577dece718d2bf00383d42763 Mon Sep 17 00:00:00 2001 From: Ilja Rotar Date: Mon, 31 Aug 2026 15:19:49 +0200 Subject: [PATCH 3/5] remove breaking check for now --- proto/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/proto/Makefile b/proto/Makefile index ef600128..254443ef 100644 --- a/proto/Makefile +++ b/proto/Makefile @@ -13,7 +13,7 @@ _buf: protolint: @$(MAKE) _buf CMD="format -w" @$(MAKE) _buf CMD="lint -v" - @$(MAKE) _buf CMD="breaking --against 'https://github.com/metal-stack/api.git#branch=main,subdir=proto'" + # @$(MAKE) _buf CMD="breaking --against 'https://github.com/metal-stack/api.git#branch=main,subdir=proto'" .PHONY: protoc protoc: From 63484ce293654643fb62f5b7b86aa8c0c0c4d19b Mon Sep 17 00:00:00 2001 From: Ilja Rotar Date: Mon, 31 Aug 2026 15:50:26 +0200 Subject: [PATCH 4/5] add and remove returns multiple switches --- doc/index.html | 12 ++++----- go/metalstack/admin/v2/network.pb.go | 30 +++++++++++----------- js/metalstack/admin/v2/network_pb.d.ts | 12 ++++----- js/metalstack/admin/v2/network_pb.js | 2 +- js/metalstack/admin/v2/network_pb.ts | 14 +++++----- proto/metalstack/admin/v2/network.proto | 8 +++--- python/metalstack/admin/v2/network_pb2.py | 12 ++++----- python/metalstack/admin/v2/network_pb2.pyi | 16 ++++++------ 8 files changed, 53 insertions(+), 53 deletions(-) diff --git a/doc/index.html b/doc/index.html index 61eb9ad6..7e2240ec 100644 --- a/doc/index.html +++ b/doc/index.html @@ -14608,10 +14608,10 @@

    NetworkSer - switch + switches metalstack.api.v2.Switch - -

    Switch contains the updated switch.

    + repeated +

    Switch contains the updated switches.

    @@ -15022,10 +15022,10 @@

    Network - switch + switches metalstack.api.v2.Switch - -

    Switch contains the updated switch.

    + repeated +

    Switch contains the updated switches.

    diff --git a/go/metalstack/admin/v2/network.pb.go b/go/metalstack/admin/v2/network.pb.go index 2e792fe6..1e91f4e7 100644 --- a/go/metalstack/admin/v2/network.pb.go +++ b/go/metalstack/admin/v2/network.pb.go @@ -941,8 +941,8 @@ func (x *NetworkServiceListExternalMembersResponse) GetMembers() []*v2.ExternalN // NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network. type NetworkServiceAddExternalMembersResponse struct { state protoimpl.MessageState `protogen:"open.v1"` - // Switch contains the updated switch. - Switch *v2.Switch `protobuf:"bytes,1,opt,name=switch,proto3" json:"switch,omitempty"` + // Switch contains the updated switches. + Switches []*v2.Switch `protobuf:"bytes,1,rep,name=switches,proto3" json:"switches,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -977,9 +977,9 @@ func (*NetworkServiceAddExternalMembersResponse) Descriptor() ([]byte, []int) { return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{14} } -func (x *NetworkServiceAddExternalMembersResponse) GetSwitch() *v2.Switch { +func (x *NetworkServiceAddExternalMembersResponse) GetSwitches() []*v2.Switch { if x != nil { - return x.Switch + return x.Switches } return nil } @@ -987,8 +987,8 @@ func (x *NetworkServiceAddExternalMembersResponse) GetSwitch() *v2.Switch { // NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. type NetworkServiceRemoveExternalMembersResponse struct { state protoimpl.MessageState `protogen:"open.v1"` - // Switch contains the updated switch. - Switch *v2.Switch `protobuf:"bytes,1,opt,name=switch,proto3" json:"switch,omitempty"` + // Switch contains the updated switches. + Switches []*v2.Switch `protobuf:"bytes,1,rep,name=switches,proto3" json:"switches,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -1023,9 +1023,9 @@ func (*NetworkServiceRemoveExternalMembersResponse) Descriptor() ([]byte, []int) return file_metalstack_admin_v2_network_proto_rawDescGZIP(), []int{15} } -func (x *NetworkServiceRemoveExternalMembersResponse) GetSwitch() *v2.Switch { +func (x *NetworkServiceRemoveExternalMembersResponse) GetSwitches() []*v2.Switch { if x != nil { - return x.Switch + return x.Switches } return nil } @@ -1115,11 +1115,11 @@ const file_metalstack_admin_v2_network_proto_rawDesc = "" + "\x1aNetworkServiceListResponse\x126\n" + "\bnetworks\x18\x01 \x03(\v2\x1a.metalstack.api.v2.NetworkR\bnetworks\"o\n" + ")NetworkServiceListExternalMembersResponse\x12B\n" + - "\amembers\x18\x01 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberR\amembers\"]\n" + - "(NetworkServiceAddExternalMembersResponse\x121\n" + - "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch\"`\n" + - "+NetworkServiceRemoveExternalMembersResponse\x121\n" + - "\x06switch\x18\x01 \x01(\v2\x19.metalstack.api.v2.SwitchR\x06switch2\xcf\b\n" + + "\amembers\x18\x01 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberR\amembers\"a\n" + + "(NetworkServiceAddExternalMembersResponse\x125\n" + + "\bswitches\x18\x01 \x03(\v2\x19.metalstack.api.v2.SwitchR\bswitches\"d\n" + + "+NetworkServiceRemoveExternalMembersResponse\x125\n" + + "\bswitches\x18\x01 \x03(\v2\x19.metalstack.api.v2.SwitchR\bswitches2\xcf\b\n" + "\x0eNetworkService\x12p\n" + "\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n" + "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n" + @@ -1200,8 +1200,8 @@ var file_metalstack_admin_v2_network_proto_depIdxs = []int32{ 16, // 19: metalstack.admin.v2.NetworkServiceDeleteResponse.network:type_name -> metalstack.api.v2.Network 16, // 20: metalstack.admin.v2.NetworkServiceListResponse.networks:type_name -> metalstack.api.v2.Network 26, // 21: metalstack.admin.v2.NetworkServiceListExternalMembersResponse.members:type_name -> metalstack.api.v2.ExternalNetworkMember - 27, // 22: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse.switch:type_name -> metalstack.api.v2.Switch - 27, // 23: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse.switch:type_name -> metalstack.api.v2.Switch + 27, // 22: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch + 27, // 23: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch 0, // 24: metalstack.admin.v2.NetworkService.Get:input_type -> metalstack.admin.v2.NetworkServiceGetRequest 2, // 25: metalstack.admin.v2.NetworkService.Create:input_type -> metalstack.admin.v2.NetworkServiceCreateRequest 3, // 26: metalstack.admin.v2.NetworkService.Update:input_type -> metalstack.admin.v2.NetworkServiceUpdateRequest diff --git a/js/metalstack/admin/v2/network_pb.d.ts b/js/metalstack/admin/v2/network_pb.d.ts index 69abe427..4f46523f 100644 --- a/js/metalstack/admin/v2/network_pb.d.ts +++ b/js/metalstack/admin/v2/network_pb.d.ts @@ -447,11 +447,11 @@ export declare const NetworkServiceListExternalMembersResponseSchema: GenMessage */ export type NetworkServiceAddExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceAddExternalMembersResponse"> & { /** - * Switch contains the updated switch. + * Switch contains the updated switches. * - * @generated from field: metalstack.api.v2.Switch switch = 1; + * @generated from field: repeated metalstack.api.v2.Switch switches = 1; */ - switch?: Switch | undefined; + switches: Switch[]; }; /** * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersResponse. @@ -465,11 +465,11 @@ export declare const NetworkServiceAddExternalMembersResponseSchema: GenMessage< */ export type NetworkServiceRemoveExternalMembersResponse = Message<"metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse"> & { /** - * Switch contains the updated switch. + * Switch contains the updated switches. * - * @generated from field: metalstack.api.v2.Switch switch = 1; + * @generated from field: repeated metalstack.api.v2.Switch switches = 1; */ - switch?: Switch | undefined; + switches: Switch[]; }; /** * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse. diff --git a/js/metalstack/admin/v2/network_pb.js b/js/metalstack/admin/v2/network_pb.js index afe9d17b..6977c1fa 100644 --- a/js/metalstack/admin/v2/network_pb.js +++ b/js/metalstack/admin/v2/network_pb.js @@ -10,7 +10,7 @@ import { file_metalstack_api_v2_switch } from "../../api/v2/switch_pb"; /** * Describes the file metalstack/admin/v2/network.proto. */ -export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlUKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlgKK05ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoMs8ICg5OZXR3b3JrU2VydmljZRJwCgNHZXQSLS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXNwb25zZSIK0vMYAgEC4PMYAhJ4CgZDcmVhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBlVwZGF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGRGVsZXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARJzCgRMaXN0Ei4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAhKgAQoTTGlzdEV4dGVybmFsTWVtYmVycxI9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo+Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2UiCtLzGAIBAuDzGAISnAEKEkFkZEV4dGVybmFsTWVtYmVycxI8Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAESpQEKFVJlbW92ZUV4dGVybmFsTWVtYmVycxI/Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0GkAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAFC0AEKF2NvbS5tZXRhbHN0YWNrLmFkbWluLnYyQgxOZXR3b3JrUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); +export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * Describes the message metalstack.admin.v2.NetworkServiceGetRequest. * Use `create(NetworkServiceGetRequestSchema)` to create a new message. diff --git a/js/metalstack/admin/v2/network_pb.ts b/js/metalstack/admin/v2/network_pb.ts index 1853919f..bbf16050 100644 --- a/js/metalstack/admin/v2/network_pb.ts +++ b/js/metalstack/admin/v2/network_pb.ts @@ -18,7 +18,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/admin/v2/network.proto. */ export const file_metalstack_admin_v2_network: GenFile = /*@__PURE__*/ - fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlUKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoIlgKK05ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKQoGc3dpdGNoGAEgASgLMhkubWV0YWxzdGFjay5hcGkudjIuU3dpdGNoMs8ICg5OZXR3b3JrU2VydmljZRJwCgNHZXQSLS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VHZXRSZXNwb25zZSIK0vMYAgEC4PMYAhJ4CgZDcmVhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBlVwZGF0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVVwZGF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESeAoGRGVsZXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARJzCgRMaXN0Ei4ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAhKgAQoTTGlzdEV4dGVybmFsTWVtYmVycxI9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo+Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0RXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2UiCtLzGAIBAuDzGAISnAEKEkFkZEV4dGVybmFsTWVtYmVycxI8Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0Gj0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUFkZEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAESpQEKFVJlbW92ZUV4dGVybmFsTWVtYmVycxI/Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0GkAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZVJlbW92ZUV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgnS8xgBAeDzGAFC0AEKF2NvbS5tZXRhbHN0YWNrLmFkbWluLnYyQgxOZXR3b3JrUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); + fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * NetworkServiceGetRequest is the request payload for getting a network. @@ -532,11 +532,11 @@ export const NetworkServiceListExternalMembersResponseSchema: GenMessage & { /** - * Switch contains the updated switch. + * Switch contains the updated switches. * - * @generated from field: metalstack.api.v2.Switch switch = 1; + * @generated from field: repeated metalstack.api.v2.Switch switches = 1; */ - switch?: Switch | undefined; + switches: Switch[]; }; /** @@ -553,11 +553,11 @@ export const NetworkServiceAddExternalMembersResponseSchema: GenMessage & { /** - * Switch contains the updated switch. + * Switch contains the updated switches. * - * @generated from field: metalstack.api.v2.Switch switch = 1; + * @generated from field: repeated metalstack.api.v2.Switch switches = 1; */ - switch?: Switch | undefined; + switches: Switch[]; }; /** diff --git a/proto/metalstack/admin/v2/network.proto b/proto/metalstack/admin/v2/network.proto index 7206c744..5ed3e269 100644 --- a/proto/metalstack/admin/v2/network.proto +++ b/proto/metalstack/admin/v2/network.proto @@ -203,12 +203,12 @@ message NetworkServiceListExternalMembersResponse { // NetworkServiceAddExternalMemberResponse is the response payload for adding an external member to a network. message NetworkServiceAddExternalMembersResponse { - // Switch contains the updated switch. - metalstack.api.v2.Switch switch = 1; + // Switch contains the updated switches. + repeated metalstack.api.v2.Switch switches = 1; } // NetworkServiceRemoveExternalMemberResponse is the response payload for removing an external member from a network. message NetworkServiceRemoveExternalMembersResponse { - // Switch contains the updated switch. - metalstack.api.v2.Switch switch = 1; + // Switch contains the updated switches. + repeated metalstack.api.v2.Switch switches = 1; } diff --git a/python/metalstack/admin/v2/network_pb2.py b/python/metalstack/admin/v2/network_pb2.py index d4fb2699..45e7bd07 100644 --- a/python/metalstack/admin/v2/network_pb2.py +++ b/python/metalstack/admin/v2/network_pb2.py @@ -29,7 +29,7 @@ from metalstack.api.v2 import switch_pb2 as metalstack_dot_api_dot_v2_dot_switch__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n\'NetworkServiceAddExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"\xaa\x01\n*NetworkServiceRemoveExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"]\n(NetworkServiceAddExternalMembersResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch\"`\n+NetworkServiceRemoveExternalMembersResponse\x12\x31\n\x06switch\x18\x01 \x01(\x0b\x32\x19.metalstack.api.v2.SwitchR\x06switch2\xcf\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n\x12\x41\x64\x64\x45xternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n\'NetworkServiceAddExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"\xaa\x01\n*NetworkServiceRemoveExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"a\n(NetworkServiceAddExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches\"d\n+NetworkServiceRemoveExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches2\xcf\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n\x12\x41\x64\x64\x45xternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -136,9 +136,9 @@ _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_start=3422 _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_end=3533 _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_start=3535 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_end=3628 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_start=3630 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_end=3726 - _globals['_NETWORKSERVICE']._serialized_start=3729 - _globals['_NETWORKSERVICE']._serialized_end=4832 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_end=3632 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_start=3634 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_end=3734 + _globals['_NETWORKSERVICE']._serialized_start=3737 + _globals['_NETWORKSERVICE']._serialized_end=4840 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/admin/v2/network_pb2.pyi b/python/metalstack/admin/v2/network_pb2.pyi index 66be3370..cc76b3ee 100644 --- a/python/metalstack/admin/v2/network_pb2.pyi +++ b/python/metalstack/admin/v2/network_pb2.pyi @@ -156,13 +156,13 @@ class NetworkServiceListExternalMembersResponse(_message.Message): def __init__(self, members: _Optional[_Iterable[_Union[_network_pb2.ExternalNetworkMember, _Mapping]]] = ...) -> None: ... class NetworkServiceAddExternalMembersResponse(_message.Message): - __slots__ = ("switch",) - SWITCH_FIELD_NUMBER: _ClassVar[int] - switch: _switch_pb2.Switch - def __init__(self, switch: _Optional[_Union[_switch_pb2.Switch, _Mapping]] = ...) -> None: ... + __slots__ = ("switches",) + SWITCHES_FIELD_NUMBER: _ClassVar[int] + switches: _containers.RepeatedCompositeFieldContainer[_switch_pb2.Switch] + def __init__(self, switches: _Optional[_Iterable[_Union[_switch_pb2.Switch, _Mapping]]] = ...) -> None: ... class NetworkServiceRemoveExternalMembersResponse(_message.Message): - __slots__ = ("switch",) - SWITCH_FIELD_NUMBER: _ClassVar[int] - switch: _switch_pb2.Switch - def __init__(self, switch: _Optional[_Union[_switch_pb2.Switch, _Mapping]] = ...) -> None: ... + __slots__ = ("switches",) + SWITCHES_FIELD_NUMBER: _ClassVar[int] + switches: _containers.RepeatedCompositeFieldContainer[_switch_pb2.Switch] + def __init__(self, switches: _Optional[_Iterable[_Union[_switch_pb2.Switch, _Mapping]]] = ...) -> None: ... From b85c7f5a5a6241b9693547df3346b1c1b8af972d Mon Sep 17 00:00:00 2001 From: Ilja Rotar Date: Mon, 31 Aug 2026 16:47:03 +0200 Subject: [PATCH 5/5] add and remove by rack --- doc/index.html | 27 ++++-- go/metalstack/admin/v2/network.pb.go | 105 ++++++++++++--------- js/metalstack/admin/v2/network_pb.d.ts | 25 +++-- js/metalstack/admin/v2/network_pb.js | 2 +- js/metalstack/admin/v2/network_pb.ts | 29 ++++-- proto/metalstack/admin/v2/network.proto | 19 +++- python/metalstack/admin/v2/network_pb2.py | 52 +++++----- python/metalstack/admin/v2/network_pb2.pyi | 20 ++-- 8 files changed, 175 insertions(+), 104 deletions(-) diff --git a/doc/index.html b/doc/index.html index 7e2240ec..49147b12 100644 --- a/doc/index.html +++ b/doc/index.html @@ -14583,11 +14583,17 @@

    NetworkServ - switch_ports - metalstack.api.v2.ExternalNetworkMember + rack + string + +

    Rack the members are connected to.

    + + + + ports + string repeated -

    SwitchPorts contains the ports of a switch that should be added to the network. -Make sure to add both switches of a rack and the same ports of both in the same request.

    +

    Ports of the switches to add to the network.

    @@ -14998,10 +15004,17 @@

    NetworkS - switch_ports - metalstack.api.v2.ExternalNetworkMember + rack + string + +

    Rack the members are connected to.

    + + + + ports + string repeated -

    SwitchPorts contains the ports of a switch that should be removed from the network.

    +

    Ports of the switches to remove from the network.

    diff --git a/go/metalstack/admin/v2/network.pb.go b/go/metalstack/admin/v2/network.pb.go index 1e91f4e7..0035b979 100644 --- a/go/metalstack/admin/v2/network.pb.go +++ b/go/metalstack/admin/v2/network.pb.go @@ -602,9 +602,10 @@ type NetworkServiceAddExternalMembersRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Network to add the member to. Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` - // SwitchPorts contains the ports of a switch that should be added to the network. - // Make sure to add both switches of a rack and the same ports of both in the same request. - SwitchPorts []*v2.ExternalNetworkMember `protobuf:"bytes,2,rep,name=switch_ports,json=switchPorts,proto3" json:"switch_ports,omitempty"` + // Rack the members are connected to. + Rack string `protobuf:"bytes,2,opt,name=rack,proto3" json:"rack,omitempty"` + // Ports of the switches to add to the network. + Ports []string `protobuf:"bytes,3,rep,name=ports,proto3" json:"ports,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -646,9 +647,16 @@ func (x *NetworkServiceAddExternalMembersRequest) GetNetwork() string { return "" } -func (x *NetworkServiceAddExternalMembersRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { +func (x *NetworkServiceAddExternalMembersRequest) GetRack() string { if x != nil { - return x.SwitchPorts + return x.Rack + } + return "" +} + +func (x *NetworkServiceAddExternalMembersRequest) GetPorts() []string { + if x != nil { + return x.Ports } return nil } @@ -658,8 +666,10 @@ type NetworkServiceRemoveExternalMembersRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Network to remove the member from. Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` - // SwitchPorts contains the ports of a switch that should be removed from the network. - SwitchPorts []*v2.ExternalNetworkMember `protobuf:"bytes,2,rep,name=switch_ports,json=switchPorts,proto3" json:"switch_ports,omitempty"` + // Rack the members are connected to. + Rack string `protobuf:"bytes,2,opt,name=rack,proto3" json:"rack,omitempty"` + // Ports of the switches to remove from the network. + Ports []string `protobuf:"bytes,3,rep,name=ports,proto3" json:"ports,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -701,9 +711,16 @@ func (x *NetworkServiceRemoveExternalMembersRequest) GetNetwork() string { return "" } -func (x *NetworkServiceRemoveExternalMembersRequest) GetSwitchPorts() []*v2.ExternalNetworkMember { +func (x *NetworkServiceRemoveExternalMembersRequest) GetRack() string { + if x != nil { + return x.Rack + } + return "" +} + +func (x *NetworkServiceRemoveExternalMembersRequest) GetPorts() []string { if x != nil { - return x.SwitchPorts + return x.Ports } return nil } @@ -1099,13 +1116,15 @@ const file_metalstack_admin_v2_network_proto_rawDesc = "" + "\x05query\x18\x01 \x01(\v2\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n" + "(NetworkServiceListExternalMembersRequest\x12%\n" + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12C\n" + - "\x05query\x18\x02 \x01(\v2-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n" + + "\x05query\x18\x02 \x01(\v2-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\x98\x01\n" + "'NetworkServiceAddExternalMembersRequest\x12%\n" + - "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12U\n" + - "\fswitch_ports\x18\x02 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberB\b\xbaH\x05\x92\x01\x02\x10\bR\vswitchPorts\"\xaa\x01\n" + + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12\x1f\n" + + "\x04rack\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x04rack\x12%\n" + + "\x05ports\x18\x03 \x03(\tB\x0f\xbaH\f\x92\x01\tФ\xb3\xb1\x02\x01\x10\x80\x10R\x05ports\"\x9b\x01\n" + "*NetworkServiceRemoveExternalMembersRequest\x12%\n" + - "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12U\n" + - "\fswitch_ports\x18\x02 \x03(\v2(.metalstack.api.v2.ExternalNetworkMemberB\b\xbaH\x05\x92\x01\x02\x10\bR\vswitchPorts\"T\n" + + "\anetwork\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\anetwork\x12\x1f\n" + + "\x04rack\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x04rack\x12%\n" + + "\x05ports\x18\x03 \x03(\tB\x0f\xbaH\f\x92\x01\tФ\xb3\xb1\x02\x01\x10\x80\x10R\x05ports\"T\n" + "\x1cNetworkServiceCreateResponse\x124\n" + "\anetwork\x18\x01 \x01(\v2\x1a.metalstack.api.v2.NetworkR\anetwork\"T\n" + "\x1cNetworkServiceUpdateResponse\x124\n" + @@ -1193,36 +1212,34 @@ var file_metalstack_admin_v2_network_proto_depIdxs = []int32{ 20, // 12: metalstack.admin.v2.NetworkServiceUpdateRequest.nat_type:type_name -> metalstack.api.v2.NATType 24, // 13: metalstack.admin.v2.NetworkServiceListRequest.query:type_name -> metalstack.api.v2.NetworkQuery 25, // 14: metalstack.admin.v2.NetworkServiceListExternalMembersRequest.query:type_name -> metalstack.api.v2.ExternalNetworkMemberQuery - 26, // 15: metalstack.admin.v2.NetworkServiceAddExternalMembersRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember - 26, // 16: metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest.switch_ports:type_name -> metalstack.api.v2.ExternalNetworkMember - 16, // 17: metalstack.admin.v2.NetworkServiceCreateResponse.network:type_name -> metalstack.api.v2.Network - 16, // 18: metalstack.admin.v2.NetworkServiceUpdateResponse.network:type_name -> metalstack.api.v2.Network - 16, // 19: metalstack.admin.v2.NetworkServiceDeleteResponse.network:type_name -> metalstack.api.v2.Network - 16, // 20: metalstack.admin.v2.NetworkServiceListResponse.networks:type_name -> metalstack.api.v2.Network - 26, // 21: metalstack.admin.v2.NetworkServiceListExternalMembersResponse.members:type_name -> metalstack.api.v2.ExternalNetworkMember - 27, // 22: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch - 27, // 23: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch - 0, // 24: metalstack.admin.v2.NetworkService.Get:input_type -> metalstack.admin.v2.NetworkServiceGetRequest - 2, // 25: metalstack.admin.v2.NetworkService.Create:input_type -> metalstack.admin.v2.NetworkServiceCreateRequest - 3, // 26: metalstack.admin.v2.NetworkService.Update:input_type -> metalstack.admin.v2.NetworkServiceUpdateRequest - 4, // 27: metalstack.admin.v2.NetworkService.Delete:input_type -> metalstack.admin.v2.NetworkServiceDeleteRequest - 5, // 28: metalstack.admin.v2.NetworkService.List:input_type -> metalstack.admin.v2.NetworkServiceListRequest - 6, // 29: metalstack.admin.v2.NetworkService.ListExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceListExternalMembersRequest - 7, // 30: metalstack.admin.v2.NetworkService.AddExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersRequest - 8, // 31: metalstack.admin.v2.NetworkService.RemoveExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest - 1, // 32: metalstack.admin.v2.NetworkService.Get:output_type -> metalstack.admin.v2.NetworkServiceGetResponse - 9, // 33: metalstack.admin.v2.NetworkService.Create:output_type -> metalstack.admin.v2.NetworkServiceCreateResponse - 10, // 34: metalstack.admin.v2.NetworkService.Update:output_type -> metalstack.admin.v2.NetworkServiceUpdateResponse - 11, // 35: metalstack.admin.v2.NetworkService.Delete:output_type -> metalstack.admin.v2.NetworkServiceDeleteResponse - 12, // 36: metalstack.admin.v2.NetworkService.List:output_type -> metalstack.admin.v2.NetworkServiceListResponse - 13, // 37: metalstack.admin.v2.NetworkService.ListExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceListExternalMembersResponse - 14, // 38: metalstack.admin.v2.NetworkService.AddExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersResponse - 15, // 39: metalstack.admin.v2.NetworkService.RemoveExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse - 32, // [32:40] is the sub-list for method output_type - 24, // [24:32] is the sub-list for method input_type - 24, // [24:24] is the sub-list for extension type_name - 24, // [24:24] is the sub-list for extension extendee - 0, // [0:24] is the sub-list for field type_name + 16, // 15: metalstack.admin.v2.NetworkServiceCreateResponse.network:type_name -> metalstack.api.v2.Network + 16, // 16: metalstack.admin.v2.NetworkServiceUpdateResponse.network:type_name -> metalstack.api.v2.Network + 16, // 17: metalstack.admin.v2.NetworkServiceDeleteResponse.network:type_name -> metalstack.api.v2.Network + 16, // 18: metalstack.admin.v2.NetworkServiceListResponse.networks:type_name -> metalstack.api.v2.Network + 26, // 19: metalstack.admin.v2.NetworkServiceListExternalMembersResponse.members:type_name -> metalstack.api.v2.ExternalNetworkMember + 27, // 20: metalstack.admin.v2.NetworkServiceAddExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch + 27, // 21: metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse.switches:type_name -> metalstack.api.v2.Switch + 0, // 22: metalstack.admin.v2.NetworkService.Get:input_type -> metalstack.admin.v2.NetworkServiceGetRequest + 2, // 23: metalstack.admin.v2.NetworkService.Create:input_type -> metalstack.admin.v2.NetworkServiceCreateRequest + 3, // 24: metalstack.admin.v2.NetworkService.Update:input_type -> metalstack.admin.v2.NetworkServiceUpdateRequest + 4, // 25: metalstack.admin.v2.NetworkService.Delete:input_type -> metalstack.admin.v2.NetworkServiceDeleteRequest + 5, // 26: metalstack.admin.v2.NetworkService.List:input_type -> metalstack.admin.v2.NetworkServiceListRequest + 6, // 27: metalstack.admin.v2.NetworkService.ListExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceListExternalMembersRequest + 7, // 28: metalstack.admin.v2.NetworkService.AddExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersRequest + 8, // 29: metalstack.admin.v2.NetworkService.RemoveExternalMembers:input_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest + 1, // 30: metalstack.admin.v2.NetworkService.Get:output_type -> metalstack.admin.v2.NetworkServiceGetResponse + 9, // 31: metalstack.admin.v2.NetworkService.Create:output_type -> metalstack.admin.v2.NetworkServiceCreateResponse + 10, // 32: metalstack.admin.v2.NetworkService.Update:output_type -> metalstack.admin.v2.NetworkServiceUpdateResponse + 11, // 33: metalstack.admin.v2.NetworkService.Delete:output_type -> metalstack.admin.v2.NetworkServiceDeleteResponse + 12, // 34: metalstack.admin.v2.NetworkService.List:output_type -> metalstack.admin.v2.NetworkServiceListResponse + 13, // 35: metalstack.admin.v2.NetworkService.ListExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceListExternalMembersResponse + 14, // 36: metalstack.admin.v2.NetworkService.AddExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceAddExternalMembersResponse + 15, // 37: metalstack.admin.v2.NetworkService.RemoveExternalMembers:output_type -> metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse + 30, // [30:38] is the sub-list for method output_type + 22, // [22:30] is the sub-list for method input_type + 22, // [22:22] is the sub-list for extension type_name + 22, // [22:22] is the sub-list for extension extendee + 0, // [0:22] is the sub-list for field type_name } func init() { file_metalstack_admin_v2_network_proto_init() } diff --git a/js/metalstack/admin/v2/network_pb.d.ts b/js/metalstack/admin/v2/network_pb.d.ts index 4f46523f..f49c7a2f 100644 --- a/js/metalstack/admin/v2/network_pb.d.ts +++ b/js/metalstack/admin/v2/network_pb.d.ts @@ -314,12 +314,17 @@ export type NetworkServiceAddExternalMembersRequest = Message<"metalstack.admin. */ network: string; /** - * SwitchPorts contains the ports of a switch that should be added to the network. - * Make sure to add both switches of a rack and the same ports of both in the same request. + * Rack the members are connected to. * - * @generated from field: repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2; + * @generated from field: string rack = 2; */ - switchPorts: ExternalNetworkMember[]; + rack: string; + /** + * Ports of the switches to add to the network. + * + * @generated from field: repeated string ports = 3; + */ + ports: string[]; }; /** * Describes the message metalstack.admin.v2.NetworkServiceAddExternalMembersRequest. @@ -339,11 +344,17 @@ export type NetworkServiceRemoveExternalMembersRequest = Message<"metalstack.adm */ network: string; /** - * SwitchPorts contains the ports of a switch that should be removed from the network. + * Rack the members are connected to. + * + * @generated from field: string rack = 2; + */ + rack: string; + /** + * Ports of the switches to remove from the network. * - * @generated from field: repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2; + * @generated from field: repeated string ports = 3; */ - switchPorts: ExternalNetworkMember[]; + ports: string[]; }; /** * Describes the message metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest. diff --git a/js/metalstack/admin/v2/network_pb.js b/js/metalstack/admin/v2/network_pb.js index 6977c1fa..97a568d9 100644 --- a/js/metalstack/admin/v2/network_pb.js +++ b/js/metalstack/admin/v2/network_pb.js @@ -10,7 +10,7 @@ import { file_metalstack_api_v2_switch } from "../../api/v2/switch_pb"; /** * Describes the file metalstack/admin/v2/network.proto. */ -export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); +export const file_metalstack_admin_v2_network = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKCAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEhkKBHJhY2sYAiABKAlCC7pICHIGwLOusQIBEh4KBXBvcnRzGAMgAygJQg+6SAySAQnQpLOxAgEQgBAihQEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgRyYWNrGAIgASgJQgu6SAhyBsCzrrECARIeCgVwb3J0cxgDIAMoCUIPukgMkgEJ0KSzsQIBEIAQIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * Describes the message metalstack.admin.v2.NetworkServiceGetRequest. * Use `create(NetworkServiceGetRequestSchema)` to create a new message. diff --git a/js/metalstack/admin/v2/network_pb.ts b/js/metalstack/admin/v2/network_pb.ts index bbf16050..ca362448 100644 --- a/js/metalstack/admin/v2/network_pb.ts +++ b/js/metalstack/admin/v2/network_pb.ts @@ -18,7 +18,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/admin/v2/network.proto. */ export const file_metalstack_admin_v2_network: GenFile = /*@__PURE__*/ - fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKRAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEkgKDHN3aXRjaF9wb3J0cxgCIAMoCzIoLm1ldGFsc3RhY2suYXBpLnYyLkV4dGVybmFsTmV0d29ya01lbWJlckIIukgFkgECEAgilAEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARJICgxzd2l0Y2hfcG9ydHMYAiADKAsyKC5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJCCLpIBZIBAhAIIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); + fileDesc("CiFtZXRhbHN0YWNrL2FkbWluL3YyL25ldHdvcmsucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiMwoYTmV0d29ya1NlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECASJIChlOZXR3b3JrU2VydmljZUdldFJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrItAHChtOZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAogBARIjCglwYXJ0aXRpb24YBCABKAlCC7pICHIG0LOusQIBSAOIAQESHgoHcHJvamVjdBgFIAEoCUIIukgFcgOwAQFIBIgBARI2CgR0eXBlGAYgASgOMh4ubWV0YWxzdGFjay5hcGkudjIuTmV0d29ya1R5cGVCCLpIBYIBAhABEi4KBmxhYmVscxgHIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEh4KCHByZWZpeGVzGAggAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYCSADKAlCDLpICZIBBriks7ECARJJChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCiABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aBJFChdtaW5fY2hpbGRfcHJlZml4X2xlbmd0aBgLIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLkNoaWxkUHJlZml4TGVuZ3RoEjsKCG5hdF90eXBlGAwgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTkFUVHlwZUIIukgFggECEAFIBogBARIQCgN2cmYYDSABKA1IB4gBARIoCg5wYXJlbnRfbmV0d29yaxgOIAEoCUILukgIcgbAs66xAgFICIgBARIyChxhZGRpdGlvbmFsX2Fubm91bmNhYmxlX2NpZHJzGA8gAygJQgy6SAmSAQa4pLOxAgESOQoGbGVuZ3RoGBAgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhICYgBARJOCg5hZGRyZXNzX2ZhbWlseRgRIAEoDjInLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtBZGRyZXNzRmFtaWx5Qgi6SAWCAQIQAUgKiAEBQgUKA19pZEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX3BhcnRpdGlvbkIKCghfcHJvamVjdEIJCgdfbGFiZWxzQgsKCV9uYXRfdHlwZUIGCgRfdnJmQhEKD19wYXJlbnRfbmV0d29ya0IJCgdfbGVuZ3RoQhEKD19hZGRyZXNzX2ZhbWlseSLEBQobTmV0d29ya1NlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjQKBmxhYmVscxgFIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gCiAEBEh4KCHByZWZpeGVzGAYgAygJQgy6SAmSAQa4pLOxAgESKgoUZGVzdGluYXRpb25fcHJlZml4ZXMYByADKAlCDLpICZIBBriks7ECARJOChtkZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGgYCCABKAsyJC5tZXRhbHN0YWNrLmFwaS52Mi5DaGlsZFByZWZpeExlbmd0aEgDiAEBEkoKF21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoGAkgASgLMiQubWV0YWxzdGFjay5hcGkudjIuQ2hpbGRQcmVmaXhMZW5ndGhIBIgBARI7CghuYXRfdHlwZRgKIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABSAWIAQESMgocYWRkaXRpb25hbF9hbm5vdW5jYWJsZV9jaWRycxgLIAMoCUIMukgJkgEGuKSzsQIBEg0KBWZvcmNlGAwgASgIQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfbGFiZWxzQh4KHF9kZWZhdWx0X2NoaWxkX3ByZWZpeF9sZW5ndGhCGgoYX21pbl9jaGlsZF9wcmVmaXhfbGVuZ3RoQgsKCV9uYXRfdHlwZSI2ChtOZXR3b3JrU2VydmljZURlbGV0ZVJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIksKGU5ldHdvcmtTZXJ2aWNlTGlzdFJlcXVlc3QSLgoFcXVlcnkYASABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrUXVlcnkihgEKKE5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QSHAoHbmV0d29yaxgBIAEoCUILukgIcgbAs66xAgESPAoFcXVlcnkYAiABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5FeHRlcm5hbE5ldHdvcmtNZW1iZXJRdWVyeSKCAQonTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXF1ZXN0EhwKB25ldHdvcmsYASABKAlCC7pICHIGwLOusQIBEhkKBHJhY2sYAiABKAlCC7pICHIGwLOusQIBEh4KBXBvcnRzGAMgAygJQg+6SAySAQnQpLOxAgEQgBAihQEKKk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgRyYWNrGAIgASgJQgu6SAhyBsCzrrECARIeCgVwb3J0cxgDIAMoCUIPukgMkgEJ0KSzsQIBEIAQIksKHE5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2USKwoHbmV0d29yaxgBIAEoCzIaLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmsiSwocTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZRIrCgduZXR3b3JrGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJLChxOZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB25ldHdvcmsYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5OZXR3b3JrIkoKGk5ldHdvcmtTZXJ2aWNlTGlzdFJlc3BvbnNlEiwKCG5ldHdvcmtzGAEgAygLMhoubWV0YWxzdGFjay5hcGkudjIuTmV0d29yayJmCilOZXR3b3JrU2VydmljZUxpc3RFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRI5CgdtZW1iZXJzGAEgAygLMigubWV0YWxzdGFjay5hcGkudjIuRXh0ZXJuYWxOZXR3b3JrTWVtYmVyIlcKKE5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVzcG9uc2USKwoIc3dpdGNoZXMYASADKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5Td2l0Y2giWgorTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZRIrCghzd2l0Y2hlcxgBIAMoCzIZLm1ldGFsc3RhY2suYXBpLnYyLlN3aXRjaDLPCAoOTmV0d29ya1NlcnZpY2UScAoDR2V0Ei0ubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUdldFJlcXVlc3QaLi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlR2V0UmVzcG9uc2UiCtLzGAIBAuDzGAISeAoGQ3JlYXRlEjAubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZUNyZWF0ZVJlcXVlc3QaMS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ4CgZVcGRhdGUSMC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlVXBkYXRlUmVxdWVzdBoxLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEngKBkRlbGV0ZRIwLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VEZWxldGVSZXF1ZXN0GjEubWV0YWxzdGFjay5hZG1pbi52Mi5OZXR3b3JrU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAEScwoETGlzdBIuLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VMaXN0UmVzcG9uc2UiCtLzGAIBAuDzGAISoAEKE0xpc3RFeHRlcm5hbE1lbWJlcnMSPS5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1JlcXVlc3QaPi5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlTGlzdEV4dGVybmFsTWVtYmVyc1Jlc3BvbnNlIgrS8xgCAQLg8xgCEpwBChJBZGRFeHRlcm5hbE1lbWJlcnMSPC5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlQWRkRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBo9Lm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VBZGRFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBEqUBChVSZW1vdmVFeHRlcm5hbE1lbWJlcnMSPy5tZXRhbHN0YWNrLmFkbWluLnYyLk5ldHdvcmtTZXJ2aWNlUmVtb3ZlRXh0ZXJuYWxNZW1iZXJzUmVxdWVzdBpALm1ldGFsc3RhY2suYWRtaW4udjIuTmV0d29ya1NlcnZpY2VSZW1vdmVFeHRlcm5hbE1lbWJlcnNSZXNwb25zZSIJ0vMYAQHg8xgBQtABChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIMTmV0d29ya1Byb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_network, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_switch]); /** * NetworkServiceGetRequest is the request payload for getting a network. @@ -377,12 +377,18 @@ export type NetworkServiceAddExternalMembersRequest = Message<"metalstack.admin. network: string; /** - * SwitchPorts contains the ports of a switch that should be added to the network. - * Make sure to add both switches of a rack and the same ports of both in the same request. + * Rack the members are connected to. * - * @generated from field: repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2; + * @generated from field: string rack = 2; */ - switchPorts: ExternalNetworkMember[]; + rack: string; + + /** + * Ports of the switches to add to the network. + * + * @generated from field: repeated string ports = 3; + */ + ports: string[]; }; /** @@ -406,11 +412,18 @@ export type NetworkServiceRemoveExternalMembersRequest = Message<"metalstack.adm network: string; /** - * SwitchPorts contains the ports of a switch that should be removed from the network. + * Rack the members are connected to. + * + * @generated from field: string rack = 2; + */ + rack: string; + + /** + * Ports of the switches to remove from the network. * - * @generated from field: repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2; + * @generated from field: repeated string ports = 3; */ - switchPorts: ExternalNetworkMember[]; + ports: string[]; }; /** diff --git a/proto/metalstack/admin/v2/network.proto b/proto/metalstack/admin/v2/network.proto index 5ed3e269..fa309397 100644 --- a/proto/metalstack/admin/v2/network.proto +++ b/proto/metalstack/admin/v2/network.proto @@ -158,17 +158,26 @@ message NetworkServiceListExternalMembersRequest { message NetworkServiceAddExternalMembersRequest { // Network to add the member to. string network = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; - // SwitchPorts contains the ports of a switch that should be added to the network. - // Make sure to add both switches of a rack and the same ports of both in the same request. - repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2 [(buf.validate.field).repeated.max_items = 8]; + // Rack the members are connected to. + string rack = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; + // Ports of the switches to add to the network. + repeated string ports = 3 [ + (buf.validate.field).repeated.max_items = 2048, + (buf.validate.field).repeated.(metalstack.api.v2.all_trimmed) = true + ]; } // NetworkServiceRemoveExternalMemberRequest is the request payload for removing an external member from a network. message NetworkServiceRemoveExternalMembersRequest { // Network to remove the member from. string network = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; - // SwitchPorts contains the ports of a switch that should be removed from the network. - repeated metalstack.api.v2.ExternalNetworkMember switch_ports = 2 [(buf.validate.field).repeated.max_items = 8]; + // Rack the members are connected to. + string rack = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; + // Ports of the switches to remove from the network. + repeated string ports = 3 [ + (buf.validate.field).repeated.max_items = 2048, + (buf.validate.field).repeated.(metalstack.api.v2.all_trimmed) = true + ]; } // NetworkServiceCreateResponse is the response payload for creating a network. diff --git a/python/metalstack/admin/v2/network_pb2.py b/python/metalstack/admin/v2/network_pb2.py index 45e7bd07..694a3e53 100644 --- a/python/metalstack/admin/v2/network_pb2.py +++ b/python/metalstack/admin/v2/network_pb2.py @@ -29,7 +29,7 @@ from metalstack.api.v2 import switch_pb2 as metalstack_dot_api_dot_v2_dot_switch__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\xa7\x01\n\'NetworkServiceAddExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"\xaa\x01\n*NetworkServiceRemoveExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12U\n\x0cswitch_ports\x18\x02 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0bswitchPorts\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"a\n(NetworkServiceAddExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches\"d\n+NetworkServiceRemoveExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches2\xcf\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n\x12\x41\x64\x64\x45xternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!metalstack/admin/v2/network.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1emetalstack/api/v2/switch.proto\"7\n\x18NetworkServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"Q\n\x19NetworkServiceGetResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"\xa8\t\n\x1bNetworkServiceCreateRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12.\n\tpartition\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12\'\n\x07project\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12<\n\x04type\x18\x06 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12\x36\n\x06labels\x18\x07 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x08 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\t \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x63\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\n \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x18\x64\x65\x66\x61ultChildPrefixLength\x12[\n\x17min_child_prefix_length\x18\x0b \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthR\x14minChildPrefixLength\x12\x44\n\x08nat_type\x18\x0c \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x07natType\x88\x01\x01\x12\x15\n\x03vrf\x18\r \x01(\rH\x07R\x03vrf\x88\x01\x01\x12\x37\n\x0eparent_network\x18\x0e \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x08R\rparentNetwork\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0f \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x41\n\x06length\x18\x10 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\tR\x06length\x88\x01\x01\x12]\n\x0e\x61\x64\x64ress_family\x18\x11 \x01(\x0e\x32\'.metalstack.api.v2.NetworkAddressFamilyB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\raddressFamily\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0c\n\n_partitionB\n\n\x08_projectB\t\n\x07_labelsB\x0b\n\t_nat_typeB\x06\n\x04_vrfB\x11\n\x0f_parent_networkB\t\n\x07_lengthB\x11\n\x0f_address_family\"\xea\x06\n\x1bNetworkServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\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$\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<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x02R\x06labels\x88\x01\x01\x12(\n\x08prefixes\x18\x06 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12h\n\x1b\x64\x65\x66\x61ult_child_prefix_length\x18\x08 \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x03R\x18\x64\x65\x66\x61ultChildPrefixLength\x88\x01\x01\x12`\n\x17min_child_prefix_length\x18\t \x01(\x0b\x32$.metalstack.api.v2.ChildPrefixLengthH\x04R\x14minChildPrefixLength\x88\x01\x01\x12\x44\n\x08nat_type\x18\n \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x05R\x07natType\x88\x01\x01\x12N\n\x1c\x61\x64\x64itional_announcable_cidrs\x18\x0b \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x1a\x61\x64\x64itionalAnnouncableCidrs\x12\x14\n\x05\x66orce\x18\x0c \x01(\x08R\x05\x66orceB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_labelsB\x1e\n\x1c_default_child_prefix_lengthB\x1a\n\x18_min_child_prefix_lengthB\x0b\n\t_nat_type\":\n\x1bNetworkServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"R\n\x19NetworkServiceListRequest\x12\x35\n\x05query\x18\x01 \x01(\x0b\x32\x1f.metalstack.api.v2.NetworkQueryR\x05query\"\x96\x01\n(NetworkServiceListExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x43\n\x05query\x18\x02 \x01(\x0b\x32-.metalstack.api.v2.ExternalNetworkMemberQueryR\x05query\"\x98\x01\n\'NetworkServiceAddExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x1f\n\x04rack\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04rack\x12%\n\x05ports\x18\x03 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x80\x10\xd0\xa4\xb3\xb1\x02\x01R\x05ports\"\x9b\x01\n*NetworkServiceRemoveExternalMembersRequest\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x1f\n\x04rack\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04rack\x12%\n\x05ports\x18\x03 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x80\x10\xd0\xa4\xb3\xb1\x02\x01R\x05ports\"T\n\x1cNetworkServiceCreateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceUpdateResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1cNetworkServiceDeleteResponse\x12\x34\n\x07network\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x07network\"T\n\x1aNetworkServiceListResponse\x12\x36\n\x08networks\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.NetworkR\x08networks\"o\n)NetworkServiceListExternalMembersResponse\x12\x42\n\x07members\x18\x01 \x03(\x0b\x32(.metalstack.api.v2.ExternalNetworkMemberR\x07members\"a\n(NetworkServiceAddExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches\"d\n+NetworkServiceRemoveExternalMembersResponse\x12\x35\n\x08switches\x18\x01 \x03(\x0b\x32\x19.metalstack.api.v2.SwitchR\x08switches2\xcf\x08\n\x0eNetworkService\x12p\n\x03Get\x12-.metalstack.admin.v2.NetworkServiceGetRequest\x1a..metalstack.admin.v2.NetworkServiceGetResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12x\n\x06\x43reate\x12\x30.metalstack.admin.v2.NetworkServiceCreateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06Update\x12\x30.metalstack.admin.v2.NetworkServiceUpdateRequest\x1a\x31.metalstack.admin.v2.NetworkServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12x\n\x06\x44\x65lete\x12\x30.metalstack.admin.v2.NetworkServiceDeleteRequest\x1a\x31.metalstack.admin.v2.NetworkServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12s\n\x04List\x12..metalstack.admin.v2.NetworkServiceListRequest\x1a/.metalstack.admin.v2.NetworkServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\xa0\x01\n\x13ListExternalMembers\x12=.metalstack.admin.v2.NetworkServiceListExternalMembersRequest\x1a>.metalstack.admin.v2.NetworkServiceListExternalMembersResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x12\x9c\x01\n\x12\x41\x64\x64\x45xternalMembers\x12<.metalstack.admin.v2.NetworkServiceAddExternalMembersRequest\x1a=.metalstack.admin.v2.NetworkServiceAddExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\xa5\x01\n\x15RemoveExternalMembers\x12?.metalstack.admin.v2.NetworkServiceRemoveExternalMembersRequest\x1a@.metalstack.admin.v2.NetworkServiceRemoveExternalMembersResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd0\x01\n\x17\x63om.metalstack.admin.v2B\x0cNetworkProtoP\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -85,12 +85,16 @@ _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['network']._loaded_options = None _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._loaded_options = None - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['rack']._loaded_options = None + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['rack']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['ports']._loaded_options = None + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST'].fields_by_name['ports']._serialized_options = b'\272H\014\222\001\t\020\200\020\320\244\263\261\002\001' _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['network']._loaded_options = None _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['network']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._loaded_options = None - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['switch_ports']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['rack']._loaded_options = None + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['rack']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['ports']._loaded_options = None + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST'].fields_by_name['ports']._serialized_options = b'\272H\014\222\001\t\020\200\020\320\244\263\261\002\001' _globals['_NETWORKSERVICE'].methods_by_name['Get']._loaded_options = None _globals['_NETWORKSERVICE'].methods_by_name['Get']._serialized_options = b'\322\363\030\002\001\002\340\363\030\002' _globals['_NETWORKSERVICE'].methods_by_name['Create']._loaded_options = None @@ -122,23 +126,23 @@ _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST']._serialized_start=2583 _globals['_NETWORKSERVICELISTEXTERNALMEMBERSREQUEST']._serialized_end=2733 _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST']._serialized_start=2736 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST']._serialized_end=2903 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_start=2906 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_end=3076 - _globals['_NETWORKSERVICECREATERESPONSE']._serialized_start=3078 - _globals['_NETWORKSERVICECREATERESPONSE']._serialized_end=3162 - _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_start=3164 - _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_end=3248 - _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_start=3250 - _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_end=3334 - _globals['_NETWORKSERVICELISTRESPONSE']._serialized_start=3336 - _globals['_NETWORKSERVICELISTRESPONSE']._serialized_end=3420 - _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_start=3422 - _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_end=3533 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_start=3535 - _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_end=3632 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_start=3634 - _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_end=3734 - _globals['_NETWORKSERVICE']._serialized_start=3737 - _globals['_NETWORKSERVICE']._serialized_end=4840 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSREQUEST']._serialized_end=2888 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_start=2891 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSREQUEST']._serialized_end=3046 + _globals['_NETWORKSERVICECREATERESPONSE']._serialized_start=3048 + _globals['_NETWORKSERVICECREATERESPONSE']._serialized_end=3132 + _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_start=3134 + _globals['_NETWORKSERVICEUPDATERESPONSE']._serialized_end=3218 + _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_start=3220 + _globals['_NETWORKSERVICEDELETERESPONSE']._serialized_end=3304 + _globals['_NETWORKSERVICELISTRESPONSE']._serialized_start=3306 + _globals['_NETWORKSERVICELISTRESPONSE']._serialized_end=3390 + _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_start=3392 + _globals['_NETWORKSERVICELISTEXTERNALMEMBERSRESPONSE']._serialized_end=3503 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_start=3505 + _globals['_NETWORKSERVICEADDEXTERNALMEMBERSRESPONSE']._serialized_end=3602 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_start=3604 + _globals['_NETWORKSERVICEREMOVEEXTERNALMEMBERSRESPONSE']._serialized_end=3704 + _globals['_NETWORKSERVICE']._serialized_start=3707 + _globals['_NETWORKSERVICE']._serialized_end=4810 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/admin/v2/network_pb2.pyi b/python/metalstack/admin/v2/network_pb2.pyi index cc76b3ee..04be00b3 100644 --- a/python/metalstack/admin/v2/network_pb2.pyi +++ b/python/metalstack/admin/v2/network_pb2.pyi @@ -110,20 +110,24 @@ class NetworkServiceListExternalMembersRequest(_message.Message): def __init__(self, network: _Optional[str] = ..., query: _Optional[_Union[_network_pb2.ExternalNetworkMemberQuery, _Mapping]] = ...) -> None: ... class NetworkServiceAddExternalMembersRequest(_message.Message): - __slots__ = ("network", "switch_ports") + __slots__ = ("network", "rack", "ports") NETWORK_FIELD_NUMBER: _ClassVar[int] - SWITCH_PORTS_FIELD_NUMBER: _ClassVar[int] + RACK_FIELD_NUMBER: _ClassVar[int] + PORTS_FIELD_NUMBER: _ClassVar[int] network: str - switch_ports: _containers.RepeatedCompositeFieldContainer[_network_pb2.ExternalNetworkMember] - def __init__(self, network: _Optional[str] = ..., switch_ports: _Optional[_Iterable[_Union[_network_pb2.ExternalNetworkMember, _Mapping]]] = ...) -> None: ... + rack: str + ports: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, network: _Optional[str] = ..., rack: _Optional[str] = ..., ports: _Optional[_Iterable[str]] = ...) -> None: ... class NetworkServiceRemoveExternalMembersRequest(_message.Message): - __slots__ = ("network", "switch_ports") + __slots__ = ("network", "rack", "ports") NETWORK_FIELD_NUMBER: _ClassVar[int] - SWITCH_PORTS_FIELD_NUMBER: _ClassVar[int] + RACK_FIELD_NUMBER: _ClassVar[int] + PORTS_FIELD_NUMBER: _ClassVar[int] network: str - switch_ports: _containers.RepeatedCompositeFieldContainer[_network_pb2.ExternalNetworkMember] - def __init__(self, network: _Optional[str] = ..., switch_ports: _Optional[_Iterable[_Union[_network_pb2.ExternalNetworkMember, _Mapping]]] = ...) -> None: ... + rack: str + ports: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, network: _Optional[str] = ..., rack: _Optional[str] = ..., ports: _Optional[_Iterable[str]] = ...) -> None: ... class NetworkServiceCreateResponse(_message.Message): __slots__ = ("network",)