| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
We only use this for workspace information that we can now get directly
since we run in the same process
|
|
|
|
|
|
|
| |
This is required when we run this in the main process, with the threaded
scheduler rework.
Otherwise the state is kept between tests
|
|
|
|
|
|
|
| |
This changes how the scheduler works and adapts all the code that needs
adapting in order to be able to run in threads instead of in
subprocesses, which helps with Windows support, and will allow some
simplifications in the main pipeline.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This modifies the signal terminator so that it can be called from any
thread.
This checks that either:
- The signal handler is already in place
- Or the caller is in the main thread, allowing to set the signal
handler.
This also removes the exact callback that was added instead of removing
the last one, and fixes the `suspend_handler` to do the same.
This is required, as we don't know which interleaving of calls will be
done, and we can't guarantee that the last one is the right one to
remove
|
|
|
|
|
|
| |
This ensures that, if we were to receive signals or other things while
we are on this blocking call, we would be able to process them instead
of waiting for the end of the process
|
|
|
|
|
|
|
|
| |
Before, we would throw an exception that the process is not dead yet if
it happened to die at the exact moment we tried to access it.
This ensures we don't throw exceptions in such cases, since the process
would be already dead, as we wanted
|
|\
| |
| |
| |
| | |
downloadablefilesource: Remove deprecated methods in python3.8
See merge request BuildStream/buildstream!2046
|
|/
|
|
|
|
| |
splituser and such are deprecated since python3.8
We should stop using them
|
|\
| |
| |
| |
| | |
Add artifact cache testing with buildbarn Asset API implementation
See merge request BuildStream/buildstream!2037
|
| |
| |
| |
| |
| | |
This new endpoint targets a buildbarn deployment with bb-storage
alongside bb-asset-hub for index storage.
|
| | |
|
| | |
|
|/
|
|
|
| |
This enables for seperate index/storage artifact servers
to be configured by environment variables passed through tox.
|
|\
| |
| |
| |
| | |
_elementsources.py: Fix source names in unique key
See merge request BuildStream/buildstream!2023
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
The goal was to include the source plugin kind in the element cache key
as the unique key of a source may not be unique across different source
plugins. This is the source equivalent of the `element-plugin-name`
value in the element cache key.
However, `Source._get_source_name()` was the wrong method for this as
that also includes the key itself, which may not even be set yet.
This results in a cache key change.
Fixes: 3953bcc6 ("element.py: clobber sources with workspace")
|
|\
| |
| |
| |
| | |
job.py: Remove 'SUBCLASS_CUSTOM_MESSAGE', it is never used
See merge request BuildStream/buildstream!2039
|
|/
|
|
|
|
|
|
| |
We previously were sending custom messages from child jobs to parent
jobs for example for reporting the cache size.
This is not used anymore by the current implementation. Let's remove
this entirely
|
|\
| |
| |
| |
| | |
_fixtures.py: Only get the normal number of threads at the start of session
See merge request BuildStream/buildstream!2038
|
|/
|
|
|
| |
This ensures that we also have our tests correctly shutting down
background threads and not interferring with each other
|
|\
| |
| |
| |
| | |
_messenger.py: Make `timed_suspendable` public and use it in job.py
See merge request BuildStream/buildstream!2040
|
|/
|
|
| |
This reduces the amount of code duplication
|
|\
| |
| |
| |
| |
| |
| | |
Consider %{build-root} in the cache key unconditionally
Closes #1386
See merge request BuildStream/buildstream!2036
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
unconditionally
Not all elements use the "build-root" variable, but it is the standard
variable to use for the build directory, and the build directory must
be considered in the cache key.
Handling this unilaterally in the core is safer than delegating this
to element implementations, as we have less chance of plugin authors
missing this detail and possibly introducing binary variance for
artifacts where only the build directory differs (something which
happens when the project name or element names change).
This commit also updates the hard coded cache keys in the cache key
test, so as to ensure every commit passes it's own tests.
This fixes #1386.
|
| |
| |
| |
| |
| |
| |
| |
| | |
In the test_cache_key_fatal_warnings() test, use the same project name
in both generated project directories in order to pass the tests in
the case that elements are guaranteed to have differing cache keys
for differeing element/project names (which is the case when we consider
the "build-root" in the cache key unconditionally).
|
|/ |
|
|\
| |
| |
| |
| | |
NEWS: Prepare for next development snapshot - 1.93.5
See merge request BuildStream/buildstream!2029
|
|/
|
|
|
| |
Among other things, this will allow BuildStream plugins that rely on our
`testing` module to update to more recent pytest versions.
|
|\
| |
| |
| |
| |
| |
| | |
Bump minimum version requirement for ruamel.yaml
Closes #1265
See merge request BuildStream/buildstream!2028
|
|/
|
|
|
|
|
|
|
|
|
|
| |
ruamel.yaml <= 0.16.6 suffers from a bug where ruamel's yaml dumper
crashes when used on a sequence that has comments before it. In
BuildStream, this manifests in form of issues like #1265.
See upstream issue at https://sourceforge.net/p/ruamel-yaml/tickets/335.
Also, add a regression test for it.
Fixes #1265.
|
|\
| |
| |
| |
| | |
Minor documentation fixes
See merge request BuildStream/buildstream!2034
|
| | |
|
|/
|
|
|
|
| |
The loader has supported dependencies explicitly being ``all`` for the
dependency type (instead of only "build", "runtime" and unspecified) for
a long time, but this was not properly documented.
|
|\
| |
| |
| |
| | |
_frontend/cli: Add --deps `build` & `run` values for `source track --deps`
See merge request BuildStream/buildstream!2027
|
| | |
|
| | |
|
|/
|
|
|
|
|
| |
This is part of #1349. This patch will conclude the first part of that
issue, i.e. ensuring that the possible options for `--deps` are
consistent across all commands (with the exception of `--deps plan` that
we will handle separately).
|
|\
| |
| |
| |
| | |
regression-test for ".bst" artifact checkout bug
See merge request BuildStream/buildstream!2014
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Use Remote Asset API for artifact and source caches
Closes #1273 and #1272
See merge request BuildStream/buildstream!1978
|
| | |
|
| | |
|
| |
| |
| |
| | |
GetInstanceNameForRemote() has been deprecated.
|
| | |
|
| |
| |
| |
| | |
Replaced by Remote Asset API Fetch and Push services.
|
| |
| |
| |
| | |
Replaced by Remote Asset API Fetch and Push services.
|
| |
| |
| |
| | |
They no longer differ among subclasses.
|
| |
| |
| |
| |
| | |
This migrates the source cache from the BuildStream Source protocol to
the Remote Asset API.
|
| |
| |
| |
| |
| |
| |
| | |
This migrates the artifact cache from the BuildStream Artifact protocol
to the Remote Asset API.
Co-authored-by: Sander Striker <s.striker@striker.nl>
|
| | |
|
| |
| |
| |
| | |
Co-authored-by: Sander Striker <s.striker@striker.nl>
|