buildgrid.server.actioncache.service module


Allows clients to manually query/update the action cache.

class buildgrid.server.actioncache.service.ActionCacheService

Bases: ActionCacheServicer, InstancedServicer[Union[ActionCache, ActionCacheABC]]

FULL_NAME: ClassVar[str] = 'build.bazel.remote.execution.v2.ActionCache'

The full name of the servicer, used to match instances to the servicer and configure reflection. This value should be declared on the class of any Servicer implementations.

GetActionResult(request: GetActionResultRequest, context: ServicerContext) ActionResult

Retrieve a cached execution result.

Implementations SHOULD ensure that any blobs referenced from the [ContentAddressableStorage][build.bazel.remote.execution.v2.ContentAddressableStorage] are available at the time of returning the [ActionResult][build.bazel.remote.execution.v2.ActionResult] and will be for some period of time afterwards. The lifetimes of the referenced blobs SHOULD be increased if necessary and applicable.


  • NOT_FOUND: The requested ActionResult is not in the cache.

UpdateActionResult(request: UpdateActionResultRequest, context: ServicerContext) ActionResult

Upload a new execution result.

In order to allow the server to perform access control based on the type of action, and to assist with client debugging, the client MUST first upload the [Action][build.bazel.remote.execution.v2.Execution] that produced the result, along with its [Command][build.bazel.remote.execution.v2.Command], into the ContentAddressableStorage.

Server implementations MAY modify the UpdateActionResultRequest.action_result and return an equivalent value.


  • INVALID_ARGUMENT: One or more arguments are invalid.

  • FAILED_PRECONDITION: One or more errors occurred in updating the

action result, such as a missing command or action. * RESOURCE_EXHAUSTED: There is insufficient storage space to add the entry to the cache.