Age | Commit message (Collapse) | Author |
|
Also updates the tests and all relevant documentation accordingly.
|
|
|
|
Some of the more specific issues addressed:
- missing log_level target/include
- header-only libs wrongly marking deps as private
- missing/misplaced gsl includes
|
|
|
|
... instead of replacing the host name of each mirror, it
should only reorder the list of given mirrors.
|
|
|
|
... in particular, verify that no error is reported on successfull
command completion.
|
|
|
|
|
|
|
|
... for test actions, by setting an appropriate local launcher. In
this way, the tests can also be run on systems where sh does not
pull in enough paths to have all the "usual" tools available.
|
|
A change made to this test was wrongly setting the same path both
as build root for the serve instance and for the just-mr instances
being tested, resulting in the build root of the serve instance
being inadvertently removed during the test. This commit fixes the
issue by giving the serve endpoint its own build root path.
|
|
|
|
Certain end-to-end tests require custom services. While normally
they come up in quickly (less than 2 seconds), on heavily overloaded
machines it might take longer. So increase the amount of time
these tests are willing to wait for the binary to start up to avoid
flakyness in our CI runs.
|
|
This way we ensure each repository can be set up on its own and
nothing gets cached from other repositories, as opposed to the
parallel run where some caching is expected to occur.
|
|
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.
|
|
|
|
|
|
|
|
Whenever a just-serve endpoint is given, fetching archives or Git
commits from there is preferrable to fetching them from other
sources. Verify in the tests that this actually happens.
Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
|
|
Added compatibility envariable to the with_serve rule, guarded
tests using --fetch-absent such that they run only in native mode,
and made all serve-service tests aware of the compatibility flag.
|
|
This test was only working by accident, as the missing target
specification ["", "sources.txt"] was making the build fail,
not the (supposedly) unset variable. Fix this by looking only at
the setup command and expect failure there---and also unset the
correct variable.
|
|
Also extended absent-roots test with this scenario.
|
|
...to avoid waiting for the test timeout on an internal error.
|
|
|
|
|
|
... ensuring that just-mr passes on the specified environment
variables (and only those) to the tree-generating action.
|
|
|
|
|
|
Includes check to ensure we do not cache subtrees unnecessarily.
Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
|
|
This way they can be used by 'just serve'.
|
|
... as tree for the whole commit, and thus pollutes subsequent builds.
|
|
|
|
... 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>
|
|
|
|
The argument --backup-to-remote of just-mr and, thus, also this
test can only be run in native mode.
|
|
|
|
Checks that the new 'special' pragma works for all supported
repository types. In particular, checks that symlinks get resolved
as expected and that resolved trees add their unresolved
counterparts to the CAS for 'file' and 'archive' type repositories.
Splits install-roots test into a basic check which works with the
bootstrappable just-mr, and a new check focusing on the newly
introduced 'special' pragma.
|
|
...instead of a regular field.
Also removes the ignore-special logic from distdir repositories,
as those will never contain symlinks, so no entries would be
ignored.
|
|
... by creating a file only once the server is ready and waiting
for that file instead of waiting a fixed period of time.
|
|
|
|
|
|
This allows better separation and, in particular, repositories
needed only for tests do not have to be provided for building the
tools. This also better documents which dependencies are only needed
for testing.
|
|
... and, in particular, do not read any rc files for just-mr
the user might have.
|
|
Make just-mr unconditionally support an option -D that collects a
configuration overlay and forwards it to the invocation of a just
subcommand that supports this option. This syntax-switching facility
makes it easy to embedd dynamic parts of the configuration (like
the head commit to be part of a version string) as those information
can unconditionally be the first argument to just-mr.
|
|
|
|
... as `git init -b ...` is a rather recent git feature.
|
|
|