Age | Commit message (Collapse) | Author |
|
In this way, the user can specify which execution endpoint
to use depending on the execution properties.
|
|
|
|
Extend the configuration data structure by a dispatch list of endpoints
to chose based on the first match of the execution properties.
|
|
... in a way consistent with what we're using at other places
already.
|
|
|
|
... and hence should be declared as such.
|
|
A recent change made it so that the artifact type was wrongly being
taken into account when deciding whether the CAS entry of the
artifact would be read or not. This meant that non-file artifacts
would be skipped from their content being read, resulting in
missing CAS artifacts being reported.
This fixes the issue by reverting the offending change.
|
|
|
|
... so that any left-over directories, in case of abnormal termination
are cleaned up eventually.
|
|
just-mr accesses the CAS at several occations, most importantly,
the generated multi-repository configuration is written there. In
particular, when used as a launcher, it needs to keep that file in
its location as the path is passed to the exec of just.
|
|
In preparation for the introduction of our blob splitting protocol as extension
to the remote execution api, we need to update the used remote execution api to
a more recent version than v2.0.0. Since no new tags are available right now,
we update to the preliminary protocol version v2.3 according to the following
discussion: https://github.com/bazelbuild/remote-apis/issues/253
|
|
|
|
|
|
|
|
|
|
|
|
|
|
via a 'SYMLINK' constructor function. This works similarly to the
'FILE' construct, but the name given must point to a non-upwards
symlink and a symlink artifact is being generated from it.
Also updates the relevant tests.
|
|
...and update tests accordingly.
|
|
...as early as possible. This ensures that callers always receive
only the tree entries for the supported object types.
For the symlinks non-upwardness check we pass a lambda capturing
the real backend of the tree entries, such that the symlinks can
be read.
Updates git_tree tests accordingly.
|
|
...but make sure it is still considered a special type.
The only non-special entry types remain file, executable, and tree.
|
|
|
|
|
|
|
|
After a fatal error, do not continue evaluation, but return immediately.
|
|
|
|
|
|
|
|
Allow rules to set (additional) execution properties for individual
action. In this way the need for a special image (e.g., with
additional, maybe test-only, tools) or execution platform (e.g.,
when cross-compiling but having to execute the tests on the native
platform) can be expressed.
|
|
|
|
A git CAS ist just a fall back, so it is OK if it is absent (e.g.,
the specificed directory does not exist). Therefore only log at
debug level, not at error level if we cannot open it.
|
|
... which became obsolete with the new fdless write/copy
implementations.
|
|
... to remove the risk of deadlocks on certain combinations
of C++ standard library and libc when performing the
copy/write in a child process. For 'fdless' copy/write, a
child process is used to prevent the parent from getting
polluted with open writable file descriptors (which might
get inherited by other children that keep them open and can
cause EBUSY errors).
|
|
This feature has been introduced with C++20.
|
|
... and in this way, continue to work correctly in the absence
of a current working directory.
|
|
... and in this way, ensure we can lock files given by absolute
path even if we don't have a working directory. While there, drop
uncessary split just to combine of the file name.
|
|
... also, gracefully handle the case of a missing working
directory when determining the current module, falling back
to the top-level module.
|
|
|
|
... and set default stack size to 8 MB.
|
|
...and fix missing origin field initialization for progress tracing.
|
|
|
|
|
|
|
|
|
|
...and make the use of std::hash consistent.
This will make it easier to remove the fix once the libc
implementation we use catches up with the C++ standard.
|
|
|
|
|
|
|
|
Allow rules to set the timeout-scaling factor for their actions to
indicate that some actions are expected to take longer than others,
e.g., because they call a foreign build tool or are a very complex
end-to-end test.
|
|
|