Protocol Documentation

Table of Contents

grpc/firewheel_grpc.proto

Top

CountVMMappingsNotReadyRequest

FieldTypeLabelDescription
db string

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

CountVMMappingsNotReadyResponse

FieldTypeLabelDescription
db string

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

count uint32

The count of not ready VMs

DestroyAllVMMappingsRequest

FieldTypeLabelDescription
db string

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

DestroyAllVMMappingsResponse

DestroyVMMappingResponse

ExperimentLaunchTime

FieldTypeLabelDescription
db string

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

launch_time google.protobuf.Timestamp

The experiment launch time.

ExperimentStartTime

FieldTypeLabelDescription
db string

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

start_time google.protobuf.Timestamp

The experiment start time.

GetExperimentLaunchTimeRequest

FieldTypeLabelDescription
db string

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

GetExperimentStartTimeRequest

FieldTypeLabelDescription
db string

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

GetInfoRequest

GetInfoResponse

FieldTypeLabelDescription
version string

The grpc server version.

uptime float

The grpc server uptime.

experiment_running bool

Whether an experiment is running.

InitializeExperimentStartTimeRequest

FieldTypeLabelDescription
db string

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

InitializeExperimentStartTimeResponse

ListRepositoriesRequest

FieldTypeLabelDescription
db string

ListVMMappingsRequest

FieldTypeLabelDescription
db string

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

json_match_dict string

A json dictionary containing search criteria to match against.

RemoveAllRepositoriesRequest

FieldTypeLabelDescription
db string

RemoveAllRepositoriesResponse

FieldTypeLabelDescription
removed_count int32

RemoveRepositoryResponse

FieldTypeLabelDescription
removed_count int32

Repository

FieldTypeLabelDescription
db string

path string

SetRepositoryResponse

SetVMStateByUUIDRequest

FieldTypeLabelDescription
db string

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

server_uuid string

The uuid of the VM

state string

The state to update the VM with

SetVMTimeByUUIDRequest

FieldTypeLabelDescription
db string

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

server_uuid string

The uuid of the VM

current_time string

The time to update the VM with

VMMapping

FieldTypeLabelDescription
db string

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

server_uuid string

The uuid of the VM

server_name string

The name of the VM

control_ip string

The IP of the VM on the control network.

state string

The state of the VM.

current_time string

The current time in the VM.

VMMappingUUID

FieldTypeLabelDescription
db string

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

server_uuid string

The uuid of the VM

Firewheel

Method NameRequest TypeResponse TypeDescription
SetRepository Repository SetRepositoryResponse

Set a repository.

RemoveRepository Repository RemoveRepositoryResponse

Remove a repository.

ListRepositories ListRepositoriesRequest Repository stream

List all repositories.

RemoveAllRepositories RemoveAllRepositoriesRequest RemoveAllRepositoriesResponse

Remove all repositories.

GetInfo GetInfoRequest GetInfoResponse

Gets the gRPC server info.

GetVMMappingByUUID VMMappingUUID VMMapping

Gets the vm_mapping associated with the given uuid.

DestroyVMMappingByUUID VMMappingUUID DestroyVMMappingResponse

Destroys the vm_mapping associated with the given uuid.

SetVMTimeByUUID SetVMTimeByUUIDRequest VMMapping

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

SetVMStateByUUID SetVMStateByUUIDRequest VMMapping

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

SetVMMapping VMMapping VMMapping

Sets the given vm_mapping.

ListVMMappings ListVMMappingsRequest VMMapping stream

Iterates through all requested vm_mappings.

CountVMMappingsNotReady CountVMMappingsNotReadyRequest CountVMMappingsNotReadyResponse

Returns the count of VMs that are not ready.

DestroyAllVMMappings DestroyAllVMMappingsRequest DestroyAllVMMappingsResponse

Destroys all vm_mappings.

GetExperimentStartTime GetExperimentStartTimeRequest ExperimentStartTime

Gets the experiment start time.

SetExperimentStartTime ExperimentStartTime ExperimentStartTime

Sets the experiment start time.

GetExperimentLaunchTime GetExperimentLaunchTimeRequest ExperimentLaunchTime

Gets the experiment launch time.

SetExperimentLaunchTime ExperimentLaunchTime ExperimentLaunchTime

Sets the experiment start time.

InitializeExperimentStartTime InitializeExperimentStartTimeRequest InitializeExperimentStartTimeResponse

Initializes the experiment launch time.

Scalar Value Types

.proto TypeNotesC++ TypeJava TypePython Type
double double double float
float float float float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long
uint32 Uses variable-length encoding. uint32 int int/long
uint64 Uses variable-length encoding. uint64 long int/long
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long
sfixed32 Always four bytes. int32 int int
sfixed64 Always eight bytes. int64 long int/long
bool bool boolean boolean
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode
bytes May contain any arbitrary sequence of bytes. string ByteString str