Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-02-16 | async maps: Create utility library to handle cycle detection | Paul Cristian Sarbu | |
2024-02-16 | serve target: Upload also the artifacts to remote CAS after orchestrated build | Paul Cristian Sarbu | |
2024-01-31 | just serve: Cleanup logging to remove tool name | Paul Cristian Sarbu | |
Also cleans up the logging when parsing the serve service configuration file. | |||
2024-01-31 | just-mr: Failure in serve api root tree requests should be fatal | Paul Cristian Sarbu | |
The requests to retrieve the tree of a commit, archive, or distdir also set up those trees in a way that the serve endpoint can later build against them, besides allowing just-mr to set up roots locally. Therefore, if the witnessing entity (Git commit, content blob, or distdir, respectively) is known to the serve endpoint, then failing to set up the root tree there should result in a failure also of the just-mr setup on the client side. | |||
2024-01-31 | serve source tree: Increase server-side granularity in response statuses | Paul Cristian Sarbu | |
For archives and Git repositories we should ensure that not finding the witnessing entity (archive content blob or Git commit, respectively) results in a distinct status in the response to a request that sets up roots on the serve endpoint. This will allow just-mr to better handle its interaction with the serve endpoint. | |||
2024-01-31 | dispatch file parsing: Improve std::variant usage | Paul Cristian Sarbu | |
2024-01-26 | serve source tree: Client-side and API implementations of to_git ↵ | Paul Cristian Sarbu | |
pragma-related RPCs | |||
2024-01-26 | serve source tree: Server-side implementation of to_git pragma-related RPCs | Paul Cristian Sarbu | |
2024-01-26 | just_serve.proto: Extend SourceTree with to_git pragma-related requests | Paul Cristian Sarbu | |
2024-01-26 | serve source tree: Distdir tree should end up in Git cache | Paul Cristian Sarbu | |
The purpose of the requests for the tree of an archive, commit, or distdir also includes making those trees available for future builds on the serve endpoint, which currently means being in a known Git repository. This commit ensures the distdir tree reqeust also includes the import of the resulting tree from CAS into the Git cache (if the tree is not already in a Git repsoitory). | |||
2024-01-09 | Refactor GraphTraverser to take in platform properties and dispatch list | Paul Cristian Sarbu | |
In order for the serve endpoint to correctly dispatch a build to the correct remote-execution endpoint, the platform properties and dispatch list for a build need to be passed explicitly to the executor (via the graph traverser instance) instead of always being taken from the RemoteExecutionConfig struct. This commit implements these changes, including updating existing tests accordingly. | |||
2024-01-08 | serve distdir tree: Client-side and API implementations | Paul Cristian Sarbu | |
2024-01-08 | serve distdir tree: Server-side implementation | Paul Cristian Sarbu | |
2024-01-08 | just_serve.proto: Add 'tree of a distdir' request | Paul Cristian Sarbu | |
2024-01-08 | serve content or tree: Check for Git object also in local CAS | Paul Cristian Sarbu | |
2024-01-08 | serve source tree: Improve log messages when sync with remote fails | Paul Cristian Sarbu | |
2024-01-08 | serve archive tree: Add missing check for content in local CAS | Paul Cristian Sarbu | |
When serving the tree of an archive, we should check also in the local CAS for the content blob. | |||
2024-01-08 | serve configuration client: Fix logger name | Paul Cristian Sarbu | |
2023-12-21 | serve target handling: store blobs also locally | Klaus Aehlig | |
... before trying to upload from local storage to the remote CAS. Co-authored-by: Alberto Sartori <alberto.sartori@huawei.com> | |||
2023-12-21 | ServeTarget: downgrade log level to performance | Klaus Aehlig | |
The error log level should be reserved for events that inevitably lead to a failed build. A failure to receive a target from the serve endpoint, however, is not such a case; for performance reasons, and also to have the same artifacts as everyone else in the case of non-reproducible dependencies, just inquires the serve end point for every export target whenever a serve end point is given. In this case, the build just continues even if the serve end point is, e.g., lacking a certain root. | |||
2023-12-14 | just serve target description: Client-side and API implementation | Paul Cristian Sarbu | |
2023-12-14 | just serve target description: Server-side implementation | Paul Cristian Sarbu | |
2023-12-14 | just_serve.proto: Add rpc to serve description of an export target | Paul Cristian Sarbu | |
2023-12-14 | just serve target: Add clarifying comment in shard computation | Paul Cristian Sarbu | |
2023-12-12 | just serve: Implement a progress reporting infrastructure | Paul Cristian Sarbu | |
This commit simply defines the logic needed for progress reporting. | |||
2023-12-12 | serve target: Update client-side to add execution configuration fields to ↵ | Paul Cristian Sarbu | |
request | |||
2023-12-12 | serve target: Update server-side to compute correct target cache shard | Paul Cristian Sarbu | |
2023-12-12 | just_serve.proto: Update serve target request | Paul 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-12 | just serve: Fix handling of missing remote execution endpoint | Paul 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-12 | serve configuration: Fix remote execution check to allow unset value | Paul 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-12 | serve target: Move server-side helper methods in own library | Paul Cristian Sarbu | |
2023-12-12 | serve target: Use consistent scope resolution in grpc calls | Paul Cristian Sarbu | |
2023-12-07 | just serve: Implement client-side ServeTree and extend serve API | Paul Cristian Sarbu | |
2023-12-07 | just serve: Implement server-side ServeTree RPC | Paul Cristian Sarbu | |
2023-12-07 | source_tree.cpp: Fix wrong path in log message | Paul Cristian Sarbu | |
2023-12-07 | just_serve.proto: Add rpc to serve known tree and sync it to remote CAS | Paul Cristian Sarbu | |
2023-12-06 | just serve: make tc write strategy configurable | Klaus Aehlig | |
2023-12-05 | just serve: Orchestrate remote build for uncached export targets | Paul Cristian Sarbu | |
2023-12-05 | serve target client: Ensure repository key blob is also in remote CAS | Paul Cristian Sarbu | |
2023-12-05 | just serve: Add configuration fields for remote builds | Paul Cristian Sarbu | |
2023-12-05 | serve target: Add missing gc lock | Paul Cristian Sarbu | |
2023-12-04 | target.hpp: Fix double include statement | Paul Cristian Sarbu | |
2023-11-30 | Resolve inconsistencies in third-party headers include format | Paul Cristian Sarbu | |
2023-11-27 | Refactoring RepositoryConfig | Paul Cristian Sarbu | |
With the introduction of 'just serve', export targets can now be built also independently from one another based on their corresponding minimal repository configuration, as stored in the target cache key. In this context, this commit changes the RepositoryConfig usage from one global (static) instance to pointers passed as necessary throughout the code. | |||
2023-11-21 | just serve: Implement client-side ServeContent and extend serve API | Paul Cristian Sarbu | |
2023-11-21 | just serve: Implement server-side ServeContent RPC | Paul Cristian Sarbu | |
2023-11-21 | just_serve.proto: define ServeContent RPC | Paul Cristian Sarbu | |
2023-11-21 | SourceTree service: Bump up server-side log levels | Paul Cristian Sarbu | |
Log levels on the server-side should reflect the meaning of the status codes in the response messages. As such, anything that leads directly to an error-type status code has been bumped up to log level Error, the rest to log level Info. | |||
2023-11-16 | remote-execution-endpoint: fall back to remote-serve-endpoint | Alberto Sartori | |
If only the `--remote-serve-endpoint` option is specified on the command line, the `--remote-execution-endpoint` is also set to the given value. This makes the spawning and usage of just-execute consistent. When just-serve is started, if no remote execution endpoint is provided, the same process will also act as a just-execute instance. With the current patch, the client can thus only write, on command line, the remote serve address, avoiding the repetition of the same address for two different options. | |||
2023-11-15 | just-serve: Extend client and API for services Target and Configuration | Paul Cristian Sarbu | |
Co-authored-by: Alberto Sartori <alberto.sartori@huawei.com> |