Skip to content
Agent Internal Reference

Agent Internal Reference

Protocol Documentation

Table of Contents

Top

proto/composia/agent/v1/agent.proto

AcknowledgeTaskRequest

FieldTypeLabelDescription
task_idstring
execution_idstring

AcknowledgeTaskResponse

FieldTypeLabelDescription
lease_expires_atgoogle.protobuf.Timestamp

AgentTask

AgentTask describes one executable task assigned to an agent.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID assigned to the agent.
typeAgentTaskTypetype identifies the task kind assigned by the controller.
service_namestringservice_name is the logical service name.
node_idstringnode_id is the target node ID for the task.
repo_revisionstringrepo_revision is the desired repo revision for this task.
service_dirstringservice_dir is the task service directory path within the bundle.
data_namesstringrepeateddata_names lists selected data entries for backup-like tasks.
params_jsonstringparams_json stores task-type-specific JSON parameters.
execution_idstringexecution_id identifies this specific delivery and rejects stale reports.
lease_expires_atgoogle.protobuf.Timestamplease_expires_at is the controller deadline for acknowledging or renewing this execution.

ContainerInfo

ContainerInfo describes one container for list views.

FieldTypeLabelDescription
idstring
namestringname is the runtime container name.
imagestring
statestringstate is the low-level Docker state value.
statusstringstatus is the Docker status string intended for display.
createdstringcreated is the container creation timestamp string.
labelsContainerInfo.LabelsEntryrepeatedlabels is the container label map.
portsstringrepeatedports contains display-formatted published port mappings.
networksstringrepeatednetworks lists connected Docker network names.
image_idstringimage_id is the resolved image ID.

ContainerInfo.LabelsEntry

FieldTypeLabelDescription
keystring
valuestring

DockerQueryRunContainerExecRequest

DockerQueryRunContainerExecRequest runs a non-interactive command in one local container.

FieldTypeLabelDescription
container_idstring
commandstringrepeated
stdinbytes
timeout_secondsuint32
max_output_bytesuint64

DockerQueryRunContainerExecResponse

DockerQueryRunContainerExecResponse returns the collected exec result.

FieldTypeLabelDescription
exit_codeint32
stdoutstring
stderrstring
timed_outbool
stdout_truncatedbool
stderr_truncatedbool
started_atgoogle.protobuf.Timestamp
finished_atgoogle.protobuf.Timestamp
durationstring

DockerQueryTask

DockerQueryTask describes one synchronous Docker query assigned to an agent.

FieldTypeLabelDescription
query_idstringquery_id is the controller-generated query ID.
node_idstringnode_id is the target node ID for the query.
list_containersListContainersRequest
inspect_containerInspectContainerRequest
list_networksListNetworksRequest
inspect_networkInspectNetworkRequest
list_volumesListVolumesRequest
inspect_volumeInspectVolumeRequest
list_imagesListImagesRequest
inspect_imageInspectImageRequest
container_logsGetContainerLogsRequest
run_container_execDockerQueryRunContainerExecRequest

DockerStats

DockerStats describes a node-level Docker usage snapshot.

FieldTypeLabelDescription
containers_totaluint32
containers_runninguint32containers_running is the number of running containers.
containers_stoppeduint32containers_stopped is the number of stopped containers.
containers_pauseduint32containers_paused is the number of paused containers.
imagesuint32images is the number of local Docker images.
networksuint32networks is the number of local Docker networks.
volumesuint32volumes is the number of local Docker volumes.
volumes_size_bytesuint64volumes_size_bytes is the total reported volume size in bytes.
disks_usage_bytesuint64disks_usage_bytes is the Docker-reported disk usage in bytes.
docker_server_versionstring

GetContainerLogsRequest

GetContainerLogsRequest fetches logs for one local container.

FieldTypeLabelDescription
container_idstringcontainer_id is the runtime container ID.
tailstringtail is forwarded to the Docker log tail option.
timestampsbooltimestamps includes Docker timestamps in the returned log output.

GetContainerLogsResponse

GetContainerLogsResponse returns one streamed log chunk.

FieldTypeLabelDescription
contentstring

GetServiceBundleRequest

GetServiceBundleRequest identifies the task whose bundle should be streamed.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID whose bundle should be streamed.
service_dirstringservice_dir overrides the task service directory for multi-service bundle consumers.
execution_idstring

GetServiceBundleResponse

GetServiceBundleResponse carries one binary chunk from a task bundle stream.

FieldTypeLabelDescription
service_namestringservice_name is the logical service name.
repo_revisionstringrepo_revision is the repo revision packaged in the bundle.
relative_rootstringrelative_root is the relative root path for the streamed bundle contents.
databytesdata contains one chunk of the bundle payload.

HeartbeatRequest

HeartbeatRequest is the lightweight keepalive sent by an agent.

FieldTypeLabelDescription
node_idstringnode_id is the stable node identifier.
agent_versionstringagent_version is the agent version string.
sent_atgoogle.protobuf.Timestampsent_at is the agent time when the heartbeat was sent.
runtimeNodeRuntimeSummary

HeartbeatResponse

HeartbeatResponse acknowledges a heartbeat with the controller receive time.

FieldTypeLabelDescription
received_atgoogle.protobuf.Timestamp

ImageInfo

ImageInfo describes one Docker image for list views.

FieldTypeLabelDescription
idstring
repo_tagsstringrepeatedrepo_tags lists named tags referencing the image.
sizeint64size is the image size in bytes.
virtual_sizeint64virtual_size is the virtual image size in bytes.
createdstringcreated is the image creation timestamp string.
repo_digestsstringrepeatedrepo_digests lists immutable digest references for the image.
architecturestringarchitecture is the image CPU architecture string.
osstringos is the image operating system string.
authorstringauthor is the image author metadata, when present.
containers_countuint32containers_count is the number of containers using the image.
is_danglingboolis_dangling reports whether the image is dangling.

InspectContainerRequest

InspectContainerRequest identifies one local container.

FieldTypeLabelDescription
container_idstringcontainer_id is the runtime container ID.

InspectContainerResponse

InspectContainerResponse returns raw Docker inspect JSON.

FieldTypeLabelDescription
raw_jsonstring

InspectImageRequest

InspectImageRequest identifies one local image.

FieldTypeLabelDescription
image_idstringimage_id is the runtime image ID.

InspectImageResponse

InspectImageResponse returns raw Docker inspect JSON.

FieldTypeLabelDescription
raw_jsonstring

InspectNetworkRequest

InspectNetworkRequest identifies one local network.

FieldTypeLabelDescription
network_idstringnetwork_id is the runtime network ID.

InspectNetworkResponse

InspectNetworkResponse returns raw Docker inspect JSON.

FieldTypeLabelDescription
raw_jsonstring

InspectVolumeRequest

InspectVolumeRequest identifies one local volume.

FieldTypeLabelDescription
volume_namestringvolume_name is the runtime volume name.

InspectVolumeResponse

InspectVolumeResponse returns raw Docker inspect JSON.

FieldTypeLabelDescription
raw_jsonstring

ListContainersRequest

ListContainersRequest requests all local Docker containers.

FieldTypeLabelDescription
page_sizeuint32page_size is the requested page size.
pageuint32page is the 1-based page number.
searchstringsearch is a case-insensitive substring match across key fields.
sort_bystringsort_by identifies the field used to sort results.
sort_descboolsort_desc reverses the sort order when true.

ListContainersResponse

ListContainersResponse returns local container summaries.

FieldTypeLabelDescription
containersContainerInforepeated
total_countuint32

ListImagesRequest

ListImagesRequest requests all local Docker images.

FieldTypeLabelDescription
page_sizeuint32page_size is the requested page size.
pageuint32page is the 1-based page number.
searchstringsearch is a case-insensitive substring match across key fields.
sort_bystringsort_by identifies the field used to sort results.
sort_descboolsort_desc reverses the sort order when true.

ListImagesResponse

ListImagesResponse returns local image summaries.

FieldTypeLabelDescription
imagesImageInforepeated
total_countuint32

ListNetworksRequest

ListNetworksRequest requests all local Docker networks.

FieldTypeLabelDescription
page_sizeuint32page_size is the requested page size.
pageuint32page is the 1-based page number.
searchstringsearch is a case-insensitive substring match across key fields.
sort_bystringsort_by identifies the field used to sort results.
sort_descboolsort_desc reverses the sort order when true.

ListNetworksResponse

ListNetworksResponse returns local network summaries.

FieldTypeLabelDescription
networksNetworkInforepeated
total_countuint32

ListVolumesRequest

ListVolumesRequest requests all local Docker volumes.

FieldTypeLabelDescription
page_sizeuint32page_size is the requested page size.
pageuint32page is the 1-based page number.
searchstringsearch is a case-insensitive substring match across key fields.
sort_bystringsort_by identifies the field used to sort results.
sort_descboolsort_desc reverses the sort order when true.

ListVolumesResponse

ListVolumesResponse returns local volume summaries.

FieldTypeLabelDescription
volumesVolumeInforepeated
total_countuint32

NetworkInfo

NetworkInfo describes one Docker network for list views.

FieldTypeLabelDescription
idstring
namestringname is the runtime network name.
driverstringdriver is the Docker network driver name.
scopestringscope is the Docker network scope.
internalboolinternal reports whether the network is internal-only.
attachableboolattachable reports whether standalone containers may attach to the network.
createdstringcreated is the network creation timestamp string.
labelsNetworkInfo.LabelsEntryrepeatedlabels is the network label map.
subnetstringsubnet is the primary IPv4 subnet, when available.
gatewaystringgateway is the primary IPv4 gateway, when available.
containers_countuint32containers_count is the number of connected containers.
ipv6_enabledboolipv6_enabled reports whether IPv6 is enabled for the network.

NetworkInfo.LabelsEntry

FieldTypeLabelDescription
keystring
valuestring

NodeRuntimeSummary

NodeRuntimeSummary reports basic runtime capacity for a node.

FieldTypeLabelDescription
docker_server_versionstringdocker_server_version is the local Docker Engine version string.
disk_total_bytesuint64disk_total_bytes is the total disk capacity visible to the agent.
disk_free_bytesuint64disk_free_bytes is the currently free disk capacity visible to the agent.

OpenContainerLogTunnelRequest

OpenContainerLogTunnelRequest carries one container log tunnel frame to the controller.

FieldTypeLabelDescription
session_idstringsession_id identifies the container log session.
kindstringkind identifies the frame type carried in this message.
contentstringcontent carries one log chunk for chunk frames.
error_messagestringerror_message contains the frame-level failure summary, when present.
error_codestringerror_code carries a Connect-style lowercase code string such as not_found.

OpenContainerLogTunnelResponse

OpenContainerLogTunnelResponse carries one container log tunnel frame to the agent.

FieldTypeLabelDescription
session_idstringsession_id identifies the container log session.
kindstringkind identifies the frame type carried in this message.
container_idstringcontainer_id identifies the target container for the log session.
tailstringtail is forwarded to the Docker log tail option for the session.
timestampsbooltimestamps includes Docker timestamps in streamed log chunks.

OpenExecTunnelRequest

OpenExecTunnelRequest carries one frame for an interactive exec session.

FieldTypeLabelDescription
session_idstringsession_id identifies the interactive exec session.
kindstringkind identifies the frame type carried in this message.
payloadbytespayload holds raw terminal or control bytes for the frame.
rowsuint32rows is the terminal row count carried by resize frames.
colsuint32cols is the terminal column count carried by resize frames.
node_idstringnode_id identifies the node that should execute the command.
container_idstringcontainer_id identifies the target container for the exec session.
commandstringrepeatedcommand stores the exec command and arguments.

OpenExecTunnelResponse

OpenExecTunnelResponse carries one frame back to the controller side.

FieldTypeLabelDescription
session_idstringsession_id identifies the interactive exec session.
kindstringkind identifies the frame type carried in this message.
payloadbytespayload holds raw terminal or control bytes for the frame.
rowsuint32rows is the terminal row count carried by resize frames.
colsuint32cols is the terminal column count carried by resize frames.
errorstringerror contains the frame-level error message, when present.
container_idstringcontainer_id identifies the target container for the exec session.
commandstringrepeatedcommand stores the exec command and arguments.

PullNextDockerQueryRequest

PullNextDockerQueryRequest identifies the node that is requesting a Docker query.

FieldTypeLabelDescription
node_idstringnode_id is the stable node identifier.

PullNextDockerQueryResponse

PullNextDockerQueryResponse indicates whether a Docker query was assigned.

FieldTypeLabelDescription
has_queryboolhas_query is false when there is currently no Docker query to run.
queryDockerQueryTaskquery is populated only when has_query is true.

PullNextTaskRequest

PullNextTaskRequest identifies the node that is requesting work.

FieldTypeLabelDescription
node_idstringnode_id is the stable node identifier.
execution_protocoluint32execution_protocol must be 1; legacy agents are not allowed to execute leased tasks.

PullNextTaskResponse

PullNextTaskResponse indicates whether a task was assigned.

FieldTypeLabelDescription
has_taskboolhas_task is false when there is currently no task to run.
taskAgentTasktask is populated only when has_task is true.

RemoveContainerRequest

RemoveContainerRequest identifies one local container deletion.

FieldTypeLabelDescription
container_idstringcontainer_id is the runtime container ID.
forceboolforce deletes the container even if it is running.
remove_volumesboolremove_volumes also removes anonymous volumes attached to the container.

RemoveContainerResponse

RemoveContainerResponse acknowledges one local container deletion request.

RemoveImageRequest

RemoveImageRequest identifies one local image deletion.

FieldTypeLabelDescription
image_idstringimage_id is the runtime image ID or reference.
forceboolforce deletes the image even if it has multiple tags or dependent stopped containers.

RemoveImageResponse

RemoveImageResponse acknowledges one local image deletion request.

RemoveNetworkRequest

RemoveNetworkRequest identifies one local network deletion.

FieldTypeLabelDescription
network_idstringnetwork_id is the runtime network ID.

RemoveNetworkResponse

RemoveNetworkResponse acknowledges one local network deletion request.

RemoveVolumeRequest

RemoveVolumeRequest identifies one local volume deletion.

FieldTypeLabelDescription
volume_namestringvolume_name is the runtime volume name.

RemoveVolumeResponse

RemoveVolumeResponse acknowledges one local volume deletion request.

RenewTaskLeaseRequest

FieldTypeLabelDescription
task_idstring
execution_idstring

RenewTaskLeaseResponse

FieldTypeLabelDescription
lease_expires_atgoogle.protobuf.Timestamp

ReportBackupResultRequest

ReportBackupResultRequest reports the result of one backup execution.

FieldTypeLabelDescription
backup_idstringbackup_id is the backup record ID being updated.
task_idstringtask_id is the controller task ID that triggered the backup.
service_namestringservice_name is the logical service name.
data_namestringdata_name is the service data entry that was backed up.
statusstringstatus is the latest backup status string observed by the agent.
started_atgoogle.protobuf.Timestampstarted_at is the backup start time.
finished_atgoogle.protobuf.Timestampfinished_at is set when the backup reaches a terminal state.
artifact_refstringartifact_ref identifies the produced backup artifact, when present.
error_summarystringerror_summary contains the failure summary when the backup fails.
execution_idstring

ReportBackupResultResponse

ReportBackupResultResponse acknowledges a backup result update.

ReportDockerQueryResultRequest

ReportDockerQueryResultRequest reports the result of one direct Docker query.

FieldTypeLabelDescription
query_idstringquery_id is the controller-generated query ID.
node_idstringnode_id is the stable node identifier that executed the query.
list_containersListContainersResponse
inspect_containerInspectContainerResponse
list_networksListNetworksResponse
inspect_networkInspectNetworkResponse
list_volumesListVolumesResponse
inspect_volumeInspectVolumeResponse
list_imagesListImagesResponse
inspect_imageInspectImageResponse
container_logsGetContainerLogsResponse
run_container_execDockerQueryRunContainerExecResponse
error_messagestringerror_message contains the human-readable failure summary when the query fails.
error_codeDockerQueryErrorCodeerror_code carries the normalized failure code when the query fails.

ReportDockerQueryResultResponse

ReportDockerQueryResultResponse acknowledges a Docker query result.

ReportDockerStatsRequest

ReportDockerStatsRequest reports the latest node Docker stats snapshot.

FieldTypeLabelDescription
node_idstringnode_id is the stable node identifier.
statsDockerStatsstats is the current Docker usage snapshot for the node.

ReportDockerStatsResponse

ReportDockerStatsResponse acknowledges a Docker stats update.

ReportServiceImageStatesRequest

ReportServiceImageStatesRequest reports image digests observed by one agent.

FieldTypeLabelDescription
service_namestring
node_idstring
imagesServiceImageStaterepeated
reported_atgoogle.protobuf.Timestamp
task_idstring
execution_idstring

ReportServiceImageStatesResponse

ReportServiceImageStatesResponse acknowledges image state updates.

ReportServiceImageUpdateChecksRequest

ReportServiceImageUpdateChecksRequest reports candidate image updates observed by one agent.

FieldTypeLabelDescription
service_namestring
node_idstring
checksServiceImageUpdateCheckrepeated
reported_atgoogle.protobuf.Timestamp
task_idstring
execution_idstring

ReportServiceImageUpdateChecksResponse

ReportServiceImageUpdateChecksResponse acknowledges image update check results.

ReportServiceInstanceStatusRequest

ReportServiceInstanceStatusRequest reports one service instance runtime snapshot.

FieldTypeLabelDescription
service_namestringservice_name is the logical service name.
node_idstringnode_id is the stable node identifier.
runtime_statusstringruntime_status is the latest instance status string observed by the agent.
reported_atgoogle.protobuf.Timestampreported_at is the time when the status snapshot was observed.
task_idstring
execution_idstring

ReportServiceInstanceStatusResponse

ReportServiceInstanceStatusResponse acknowledges a service status update.

ReportTaskStateRequest

ReportTaskStateRequest reports the latest task-level state from an agent.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID being updated.
statusAgentTaskStatusstatus is the latest task status observed by the agent.
error_summarystringerror_summary contains the task failure summary when the task fails.
finished_atgoogle.protobuf.Timestampfinished_at is set when the task reaches a terminal state.
execution_idstringexecution_id binds the terminal report to the current task delivery.

ReportTaskStateResponse

ReportTaskStateResponse acknowledges a task state update.

ReportTaskStepStateRequest

ReportTaskStepStateRequest reports the latest task step state from an agent.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID being updated.
step_nameAgentTaskStepNamestep_name identifies the step being updated.
statusAgentTaskStatusstatus is the latest step status observed by the agent.
started_atgoogle.protobuf.Timestampstarted_at is set when the step begins.
finished_atgoogle.protobuf.Timestampfinished_at is set when the step reaches a terminal state.
execution_idstring

ReportTaskStepStateResponse

ReportTaskStepStateResponse acknowledges a task step state update.

RunContainerActionRequest

RunContainerActionRequest identifies one local container action.

FieldTypeLabelDescription
container_idstring
actionContainerAction

RunContainerActionResponse

RunContainerActionResponse acknowledges a local container action request.

ServiceImageState

ServiceImageState describes one compose service image digest observation.

FieldTypeLabelDescription
compose_servicestring
image_refstring
local_digeststring
remote_digeststring
local_digest_observedbool
remote_digest_observedbool
check_statusstring
error_summarystring

ServiceImageUpdateCheck

ServiceImageUpdateCheck describes one configured image update check result.

FieldTypeLabelDescription
image_namestring
image_refstring
policy_typestring
current_valuestring
current_tagstring
current_digeststring
candidate_tagstring
candidate_digeststring
candidate_tagsstringrepeated
update_availablebool
check_statusstring
error_summarystring

UploadTaskLogsRequest

UploadTaskLogsRequest carries one ordered log chunk for a task.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID receiving the log chunk.
sequint64seq is a monotonically increasing sequence number per task log stream.
sent_atgoogle.protobuf.Timestampsent_at is the agent time when this log chunk was sent.
contentstringcontent is the incremental log payload.
execution_idstring

UploadTaskLogsResponse

UploadTaskLogsResponse acknowledges received task log chunks.

FieldTypeLabelDescription
task_idstringtask_id is the controller task ID receiving the acknowledgement.
last_confirmed_sequint64last_confirmed_seq is the last sequence the controller accepted.

VolumeInfo

VolumeInfo describes one Docker volume for list views.

FieldTypeLabelDescription
namestringname is the runtime volume name.
driverstringdriver is the Docker volume driver name.
mountpointstringmountpoint is the volume mount path on the node.
scopestringscope is the Docker volume scope.
createdstringcreated is the volume creation timestamp string.
labelsVolumeInfo.LabelsEntryrepeatedlabels is the volume label map.
size_bytesint64size_bytes is the reported volume size in bytes.
containers_countuint32containers_count is the number of attached containers.
in_useboolin_use reports whether any container currently uses the volume.

VolumeInfo.LabelsEntry

FieldTypeLabelDescription
keystring
valuestring

AgentTaskStatus

AgentTaskStatus identifies a task lifecycle status reported by an agent.

NameNumberDescription
AGENT_TASK_STATUS_UNSPECIFIED0
AGENT_TASK_STATUS_PENDING1
AGENT_TASK_STATUS_RUNNING2
AGENT_TASK_STATUS_AWAITING_CONFIRMATION3
AGENT_TASK_STATUS_SUCCEEDED4
AGENT_TASK_STATUS_FAILED5
AGENT_TASK_STATUS_CANCELLED6

AgentTaskStepName

AgentTaskStepName identifies a task step reported by an agent.

NameNumberDescription
AGENT_TASK_STEP_NAME_UNSPECIFIED0
AGENT_TASK_STEP_NAME_RENDER1
AGENT_TASK_STEP_NAME_PULL2
AGENT_TASK_STEP_NAME_BACKUP3
AGENT_TASK_STEP_NAME_COMPOSE_DOWN4
AGENT_TASK_STEP_NAME_COMPOSE_UP5
AGENT_TASK_STEP_NAME_TRANSFER6
AGENT_TASK_STEP_NAME_RESTORE7
AGENT_TASK_STEP_NAME_DNS_UPDATE8
AGENT_TASK_STEP_NAME_CADDY_SYNC9
AGENT_TASK_STEP_NAME_CADDY_RELOAD10
AGENT_TASK_STEP_NAME_IMAGE_CHECK11
AGENT_TASK_STEP_NAME_INIT12
AGENT_TASK_STEP_NAME_PRUNE13
AGENT_TASK_STEP_NAME_AWAITING_CONFIRMATION14
AGENT_TASK_STEP_NAME_PERSIST_REPO15
AGENT_TASK_STEP_NAME_FINALIZE16
AGENT_TASK_STEP_NAME_DOCKER_START17
AGENT_TASK_STEP_NAME_DOCKER_STOP18
AGENT_TASK_STEP_NAME_DOCKER_RESTART19
AGENT_TASK_STEP_NAME_DOCKER_REMOVE20
AGENT_TASK_STEP_NAME_CLOUDFLARE_TUNNEL_SYNC21

AgentTaskType

AgentTaskType identifies one executable task kind.

NameNumberDescription
AGENT_TASK_TYPE_UNSPECIFIED0
AGENT_TASK_TYPE_DEPLOY1
AGENT_TASK_TYPE_STOP2
AGENT_TASK_TYPE_RESTART3
AGENT_TASK_TYPE_UPDATE4
AGENT_TASK_TYPE_BACKUP5
AGENT_TASK_TYPE_RESTORE6
AGENT_TASK_TYPE_MIGRATE7
AGENT_TASK_TYPE_DNS_UPDATE8
AGENT_TASK_TYPE_CADDY_SYNC9
AGENT_TASK_TYPE_CADDY_RELOAD10
AGENT_TASK_TYPE_IMAGE_CHECK11
AGENT_TASK_TYPE_PRUNE12
AGENT_TASK_TYPE_RUSTIC_INIT13
AGENT_TASK_TYPE_RUSTIC_FORGET14
AGENT_TASK_TYPE_RUSTIC_PRUNE15
AGENT_TASK_TYPE_DOCKER_START16
AGENT_TASK_TYPE_DOCKER_STOP17
AGENT_TASK_TYPE_DOCKER_RESTART18
AGENT_TASK_TYPE_DOCKER_REMOVE_CONTAINER20
AGENT_TASK_TYPE_DOCKER_REMOVE_NETWORK21
AGENT_TASK_TYPE_DOCKER_REMOVE_VOLUME22
AGENT_TASK_TYPE_DOCKER_REMOVE_IMAGE23
AGENT_TASK_TYPE_CLOUDFLARE_TUNNEL_SYNC24

ContainerAction

ContainerAction identifies a container lifecycle action.

NameNumberDescription
CONTAINER_ACTION_UNSPECIFIED0CONTAINER_ACTION_UNSPECIFIED is invalid and should not be used.
CONTAINER_ACTION_START1CONTAINER_ACTION_START starts the container.
CONTAINER_ACTION_STOP2CONTAINER_ACTION_STOP stops the container.
CONTAINER_ACTION_RESTART3CONTAINER_ACTION_RESTART restarts the container.

DockerQueryErrorCode

DockerQueryErrorCode identifies the normalized error code for a Docker query.

NameNumberDescription
DOCKER_QUERY_ERROR_CODE_UNSPECIFIED0
DOCKER_QUERY_ERROR_CODE_INVALID_ARGUMENT1
DOCKER_QUERY_ERROR_CODE_NOT_FOUND2
DOCKER_QUERY_ERROR_CODE_FAILED_PRECONDITION3
DOCKER_QUERY_ERROR_CODE_PERMISSION_DENIED4
DOCKER_QUERY_ERROR_CODE_DEADLINE_EXCEEDED5
DOCKER_QUERY_ERROR_CODE_UNAVAILABLE6
DOCKER_QUERY_ERROR_CODE_INTERNAL7

AgentReportService

AgentReportService carries agent-to-controller runtime and task reports.

Method NameRequest TypeResponse TypeDescription
HeartbeatHeartbeatRequestHeartbeatResponseHeartbeat reports that an agent is alive and includes runtime metadata.
ReportTaskStateReportTaskStateRequestReportTaskStateResponseReportTaskState reports the latest state for one task.
ReportTaskStepStateReportTaskStepStateRequestReportTaskStepStateResponseReportTaskStepState reports the latest state for one task step.
UploadTaskLogsUploadTaskLogsRequest streamUploadTaskLogsResponse streamUploadTaskLogs streams log chunks from the agent to the controller.
ReportBackupResultReportBackupResultRequestReportBackupResultResponseReportBackupResult reports the result of one backup operation.
ReportServiceInstanceStatusReportServiceInstanceStatusRequestReportServiceInstanceStatusResponseReportServiceInstanceStatus reports the current status of one service instance.
ReportServiceImageStatesReportServiceImageStatesRequestReportServiceImageStatesResponseReportServiceImageStates reports image digest observations for one service instance.
ReportServiceImageUpdateChecksReportServiceImageUpdateChecksRequestReportServiceImageUpdateChecksResponseReportServiceImageUpdateChecks reports candidate image updates for one service instance.
ReportDockerStatsReportDockerStatsRequestReportDockerStatsResponseReportDockerStats reports the latest Docker stats snapshot for one node.
ReportDockerQueryResultReportDockerQueryResultRequestReportDockerQueryResultResponseReportDockerQueryResult reports the result of one direct Docker query.
OpenExecTunnelOpenExecTunnelRequest streamOpenExecTunnelResponse streamOpenExecTunnel proxies interactive exec traffic between controller and agent.
OpenContainerLogTunnelOpenContainerLogTunnelRequest streamOpenContainerLogTunnelResponse streamOpenContainerLogTunnel proxies live container log traffic between controller and agent.

AgentTaskService

AgentTaskService lets an agent pull work assigned to its node.

Method NameRequest TypeResponse TypeDescription
PullNextTaskPullNextTaskRequestPullNextTaskResponsePullNextTask returns the next available task for the requesting node.
AcknowledgeTaskAcknowledgeTaskRequestAcknowledgeTaskResponseAcknowledgeTask confirms that the agent durably accepted an offered task.
RenewTaskLeaseRenewTaskLeaseRequestRenewTaskLeaseResponseRenewTaskLease extends an accepted task execution lease.
PullNextDockerQueryPullNextDockerQueryRequestPullNextDockerQueryResponsePullNextDockerQuery returns the next in-memory Docker query for the requesting node.

BundleService

BundleService streams service bundles needed to execute a task.

Method NameRequest TypeResponse TypeDescription
GetServiceBundleGetServiceBundleRequestGetServiceBundleResponse streamGetServiceBundle streams the task bundle as binary chunks.

DockerService

DockerService exposes Docker operations that run on the agent node.

Method NameRequest TypeResponse TypeDescription
ListContainersListContainersRequestListContainersResponseListContainers lists local Docker containers.
InspectContainerInspectContainerRequestInspectContainerResponseInspectContainer returns raw Docker inspect JSON for one container.
RunContainerActionRunContainerActionRequestRunContainerActionResponseRunContainerAction applies a lifecycle action to one container.
RemoveContainerRemoveContainerRequestRemoveContainerResponseRemoveContainer deletes one container.
GetContainerLogsGetContainerLogsRequestGetContainerLogsResponse streamGetContainerLogs streams log text for one container.
ListNetworksListNetworksRequestListNetworksResponseListNetworks lists local Docker networks.
InspectNetworkInspectNetworkRequestInspectNetworkResponseInspectNetwork returns raw Docker inspect JSON for one network.
RemoveNetworkRemoveNetworkRequestRemoveNetworkResponseRemoveNetwork deletes one network.
ListVolumesListVolumesRequestListVolumesResponseListVolumes lists local Docker volumes.
InspectVolumeInspectVolumeRequestInspectVolumeResponseInspectVolume returns raw Docker inspect JSON for one volume.
RemoveVolumeRemoveVolumeRequestRemoveVolumeResponseRemoveVolume deletes one volume.
ListImagesListImagesRequestListImagesResponseListImages lists local Docker images.
InspectImageInspectImageRequestInspectImageResponseInspectImage returns raw Docker inspect JSON for one image.
RemoveImageRemoveImageRequestRemoveImageResponseRemoveImage deletes one image.

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)
Last updated on • Renovate Bot