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 }