workspace.v1

Top

arista/workspace.v1/workspace.proto

BuildResult

BuildResult is the per-device build output

Field NameTypeDescription
stateBuildState

stageBuildStage

input_validation_resultsInputValidationResults

configlet_build_resultsConfigletBuildResults

config_validation_resultConfigValidationResult

BuildResults

BuildResults is the build output for all devices, indexed by device ID

Field NameTypeDescription
valuesBuildResults.ValuesEntry[…]

BuildResults.ValuesEntry

Field NameTypeDescription
keystring

valueBuildResult

ConfigValidationResult

ConfigValidationResult is the result of validating config with an EOS device

Field NameTypeDescription
summaryarista.configstatus.v1.ConfigSummary

errorsarista.configstatus.v1.ConfigErrors

warningsarista.configstatus.v1.ConfigErrors

ConfigletBuildResult

ConfigletBuildResult is the output of configlet (template) build

Field NameTypeDescription
template_errorsTemplateErrors

generated_configgoogle.protobuf.StringValue

ConfigletBuildResults

ConfigletBuildResults is the output of configlet build, one per studio

Field NameTypeDescription
valuesConfigletBuildResults.ValuesEntry[…]

ConfigletBuildResults.ValuesEntry

Field NameTypeDescription
keystring

valueConfigletBuildResult

InputError

InputError represents an error in an input field, with either schema or value

Field NameTypeDescription
field_idgoogle.protobuf.StringValue

ID of the field

pathfmp.RepeatedString

Path leading up to the field

membersfmp.RepeatedString

Members of the field

messagegoogle.protobuf.StringValue

The error message

InputErrors

InputErrors is the nullable list of InputError

Field NameTypeDescription
valuesInputError[…]

InputValidationResult

InputValidationResult is the result of input validation of a studio

Field NameTypeDescription
input_schema_errorsInputErrors

input_value_errorsInputErrors

other_errorsfmp.RepeatedString

InputValidationResults

InputValidationResults is the result of input validation, one per studio

Field NameTypeDescription
valuesInputValidationResults.ValuesEntry[…]

InputValidationResults.ValuesEntry

Field NameTypeDescription
keystring

valueInputValidationResult

RequestParams

RequestParams is the parameters associated with a WorkspaceRequest

Field NameTypeDescription
request_idgoogle.protobuf.StringValue

Response

Response is the response to the last Request, typically errors in processing

Field NameTypeDescription
statusResponseStatus

messagegoogle.protobuf.StringValue

Responses

Responses is the map of all request ID to response that are processed so far

Field NameTypeDescription
valuesResponses.ValuesEntry[…]

Responses.ValuesEntry

Field NameTypeDescription
keystring

valueResponse

TemplateError

TemplateError represents a single error generated by a template evaluation

Field NameTypeDescription
line_numgoogle.protobuf.UInt32Value

Line on which the error occurred

exceptiongoogle.protobuf.StringValue

The exception type

detailgoogle.protobuf.StringValue

Backtrace, etc.

TemplateErrors

TemplateErrors is the nullable list of TemplateError

Field NameTypeDescription
valuesTemplateError[…]

Workspace

Workspace is the status of a workspace

Field NameTypeDescription
keyWorkspaceKey

created_atgoogle.protobuf.Timestamp

created_bygoogle.protobuf.StringValue

last_modified_atgoogle.protobuf.Timestamp

last_modified_bygoogle.protobuf.StringValue

stateWorkspaceState

last_build_idgoogle.protobuf.StringValue

responsesResponses

cc_idsfmp.RepeatedString

Change Controls created by submitting this workspace

WorkspaceBuild

WorkspaceBuild is the result, or output of a workspace build This includes results for all devices across all studios in the workspace

Field NameTypeDescription
keyWorkspaceBuildKey

stateBuildState

build_resultsBuildResults

WorkspaceBuildKey

WorkspaceBuildKey is the key to get the build result for a workspace

Field NameTypeDescription
workspace_idgoogle.protobuf.StringValue

workspace_id is a required field which represents workspace ID

build_idgoogle.protobuf.StringValue

build_id is a required field which represents build ID

WorkspaceConfig

WorkspaceConfig represents the configurable parameters of a workspace

Field NameTypeDescription
keyWorkspaceKey

display_namegoogle.protobuf.StringValue

descriptiongoogle.protobuf.StringValue

requestRequest

request_paramsRequestParams

WorkspaceKey

WorkspaceKey is the key to get a workspace’s status

Field NameTypeDescription
workspace_idgoogle.protobuf.StringValue

BuildStage

BuildStage is the stage of a workspace build

NameNumberDescription
BUILD_STAGE_UNSPECIFIED0

BUILD_STAGE_INPUT_VALIDATION1

BUILD_STAGE_CONFIGLET_BUILD2

BUILD_STAGE_CONFIG_VALIDATION3

BuildState

NameNumberDescription
BUILD_STATE_UNSPECIFIED0

BUILD_STATE_IN_PROGRESS1

BUILD_STATE_CANCELED2

BUILD_STATE_SUCCESS3

BUILD_STATE_FAIL4

Request

Operations on a workspace that can be requested by a client. These are workspace-specific operations. The standard operations Add, Delete, etc. are performed via the standard (“core”) APIs. This is an asynchronous request that returns immediately if the request is valid. The result of the operation will be available in WorkspaceStatus when it is generated.

NameNumberDescription
REQUEST_UNSPECIFIED0

REQUEST_START_BUILD1

Start a new build

REQUEST_CANCEL_BUILD2

Cancel any pending build

REQUEST_SUBMIT3

Submit the workspace (merge into mainline)

REQUEST_ABANDON4

Abandon the workspace. Not delete

REQUEST_ROLLBACK5

Rollback an already submitted workspace

ResponseStatus

NameNumberDescription
RESPONSE_STATUS_UNSPECIFIED0

RESPONSE_STATUS_SUCCESS1

RESPONSE_STATUS_FAIL2

WorkspaceState

NameNumberDescription
WORKSPACE_STATE_UNSPECIFIED0

WORKSPACE_STATE_PENDING1

WORKSPACE_STATE_SUBMITTED2

WORKSPACE_STATE_ABANDONED3

WORKSPACE_STATE_CONFLICTS4

WORKSPACE_STATE_ROLLED_BACK5

Top

arista/workspace.v1/services.gen.proto

WorkspaceBuildRequest

Field NameTypeDescription
keyWorkspaceBuildKey

Key uniquely identifies a WorkspaceBuild instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

WorkspaceBuildResponse

Field NameTypeDescription
valueWorkspaceBuild

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

WorkspaceBuild instance in this response.

WorkspaceBuildStreamRequest

Field NameTypeDescription
partial_eq_filterWorkspaceBuild[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

This field is not allowed in the Subscribe RPC.

WorkspaceBuildStreamResponse

Field NameTypeDescription
valueWorkspaceBuild

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this WorkspaceBuild’s last modification.

typearista.subscriptions.Operation

Operation indicates how the WorkspaceBuild value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

WorkspaceConfigDeleteRequest

Field NameTypeDescription
keyWorkspaceKey

Key indicates which WorkspaceConfig instance to remove.

This field must always be set.

WorkspaceConfigDeleteResponse

Field NameTypeDescription
keyWorkspaceKey

Key echoes back the key of the deleted WorkspaceConfig instance.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

deletion. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==DeletedAt will not include this instance.

WorkspaceConfigRequest

Field NameTypeDescription
keyWorkspaceKey

Key uniquely identifies a WorkspaceConfig instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

WorkspaceConfigResponse

Field NameTypeDescription
valueWorkspaceConfig

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

WorkspaceConfig instance in this response.

WorkspaceConfigSetRequest

Field NameTypeDescription
valueWorkspaceConfig

WorkspaceConfig carries the value to set into the datastore.

See the documentation on the WorkspaceConfig struct for which fields are required.

WorkspaceConfigSetResponse

Field NameTypeDescription
valueWorkspaceConfig

Value carries all the values given in the WorkspaceConfigSetRequest as well

as any server-generated values.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

creation. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==CreatedAt will include this instance.

WorkspaceConfigStreamRequest

Field NameTypeDescription
partial_eq_filterWorkspaceConfig[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

This field is not allowed in the Subscribe RPC.

WorkspaceConfigStreamResponse

Field NameTypeDescription
valueWorkspaceConfig

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this WorkspaceConfig’s last modification.

typearista.subscriptions.Operation

Operation indicates how the WorkspaceConfig value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

WorkspaceRequest

Field NameTypeDescription
keyWorkspaceKey

Key uniquely identifies a Workspace instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

WorkspaceResponse

Field NameTypeDescription
valueWorkspace

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

Workspace instance in this response.

WorkspaceStreamRequest

Field NameTypeDescription
partial_eq_filterWorkspace[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

This field is not allowed in the Subscribe RPC.

WorkspaceStreamResponse

Field NameTypeDescription
valueWorkspace

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this Workspace’s last modification.

typearista.subscriptions.Operation

Operation indicates how the Workspace value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

WorkspaceBuildService

Method NameRequest TypeResponse TypeDescription
GetOneWorkspaceBuildRequestWorkspaceBuildResponse

GetAllWorkspaceBuildStreamRequestWorkspaceBuildStreamResponse stream

SubscribeWorkspaceBuildStreamRequestWorkspaceBuildStreamResponse stream

WorkspaceConfigService

Method NameRequest TypeResponse TypeDescription
GetOneWorkspaceConfigRequestWorkspaceConfigResponse

GetAllWorkspaceConfigStreamRequestWorkspaceConfigStreamResponse stream

SubscribeWorkspaceConfigStreamRequestWorkspaceConfigStreamResponse stream

SetWorkspaceConfigSetRequestWorkspaceConfigSetResponse

DeleteWorkspaceConfigDeleteRequestWorkspaceConfigDeleteResponse

WorkspaceService

Method NameRequest TypeResponse TypeDescription
GetOneWorkspaceRequestWorkspaceResponse

GetAllWorkspaceStreamRequestWorkspaceStreamResponse stream

SubscribeWorkspaceStreamRequestWorkspaceStreamResponse stream