Age | Commit message (Collapse) | Author |
|
|
|
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.
|
|
As we have, with "remote execution", a command-independent option to
set the remote-execution endpoint that also gets forwarded, a typical
configuration would specify the endpoint there.
|
|
Just like the remote-execution protocol has several services (Execution,
ActionCache, ContentAddressableStorage, etc), so will the serve
protocol: the actual target-level caching, as well auxilliary
services, like the service to obtain the tree for a given root. Already
follow that scheme, before the protocol gets part of any release.
Also, move the status enum into the respective answer messages. In this
way, we can have different enums for different requests without causing
conflicts on the named enum constants.
|
|
... as well as the already present -Wno-error. In this way,
packagebuilding should work out of the box on more systems.
|
|
server is started
|
|
... by also keeping the map of commit to tree locally.
|
|
|
|
|
|
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>
|
|
This functionality will be needed to upload git trees
to a remote-execution end point by `just serve.
|
|
- Document that `just serve` can be asked to back up a tree to the
remote execution end point.
- Specify, that similar to getting the tree of a commit, just serve
can also be asked to provide the tree of an unpacked archive
given by its blob identifier.
- Document the auxilliary request by which `just build` can get
the needed information about the flexible variables of an export
target in order to construct the correct cache key.
|
|
|
|
|
|
|
|
...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.
|
|
|
|
|
|
|
|
|
|
...able to request the tree of a commit known to the remote.
|
|
Initial version, to be extended later with other RPCs.
|
|
|
|
|
|
|
|
|
|
The IsAvailable method with the correct signature is now called.
|
|
|
|
If a key has a map value, do not force all its subkeys to be
present.
Fixes changes brought in with supporting remote execution and
authentication options in just-mr.
|
|
Add missing support list for --print-to-stdout option, which thus
also disambiguates the -P short version.
|
|
...and use same ordering of subcommands throughout.
|
|
There is no need to use the full format API, so avoid increasing
the compile time gratuitously.
|
|
|
|
... verifying that deduplication does not modify the analysis
result.
|
|
Together with just-import-git that allows a work flow of easily
importing dependencies without exponential blow up of the resulting
repos.json files.
|
|
|
|
The checkout locations keys can, of course, include the empty
string, so key check should be explicitly typed.
|
|
In order to get the type checker happy, some wrong type annotations
were added and, as a consequence, an unwarrented conditional as well.
To make things worse, this as checking for the non-None-ness of a
value by inspecting the truth value, ignoring that the non-None value
"" also has truth value False. Remove this conditional alltogether
and fix the type annotations.
|
|
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
As unfortunately there is no proper JSON typing option that
requires many casts, we use a more lax typing for JSON inputs, but
enforce return types in order to implicitly infer the actual
format of an input JSON variable (dict, list, string etc.).
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
As unfortunately there is no proper JSON typing option that
requires many casts, we use a more lax typing for JSON inputs, but
enforce return types in order to implicitly infer the actual
format of an input JSON variable (dict, list, string etc.).
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
|
|
For maximum compatibility, we use the uppercase types from the
typing package instead of the built-in types, therefore compliant
with PEP 484 and PEP 526.
As unfortunately there is no proper JSON typing option that
requires many casts, we use a more lax typing for JSON inputs, but
enforce return types in order to implicitly infer the actual
format of an input JSON variable (dict, list, string etc.).
|
|
|
|
|
|
|
|
|
|
... in particular options like '-Wno-array-parameter', which
are needed to silence newer compilers are not supported by
older ones. Hence, add '-Wno-unknown-warning-option' for all.
|