buildgrid.server.cas.instance module
Storage Instances
Instances of CAS and ByteStream
- class buildgrid.server.cas.instance.ContentAddressableStorageInstance(storage: StorageABC, read_only: bool = False, tree_cache_size: int | None = None, tree_cache_ttl_minutes: float = 60)
Bases:
Instance
- SERVICE_NAME: ClassVar[str] = 'build.bazel.remote.execution.v2.ContentAddressableStorage'
The expected FULL_NAME of the Service which will wrap this instance. This value should be declared on the class of any Instance implementations.
- start() None
A method called when the grpc service is starting.
This method may be overriden if startup logic is required.
- stop() None
A method called when the grpc service is shutting down.
This method may be overriden if shutdown logic is required.
- find_missing_blobs(blob_digests: Sequence[Digest]) FindMissingBlobsResponse
- batch_update_blobs(requests: Sequence[Request]) BatchUpdateBlobsResponse
- batch_read_blobs(digests: Sequence[Digest]) BatchReadBlobsResponse
- lookup_tree_cache(root_digest: Digest) Tree | None
Find full Tree from cache
- put_tree_cache(root_digest: Digest, root: Directory, children: Iterable[Directory]) None
Put Tree with a full list of directories into CAS
- get_tree(request: GetTreeRequest) Iterator[GetTreeResponse]
- class buildgrid.server.cas.instance.ByteStreamInstance(storage: StorageABC, read_only: bool = False, disable_overwrite_early_return: bool = False)
Bases:
Instance
- SERVICE_NAME: ClassVar[str] = 'google.bytestream.ByteStream'
The expected FULL_NAME of the Service which will wrap this instance. This value should be declared on the class of any Instance implementations.
- BLOCK_SIZE = 1048576
- start() None
A method called when the grpc service is starting.
This method may be overriden if startup logic is required.
- stop() None
A method called when the grpc service is shutting down.
This method may be overriden if shutdown logic is required.
- read_cas_blob(digest: Digest, read_offset: int, read_limit: int) Iterator[ReadResponse]
- write_cas_blob(digest_hash: str, digest_size: str, requests: Iterator[WriteRequest]) WriteResponse