From f821e6b70c59037384ac6afb3a44517fe46953e6 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Tue, 12 Sep 2023 17:59:20 +0200 Subject: just serve: add remote execution endpoint and --fetch-absent option 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 Co-authored-by: Alberto Sartori --- share/man/just-serve-config.5.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'share') diff --git a/share/man/just-serve-config.5.md b/share/man/just-serve-config.5.md index ee42692c..c742e207 100644 --- a/share/man/just-serve-config.5.md +++ b/share/man/just-serve-config.5.md @@ -19,6 +19,10 @@ The just-serve configuration format The configuration file is given by a JSON object. + - The value for the key *`"local build root"`* is a string specifying the path + to use as the root for local CAS, cache, and build directories. The path will + be created if it does not exist already. + - The value for the key *`"repositories"`* is a list of strings specifying paths to Git repositories for **`just`** **`serve`** to use as additional object lookup locations. The paths are to be used in the order given and @@ -59,6 +63,15 @@ The configuration file is given by a JSON object. For subkey *`"server key"`* the value is a string specifying the path to a TLS server key. + - The value for the key *`"execution endpoint"`* is a JSON object specifying + the arguments of a remote execution endpoint to be used by **`just`** + **`serve`**. + For subkey *`"address"`* the value is a string specifying the remote + execution address in a NAME:PORT format. + For subkey *`"compatible"`* the value is a flag which specifies whether + the remote endpoint uses the original remote execution protocol. + + See also ======== -- cgit v1.2.3