summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* _project.py: Revert back to not caching junctioned elementsjennis/revert_junction_behaviourJames Ennis2019-07-313-11/+7
| | | | | | | | | | | Originally, the intended default behaviour of BuildStream was to only cache project elements in project specific remotes. This behaviour was broken by: 24c0de16faec2b8b9bd6a03504ce951dc49afbe2. Introduced in !1113. This patch reverts the behaviour and asserts that junctioned elements are not pushed to their parent's project-specific remote.
* Merge branch 'bschubert/debug-show-trace' into 'master'bst-marge-bot2019-07-301-1/+11
|\ | | | | | | | | app: Show stacktrace on exception when "--debug" is True See merge request BuildStream/buildstream!1507
| * app: Show stacktrace on exception when "--debug" is Truebschubert/debug-show-traceBenjamin Schubert2019-07-301-1/+11
|/ | | | | | | Previously we would have the exceptions making debugging quite harder. When requesting '--debug', it seems ok to show the stack trace that created the error
* Merge branch 'alexfazakas/lint-whatever-you-want' into 'master'Tristan Maat2019-07-301-2/+2
|\ | | | | | | | | Allow linter to run on target files See merge request BuildStream/buildstream!1508
| * tox.ini: Allow linter to run on target filesAlexandru Fazakas2019-07-301-2/+2
|/ | | | | Currently the linter can only lint everything we want. With this change, it should be able to only lint onre (or more) files.
* Merge branch 'jjardon/ruamel' into 'master'bst-marge-bot2019-07-302-16/+2
|\ | | | | | | | | Depend on ruamel >= 0.16 See merge request BuildStream/buildstream!1506
| * Depend on ruamel 0.16jjardon/ruamelJavier Jardón2019-07-292-16/+2
|/
* doc/source/format_project.rst: Fix tiny typoTristan Maat2019-07-291-2/+1
|
* Merge branch 'bschubert/node-enum' into 'master'bst-marge-bot2019-07-2916-76/+342
|\ | | | | | | | | Add a 'as_enum' on Scalar nodes to help with constraining inputs See merge request BuildStream/buildstream!1487
| * optionpool: Use 'get_enum' for getting the option typeBenjamin Schubert2019-07-291-7/+12
| | | | | | | | This improves the consistency of our error reporting
| * context: Move 'CacheBuildTrees' to a FastEnumBenjamin Schubert2019-07-294-36/+26
| | | | | | | | | | | | This allows removing completely the '_node_get_option_str' on context and ensures every method relying on a few set of keys set their errors consistently
| * context: Move scheduler actions to an EnumBenjamin Schubert2019-07-294-6/+38
| | | | | | | | Also add helpers for the cli to be able to represent 'FastEnum' directly
| * node: Add 'as_enum' on ScalarNode and 'get_enum' helper on MappingNodeBenjamin Schubert2019-07-296-13/+111
| | | | | | | | | | | | | | | | This adds a method to ensure that a value is from a set of valid values and raises an error message accordingly. - Define Enum types for each of the relevant cases - Adapt call places that were doing such things manually
| * types: Mark 'Consistency' as a 'FastEnum'Benjamin Schubert2019-07-291-1/+11
| | | | | | | | | | | | This allows for stronger guarantees when checking the level of consistency since it will only be comparable with itself, and ensures unicity
| * types: Add a 'FastEnum' implementation and replace Enum by itBenjamin Schubert2019-07-297-15/+146
|/ | | | | | | 'Enum' has a big performance impact on the running code. Replacing it with a safe subset of functionality removes lots of this overhead without removing the benefits of using enums (safe comparisions, uniqueness)
* Merge branch 'bschubert/update-dind-ci' into 'master'bst-marge-bot2019-07-261-0/+4
|\ | | | | | | | | ci: Fix docker:dind service configuration See merge request BuildStream/buildstream!1503
| * ci: Fix docker connection to the docker dind serviceBenjamin Schubert2019-07-261-0/+4
|/ | | | | | | | | | | docker 19 started requiring tls certificates to connect to. We now need to explicitely disable it. Gitlab was discussing it at https://gitlab.com/gitlab-org/gitlab-runner/issues/4501 And the related change in docker was in https://github.com/docker-library/docker/pull/166
* Merge branch 'becky/artifact_access' into 'master'Tristan Maat2019-07-265-50/+118
|\ | | | | | | | | | | | | Allow artifact subcommands to use artifact refs Closes #773 See merge request BuildStream/buildstream!1497
| * Bst artifact subcommands take artifact ref names.Rebecca Grayson2019-07-264-46/+114
| | | | | | | | | | | | Changes made to allow artifact checkout/push/pull to take artifact references as well as element names. Added test to ensure this works
| * Fix up of some spelling mistakesRebecca Grayson2019-07-262-4/+4
|/
* Merge branch 'jonathan/job-progress' into 'master'fetch-committersbst-marge-bot2019-07-269-61/+410
|\ | | | | | | | | Render progress information for loading and processing elements See merge request BuildStream/buildstream!1482
| * _messenger: Fix complex objects leaking into child jobsJonathan Maw2019-07-261-0/+7
| |
| * tests: Check that progress tallies are correct, including across junctionsJonathan Maw2019-07-261-0/+44
| |
| * Render progress information for loading and processing elementsJonathan Maw2019-07-268-61/+359
|/
* Merge branch 'bschubert/optimize-loader' into 'master'bst-marge-bot2019-07-265-211/+246
|\ | | | | | | | | Optimize loader See merge request BuildStream/buildstream!1493
| * loader: Move sort_dependencies to loadelement as a cython methodbschubert/optimize-loaderBenjamin Schubert2019-07-262-75/+78
| |
| * loadelement: Move loadelement to CythonBenjamin Schubert2019-07-264-29/+56
| |
| * loader: Don't pickle caches for child jobs, they are not needed thereDaniel Silverstone2019-07-261-0/+5
|/ | | | Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
* Merge branch 'buildbox' into 'master'bst-marge-bot2019-07-2545-34/+842
|\ | | | | | | | | Add BuildBox backend for sandboxing See merge request BuildStream/buildstream!951
| * News: Added a news item for the new BuildBox sandboxbuildboxWilliam Salmon2019-07-251-0/+4
| |
| * New test stage to use the buildbox sandboxWilliam Salmon2019-07-251-0/+32
| | | | | | | | | | | | | | | | | | This test stage should only be needed while we transistion to the BuildBox sand box. Once the other test stages switch to use buildbox from bubble rap then this test stage will be removed. These test do not include the integration test as thery are not working correctly in CI.
| * sandbox: Add initial SandboxBuildBoxJürg Billeter2019-07-254-1/+289
| |
| * Mark xfail test that only fail in CIWilliam Salmon2019-07-2522-3/+113
| |
| * Mark buildbox tests as xfail if they require non implemented featuresWilliam Salmon2019-07-2518-19/+68
| |
| * Test that commands can be found on PATH when links are presentWilliam Salmon2019-07-253-0/+42
| | | | | | | | | | This test reflects functionality that freedesktop-SDK use's but that bst was not testing.
| * Update sandbox to use virtual directoriesWilliam Salmon2019-07-252-4/+17
| |
| * Fix descend can not follow symlinksWilliam Salmon2019-07-254-7/+194
| |
| * Implmented export_to_tar for casbaseddirectoryWilliam Salmon2019-07-256-1/+79
| |
| * Fix infinite recursion in _partial_import_cas_into_casWilliam Salmon2019-07-251-2/+7
|/
* Merge branch 'aevri/pickle' into 'master'bst-marge-bot2019-07-2418-55/+454
|\ | | | | | | | | Make ChildJobs and friends picklable See merge request BuildStream/buildstream!1463
| * job: try pickling child jobs if BST_TEST_SUITEaevri/pickleAngelos Evripiotis2019-07-241-0/+7
| | | | | | | | | | | | | | | | If we're running BuildStream tests then pickle child jobs. This ensures that we keep things picklable, whilst we work towards being able to support platforms that need to use the 'spawn' method of starting processes.
| * Make ChildJobs and friends picklableAngelos Evripiotis2019-07-249-1/+352
| | | | | | | | | | | | | | | | | | Pave the way toward supporting the 'spawn' method of creating jobs, by adding support for pickling ChildJobs. Introduce a new 'jobpickler' module that provides an entrypoint for this functionality. This also makes replays of jobs possible, which has made the debugging of plugins much easier for me.
| * node: picklable {Scalar,Mapping,Sequence}NodeAngelos Evripiotis2019-07-241-0/+18
| | | | | | | | | | Make ScalarNode, MappingNode, and SequenceNode pickable by implementing `__reduce__` for them.
| * optionpool: make OptionPool picklableAngelos Evripiotis2019-07-241-3/+18
| | | | | | | | | | In order to enable the 'spawn' method of creating jobs, make sure that OptionPool is pickable, otherwise it cannot be sent to the job process.
| * _platform: make picklable, no nested methodsAngelos Evripiotis2019-07-243-49/+53
| | | | | | | | | | Make the _platform implementations pickable by moving the nested _setup_*_sandbox methods up into their enclosing classes.
| * _context, cascache: mv BST_TEST_SUITE to ContextAngelos Evripiotis2019-07-242-1/+5
| | | | | | | | | | | | | | Store the result of checking for BST_TEST_SUITE in the environment into the Context. This feels less weird than checking the environment every time. Note that this cannot replace every instance, as not everything should have access to the Context.
| * _exceptions: fix 'BuildSream' typoAngelos Evripiotis2019-07-241-1/+1
|/
* Merge branch 'jjardon/overnigth_yaml_bst2_chanches' into 'master'Javier Jardón2019-07-241-1/+1
|\ | | | | | | | | | | | | .gitlab-ci.yml: Use new freedesktop-sdk with bst2 YAML API changes Closes #1090 See merge request BuildStream/buildstream!1498
| * .gitlab-ci.yml: Use new freedesktop-sdk with bst2 YAML API changesJavier Jardón2019-07-241-1/+1
|/ | | | See https://gitlab.com/freedesktop-sdk/freedesktop-sdk/merge_requests/1560
* Merge branch 'traveltissues/cache-key-changes-2' into 'master'bst-marge-bot2019-07-2231-34/+49
|\ | | | | | | | | workspace clobbers sources See merge request BuildStream/buildstream!1470