github.com/microsoft/moc@v0.17.1/rpc/cloudagent/network/logicalnetwork/moc_cloudagent_logicalnetwork.proto (about) 1 // Copyright (c) Microsoft Corporation. 2 // Licensed under the Apache v2.0 license. 3 4 syntax = "proto3"; 5 option go_package = "github.com/microsoft/moc/rpc/cloudagent/network"; 6 package moc.cloudagent.network; 7 8 import "google/protobuf/wrappers.proto"; 9 import "moc_common_common.proto"; 10 import "moc_common_networkcommon.proto"; 11 12 message LogicalNetworkRequest { 13 repeated LogicalNetwork LogicalNetworks = 1; 14 Operation OperationType = 2; 15 } 16 17 message LogicalNetworkResponse { 18 repeated LogicalNetwork LogicalNetworks = 1; 19 google.protobuf.BoolValue Result = 2; 20 string Error = 3; 21 } 22 23 message LogicalNetwork { 24 string name = 1; 25 string id = 2; 26 repeated LogicalSubnet subnets = 3; 27 bool networkVirtualizationEnabled = 4; 28 Status status = 5; 29 string locationName = 6; 30 string macPoolName = 7 [(sensitive) = true]; 31 Tags tags = 8; 32 } 33 34 message LogicalSubnet { 35 string name = 1; 36 string id = 2; 37 string addressPrefix = 3; 38 repeated Route routes = 4; 39 IPAllocationMethod allocation = 5; 40 uint32 vlan = 6; 41 repeated IPPool ipPools = 7; 42 Dns dns = 8 [(sensitive) = true]; 43 bool isPublic = 9; // Indicates IPPools from this subnet can be used to allocate public IP address by SDN. 44 Tags tags = 10; 45 NetworkSecurityGroupReference networkSecurityGroupRef = 11; 46 } 47 48 service LogicalNetworkAgent { 49 rpc Invoke(LogicalNetworkRequest) returns (LogicalNetworkResponse) {} 50 } 51