Protocol Documentation

Table of Contents

firewheel_grpc.proto

Top

CountVMMappingsNotReadyRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

CountVMMappingsNotReadyResponse

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

countuint32

The count of not ready VMs

DestroyAllVMMappingsRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

DestroyAllVMMappingsResponse

DestroyVMMappingResponse

ExperimentLaunchTime

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

launch_timegoogle.protobuf.Timestamp

The experiment launch time.

ExperimentStartTime

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

start_timegoogle.protobuf.Timestamp

The experiment start time.

GetExperimentLaunchTimeRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

GetExperimentStartTimeRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

GetInfoRequest

GetInfoResponse

FieldTypeLabelDescription
versionstring

The grpc server version.

uptimefloat

The grpc server uptime.

experiment_runningbool

Whether an experiment is running.

InitializeExperimentStartTimeRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

InitializeExperimentStartTimeResponse

ListVMMappingsRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

json_match_dictstring

A json dictionary containing search criteria to match against.

SetVMStateByUUIDRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

server_uuidstring

The uuid of the VM

statestring

The state to update the VM with

SetVMTimeByUUIDRequest

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

server_uuidstring

The uuid of the VM

current_timestring

The time to update the VM with

VMMapping

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

server_uuidstring

The uuid of the VM

server_namestring

The name of the VM

control_ipstring

The IP of the VM on the control network.

statestring

The state of the VM.

current_timestring

The current time in the VM.

VMMappingUUID

FieldTypeLabelDescription
dbstring

The database to use. (e.g. "prod" or "test")

server_uuidstring

The uuid of the VM

Firewheel

Method NameRequest TypeResponse TypeDescription
GetInfoGetInfoRequestGetInfoResponse

Gets the gRPC server info.

GetVMMappingByUUIDVMMappingUUIDVMMapping

Gets the vm_mapping associated with the given uuid.

DestroyVMMappingByUUIDVMMappingUUIDDestroyVMMappingResponse

Destroys the vm_mapping associated with the given uuid.

SetVMTimeByUUIDSetVMTimeByUUIDRequestVMMapping

Sets the time for the vm_mapping associated with the given uuid.

SetVMStateByUUIDSetVMStateByUUIDRequestVMMapping

Sets the state for the vm_mapping associated with the given uuid.

SetVMMappingVMMappingVMMapping

Sets the given vm_mapping.

ListVMMappingsListVMMappingsRequestVMMappingstream

Iterates through all requested vm_mappings.

CountVMMappingsNotReadyCountVMMappingsNotReadyRequestCountVMMappingsNotReadyResponse

Returns the count of VMs that are not ready.

DestroyAllVMMappingsDestroyAllVMMappingsRequestDestroyAllVMMappingsResponse

Destroys all vm_mappings.

GetExperimentStartTimeGetExperimentStartTimeRequestExperimentStartTime

Gets the experiment start time.

SetExperimentStartTimeExperimentStartTimeExperimentStartTime

Sets the experiment start time.

GetExperimentLaunchTimeGetExperimentLaunchTimeRequestExperimentLaunchTime

Gets the experiment launch time.

SetExperimentLaunchTimeExperimentLaunchTimeExperimentLaunchTime

Sets the experiment start time.

InitializeExperimentStartTimeInitializeExperimentStartTimeRequestInitializeExperimentStartTimeResponse

Initializes the experiment launch time.

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
doubledoubledoublefloatfloat64doublefloatFloat
floatfloatfloatfloatfloat32floatfloatFloat
int32Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead.int32intintint32intintegerBignum or Fixnum (as required)
int64Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead.int64longint/longint64longinteger/stringBignum
uint32Uses variable-length encoding.uint32intint/longuint32uintintegerBignum or Fixnum (as required)
uint64Uses variable-length encoding.uint64longint/longuint64ulonginteger/stringBignum or Fixnum (as required)
sint32Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s.int32intintint32intintegerBignum or Fixnum (as required)
sint64Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s.int64longint/longint64longinteger/stringBignum
fixed32Always four bytes. More efficient than uint32 if values are often greater than 2^28.uint32intintuint32uintintegerBignum or Fixnum (as required)
fixed64Always eight bytes. More efficient than uint64 if values are often greater than 2^56.uint64longint/longuint64ulonginteger/stringBignum
sfixed32Always four bytes.int32intintint32intintegerBignum or Fixnum (as required)
sfixed64Always eight bytes.int64longint/longint64longinteger/stringBignum
boolboolbooleanbooleanboolboolbooleanTrueClass/FalseClass
stringA string must always contain UTF-8 encoded or 7-bit ASCII text.stringStringstr/unicodestringstringstringString (UTF-8)
bytesMay contain any arbitrary sequence of bytes.stringByteStringstr[]byteByteStringstringString (ASCII-8BIT)