summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-12-19Remove unneeded compat_storageOliver Reiche
2024-12-19Remove unnecessary movesOliver Reiche
2024-12-19Test just-mr properly updates config for computed rootsMaksim Denisov
2024-12-19JustMr: update output config for computed rootsMaksim Denisov
2024-12-17just-lock-config.5: Update with section for source type 'file'Paul Cristian Sarbu
2024-12-17just-lock: Add test for source 'file' importsPaul Cristian Sarbu
2024-12-17just-lock: Implement import source type 'file'Paul Cristian Sarbu
2024-12-17just-lock: Improve error handling of command line parsingPaul Cristian Sarbu
2024-12-17just-lock: Match logging style of just-mr, including colorsPaul Cristian Sarbu
Use the RGB values of the predefined fmt library colors that both just and just-mr use.
2024-12-17just-lock: Fix plain configuration map for 'git' importsPaul Cristian Sarbu
While there, also improve check for early return from import method.
2024-12-16just-lock design: Update --clone design...Paul Cristian Sarbu
...to refer to repositories as a chain of bindings to be followed starting from one of the known repositories (existing or imported). Both the initial and the target repositories are to be kept during deduplication.
2024-12-12Regression test for build parameters in computed rootsKlaus Aehlig
It used to be the case, that the option -P was forwarded to the build of computed roots. Add a test verifying we're not regressing there again.
2024-12-12Computed roots: normalize build argumentsKlaus Aehlig
While building a computed root generally follows the way the main build is carried out, certain parameters need to be cleared. In particular, the computed root is not part of the rebuild and no build output should be dumped anywhere.
2024-12-12man: Add sections for the just-lock tool and its input formatPaul Cristian Sarbu
2024-12-11["CC","auto"]: amend runnerAlberto Sartori
The parsing logic was buggy: - quotation was not properly taken into account - multiple keys provided as "@KEY1@${KEY2}@KEY3@" were not correctly parsed - #cmakedefine KEY1 "@KEY2@" was not correctly parsed: in this case, only @KEY2@ must be expanded, provided variable KEY1 is defined - only lines containing the magic string were processed
2024-12-11main: avoid spourious warningsKlaus Aehlig
... given that a proper reporting of the return code if repo_config.SetGitCAS is contained in main anyway. Therefore, log the details trying to set the git cas to a level less than that of the final reporting.
2024-12-11RepositoryConfig::SetGitCAS: allow setting log_levelKlaus Aehlig
... as there might be cases where it is expected that setting the git CAS fails, e.g., if referring to the implict git repository in the local build root as a fallback CAS.
2024-12-11GitCAS::Open: allow specifying the log-level for failureKlaus Aehlig
This method returns a GitCASPtr allowing the caller to handle failure gracefully. Therefore, logging should be at most at level Warning as it is up to the caller to provide the fatal error message. Moreover, it can be at lower level in cases where failure to open that git cas is not an unexpected event, e.g., when looking for a blob in local mirrors first.
2024-12-11Add test verifying the upload of the log for failed root computationKlaus Aehlig
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-11Add initial tests for just-lockPaul Cristian Sarbu
2024-12-11Initial implementation of just-lockPaul Cristian Sarbu
Able to handle imports from Git repositories and deduplicate the resulting configuration.
2024-12-10Add a test building against computed roots with absent base repositoryKlaus Aehlig
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-10Add test for importing computed repositoriesPaul Cristian Sarbu
2024-12-10just-deduplicate-repos: Add support for computed repositoriesPaul Cristian Sarbu
2024-12-10just-import-git: Add support for computed repositoriesPaul Cristian Sarbu
2024-12-10test git-imports: Remove duplicate entryPaul Cristian Sarbu
2024-12-10just-mr launch: Pass local launcher to just analysePaul Cristian Sarbu
2024-12-09Add a test verifying that only artifacts are taken for computed rootsKlaus Aehlig
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-09just.1: Extend analysis command line...Paul Cristian Sarbu
...with local and remote build arguments required to support computed roots.
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-09test serve_target_cache_hit: Remove wrong checkPaul Cristian Sarbu
One of the analysis commands marked as expected to fail fails from wrongly passing the launcher instead of the stated reasons. As the behaviour between standalone and separate serve endpoint versions would become inconsistent after fixing the command line, remove this check completely. This does not negatively influence the scope of the test script.
2024-12-09Extend computed-roots design discussing the interaction with serveKlaus Aehlig
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-05CHANGELOG: document recent fixesKlaus Aehlig
2024-12-05Add a test verifying that install-cas inspects the local casKlaus Aehlig
... even if remote-execution arguments are given. Also verify that failure is correctly reflected in the exit code.
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.