Commits on Source (16)
-
Daniel Silverstone authored
The `_sentinel` in `utils.py` was used only for yaml node tracking. As such, simplify matters by removing it from `utils.py` and move it to `_yaml.py` which means that we no longer need to try and avoid a circular import issue by means of runtime importing. Signed-off-by:
Daniel Silverstone <daniel.silverstone@codethink.co.uk>
-
James Ennis authored
Move _sentinel from utils.py to _yaml.py See merge request !903
-
-
Valentin David authored
Fix some ruamel warnings during tests See merge request !889
-
Daniel Silverstone authored
In order to support things which might need to use the stdout FD after checkout has completed writing a tarball to it, preserve it by means of `os.dup()` and `os.dup2()` Signed-off-by:
Daniel Silverstone <daniel.silverstone@codethink.co.uk>
-
Daniel Silverstone authored
In order to test things which write tarballs to stdout correctly, we need to capture the binary output cleanly. This ensures we're not potentially mismatching encodings in and out. Signed-off-by:
Daniel Silverstone <daniel.silverstone@codethink.co.uk>
-
Daniel Silverstone authored
With the new support for saving the stdout FDs cleanly, and binary mode capture in runcli, enable the tarball-to-stdout test. Signed-off-by:
Daniel Silverstone <daniel.silverstone@codethink.co.uk>
-
Benjamin Schubert authored
Don't close stdout when running 'checkout' to stdout Closes #486 See merge request !905
-
Jonathan Maw authored
We shouldn't need it to persist now that we cache failed build dirs. This change breaks the test `tests/integration/shell.py::test_sysroot_workspace_visible`. I can no longer see a use-case for this test. AIUI, it tested that the failed build sysroot stored in the builddir has the workspace's files in, despite the workspace being unmounted. I believe this behaviour is made redundant by cached buildtrees. This fixes part of #539
-
Jonathan Maw authored
This includes changes in app.py: * Interactive failure shell no longer uses the failed build sysroot, defaulting to the cached build tree. Changes in element.py are: * Errors caused by building don't store the failed build sysroot, instead storing that a sandbox can be created to debug the error. * When staging sources, will stage the element's cached build tree if it exists. Changes in _exceptions.py: * BstError.sandbox is now a flag of whether a sandbox can be opened up to debug the error.
-
Jonathan Maw authored
-
Jonathan Maw authored
This is related to #539
-
Jonathan Maw authored
-
Jonathan Maw authored
i.e. instead of taking a directory that must contain "root" and "scratch", and treating "root" as the root, use the directory directly. In element.py: * __sandbox takes the `bare_sandbox` arg, to pass into the sandbox's constructor In sandbox.py: * If bare_sandbox, `_root` is the passed-in directory, and `__scratch` is None. * Trying to use `__scratch` when bare_sandbox is True is a bug. In _mount.py: * Don't get the value of `__scratch` if it's not needed. This is part of #539
-
Jonathan Maw authored
-
Jonathan Maw authored
This is related to #539
Showing
- NEWS 9 additions, 0 deletionsNEWS
- buildstream/_exceptions.py 2 additions, 4 deletionsbuildstream/_exceptions.py
- buildstream/_frontend/app.py 1 addition, 1 deletionbuildstream/_frontend/app.py
- buildstream/_stream.py 10 additions, 3 deletionsbuildstream/_stream.py
- buildstream/_yaml.py 5 additions, 12 deletionsbuildstream/_yaml.py
- buildstream/element.py 19 additions, 10 deletionsbuildstream/element.py
- buildstream/plugin.py 1 addition, 1 deletionbuildstream/plugin.py
- buildstream/sandbox/_mount.py 1 addition, 1 deletionbuildstream/sandbox/_mount.py
- buildstream/sandbox/sandbox.py 13 additions, 5 deletionsbuildstream/sandbox/sandbox.py
- buildstream/utils.py 0 additions, 4 deletionsbuildstream/utils.py
- tests/frontend/buildcheckout.py 1 addition, 2 deletionstests/frontend/buildcheckout.py
- tests/frontend/yamlcache.py 2 additions, 2 deletionstests/frontend/yamlcache.py
- tests/integration/build-tree.py 81 additions, 0 deletionstests/integration/build-tree.py
- tests/integration/project/elements/build-shell/buildtree.bst 11 additions, 0 deletionstests/integration/project/elements/build-shell/buildtree.bst
- tests/integration/shell.py 24 additions, 37 deletionstests/integration/shell.py
- tests/testutils/runcli.py 7 additions, 6 deletionstests/testutils/runcli.py
tests/integration/build-tree.py
0 → 100644