summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/local
AgeCommit message (Collapse)Author
9 daysClarify use of a clang-tidy checkPaul Cristian Sarbu
The google-default-arguments check normally imposes that virtual methods have no default arguments. For our use-cases, all implementations of such methods are expected to use the same default arguments, and thus this check is manually disabled via NOLINT comments. However, this is not done consistently. This commit cleans this up and clarifies our intent by: - removing the default values (and the NOLINT statement) for all implementations of virtual methods with default argument values, matching the desired intended behaviour, but - keeping the clang-tidy check for future cases where derived classes would want to provide each different defaults.
9 daysExecutionAPI: Support output_paths in requestsOliver Reiche
... and prepare local execution for clients using only RBEv2.1 (setting only output_paths).
9 daysExecutionAPI: Support output_symlinks in responseOliver Reiche
9 daysExecutionApi: Drop DirectorySymlinks from common apiOliver Reiche
... as it is only needed for local execution, there is no need to provide it in the common api interface.
9 daysLocalAction: Fix the use of external loggerOliver Reiche
2025-06-16Avoid unnecessary work in accessing container entriesPaul Cristian Sarbu
- in sequence containers, use operator[] instead of .at() when accessing indices guaranteed to be in bound; - in associative containers, prefer .find() and reusing the returned const iterator to using .contains() and .at(); while there, make any so obtained iterators const if they are read-only.
2025-06-04Executor: Check validity of action outputs in compatible modePaul Cristian Sarbu
This ensures that any entries that the standard remote execution protocol accepts but are invalid in justbuild, i.e., upwards symlinks, are rejected. For this purpose, do not fail in the action response instances, just perform the check there, as all required information is available, and set a flag that the executor can check as needed.
2025-06-04{Local,Bazel}Response: Fix logic for marking succesful populationPaul Cristian Sarbu
While in practice a failure to populate the fields of a response happens once per invocation, as it will trigger a failure of the execution, from an algorithmic standpoint the flag to mark a successful population of the response fields should only be set on actual success. Fix this.
2025-06-04LocalCasReader: Add validity check for bazel directoriesPaul Cristian Sarbu
This will check if directories contain upwards symlinks.
2025-05-12LocalAction: Fix collection of directory symlinkOliver Reiche
2025-04-22FileSystemManager: Always remove directories recursivelyMaksim Denisov
2025-03-24LocalApi: Use file sources of ArtifactBlobs.Maksim Denisov
2025-03-24ExecutionApi: Return TmpDirMaksim Denisov
2025-03-24TmpDir: minor refactoringMaksim Denisov
2025-03-24Remove redundant UpdateContainerAndUpload.Maksim Denisov
2025-03-17execution_api: support reading off stdout/stderr digestsKlaus Aehlig
2025-03-10local actions: return durationKlaus Aehlig
2025-03-10execution response interface: include execution durationKlaus Aehlig
2025-02-28Avoid rehashing content when using GitRepo::ReadTreeDataMaksim Denisov
2025-02-28Include ArtifactDigestFactory into "common" libraryMaksim Denisov
2025-02-27LocalApi: Create ArtifactBlobs from existing filesMaksim Denisov
2025-02-27ArtifactBlob: Use static function for constructionMaksim Denisov
2025-02-27ArtifactBlob: Check access to the contentMaksim Denisov
2025-02-27ArtifactBlob: Convert to a classMaksim Denisov
2025-02-27ArtifactBlob: Move from execution_api/common to commonMaksim Denisov
2025-02-21LocalCasReader: Use IncrementalReaderMaksim Denisov
2025-02-20Separate off id generation to a separate libraryKlaus Aehlig
... and rename appropriately to reflect contents more precisely than the generic "common". This separation also disentangles dependencies a bit.
2025-02-19LocalApi: Use BackMap to get missing digestsMaksim Denisov
2025-02-19IExecutionApi: Return supported HashFunction::TypeMaksim Denisov
2025-02-19LocalApi: rename library "local" => "local_api"Maksim Denisov
2025-02-19LocalApi: Add cpp fileMaksim Denisov
2025-02-19GitApi: rename library "git" => "git_api"Maksim Denisov
2025-02-07Rename artifact_blob_container to artifact_blobMaksim Denisov
2025-02-07CommonApi: Remove template parameter from UploadAndUpdateContainerMaksim Denisov
...since it works with ArtifactBlobs only.
2025-02-07Replace ArtifactBlobContainer and BazelBlobContainerMaksim Denisov
...with explicit std::unordered_set.
2025-02-07Replace ContentBlobContainer<T> with std::unordered_setMaksim Denisov
2025-02-07IExecutionApi: Rename IsAvailable to GetMissingDigestsMaksim Denisov
2025-02-07IExecutionApi: Use unordered_set in IsAvailableMaksim Denisov
2025-01-29local api: absence of a git api is not a success in retrievingKlaus Aehlig
While there, also check for availability first, to avoid duplicated error messages (from git_cas and the caller).
2025-01-22local api: take git fallback seriouslyKlaus Aehlig
... and, when asked if an artifact is available, also inspect the git cas.
2024-12-19Move functionality for staging from CAS to output paths to TreeReaderMaksim Denisov
...and employ it in LocalApi.
2024-12-05execution api: support retrieving from more than one API, also for fdKlaus Aehlig
Extend the api to optionally accept a different API for preferred fetching. This is already supported when fetching to a file path; therefore, extend to keep the interface symmetric.
2024-11-29Clean up unused depsKlaus Aehlig
2024-11-14execution_api remaining: Implement IWYU suggestionsPaul Cristian Sarbu
2024-10-25Add dependencies explicitly that are included directlyKlaus Aehlig
... instead of relying on those dependencies being pulled in indirectly.
2024-10-10Remove from OSS intersecting public-private dependenciesMaksim Denisov
2024-10-08Name local variables using lower_caseMaksim Denisov
...and private members using lower_case_
2024-10-07Disable misc-no-recursion checkMaksim Denisov
...since we use recursion for trees a lot, but skip this check manually.
2024-10-07Enable readability-* checks.Maksim Denisov
2024-10-07Enable readability-redundant-member-init check.Maksim Denisov