summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* pushreceive.py: Abstract the buffer_jennis/alternative_remote_expiryJames Ennis2018-06-061-9/+8
|
* pushreceive.py: Ensure huge artifacts are not pushedJames Ennis2018-06-062-6/+32
|
* pushreceive.py: Add comments to code and name variables more sensiblyJames Ennis2018-06-061-1/+13
|
* push.py: Add tests to test remote cache expiryJames Ennis2018-06-061-1/+184
| | | | | | | | The tests include a new environment variable: BST_CACHE_QUOTA. This variable is used in receive_main() in pushreceive.py. Test names: test_artifact_expires, test_large_artifact_is_not_cached_remotely test_recently_pulled_artifact_does_not_expire: marked as xfail until we implement LRU expiry in remote share
* element_generators.py: Add a utility function to create arbitrary size elementsJames Ennis2018-06-062-0/+41
| | | | | | New file consisting of functions that allow us to generate elements on the fly __init__.py now includes create_element_size()
* pushreceive.py: Remove LRP artifacts from cache, introduce clean_up_cache()James Ennis2018-06-061-3/+54
|
* pushreceive.py: Ensure there is a repopathJames Ennis2018-06-061-0/+3
|
* _ostree.py: Introduce _list_all_refs() and list_artifacts()Tristan Maat2018-06-061-0/+44
| | | | | The unused list_remote_refs() function has also been removed as part of this commit.
* _ostree.py: Reintroduce remove()Tristan Maat2018-06-061-0/+36
|
* _artifactcache/pushreceive.py: Add Click type for CLI argument 'repo'Chandan Singh2018-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CLI for `bst-artifact-receive` expects a `repo` argument, which is supposed to be a directory, but Click currently expects it to be just any string. This results in stack traces like the one below when the argument provided is not a directory: $ ~/.local/bin/bst-artifact-receive --pull-url http://foo foobaz Traceback (most recent call last): File "/root/.local/bin/bst-artifact-receive", line 8, in <module> sys.exit(receive_main()) ... File "/src/buildstream/buildstream/_artifactcache/pushreceive.py", line 581, in __init__ self.repo.open(None) GLib.Error: g-io-error-quark: /src/buildstream/43fref: opendir(/src/buildstream/foobaz): No such file or directory (1) Add types for this argument such that it throws better error messages when it receives bad arguments. With the Click types added, it will instead fail with messages like these: $ ~/.local/bin/bst-artifact-receive --pull-url http://foo foobaz Usage: bst-artifact-receive [OPTIONS] REPO Error: Invalid value for "repo": Directory "foobaz" does not exist. $ ~/.local/bin/bst-artifact-receive --pull-url http://foo setup.py Usage: bst-artifact-receive [OPTIONS] REPO Error: Invalid value for "repo": Directory "setup.py" is a file. Fixes #409.
* utils.py: Correcting a typo in safe_remove's commentPhillip Smyth2018-06-051-1/+1
|
* _sandboxbwrap.py: Fix post-bwrap cleanup behaviourGökçen Nurlu2018-06-051-1/+1
| | | | | | | | | The cleanup was supposed not to remove folders (`/dev`, `/tmp`, `/proc`) if they already existed before bwrap but it did the opposite: it tried to remove them if they existed before, and didn't remove them if they were created during bwrap. This was caused by a `not` clause, and this removes it. Fixes #379
* Add test to verify cleanup behaviour after bwrapGökçen Nurlu2018-06-054-0/+51
| | | | | | This adds `sandbox-bwrap/test-cleanup.bst` to test the cleanup behaviour in `sandbox/_sandboxbwrap.py`: There already exists a non-empty `/tmp` folder and BuildStream should not try to remove it after a command is executed with bwrap.
* tests/context/context.py: Test setting XDG_CACHE_HOMETristan Maat2018-06-051-0/+17
|
* _context.py: Normalize user-defined pathsTristan Maat2018-06-051-0/+1
|
* _artifactcache/ostreecache.py: Fix artifact cache initialization result tupleAntoine Wacheux2018-05-311-1/+1
| | | | | In case of failure, the tuple contained 4 elements instead of 3, causing BuildStream to crash.
* .gitignore: Ignore autogenerated docsalbfan2018-05-251-0/+8
|
* Merge branch 'master' of https://gitlab.com/BuildStream/buildstreamtoscalix2018-05-241-0/+16
|\ | | | | | | | | | | | | | | bst_task.md : default template also as option. This is the default template. It is neccessary to include it in this directory to have it as option which is required in special cases. This fix issue https://gitlab.com/BuildStream/nosoftware/alignment/issues/12
| * junction.py: Include note regarding explicit trackingJames Ennis2018-05-231-0/+16
| |
* | bst_task.md: default template also as optiontoscalix2018-05-241-0/+17
|/
* correction :toscalix2018-05-221-1/+1
|
* correction :toscalix2018-05-221-4/+4
|
* bst merge request templatetoscalix2018-05-221-0/+19
|
* bst bug templatetoscalix2018-05-221-0/+36
|
* NEWS: Add item for element redirection214-filter-workspacingJonathan Maw2018-05-211-0/+10
|
* Redirect elements when performing tracking and workspace commandsJonathan Maw2018-05-173-12/+54
| | | | i.e. when an element is specified, it may be replaced with its source element.
* filter.py: Redirect _get_source_element() calls to its build dependJonathan Maw2018-05-171-0/+11
| | | | | | We do this because trying to open/close/reset a workspace on a filter element doesn't make sense, but is probably meant for the element that the filter element filters.
* element.py: Add _get_source_element() methodJonathan Maw2018-05-171-0/+12
|
* tests: Add track tests for the filter elementJonathan Maw2018-05-171-1/+288
|
* tests: Add workspace tests for filtersJonathan Maw2018-05-171-0/+70
|
* element.py: Fix consistency of workspaced elements when ref is missingChandan Singh2018-05-172-9/+42
| | | | Fixes #393.
* _frontend/linuxapp.py: Fixed crash in previous commitTristan Van Berkom2018-05-171-1/+1
| | | | | Commit e023beb56b180316a58f409d48f158e9dc1ece95 introduced a crash with an invalid access to os.environ, this fixes it.
* _frontend: Notify failures when on linuxtristan/platform-appTristan Van Berkom2018-05-173-1/+75
| | | | | | | | Opens the door to platform specific frontend features, and implements a platform specific "notify" method. This is based on Valentin David's patch on merge request 447, and this fixes issue #385.
* doc/source/examples_flatpak_autotools.rst: Enhanced exampleTristan Van Berkom2018-05-161-12/+117
| | | | | | | | | | | This has now changed to: * Have explanations of the project.conf and each element in the example, explaining what they are for * Have links into the reference for the specific features this example uses, such that the reader can get familiar with the reference manual from example windows
* doc/examples/flatpak-autotools/README.md: RemovingTristan Van Berkom2018-05-161-28/+0
| | | | | This is redundant with doc/source/examples_flatpak_base.rst, lets please only document things once.
* doc/source/examples.rst: Rearranged ToC for examplesTristan Van Berkom2018-05-162-29/+36
| | | | We want one example per file, not a huge file full of different examples.
* tests/examples/flatpak-autotools.py: Workaround setuptools bugTristan Van Berkom2018-05-161-0/+18
| | | | | | Until the setuptools bug is fixed, symlinks are not included in source distributions - this works around the problem until which point we can use a setuptools version without the bug.
* doc: Add first example, building on a flatpak SDKalbfan2018-05-1623-0/+3225
| | | | | | | | This adds: o A ToC area for adding examples o The instructive example page for the first example o The example project under doc/examples o The corresponding integration test in tests/examples
* doc/source/projectconf.rst: Added link anchor for source aliasesTristan Van Berkom2018-05-161-0/+2
|
* doc/source/projectconf.rst: Added link anchors for project option typesTristan Van Berkom2018-05-161-0/+10
|
* bst-init: Ensure --element-path is respected by the commandchandan/fix-bst-init-element-path288-kill-element-normal_name-variableChandan Singh2018-05-112-2/+5
| | | | | | | | | | | Previously "elements" was hard-coded as the path for the elements directory whereas it was supposed to be configurable via the `element_path` option to `init_project()`. This led to incorrect behavior when `bst init` was run `--element-path` option. Also, extend tests to test the creation of elements directory. Fixes #398.
* _workspaces.py: Use file mtime for workspace cache keys instead of checksummingTristan Van Berkom2018-05-111-9/+6
| | | | | | | | | | | | | | | | | | | The rationale for this is basically: o A workspace is completely local o A cache key for a workspace is used to determine if the workspace has changed or not o Within reason, one should not expect buildstream to detect a change without a file's mtime having been modified On my machine, it takes about 1 minute to checksum 11GB of WebKit checkout, that is annoyingly a long time. With this change, it takes only 5 seconds. Not perfect, but it's a start. This is related to issues #294, #295 and #392
* _stream.py: Do not force `PipelineSelection.ALL` for build with trackingJürg Billeter2018-05-112-2/+2
| | | | | | With the dynamic plan using `_set_required()` we can avoid pulling/fetching/building unneeded elements even if elements are being tracked.
* Do not pull/fetch/build elements that are not requiredJürg Billeter2018-05-115-4/+62
| | | | | For `bst build --deps plan`, do not process elements in pull/fetch/build queues until they are requested by a reverse dependency.
* _ostree.py: Remove unused function list_remote_refs()Jürg Billeter2018-05-111-20/+0
|
* doc/source/artifacts.rst: Drop section about summary file updatesJürg Billeter2018-05-111-17/+0
| | | | Summary files are no longer used.
* _artifactcache/ostreecache.py: Do not use summary fileJürg Billeter2018-05-111-87/+18
|
* _artifactcache/artifactcache.py: Remove unused methodsJürg Billeter2018-05-111-35/+0
|
* element.py: Do not query remote artifact caches ahead of pull/pushJürg Billeter2018-05-114-74/+54
|
* _artifactcache: Add element paramater to has_fetch_remotes()Jürg Billeter2018-05-112-3/+15
|