Age | Commit message (Collapse) | Author |
|
If calling just, the shared Git CAS lock, if taken, now lasts past
the exec call, the same way as the CAS lock does, in order to
prevent any rotation taking place in between.
|
|
- in sequence containers, use operator[] instead of .at() when
accessing indices guaranteed to be in bound;
- in associative containers, prefer .find() and reusing the
returned const iterator to using .contains() and .at(); while
there, make any so obtained iterators const if they are read-only.
|
|
...whenever it is given access to a Git repository.
The referenced storage config needs to outlive the repository
config instance.
|
|
If the main repository is marked absent, warn if during the
dependency closure computation any non-content-fixed repositories
are reached, i.e., any "file"-type repositories that are neither
implicitly nor explicitly marked "to_git". Also warn if the main
repository itself is marked absent but is not content fixed.
Add small test checking that the new warning is produced.
|
|
This fixes a bug in which the setup root was falsely being changed
by unconditionally searching early for a default configuration
files, despite one being explicitly provided at the command line.
|
|
|
|
It is already supported to ask just-mr (via the rc file) to log for
each invocation the artifacts that were built. Add a similar option
for the artifacts that were to be built, i.e., for dumping the
intensional description of the output artifacts. That information
can be used, e.g., to compute the critical path.
|
|
The directory name is designed to allow an easy rough sorting by
time. This can also be used to identify the latest build for a
specific user. However, users often run several builds in a single
minute; therefore, increase time-stamp precission to include
seconds as well. While still lexicographic and chronological order
will disagree, at least for a single user it will be correct most
of the times.
|
|
It allows to specify a list of environment variables, which are captured at
invocation time and stored as key-value pairs in the metadata file. This allows
to get some information about the invocation context such as username,
merge-request ID or source branch (on a CI runner), or others.
|
|
... by the requested subcommand. In particular, do not set it for
pure analyse requests.
|
|
|
|
Allow to specify a custom string that is extended by the basename
of the logging directory, in case invocation logging is activated.
This can be used, e.g., to point to the user to service doing
something useful with the logged data (or simply presenting it in
a nicer form).
|
|
...when calling std::filesystem::weakly_canonical, since the latter converts the argument path to an absolute path internally.
|
|
|
|
|
|
|
|
|
|
... as they will be taken care of only during the build.
|
|
Support passing on an invocation-specific --profile option
when launching just. This allows routine profiling of builds.
|
|
|
|
To do so, extend multi-repo setup to also return the digest of the
configuration file.
|
|
|
|
|
|
|
|
... instead of being private to parse_archive.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
And ensure every user obtains HashFunction from corresponding IExecutionApi
|
|
Although references give an additional information about ownership, they introduce additional design difficulties.
|
|
|
|
|
|
...to remove the unnecessary link between folder name and the logic
of resolve_symlinks_map.
|
|
|
|
|
|
|
|
|
|
As opposed to the regular CAS/cache, for the git repository implicit
in the repository cache we cannot guarantee that data from older
generation is always promoted via hard links. Therefore, a certain
amount of data can be duplicated between the repo-cache generations.
In order to allow compacting storage to the minimum, add an option
to gc-repo to only remove the older generation, without rotating.
|
|
|
|
|
|
...since it is superseded by ServeApi's method.
|
|
|
|
...instead of EnsureAbsentRootOnServe.
|
|
|
|
...instead of EnsureAbsentRootOnServe.
And remove unused arguments.
|
|
|
|
...instead of EnsureAbsentRootOnServe.
|