summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-12-11computed root building: synchronize log to remote in case of failureKlaus Aehlig
When materializing a computed root fails, the error is reported as a reference (in form of a blob identifier) to the log. This indirection is necessary as many roots are, in general materialized simultaneously. When building remotely, also upload the build log to remote execution; in this way, it is available in the same way as for serve-build failures (which are the other delegated builds). One particular use case is if the failure happens on a CI build; then the upload ensures the actual log is still available for the observer of the CI (provided they have access to the remote execution used by the CI).
2024-12-10Computed Roots: be aware of the serve end pointKlaus Aehlig
... as the base repository of a computed root might be absent.
2024-12-10just-mr launch: Pass local launcher to just analysePaul Cristian Sarbu
2024-12-09Computed roots: only install artifactsKlaus Aehlig
... however, also build the runfiles, as they are needed to write the target-level cache for the underlying export target.
2024-12-09Avoid writing to the CAS during bootstrappingMaksim Denisov
2024-12-09Move compactifier to a separate libraryMaksim Denisov
2024-12-09Move garbage_collector to a separate libraryMaksim Denisov
2024-12-09Remove redundant copies from BazelApi::IsAvailableMaksim Denisov
...and ignore non-requested digests.
2024-12-09Use expected to return an error from ParseRootMaksim Denisov
2024-12-09Localize error_msg argument of ParseRootMaksim Denisov
...and use expected to replace it.
2024-12-09analysis: Support artifact build argumentsPaul Cristian Sarbu
As analysis now can compute roots, i.e., can build artifacts, it needs to support setting the local launcher, action timeout, and the build jobs. The stage and rebuild arguments, which are also needed by the graph traversal, as well as other build-related arguments, remain not supported for the analysis subcomamnd, however they remain honored if set by subcommands that trigger an implicit analysis (e.g., build or install).
2024-12-09computed-roots/evaluate: Fix typos in log messagesPaul Cristian Sarbu
2024-12-06executor: On failure to execute an action, also report which action it wasKlaus Aehlig
Failure to execute an action can be infrastructure problems, like failure to reach the server, etc. However, it can also be an action timeout; in the latter case, we want to know which action it was that did time out.
2024-12-06Cleanup dependenciesKlaus Aehlig
2024-12-06Log: report outputs of failed actions by defaultKlaus Aehlig
Some actions are allowed to fail, typically tests. By reporting the output of failed such actions early, the user can already have a look at those artifacts, typically a test log, while the build is still going on.
2024-12-05Also for installation to stdout prefer local CASKlaus Aehlig
... to avoid unnecessary network fetches.
2024-12-05While there, also avoid unnecessary indirection in RertrieveToPaths.Klaus Aehlig
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-12-05Common API: correctly report failureKlaus Aehlig
If fetching via the primary API failed and there is no fallback, we should fail rather than tacitly continuing with the next object to fetch.
2024-12-05GitCAS: remove friend GitRepoMaksim Denisov
...and access internal state via getters.
2024-12-05GitCAS: remove mutex and locksMaksim Denisov
...since there are no unique_locks any more.
2024-12-05GitRepo: don't reassign git_repository to git_odbMaksim Denisov
...and remove GuardedRepo.
2024-12-05GitCAS: retain git_repository alive.Maksim Denisov
2024-12-05GitCAS: implement method for creation of an empty GitCASMaksim Denisov
...and use it in GitRepo to set custom backends.
2024-12-05GitCAS: remove redundant methodMaksim Denisov
2024-12-05GitCAS: avoid manual memory managementMaksim Denisov
...and fix a potential memory leak in the try-catch for std::filesystem::absolute.
2024-12-05GitCAS: use the same call for openning repository as GitRepo does.Maksim Denisov
2024-12-05GitRepo: keep GuardedRepo unexposed and adjust the interface.Maksim Denisov
2024-12-04Rehash root lookup, if building in compatible modeKlaus Aehlig
To avoid unnecessary staging and git imports of computed roots for build in compatible mode, use the rehashing functionality to allow us to compute the git tree of that root in memory.
2024-12-04Cache lookup: support rehash functionKlaus Aehlig
2024-12-04ArtifactsRoot: support rehash-functionKlaus Aehlig
When constructing a git tree out of an artifact stage, support rehashing the artifact digests on the fly, so that artifact stages not based on GitSHA1 can be supported as well.
2024-12-04rehash_utils: add a class for the rehash functionKlaus Aehlig
... to allow a more specific signature when passing around the rehash function.
2024-12-04Add deep rehashing from bazel::Directories to GitMaksim Denisov
2024-12-04BazelMsgFactory: Add method to create Git tree from bazel DirectoryPaul Cristian Sarbu
2024-12-04Add RehashGitDigest functionMaksim Denisov
2024-12-04Add RehashDigest functionMaksim Denisov
2024-12-04Rename MRApiUtils to RehashUtilsMaksim Denisov
2024-12-03For FetchIntoODBBackend "Ensure" backend is validMaksim Denisov
2024-12-03Avoid double deletion of git_repository in GuardedRepoMaksim Denisov
2024-12-03JustMR: add computed overlay repos to reachableMaksim Denisov
2024-12-03JustMR: treat computed roots like any other repositoryMaksim Denisov
...and process their bindings.
2024-12-03JustMR: process overlay repositories during traverseMaksim Denisov
...and remove the second for-loop.
2024-12-03JustMR: replace recursion in traverse with a for-loopMaksim Denisov
2024-12-02Synchronize initialization of a git repo across processesMaksim Denisov
2024-12-02Add aditional checks to initializations of git reposMaksim Denisov
2024-12-02Replace default value of GitOpValue's result field by std::nullopt.Maksim Denisov
2024-12-02Store keys in CriticalGitOpGuard's mapMaksim Denisov
2024-11-29Clean up unused depsKlaus Aehlig
2024-11-29expression_function: fix depsKlaus Aehlig
There is no such thing as private dependencies of a header-only library
2024-11-28computed roots: restrict in-memory root computation to the supported casesKlaus Aehlig
... and, in this way, avoid git-tree computations with invalid git identifiers.