| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| | |
_artifact: use win32-compatible named temp file
See merge request BuildStream/buildstream!1440
|
| |
| |
| |
| |
| | |
We are only using the filename of the temporary file here, so use the
wrapper for this use-case.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid a restriction of Windows that prevents us from using both the file
descriptor and the file name of tempfile.NamedTemporaryFile.
Provide a wrapper that only returns the temporary filename, and makes it
easier to be windows-compatible.
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
.gitlab-ci.yml: Use fedora30 for aarch64 overnigth tests
See merge request BuildStream/buildstream!1327
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
_yaml.pyx: Fix file index checks for synthetic nodes
Closes #1051
See merge request BuildStream/buildstream!1457
|
|/
|
|
| |
Fixes #1051.
|
|\
| |
| |
| |
| |
| |
| | |
Proto based source cache service
Closes #1038
See merge request BuildStream/buildstream!1435
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This changes the location of source refs from `cache/cas/refs` to
`cache/sources_protos` and fixes tests that looked in the old reference
place. Source cache now uses the new protocol buffer and grpc methods
defined, for storing locally, and pushing and pulling to remotes.
Part of #1038
|
| |
| |
| |
| | |
Part of #1038
|
| |
| |
| |
| | |
Part of #1038
|
| |
| |
| |
| | |
Part of #1038
|
|/
|
|
| |
Part of #1038
|
|\
| |
| |
| |
| | |
`utils.py`: Make `magic_timestamp` a public variable
See merge request BuildStream/buildstream!1369
|
|/
|
|
|
|
|
| |
Some plugin elements, such as docker-element and tar-element, require
to set `created` and/or `modified` meta-data fields. It would be nice
to use `magic_timestamp` to ensure these fields are being set in a
consistent and deterministic way.
|
|\
| |
| |
| |
| | |
Extract 'Messenger' from 'Context' and use directly
See merge request BuildStream/buildstream!1445
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change the argument name on the 'silence' context manager, to avoid the
interpretation that non-nested messages may be silenced, or that it can
'un-silence' (it can't).
Be more specific about what 'important' means w.r.t. messages.
Require 'actually_silence' to be specified as a keyword, so that
callsites are easier to understand.
|
| |
| |
| |
| | |
Replace the _message_depth list with an int, "_silence_scope_depth".
|
| |
| |
| |
| |
| | |
Simplify by not calling _{push,pop}_message_depth outside of the silence
context manager, let that do the work instead.
|
| | |
|
| |
| |
| |
| | |
Use some Python features to make Messenger._message_depth a bit simpler.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Reduce the amount of context shared with child jobs, by only sending the
messenger portion of it rather than the whole thing. Also send the
logdir.
This also means that we will need to pickle less stuff when using the
'spawn' method of multi-processing, as opposed to the 'fork' method.
|
| |
| |
| |
| |
| |
| | |
Instead of having methods in Context forward calls on to the Messenger,
have folks call the Messenger directly. Remove the forwarding methods in
Context.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Remove the need to pass the Context object to message handlers, by
passing what is usually requested from the context instead.
This paves the way to sharing less information with some child jobs -
they won't need the whole context object, just the messenger.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Separate out the responsibility of messaging from the rest of the
Context object.
This change removes some member variables and some code from member
functions, but keeps the existing member functions. In later work we'll
want things to use the Messenger directly, so we can remove some member
functions too, and de-couple further.
Update some comments to refer to the "Messenger API" instead of the
"Context API" in the copied code.
Fixup the arg documentation to timed_activity() while we're there.
|
|\
| |
| |
| |
| | |
_scheduler: don't pass whole queue to child job
See merge request BuildStream/buildstream!1408
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Stop passing the scheduler's job queue's across to child jobs, via the
'action_cb' parameter. Instead pass a module-level function, which will
pickle nicely.
This isn't much of a problem while we are in the 'fork' multiprocessing
model. As we move towards supporting the 'spawn' model for win32, then
we need to consider what we will be pickling and unpickling, to cross
the process boundary.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
utils.py: Change permissions for rootpath in `_force_rmtree`
Closes #912
See merge request BuildStream/buildstream!1441
|
|/
|
|
|
| |
This is needed in the case where the temp directory permissions
are changed between creation and deletion.
|
|\
| |
| |
| |
| | |
element.py: Do not implicitly import sources into source cache
See merge request BuildStream/buildstream!1446
|
| |
| |
| |
| | |
This should always be handled by Element._fetch().
|
| |
| |
| |
| |
| |
| |
| |
| | |
If the junction source consistency is cached but the junction is not in
the source cache, also use Stream.fetch_subprojects() to import sources
into source cache instead of doing this implicitly in
Element._stage_sources_at(). This is in preparation for buildbox-casd,
which will disallow local CAS cache writes from the main process (gRPC).
|
|/
|
|
|
| |
The sources of a workspaced element may be inconsistent. Do not try
generating source cache keys.
|
|\
| |
| |
| |
| | |
Minor fixups in _context.py
See merge request BuildStream/buildstream!1443
|
| | |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Add bst init argument
Closes #702
See merge request BuildStream/buildstream!1430
|
|/
|
|
|
|
|
| |
Calling runcli with project set to None results in
setting the directory to the string 'None'.
Instead, only set it when the given project argument is not None.
|
|\
| |
| |
| |
| |
| |
| | |
tar.py: Make link target renaming work between base-dirs
Closes #1052
See merge request BuildStream/buildstream!1431
|
|/
|
|
| |
Fixes #1052
|
|\
| |
| |
| |
| | |
platform: re-scope set_resource_limits
See merge request BuildStream/buildstream!1419
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Rename 'set_resource_limits' to 'maximize_open_file_limit', as this
seems to more accurately reflect it's function.
Remove unused flexibility from the implementation, to make it easier to
understand.
Simplify the Mac implementation, and add some explanation for the
OPEN_MAX magic number. In later work we should remove the magic number.
Import 'resource' late, which is not available on Windows.
|
|\
| |
| |
| |
| | |
cascache.py: pick some nits
See merge request BuildStream/buildstream!1433
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
Fetch sources as needed for bst source checkout
See merge request BuildStream/buildstream!1427
|