summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update README.rstpatch-2Laurence Urhegyi2018-10-101-1/+1
|
* README: Update to add link to websiteLaurence Urhegyi2018-10-101-1/+2
| | | adds a hyperlink to the README to link to the BuildStream website
* Merge branch 'chandan/bst-and-docker' into 'master'Chandan Singh2018-10-103-0/+57
|\ | | | | | | | | Add documentation and NEWS entry about bst-docker-import See merge request BuildStream/buildstream!864
| * NEWS: Add entry about contrib/bst-docker-importChandan Singh2018-10-091-0/+3
| | | | | | | | | | | | | | As suggested in https://gitlab.com/BuildStream/buildstream/merge_requests/857#note_106809743, add a NEWS entry for `contrib/bst-docker-import` that was added recently.
| * doc: Add new document about Docker integrationsChandan Singh2018-10-092-0/+54
|/ | | | | | | | | | | | | | | | | | Add a new section under "Additional writings" section about how BuildStream integrates with Docker. At present, this section includes only two sections: - "Run BuildStream inside Docker", that refers to existing instructions for doing so - "Generate Docker images", that adds instructions for using the newly added `contrib/bst-docker-import` script In future, this document can be extended to include the following things: - Importing Docker sources via `docker` source plugin - if/when the Docker source plguin is moved from bst-external to BuildStream proper - A Docker sandbox, if/when that is added
* CONTRIBUTING.rst: Fix typos in previous commit.Tristan Van Berkom2018-10-091-2/+2
| | | | Ooops, that was done far too quickly.
* CONTRIBUTING.rst: Added note about sphinx supporting docstrings on instance ↵Tristan Van Berkom2018-10-091-0/+5
| | | | | | | variables Python does not natively support this, but sphinx does parse them and includes these in the generated documentation.
* Merge branch 'aevri/contributing_fixups' into 'master'Tristan Van Berkom2018-10-091-32/+32
|\ | | | | | | | | Minor fixups to contributing.rst See merge request BuildStream/buildstream!866
| * contributing.rst: no spaces before '?'Angelos Evripiotis2018-10-091-2/+2
| |
| * contributing.rst: de-paren subclass exampleAngelos Evripiotis2018-10-091-3/+3
| | | | | | | | It seems easier to read when separated into two sentences.
| * contributing.rst: fix typo of 'get_count'Angelos Evripiotis2018-10-091-1/+1
| |
| * contributing.rst: fix whitespaceAngelos Evripiotis2018-10-091-3/+3
| | | | | | | | No tabs, no lines of only horizontal whitespace.
| * contributing.rst: end lines with punctuationAngelos Evripiotis2018-10-091-23/+23
|/
* Merge branch 'chandan/fix-bst-docker-import-logging' into 'master'Chandan Singh2018-10-081-4/+4
|\ | | | | | | | | bst-docker-import: Consistently use stderr for all logs See merge request BuildStream/buildstream!863
| * bst-docker-import: Consistently use stderr for all logsChandan Singh2018-10-081-4/+4
|/ | | | | | In !857, we added `contrib/bst-docker-import` script but it has a small issue that some of logs go to stdout while others go to stderr. Fix it so that all logging is done on stderr.
* CONTRIBUTING.rst: Added section in PEP-8 coding style about line lengths.Tristan Van Berkom2018-10-081-0/+15
| | | | | | We have a long line limit in order to handle the exceptions without making code unreadable as a result, this long line length limit is not an invitation to fill up the limit as much as possible.
* CONTRIBUTING.rst: Added a note that public API objects should be exposed ↵Tristan Van Berkom2018-10-081-0/+3
| | | | from __init__.py
* CONTRIBUTING.rst: Correcting `Context` example in the "imports" sectionTristan Van Berkom2018-10-081-2/+2
| | | | | | This example is very outdated and comes from pre 1.0 when the Context object was going to be public API. Just corrected the example made about imports to import the `Context` object from `._context` instead of `.context`.
* CONTRIBUTING.rst: Added section on file naming conventionTristan Van Berkom2018-10-081-0/+19
|
* CONTRIBUTING.rst: Added section about minimizing API surfacesTristan Van Berkom2018-10-081-8/+52
| | | | | And modified some titles so that the titles in CONTRIBUTING.rst actually follow the documentation guidelines for naming of section titles.
* Merge branch 'aevri/fixup-contributing-typos' into 'master'Angelos Evripiotis2018-10-071-1/+1
|\ | | | | | | | | contributing.rst: fix typos See merge request BuildStream/buildstream!865
| * contributing.rst: fix typoAngelos Evripiotis2018-10-071-1/+1
|/
* CONTRIBUTING.rst: Some fixes in grammer and minor correctionsTristan Van Berkom2018-10-071-75/+73
|
* CONTRIBUTING.rst: Updating CONTRIBUTING guidelinesTristan Van Berkom2018-10-061-168/+994
| | | | | | | | | | | | | | | | | | | | This is almost a complete rewrite of the CONTRIBUTING guide. * The patch submission guidelines have become less ambiguous and more strict * Some general restructuring and reordering of the file took place * The codeing guidelines have changed completely. o There is much less room for ambiguity here now o More emphasis on consistency in the codebase o Added some more abstract points which should be considered when writing and reviewing patches * The policy on public/private symbols has been greatly clarified * Added new section about adding new core plugins and what needs to be done as a consequence of that
* Merge branch 'juerg/remote' into 'master'Jonathan Maw2018-10-051-5/+8
|\ | | | | | | | | element.py: Prepare local sandbox for bst checkout and bst shell See merge request BuildStream/buildstream!860
| * element.py: Prepare local sandbox for bst checkout and bst shellJürg Billeter2018-10-051-5/+8
|/ | | | A remote execution sandbox is not suitable for these commands.
* Merge branch 'chandan/bst-docker-import' into 'master'Jonathan Maw2018-10-051-0/+102
|\ | | | | | | | | Add contrib script to generate Docker images from bst checkout See merge request BuildStream/buildstream!857
| * Add contrib script to generate Docker images from bst checkoutChandan Singh2018-10-051-0/+102
|/ | | | | | | | This script can be useful to generate a Docker image from `bst checkout` of an element as a single command. While this script does not eliminate the need for a proper Docker/OCI element plugin that would probably also support layering, it provides a cheap way to export the element into a Docker image.
* Merge branch 'valentindavid/rmtree_oserror' into 'master'Valentin David2018-10-041-1/+1
|\ | | | | | | | | | | | | Catch correct exception from shutil.rmtree Closes #153 See merge request BuildStream/buildstream!849
| * Catch correct exception from shutil.rmtreevalentindavid/rmtree_oserrorValentin David2018-10-041-1/+1
|/ | | | | | | | | | | | | Python documentation is not clear on what shutil.rmtree is supposed to raise. However from the source code, it is obvious that OSError are raised, but never shutil.Error. It is not easy to test in normal condition because issues happen usually in combination with a FUSE filesystem, a probably a race condition where `fstatat` returns an error just before the filesystem being unmounted. Fixes #153.
* Merge branch 'Qinusty/634-workspace-failed-builds' into 'master'Tristan Van Berkom2018-10-042-5/+29
|\ | | | | | | | | | | | | Do not save workspace on failed build Closes #634 See merge request BuildStream/buildstream!812
| * testing: Add regression test for workspace bugJosh Smith2018-10-041-1/+23
| |
| * element.py: Do not save workspace on failed buildJosh Smith2018-10-041-4/+6
|/ | | | | This fixes #634, BuildStream no longer saves workspace configuration on a failed build.
* Merge branch 'danielsilverstone-ct/bwrap-check-runtime-only' into 'master'Jürg Billeter2018-10-045-36/+53
|\ | | | | | | | | | | | | Make bwrap check runtime only Closes #644 See merge request BuildStream/buildstream!847
| * setup.py: Change bwrap assertion to a warningDaniel Silverstone2018-10-041-9/+11
| | | | | | | | | | | | | | | | | | | | Since there are use-cases where BuildStream could be installed onto systems which do not have BubbleWrap (e.g. for remote-build-only scenarios) it is not correct to assert a dependency on bwrap during installation. This patch makes the assertion a warning, and also clarifies the message somewhat. This should fix #644 Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * _site.py: Reduce complexity of bwrap version comparisonDaniel Silverstone2018-10-041-11/+1
| | | | | | | | | | | | | | | | Instead of an if/else ladder which is quite complex, this patch uses the fact that Python supports by-component tuple comparison to simply compare two (major, minor, patch) tuples Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * _site.py: Protect against failure running `bwrap --version`Daniel Silverstone2018-10-041-1/+5
| | | | | | | | | | | | | | | | On some potentially broken systems, running `bwrap --version` might fail with an error code. This patch corrects the oversight ensuring that we cleanly return False for version checking in such cases. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * _platform/linux.py: Refactor checks for sandboxingDaniel Silverstone2018-10-041-14/+31
| | | | | | | | | | | | | | | | | | | | To better report issues in the absence of a suitable bwrap, or the FUSE devices, this refactors the checks for sandboxing in the Linux platform to cover the various possibilities. The reasons are then collated and passed to the dummy sandbox for later reporting to the user if a local build is attempted. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * _platform/darwin.py: Give reason for use of dummy sandboxDaniel Silverstone2018-10-041-0/+3
| | | | | | | | | | | | | | | | | | Since Darwin is limited to the dummy sandbox for now due to OSXFUSE being unsupported as yet, and there being no suitable sandboxing option for use on OSX, give this as the reason so that it can be reported if the user attempts a local build. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * sandbox/_sandboxdummy.py: Take a reason for useDaniel Silverstone2018-10-041-1/+2
|/ | | | | | | | | Since the SandboxDummy sandbox is only used in very specific circumstances and with good reason, this adjusts the SandboxDummy class to take a reason and to return it if `.run()` has to raise an exception because this is a dummy sandbox. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
* Merge branch 'jmac/temporaries-inside-cachedir' into 'master'Jim MacArthur2018-10-031-4/+4
|\ | | | | | | | | Move the temporary staging directory to artifactdir See merge request BuildStream/buildstream!856
| * element.py: Put the temporary staging directory in artifactdirjmac/temporaries-inside-cachedirJim MacArthur2018-10-031-4/+4
|/
* Merge branch 'tristan/fix-cache-size-race' into 'master'Tristan Van Berkom2018-10-032-4/+8
|\ | | | | | | | | fix cache size race See merge request BuildStream/buildstream!854
| * utils.py: Document _get_dir_size() expectations.Tristan Van Berkom2018-10-031-0/+3
| | | | | | | | | | This function assumes that files do not disappear while walking the given directory.
| * _artifactcache/cascache.py: Don't create temporary files in the CAS storageTristan Van Berkom2018-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | Use the designated tempdir when creating refs, we expect that temporary files are not created in the storage directory ever, they should be only ever created in the designated temporary directory. This fixes race conditions where utils._get_dir_size() throws an unhandled exception when attempting to stat the file which inadvertantly disappears.
| * utils.py: Give save_file_atomic() a tempdir argumentTristan Van Berkom2018-10-031-3/+4
|/ | | | Allow callers to decide where the temporary file will be created.
* Merge branch 'tristan/fix-double-terminate-prompt' into 'master'Tristan Van Berkom2018-10-031-0/+9
|\ | | | | | | | | | | | | _scheduler/scheduler.py: Ignore interrupt events while terminating. Closes #693 See merge request BuildStream/buildstream!852
| * _scheduler/scheduler.py: Ignore interrupt events while terminating.Tristan Van Berkom2018-10-031-0/+9
|/ | | | | | | | | For some reason, we now receive a SIGINT from the main loop even when the SIGINT occurred with the handler disconnected in an interactive prompt. This patch simply ignores any received SIGINT events from the main loop in the case that we are already in the process of terminating. This fixes issue #693
* Merge branch 'jonathan/source-mirror-project-refs' into 'master'Jonathan Maw2018-10-031-0/+76
|\ | | | | | | | | tests: Add regression test for mirroring with project.refs See merge request BuildStream/buildstream!823
| * tests: Add regression test for mirroring with project.refsJonathan Maw2018-10-031-0/+76
|/