github.com/microsoft/moc@v0.17.1/rpc/nodeagent/network/virtualnetworkinterface/moc_nodeagent_virtualnetworkinterface.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/nodeagent/network";
     6  package moc.nodeagent.network;
     7  
     8  import "google/protobuf/wrappers.proto";
     9  import "google/protobuf/empty.proto";
    10  import "moc_common_common.proto";
    11  import "moc_common_notification.proto";
    12  import "moc_common_networkcommon.proto";
    13  
    14  message VirtualNetworkInterfaceRequest {
    15  	repeated VirtualNetworkInterface VirtualNetworkInterfaces = 1;
    16  	Operation OperationType = 2;
    17  }
    18  
    19  message VirtualNetworkInterfaceResponse {
    20  	repeated VirtualNetworkInterface VirtualNetworkInterfaces = 1;
    21  	google.protobuf.BoolValue Result = 2;
    22  	string  Error = 3;
    23  }
    24  
    25  enum NetworkType {
    26  	VIRTUAL_NETWORK = 0;
    27  	LOGICAL_NETWORK = 1;
    28  }
    29  
    30  message IpConfiguration {
    31  	string ipaddress = 1 [(sensitive) = true];
    32  	string prefixlength = 2;
    33  	string subnetid = 3;
    34  	bool primary = 4;
    35  	string gateway = 5 [(sensitive) = true];
    36  	IPAllocationMethod allocation = 6;
    37  	NetworkType networkType = 7;
    38  }
    39  
    40  message VirtualNetworkInterface {
    41  	string name = 1;
    42  	string id = 2;
    43  	enum NetworkInterfaceType {
    44  		Local = 0;
    45  		Remote = 1;
    46  	}
    47  	NetworkInterfaceType type = 3;
    48  	repeated IpConfiguration ipconfigs = 4;
    49  	string macaddress = 5 [(sensitive) = true];
    50  	Dns dnsSettings = 6 [(sensitive) = true];
    51  	string virtualMachineName = 7;
    52  	Status status = 8;
    53  	Entity entity = 9;
    54  	uint32 iovWeight = 10;
    55  	Tags tags = 11;
    56  }
    57  
    58  service VirtualNetworkInterfaceAgent {
    59  	rpc Invoke(VirtualNetworkInterfaceRequest) returns (VirtualNetworkInterfaceResponse) {}
    60  	rpc CheckNotification(google.protobuf.Empty) returns (NotificationResponse) {}
    61  }