summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* debugtraveltissues/buildbox-testingDarius Makovsky2019-09-181-1/+1
|
* DEBUG1Darius Makovsky2019-09-181-304/+0
|
* Remove xfails from buildbox integration testsDarius Makovsky2019-09-182-6/+0
| | | | Workspace changes are now detectable when using BuildBox as the sandbox
* workspace.py: Import workspace in get_unique_keyDarius Makovsky2019-09-181-20/+44
| | | | | | | | | | | | | | | `track` and `fetch` become noop methods and the workspace is imported into the CAS in the call to `get_unique_key` which also sets the digest attribute and owns that Directory object. The directory is referenced during stage to import directly to the virtual directory object. Importing is expected to be expensive and will be optimised in future. When the unique key is retrieved for the workspace source it will also be commited to the sourcecache. The logic for this source is still a slight variant on other sources since it cannot itself be expected to be in the cache when it's opened.
* workspace.py: use the source preflight in preflightDarius Makovsky2019-09-181-1/+2
|
* Remove xfails from buildbox integration testsDarius Makovsky2019-09-182-2/+0
| | | | | Opening and building workspaces when buildbox is the sandbox is now supported.
* workspace.py: load the project path as the fullpathDarius Makovsky2019-09-181-1/+1
|
* workspace.py: add the directory digest attributeDarius Makovsky2019-09-181-13/+17
|
* cascache.py: Create `CASCache.close_channel()`Darius Makovsky2019-09-181-5/+11
|
* import.py: assemble the element via `stage_sources`Darius Makovsky2019-09-181-2/+1
|
* element.py: always check sources for cachingDarius Makovsky2019-09-181-1/+1
| | | | Check that sources are cached even if they are workspaced.
* element.py: check sources are cached when calc keyDarius Makovsky2019-09-181-0/+1
|
* element.py: remove workspaces in cache key calcDarius Makovsky2019-09-1829-41/+31
| | | | | | | | Using the workspace source plugin, workspaces should now be handled like sources for the purpose of calculating element cache keys. partially reverts !1470 works towards #1073
* element.py: do not reset workspace cache dataDarius Makovsky2019-09-181-4/+0
| | | | | partially reverts !1470 closes #1088
* workspace.py: add workspace source pluginDarius Makovsky2019-09-182-0/+134
| | | | | | The `workspace.init_workspace()` call should wrap `source._init_workspace` for held sources to support those sources not publishing `BST_VIRTUAL_DIRECTORY`
* loader.py: load fullpath for workspace sourcesDarius Makovsky2019-09-181-0/+2
| | | | | If the source is a workspace source, the fullpath of the project_dir should be preserved in loading source local paths.
* Support loading 'workspace'-kind sourcesDarius Makovsky2019-09-182-7/+45
| | | | | Add the workspace-kind source to the sources manually to prevent a user incorrectly loading the source plugin.
* Remove workspace handling in element collectionDarius Makovsky2019-09-181-5/+1
|
* Remove workspace mounting for sandboxesDarius Makovsky2019-09-184-41/+12
|
* tests/testutils/artifactshare.py: Add SIGTERM handler to subprocessJürg Billeter2019-09-181-0/+6
| | | | | | | | pytest-cov 2.7 calls os._exit() in its SIGTERM handler, skipping cleanup, unless another SIGTERM handler was already registered. Add our own SIGTERM handler to the subprocess to ensure proper cleanup such as terminating buildbox-casd.
* CONTRIBUTING.rst: Add UI sectionJames Ennis2019-09-182-0/+79
| | | | | | Now that the frontend has been mostly reworked/standardized, this patch attempts to put our some guidelines/information in around UI contributions.
* using_commands.rst: Add internal X-referencesJames Ennis2019-09-181-0/+6
| | | | | This patch adds internal cross references for the artifact and source commands.
* using_commands.rst: Add show and list-contentsJames Ennis2019-09-181-0/+14
| | | | | This patch ensures that we document the recently introduced artifact subcommands "show" and "list-contents".
* tests/integration: Add test for filter elementThomas Coldrick2019-09-184-4/+73
| | | | | Adds an integration test to check the `pass-integration` option for filter elements works.
* element.py: Abstract not producing artifactsThomas Coldrick2019-09-184-6/+16
| | | | | | | | Currently the stack element does not produce an artifact, and sometimes has to be treated differently because of this. It is conceivable that someone will write a plugin that must be treated similarly and doesn't produce an artifact. As a result this commit abstracts this "not producing an artifact" feature of elements.
* filter.py: Fail if parent element is a stackThomas Coldrick2019-09-184-0/+22
| | | | | | | | | | | As stack elements do not provide any artifacts, it is misleading to allow them as dependencies for filter elements. This commit makes a dependency on a stack element a failure with a descriptive error message. Additionally adds a test to make sure this works. Addresses #1104
* filter.py: Allow passing integration commandsThomas Coldrick2019-09-186-1/+57
| | | | | | | | | | | | | It is tedious to manually copy the integration commands of the parent element into a filter element, so this allows it to be done automatically. Here we modify FilterElement.integrate() to allow us to pass through the parent's integration commands, iff an option is set. Also adds a test for the new feature, but this is not as comprehensive as would be idea, as getting to the integration commands which are run is a little more difficult. Addresses #1107
* coding_guidelines.rst: Inline comments require 2 whitespacesJames Ennis2019-09-181-1/+1
|
* coding_guidelines.rst: Fix typo in frobiliciouslyJames Ennis2019-09-181-2/+2
|
* grpc_protocol.rst: Rename title to be more descriptiveJames Ennis2019-09-181-2/+2
|
* writing_documentation.rst: Rename title to be more descriptiveJames Ennis2019-09-181-2/+2
|
* using_the_testsuite.rst: Rename title to be more descriptiveJames Ennis2019-09-181-2/+2
|
* CONTRIBUTING.rst: Split up CONTRIBUTING into smaller filesJames Ennis2019-09-1811-1879/+1915
| | | | | | | | Our contributing has got way too big. This patch aims to split it up into sensible files. These are found in "Further information". Closes #1116
* _stream.py: Load the appropriate PipelineSelection in checkoutJames Ennis2019-09-182-13/+10
| | | | | | | This patch ensures checkout behaves like the rest of our commands which support --deps options. That is, we carry the "deps" string through to the Stream and load the corresponding PipelineSelection.
* cli.py: Allow checkout to handle --deps allJames Ennis2019-09-182-5/+5
| | | | | | | | source checkout supports --deps all, so we should be consistent. Additionally, a user may want to have build deps in a potential chroot so you could rebuild any component.
* NEWS: Try to use past tense consistentlyChandan Singh2019-09-181-5/+5
| | | | | Since the majority of the NEWS entries seem to be written in the past tense, change the handful of entries that aren't.
* NEWS: Move note about YAML cache next to note about YAML APIChandan Singh2019-09-181-3/+3
| | | | | | | | This was incorrectly copy-pasted in the wrong location. See https://gitlab.com/BuildStream/buildstream/commit/108a38edd86d9de3ef0ce78cb005041662ed279e#note_216141606 for related discussion.
* NEWS: Amend source checkout NEWS entriesJames Ennis2019-09-181-3/+6
| | | | | | The current mentions of `source checkout` in the NEWS file have been updated so that they explain the recent changes to `bst source checkout`
* _stream.py: Inform user of source checkout locationJames Ennis2019-09-181-0/+2
|
* source_checkout.py: Add --compression tests for source checkoutJames Ennis2019-09-181-0/+34
|
* cli.py: Add --compression option to source checkoutJames Ennis2019-09-182-8/+20
| | | | | | | | | !1451 introduced the --compression option to bst artifact checkout. This MR is a step towards making the commands more symmetric, and introduces the --compression option to bst source checkout Now we're compressing, we must explicitly close the tarball once we're done writing to it.
* _stream.py: Handle tar compression mode in separate functionJames Ennis2019-09-181-7/+21
| | | | | | | | | | | This patch introduces a local _handle_compression() function, which returns a string representing the "mode" of tarfile compression required by the TarFile object. In addition to this, _export_artifact() has been changed so that it now uses this new function See: https://docs.python.org/3/library/tarfile.html#tarfile.open
* source_checkout.py: Add test for --tar/--directory conflictJames Ennis2019-09-181-0/+17
|
* cli.py: Make source checkout more consistent with artifact checkoutJames Ennis2019-09-183-28/+42
| | | | | | | | | | | | This MR changes the behaviour of source checkout so that it is more like artifact checkout. That is, a --directory option can be provided, rather than a mandatory LOCATION. In addition to this, the --tar option is no longer a boolean flag, rather it expects a tarfile name (just like artifact checkout) The appropriate tests have also been altered so that they support the new API
* _stream.py: Include all args in doc comment of source_checkout()James Ennis2019-09-181-1/+4
|
* _stream.py: Add doc comment to _export_artifacts()James Ennis2019-09-181-0/+12
| | | | | _export_artifact() is not a trivial function and thus deserves a doc comment
* source_checkout.py: Remove commented out touch() and add commentJames Ennis2019-09-181-1/+1
| | | | | | In "test_source_checkout_force()" we had a commented out line of code. This has been removed and a more useful comment has been added.
* cli.py: Fix typo in source checkout's doc stringJames Ennis2019-09-181-1/+1
|
* Use distutils plugin from bst-plugins-experimentalJavier Jardón2019-09-186-102/+3
|
* Fail if we try to build a BST_FORMAT_VERSION we do not support anymoreJavier Jardón2019-09-1813-12/+26
| | | | | bst-1.x support BST_FORMAT_VERSION == 17, as that is not supported by master I think is ok to set BST_FORMAT_VERSION_MIN = 18