Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-12-07 | just-mr fetch: Extend to include 'git tree' repositories | Paul Cristian Sarbu | |
This includes implementing the logic for the --backup-to-remote and --fetch-absent options. | |||
2023-12-07 | just-mr setup: Allow --fetch-absent also for 'git tree' repositories | Paul Cristian Sarbu | |
2023-12-07 | just-mr git tree: Interrogate also just serve endpoint if provided | Paul Cristian Sarbu | |
2023-12-07 | just-mr git tree: Extract the fetch logic in its own async map | Paul Cristian Sarbu | |
2023-12-07 | just-mr fetch: Clarify naming of current fetch async map | Paul 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-07 | just-mr git tree: Inquire remote execution before calling fetch command | Paul Cristian Sarbu | |
2023-12-07 | content_cas_map: Remove unnecessary return type | Paul 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-04 | git_repo_remote: Fix wrong header include format | Paul Cristian Sarbu | |
2023-12-01 | just-mr archive: Report all tried remotes if fetch fails | Paul Cristian Sarbu | |
2023-12-01 | just-mr git: Report all tried remotes if fetch fails | Paul Cristian Sarbu | |
2023-12-01 | commit_git_map: Formatting fix | Paul Cristian Sarbu | |
2023-11-21 | content_cas_map: Interrogate just serve endpoint also if doing pure fetch | Paul Cristian Sarbu | |
Before trying to fetch an archive content from other non-local sources, check first the just serve endpoint. | |||
2023-11-21 | archive repository: Query 'just serve' endpoint also when not marked absent | Paul Cristian Sarbu | |
...before going to the network, if 'just serve' endpoint given. ContentCASMap was reworked to provide a cleaner logic for handling pure fetches, which also reduced code duplication in ContentGitMap. | |||
2023-11-21 | git repository: Query 'just serve' endpoint also when not marked absent | Paul Cristian Sarbu | |
...before going to the network, if 'just serve' endpoint given. | |||
2023-11-16 | fetch-absent: Only allow option in native mode | Paul Cristian Sarbu | |
2023-11-16 | Add -R as short option for --remote-serve-address | Klaus Aehlig | |
The `just serve` command defaults to also provide the remote-execution endpoint if none is specified. The `just build` implicitly uses the serve endpoint as remote-execution endpoint if no other endpoint is specified. In this way, the serve endpoint has become the universal endpoint for simple set ups. Simplify that usage further by providing a short command-line option. | |||
2023-11-15 | just-mr: Update to using the static methods of ServeApi | Paul Cristian Sarbu | |
2023-11-15 | just-mr json parsing: Add missing check for items type in lists | Paul Cristian Sarbu | |
2023-11-15 | git tree repository: Creating absent roots should not run the command | Paul Cristian Sarbu | |
Also extended absent-roots test with this scenario. | |||
2023-11-14 | just-mr archives fetch: Add logic for local mirrors and preferred hostnames | Paul Cristian Sarbu | |
2023-11-14 | just-mr git fetch: Add logic for local mirrors and preferred hostnames | Paul Cristian Sarbu | |
2023-11-14 | curl_url_handle: Add method to replace the hostname of a URL | Paul Cristian Sarbu | |
Also adds a section in the curl_url test suite. | |||
2023-11-14 | curl_url_handle: Allow permissive parsing and URL extraction to be non-fatal | Paul Cristian Sarbu | |
2023-11-14 | curl_url_handle: Improve documentation | Paul Cristian Sarbu | |
2023-11-14 | just-mr: Add utility getters for alternative mirrors specifications | Paul Cristian Sarbu | |
2023-11-14 | just-mr: Parse mirrors specification from checkout locations file | Paul Cristian Sarbu | |
2023-11-14 | just-mr: Add 'mirrors' field to archive-like repositories | Paul Cristian Sarbu | |
Also extends 'distdir' repositories logic accordingly. | |||
2023-11-14 | curl_easy_handle: Allow non-fatal logging of errors in curl operations | Paul Cristian Sarbu | |
In order to allow non-fatal retries of fetches, be it from same remote or not (e.g., mirrors), the handle now reports with a caller-defined LogLevel. | |||
2023-11-14 | DistdirCheckout: Improve log messages | Paul Cristian Sarbu | |
2023-11-14 | just-mr: Add 'mirrors' field to 'git' repositories | Paul Cristian Sarbu | |
2023-11-14 | just_mr utils: Add missing nodiscard attributes | Paul Cristian Sarbu | |
2023-11-14 | commit_git_map fix: Fetch from correct location if fetch URL is a path | Paul Cristian Sarbu | |
2023-11-13 | "git tree" repositories: honor "inherit env" | Klaus Aehlig | |
In the specification of the action generating a fixed git tree, also honor "inherit env", i.e., inherit the environment variables specified in this field from the environment just-mr is invoked in. As the expected output is fixed ahead of time anyway, this lack of isolation does not affect correctness. | |||
2023-11-02 | just-mr fetch: Add handling of --fetch-absent option | Paul Cristian Sarbu | |
2023-11-02 | content git map: Add handling of --fetch-absent option | Paul Cristian Sarbu | |
2023-11-02 | content git map: Move handling of --fetch-absent flag from checkout to the ↵ | Paul Cristian Sarbu | |
map itself | |||
2023-11-02 | Move content archive helper functions in own library | Paul Cristian Sarbu | |
2023-11-02 | Decoupling symlinks map and CAS utilities from just-mr | Paul Cristian Sarbu | |
This is required in order to make them available to 'just serve' in a minimal just installation. | |||
2023-11-02 | ArchiveOps: Move libarchive utilities outside other_tools | Paul Cristian Sarbu | |
This way they can be used by 'just serve'. | |||
2023-11-02 | GitRepo: Add method for async fetch from local repository | Paul Cristian Sarbu | |
This avoids using the more geenric GitRepoRemote method which has libcurl as a dependency, something that is not needed for this Git operation. | |||
2023-11-02 | content CAS map: Check remote CAS only after local distfiles | Paul Cristian Sarbu | |
2023-10-16 | curl_easy_handle: Ensure we report a fail on HTTP codes >=400 | Paul Cristian Sarbu | |
...which signal either cient- or server-side failures. This ensures we exit with a failed network fetch early in cases where it is clear we won't receive useful data. | |||
2023-10-16 | just-mr fetch: Fix exception on fetched data hash mismatch | Paul Cristian Sarbu | |
After successfully fetching data over the network for an archive, if the optional checksums are not provided, the code will throw if there is a mismatch between the hash of the fetched data stream and the provided content hash. This commit fixes the issue by adding an additional check which properly handles the possible mismatch. | |||
2023-09-22 | commit git map: Fix --fetch-absent storing incorrect tree association | Paul Cristian Sarbu | |
In order to not pollute builds, one should only store in the id file the association between a commit and its *root* tree. As the need for such a file only happens when asked to fetch absent roots, which should be a quite rare use case, we can request the whole tree of a commit to be served (incl. synced with remote execution) and perform the subdir tree extraction locally instead. | |||
2023-09-22 | commit git map: Improve warning message | Paul Cristian Sarbu | |
2023-09-22 | fpath git map: Remove redundancy in warning message | Paul Cristian Sarbu | |
2023-09-20 | just-mr: add option to override the absent pragma | Klaus Aehlig | |
Using absent repositories depends on a just-serve endpoint. As such, it is not a datum of the project, but one of the available infrastructure. As the latter can change independently of the project, it is desriable to have the option to specify those pieces of information in separate files. | |||
2023-09-15 | just-mr: ensure that after --fetch-absent a local build is possible | Klaus Aehlig | |
... by also keeping the map of commit to tree locally. | |||
2023-09-15 | just serve: add remote execution endpoint and --fetch-absent option | Paul Cristian Sarbu | |
The serve service will communicate with this endpoint when needed, as well as ensure artifacts it provides are synced with the remote execution CAS, if requested by the client. If just-mr is given the --fetch-absent option, it Always produce present roots irrespective of the 'absent' pragma. For Git repositories marked with the 'absent' pragma, first try to fetch any commit trees provided by the serve endpoint from the execution endpoint CAS, before reverting to a network fetch. Co-authored-by: Klaus Aehlig <klaus.aehlig@huawei.com> Co-authored-by: Alberto Sartori <alberto.sartori@huawei.com> | |||
2023-09-13 | just-mr: Implement 'absent' roots | Paul Cristian Sarbu | |
...via an 'absent' pragma in repository descriptions. For 'git'-type repositories, first interrogates a 'just serve' remote, if given, before reverting to fetching from the network. |