summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api
AgeCommit message (Collapse)Author
2022-10-11Refactor ReadTreeInfos function names and add documentationSascha Roloff
2022-10-07Fix upload of known source treesOliver Reiche
When a tree is taken from a git root, it is not necessarily known on the remote site. So, as any missing artifact it has to be uploaded, recursively uploading the parts to keep the tree invariant. The function RetrieveToCas was doing the correct recursiv pattern, however inspecting trees incorrectly using the function ReadTreeInfos; the latter function, however, was obtaining all the leafs of the tree as is needed for a compatible action-input description. Add and use a function that reads the direct contents of a tree.
2022-10-07LocalTreeMap: Drop the use of the map entirelyOliver Reiche
... as for remote execution, the map entries are only used for the `install` subcommand. For local execution, much less tree objects are read from CAS when using this map. However, the performance benefit is barely measurable and therefore we rather remove this map entirely to reduce complexity.
2022-10-07LocalTreeMap: Prevent tree objects from being storedOliver Reiche
... to align with the original idea of caching a flat list of blob objects, without the need to recursively traverse any trees. Consequently, we cannot create any map entry in places where we do not have all sub-tree entries at hand (e.g., LocalAPI, BazelAPI, BazelResponse).
2022-10-07BazelNetwork: Fix use of DirectoryMap in native modeOliver Reiche
... which is not using `Directory` messages nor does it support the `GetTree()` rpc.
2022-10-07Increase log level for grpc-related failures to warningKlaus Aehlig
... so that any infra structure problem on the remote execution is reported by default.
2022-10-07Improve error message on filure to execute a remote actionKlaus Aehlig
... to emphasize that this is the extensional action identifier, not the intensional one.
2022-10-05LocalAction: Improve error message for stagingOliver Reiche
2022-09-13Fix build with gcc/g++Oliver Reiche
2022-09-12Introduced RetrieveToCas function in IExecutionApi to synchronize artifacts ↵Sascha Roloff
between different CASes
2022-09-12BazelApi chunk availability check returns provided ArtifactDigestsSascha Roloff
2022-09-12Removed ArtifactDigest is_tree() predicateSascha Roloff
2022-09-12fix the path of the local tree-cas for compatible modeAlberto Sartori
in daca274041e31636f08927b0cebc56fd33c7bbdf it has been added a local tree-cas. This cas is populated only when just runs in native mode. However, even in compatible mode, a tree must be looked for in the tree-cas. This patch set the path of the tree-cas to be the same of file-cas while running in compatible mode.
2022-09-12Fixed tree handling in compatible mode and added regression testSascha Roloff
2022-08-09RemoteExecutionClient: print debug stringAlberto Sartori
2022-08-05BazelNetwork: Use bytestream for reading unknown size blobsOliver Reiche
... otherwise actual blob size might exceed the maximum transfer size of the CAS client. Therefore, we always have to use the bytestream client if the size is unknown.
2022-08-05Parse git tree objects instead of protobuf messages as action result in ↵Sascha Roloff
native mode
2022-08-05Add more tracing messages to remote execution clientSascha Roloff
2022-08-05Git tree based root digest creationSascha Roloff
2022-08-05BazelResponse: Support collecting output dirs in native modeOliver Reiche
2022-08-05LocalExecution: Use Git tree formatOliver Reiche
- LocalStorage Add tree CAS and support reading Git trees - LocalAction: Create Git tree for output directory - LocalApi: Support availability and upload of Git trees - LocalStorage: Support dumping tree to stream in native mode
2022-08-05LocalCAS: Support storing treesOliver Reiche
2022-08-05CLI: Add flag for dumping raw tree objectsOliver Reiche
2022-08-05BazelMsgFactory: Support dumping Git tree to stringOliver Reiche
2022-08-05BazelMsgFactory: Implement reading object infos from Git treeOliver Reiche
2022-08-05BazelMsgFactory: Implement creating Git tree from fs pathOliver Reiche
2022-08-05Introduced batch availability check for remote execution apiSascha Roloff
2022-08-05Modified artifact digest to provide wire digest on demandSascha Roloff
2022-08-05ExecutionResponse: Fix artifacts reserve sizeOliver Reiche
2022-07-05Remove option --persistentKlaus Aehlig
... as the --request-action-input option provides a clean way of restoring the inputs to a specific action, without the need of interacting with the internal directory structure of the tool. In particular, the new option also works for remote builds.
2022-06-29rename private member in compliance with the used code styleAlberto Sartori
2022-06-28add parenthesis to emphasize the order of evaluationAlberto Sartori
2022-06-22RemoteExecutionClient: Check and log execution statusOliver Reiche
2022-06-20Crypto: Add and use set of globally used hash functionsOliver Reiche
2022-06-13TargetCache: Initial implementationOliver Reiche
2022-06-13RemoteExecutionConfig: Keep global platform propertiesOliver Reiche
... and cache endpoint address for rebuilding.
2022-06-13LocalCAS: Add singleton patternOliver Reiche
2022-06-02Add missing direct dependenciesKlaus Aehlig
2022-05-09log to Error level when remote is unreachableAlberto Sartori
2022-04-27use kebab-case for all cmd line argsAlberto Sartori
2022-04-22Fix remote-client names in loggingKlaus Aehlig
The fact that we happen to use the same protocol as bazel does, does not mean we are bazel. After all, the remote-build-execution protocol is meant as a generic protocol. Hence change the names in logs to avoid confusions.
2022-04-21add compatibility with original remote build protocolAlberto Sartori
2022-04-14add u+w permission when installing a fileAlberto Sartori
... to allow for overwriting
2022-04-07FileSystemManager::ReadDirectory does just one system callAlberto Sartori
2022-04-04Hardlinking: when error is expected, log only at debug levelKlaus Aehlig
2022-03-23Apply changes suggested by clang-tidy 11Oliver Reiche
2022-03-23Apply changes suggested by clang-format 11Oliver Reiche
2022-03-22BazelApi: Fix retrieving artifacts to filesystem pathOliver Reiche
... which was accessing the wrong artifacts in the list if the artifact list contains a mixture of files and trees.
2022-03-21Drop unnecessary declaration of indirect dependenciesKlaus Aehlig
If we do not use a target directly, we also should not include it. It's be build tool's job to track indirect dependencies.
2022-03-18When representing a directory as json, terminate with new-line characterKlaus Aehlig
I this way, also resulting trees can cleanly be printed on the command line via the -P option.