github.com/microsoft/moc@v0.17.1/rpc/common/moc_common_nodeinfo.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/common";
     6  package moc.common;
     7  
     8  import "moc_common_common.proto";
     9  import "moc_common_computecommon.proto";
    10  
    11  enum OsRegistrationState {
    12  	notRegistered = 0;
    13  	registered = 1;
    14  }
    15  
    16  message OsRegistrationStatus {
    17  	OsRegistrationState status = 1;
    18  }
    19  
    20  message Processor {
    21  	string name = 1;
    22  	uint32 cores = 2;
    23  	string speed = 3;
    24  	ProcessorType type = 4;
    25  	bool virtualization = 5;
    26  	uint32 logicalprocessors = 6;
    27  	bool hypervisorpresent = 7;
    28  	string manufacturer = 8;
    29  	Architecture architecture = 9;
    30  }
    31  
    32  message PhysicalMemory {
    33  	uint64 sizeBytes = 1;
    34  }
    35  
    36  message GPU {
    37  	string name = 1;
    38  	uint32 sizeBytes = 2;
    39  	uint32 count = 3;
    40  }
    41  
    42  message OperatingSystem {
    43  	uint64 operatingsystemsku = 1;
    44  	OperatingSystemType ostype = 2;
    45  	string osversion = 3;
    46  	OsRegistrationStatus osRegistrationStatus = 4;
    47  }
    48  
    49  message NodeInfo {
    50  	string name = 1;
    51  	string id = 2;
    52  	Resources capability = 3;
    53  	Resources availability = 4;
    54  	OperatingSystemType ostype = 6;
    55  	Status status = 7;
    56  	int64 uptime = 8;
    57  	OperatingSystem osInfo = 9;
    58  }
    59  
    60  message Resources {
    61  	reserved 4;
    62  	Processor processor = 1;
    63  	PhysicalMemory memory = 2;
    64  	GPU gpu = 3;	
    65  	VirtualMachineCapabilities vmCapabilities = 5;
    66  	repeated Gpu gpuList = 6;
    67  }