summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2023-12-14just describe: Query serve endpoint for export targets with absent rootsPaul Cristian Sarbu
2023-12-14just serve target description: Client-side and API implementationPaul Cristian Sarbu
2023-12-14just serve target description: Server-side implementationPaul Cristian Sarbu
2023-12-14just_serve.proto: Add rpc to serve description of an export targetPaul Cristian Sarbu
2023-12-14just describe: Improve cli description and code documentation of --json optionPaul Cristian Sarbu
2023-12-14just serve target: Add clarifying comment in shard computationPaul Cristian Sarbu
2023-12-14target_map: Remove unneeded method to perform endpoint consistency checkPaul Cristian Sarbu
As we already have a good enough API call and in order to improve specificity in log messages, there is no need for one more level of abstraction. This will also make it easier to drop in the future this check (if deemed unnecessary anymore), while keeping in place the mandatory check that a serve endpoint has been configured.
2023-12-14just analyse: support dumping the provides map of a targetKlaus Aehlig
2023-12-14graph_traverser: Forward repo_config via make_optionalOliver Reiche
... to support building with older GNU libstc++ versions.
2023-12-13just serve: allowing for tuning retry strategy in the configuration fileAlberto Sartori
While parsing the configuration file, if the key `"execution endpoint"` is present, the following three keys are evaluated as well: - "max-attempts" - "initial-backoff-seconds" - "max-backoff-seconds"
2023-12-13bazel client: use the retry strategy, provided by the retry lib, when doing ↵Alberto Sartori
the rpc calls.
2023-12-13Add command line options to tune the retry strategy for rpc callsAlberto Sartori
Three new command line options have been added: - `--max-attempts` - `--initial-backoff-seconds` - `--max-backoff-seconds`
2023-12-13Add a retry lib that provides useful wrappers to allow to retry...Alberto Sartori
...the provided function until either the function succeeds, maximum number of attempts is reached or the function returns an error indicating that we cannot simply retry. It is meant to be used with rpc calls, but the logic can be applied to other scenarios.
2023-12-13bytestream client: log more info in case of a failureAlberto Sartori
2023-12-13executor.hpp: log more info in case of failureAlberto Sartori
2023-12-13Add debug output for blob splittingSascha Roloff
2023-12-12just: Report progress of export targets served during analysisPaul Cristian Sarbu
2023-12-12just serve: Implement a progress reporting infrastructurePaul Cristian Sarbu
This commit simply defines the logic needed for progress reporting.
2023-12-12absent_target_map: Improved loggingPaul Cristian Sarbu
2023-12-12serve target: Update client-side to add execution configuration fields to ↵Paul Cristian Sarbu
request
2023-12-12serve target: Update server-side to compute correct target cache shardPaul Cristian Sarbu
2023-12-12just_serve.proto: Update serve target requestPaul Cristian Sarbu
The request should only be restricted to the minimal information needed by the remote to answer it. In particular, the execution endpoint address should not be transmitted.
2023-12-12execution_api: Move dispatch file parser into separate utilityPaul Cristian Sarbu
2023-12-12build_utils: Be specific in target cache entry store location...Paul Cristian Sarbu
...by specifying which TargetCache instance to use. This will allow 'just serve' to store target cache entries into the correct sharded location.
2023-12-12just serve: Fix handling of missing remote execution endpointPaul Cristian Sarbu
Only the client needs to make sure that the remote execution endpoint is set in the case 'just serve' acts also as 'just execute', i.e., when a remote execution endpoint is not specified, while for setting up the serve server a missing execution endpoint should remain unset.
2023-12-12serve configuration: Fix remote execution check to allow unset valuePaul Cristian Sarbu
In the scenario when 'just serve' acts as 'just execute', the remote execution endpoint returned by the serve service should be allowed to be empty. In this case, from the server's perspective, there is nothing to be checked, however a client might still want to ensure that its own configured serve and execution endpoints match.
2023-12-12serve target: Move server-side helper methods in own libraryPaul Cristian Sarbu
2023-12-12serve target: Use consistent scope resolution in grpc callsPaul Cristian Sarbu
2023-12-12just-mr: Fix wrongly assigned field while parsing RC filePaul Cristian Sarbu
2023-12-12Fix formatting of blob used to shard target cachePaul Cristian Sarbu
The ToJson method of RemoteAddress was wrongly creating a list instead of a simple string, thus a wrongly formatted backend description was being used to shard the target cache. This however does not affect the correctness of the build. Changelog also updated accordingly.
2023-12-12Filesystem: Fix copy overwrite of symlink with fileOliver Reiche
... and improve log messages in case of failure.
2023-12-11just-mrrc: support file options for the launcher functionalityKlaus Aehlig
When just-mr acts as a launcher, for most subcommand options the "just args" entry in the rc files provides a convenient way to set them. However, some options take a file as argument; for those it can be desirable to set them without assuming a fixed file-system layout and instead refer to logical roots, in particular the work space. for the ones that refer to files, it is often desirable to have a potential reference to the work space. Add this functionality.
2023-12-11just-mr: move rc handling to a separate libraryKlaus Aehlig
2023-12-07just-mr fetch: Extend to include 'git tree' repositoriesPaul Cristian Sarbu
This includes implementing the logic for the --backup-to-remote and --fetch-absent options.
2023-12-07just-mr setup: Allow --fetch-absent also for 'git tree' repositoriesPaul Cristian Sarbu
2023-12-07just-mr git tree: Interrogate also just serve endpoint if providedPaul Cristian Sarbu
2023-12-07just serve: Implement client-side ServeTree and extend serve APIPaul Cristian Sarbu
2023-12-07just serve: Implement server-side ServeTree RPCPaul Cristian Sarbu
2023-12-07source_tree.cpp: Fix wrong path in log messagePaul Cristian Sarbu
2023-12-07just_serve.proto: Add rpc to serve known tree and sync it to remote CASPaul Cristian Sarbu
2023-12-07just-mr git tree: Extract the fetch logic in its own async mapPaul Cristian Sarbu
2023-12-07just-mr fetch: Clarify naming of current fetch async mapPaul Cristian Sarbu
As preparatory step for extending the types of repositories that are targeted by a just-mr fetch subcommand, names of certain variables and of the currently only fetch operation async map were changed to clarify that they only target archives.
2023-12-07just-mr git tree: Inquire remote execution before calling fetch commandPaul Cristian Sarbu
2023-12-07content_cas_map: Remove unnecessary return typePaul Cristian Sarbu
As this map is supposed to work as an all-or-nothing guarantee of content being in CAS, we can replace the bool return type with the null type instead.
2023-12-06install-cas cli: Remove remote execution properties and dispatch file...Paul Cristian Sarbu
...options from the generated help messages, as these are not used for the install-cas subcommand. This also updates the man page accordingly, where the dispatch file was marked as supported, as well as update any test affected by these changes.
2023-12-06just serve: make tc write strategy configurableKlaus Aehlig
2023-12-06Add CLI option to set write strategy for target-level cacheKlaus Aehlig
2023-12-05target-cache writing: support different strategiesKlaus Aehlig
2023-12-05just serve: Orchestrate remote build for uncached export targetsPaul Cristian Sarbu
2023-12-05FileRoot: Add ignore-special flag getter and remove unneeded inliningPaul Cristian Sarbu