summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* install.rst: Change ~ for $HOME just incase it expands to characters bash ↵jennis/correct-installing-documentationJames Ennis2018-03-261-1/+1
| | | | does not like
* install.rst: Inform the user to restart their terminal once their PATH is ↵James Ennis2018-03-261-0/+4
| | | | adjusted
* Generate unique subdirs for built elementsPhillip Smyth2018-03-2612-31/+28
| | | | | | | | | | | | | Based on issue 89 (https://gitlab.com/BuildStream/buildstream/issues/89) Ensuring that elements are staged into unique subdirs while building. This patch supports that by doing the following: * Modify project config to add 2 new variables ("project-name" and "element-name") * Changed the default install-root from "/buildstream/install" to "/buildstream-install" * Update the tests to accommodate these changes * Update the expected cache keys in the tests This fixes #89
* man: Regenerating man pages for release1.1.2Tristan Van Berkom2018-03-2516-46/+46
| | | | | This needed an update at least for the deprecation of `bst build --track-save`
* Docs: Adding deb source plugin to the docs indexTristan Van Berkom2018-03-251-1/+1
|
* NEWS: Added news entry for newly added `deb` sourceTristan Van Berkom2018-03-251-0/+4
|
* .pylintrc: Enable unused-import checkerJürg Billeter2018-03-251-1/+0
|
* Remove unused importsJürg Billeter2018-03-2511-19/+8
|
* tests/sources/deb.py: Skip tests if arpy is not availableJürg Billeter2018-03-251-1/+8
| | | | Fixes #317
* tests/testutils/site.py: Add HAVE_ARPYJürg Billeter2018-03-251-0/+6
|
* tests/cachekey: Added test to exercise new sandbox contributions to cache keyTristan Van Berkom2018-03-254-1/+18
|
* Consider new sandbox configuration in cache keys.Tristan Van Berkom2018-03-252-9/+35
| | | | | | | | | | | | | This adds SandboxConfig.get_unique_key() to delegate the cache key contribution to the SandboxConfig. Further, this moves over the OS and Machine Architecture parts of cache key calculation into SandboxConfig.get_unique_key(), removing the comment which speaks of later delegating this part of cache key calculation to sandboxes. Cache key calculation algorithm is backward compatible, and so the artifact version remains unchanged.
* sandbox/_config.py: Replace docstring with comment.Tristan Van Berkom2018-03-251-5/+4
| | | | | For consistency, we document private things with comments, and public things with docstrings.
* NEWS: Add mention of the new sandbox optionjmac/build-uid-2Jim MacArthur2018-03-231-0/+3
|
* Increase BST_FORMAT_VERSION to 6Jim MacArthur2018-03-231-1/+1
|
* Add documentation on sandbox optionJim MacArthur2018-03-232-0/+53
|
* Add simple tests of builder UID.Jim MacArthur2018-03-234-0/+95
| | | | | | | | | | tests/integration/build-uid: Add tests. tests/integration/project/elements/build-uid/build-uid-default.bst: A test for the default uid/gid of 0 in the sandbox. tests/integration/project/elements/build-uid/build-uid.bst: Tests for nonzero uid/gid values supplied in the element. tests/integration/project/elements/build-uid/build-uid-1023.bst: Tests for nonzero uid/gid values supplied in project.conf.
* Add 'sandbox' configuration key and build-uid/build-gid elementsJim MacArthur2018-03-239-15/+105
| | | | | | | | | | | | | | | | | | | | This only affects SandboxBWrap at the moment. buildstream/_loader.py: Add Symbol.SANDBOX and allow it in validation buildstream/_metaelement.py: Add 'sandbox' variable and store it in the object buildstream/_project.py: Add 'sandbox' configuration key and load it from project.conf. buildstream/data/projectconfig.yaml: Default build-uid/build-gid values of 0 for 'sandbox'. buildstream/element.py: Add __extract_sandbox_config to find the final sandbox configuration. Pass this to the sandbox constructor. buildstream/sandbox/_sandboxbwrap.py: If sandbox configuration was supplied, use it for uid and gid instead of the default 0. buildstream/sandbox/_sandboxchroot.py: Throw exception if non-0 uid/gid were supplied. buildstream/sandbox/__init__.py: Import SandboxConfig. buildstream/sandbox/_private.py: New file, containing SandboxConfig. Made private to avoid documentation for this class.
* Created deb Source plugin for Issue #10Phillip Smyth2018-03-2325-0/+296
| | | | added tests
* frontend/workspace.py: Add tests for loading different versionsjjardon/versioned_docsRichard Maw2018-03-221-31/+112
|
* project.py: Add workspace.yml format versioning and version 1Richard Maw2018-03-221-31/+54
|
* source/conf.py: change copyright/author to "BuildStream Team"Javier Jardón2018-03-221-3/+3
|
* .gitlab-ci.yml: No need to install python2 for docs jobJavier Jardón2018-03-221-5/+2
| | | | This also make the job faster: from ~1min to ~30s
* Add HACKING document to official docsJavier Jardón2018-03-222-0/+7
|
* _artifactcache/ostreecache.py: Turn an ArtifactError() into an assert statementTristan Van Berkom2018-03-221-2/+1
| | | | | | | This should be an assertion as it will trigger a proper BUG message with a usable stack trace. An incident of this ArtifactError() was reported in issue #305.
* tests/sources/git.py: Test that we ignore inconsistent submodules.Tristan Van Berkom2018-03-222-0/+40
| | | | | | | Test this at `bst track` time, when encountering a new ref which adds a .gitmodules file but does not actually add the submodule, we check that the expected warning is in the stderr and that BuildStream does not error out for this.
* tests/testutils/repo/git.py: Add new add_file() convenienceTristan Van Berkom2018-03-221-1/+11
| | | | To write tests which add and commit a file.
* git.py source plugin: Ignore inconsistent submodules.Tristan Van Berkom2018-03-221-4/+11
| | | | | | | | | If a submodule is listed in either the buildstream git source definition, or in the .gitmodules file; but is not a valid submodule which was added with `git submodule add`, we now emit a warning and avoid exploding in the user's face. This fixes issue #299
* _scheduler/trackqueue.py: Remove unsafe calls to push/pop message depthTristan Van Berkom2018-03-211-3/+0
| | | | | These messages have been silenced more reliably already in Source._update_state(), using the Context._silence() context manager.
* _context.py: Fix Context._silence() context manager.Tristan Van Berkom2018-03-211-2/+4
| | | | | | This needs to yield in a try: block, otherwise messages remain silenced after an exception passes through this context manager.
* tests/frontend/fetch.py: Test failure modes of Source.get_consistency()Tristan Van Berkom2018-03-211-4/+29
| | | | | | | | | | Added a test that handled errors are reported at load time as expected. Added another test that we get the expected exception. This needs to be fixed, test contains FIXME: comment explaining that we could be doing much better here. This should be fixed in the context of issue #197
* tests/frontend/track.py: Test that we fail gracefully for post tracking errorsTristan Van Berkom2018-03-218-0/+110
| | | | | | This tests that we handle errors from Source.get_consistency() in the post tracking state updates gracefully, one test added for a handled failure, and another test added for an unhandled/unexpected exception.
* _scheduler/queue.py: Handle errors in task post processing gracefully.Tristan Van Berkom2018-03-211-10/+46
| | | | | | | | | When errors occur after having processed an element, leaving these unhandled results in a stack trace that is partially covered up by the status area, and a hang is caused because we fail to update the queues properly with the failed element. This greatly improves the situation for issue #197
* _message.py, _frontend/widget.py: Reviving MessageType.ERRORTristan Van Berkom2018-03-212-5/+12
| | | | | | | | | | We need to distinguish between: o Errors which occurred in a task, and are related to a log file and an elapsed time. o Errors which occurred in the main process and are not related to any timed activity
* .gitlab-ci.yml: Pin the sphinx version to 1.7.1tristan/fix-docs-builds-in-ciTristan Van Berkom2018-03-211-1/+1
| | | | | | | The new version today 1.7.2 causes the following build error: Warning, treated as error: /builds/BuildStream/buildstream/dist/buildstream/doc/source/buildstream.sandbox.rst:document isn't included in any toctree
* _scheduler/trackqueue.py: Fixed to report proper processed status.Tristan Van Berkom2018-03-211-1/+3
| | | | This was a regression from the project.refs branch recently landed.
* source.py: Source._save_ref() should return saved stateTristan Van Berkom2018-03-211-0/+5
| | | | So we can report proper processed status from tracking queues
* index.rst: Fixed typo in About BuildStreamJames Ennis2018-03-201-1/+1
|
* source/conf.py: Update copyright year to 2018Javier Jardón2018-03-201-1/+1
|
* source/conf.py: Keep documentation version in syncJavier Jardón2018-03-201-2/+4
|
* source/install.rst: put Debian version under the same subsectionJavier Jardón2018-03-201-4/+8
|
* source/index.rst: Separate general and reference documentationJavier Jardón2018-03-201-4/+4
| | | | | | | Move artifacts from Installing section to general documentation This change is needed to make the TOC work correctly with the new theme
* Change theme to sphinx_rtd_themeJavier Jardón2018-03-204-25/+21
| | | | | The sphinx_rtd_theme is a sphinx theme designed to look modern and be mobile-friendly http://sphinx-rtd-theme.readthedocs.io/en/latest/index.html
* filter: Reword docstring to explain what the element does278-filter-documentation-could-be-betterJonathan Maw2018-03-201-8/+9
| | | | | | | | The docstring included instructions on what it *should* be used for, which is unnecessary. Further, it was vague on what the element actually did. The new docstring should be more explicit on what it does.
* source.py and loading: Refactoring of origin handlesTristan Van Berkom2018-03-203-22/+7
| | | | | | | | | | | The Source object previously stored the __origin_node, __origin_toplevel and __origin_filename, this is from a time when we did not hold on to the plugin's Provenance object explicitly. Since this information comes from the same place, let's just use Plugin._get_provenance() to derive these values, instead of redundantly carrying them along separately.
* NEWS: Adding news entry for new ref-storage options (project.refs)Tristan Van Berkom2018-03-201-0/+12
| | | | Also announce --track-save deprecation
* Documenting project.refsTristan Van Berkom2018-03-204-21/+143
| | | | | | | | | o Adding explanation of the `ref-storage` option in project.conf o Adjusting some adjacent relevant documentation o Adding a new projectrefs.rst section for the project.refs format itself, and linking it from the main authoring page.
* tests/frontend/track.py: Testing behavior of cross junction trackingTristan Van Berkom2018-03-205-0/+96
| | | | | | | | o Test that this fails gracefully when the toplevel project uses inline ref-storage o Test that we successfully track cross junctioned elements when the project uses project.refs
* tests/frontend/track.py: Test tracking with optionalityTristan Van Berkom2018-03-208-4/+132
| | | | | | | Tests that `bst track` sets the ref in the expected node if the node containing the ref is conditionalized with a project option. This tests both the regular inline behavior, and also the project.refs behavior.
* tests/frontend/track.py: Testing that this works with project.refsTristan Van Berkom2018-03-201-1/+18
| | | | | | Only added condition to the simplest case here, the other cases are mostly testing that track commands get the correct selection of elements when using `--deps all` and `--except` arguments.