summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* TESTjennis/test_failure_2James Ennis2019-08-291-0/+13
|
* buildcheckout.py: Add tests which checkout artifact depsJames Ennis2019-08-291-0/+37
| | | | | | These tests ensure that we can checkout the build dependencies of an artifact and that if we try to checkout the runtime dependencies the command will fail.
* cli.py: Allow checkout to handle artifact refsJames Ennis2019-08-293-9/+13
|
* cli.py: Clean up dependency scope handling in checkoutJames Ennis2019-08-291-9/+3
|
* _stream.py: Remove separate handling of ArtifactElementsJames Ennis2019-08-292-20/+24
| | | | | | | | | | | ArtifactElement inherits Element, both have an Artifact object as a member, thus we should not need to handle these separately. This change has resulted in introducing a configure_sandbox() method in ArtifactElement. The method is similar to BuildElement.configure_sandbox() but does not configure the sandbox to actually be used for building.
* Merge branch 'jennis/load_artifact_dependencies' into 'master'bst-marge-bot2019-08-279-16/+293
|\ | | | | | | | | Add the ability to load (build) deps from an artifact ref See merge request BuildStream/buildstream!1553
| * tests/frontend/artifact.py: test artifact delete with --deps optionsJames Ennis2019-08-271-0/+91
| |
| * cli.py: Implement --deps for artifact deleteJames Ennis2019-08-272-4/+8
| |
| * _stream.py: Validate selection for target artifacts in _load()James Ennis2019-08-271-3/+6
| |
| * _stream.py: Don't say we're loading elements if we're notJames Ennis2019-08-271-3/+6
| |
| * Load artifact refs the same way we load element namesJames Ennis2019-08-275-6/+102
| |
| * element.py: Add _add_build_dependency() methodJames Ennis2019-08-271-0/+10
| | | | | | | | | | | | This method explicitly adds a build dependency to an Element instance's __build_dependency list. This is required when determining the build dependencies of an artifact
| * _artifactelement.py: Add get_dependency_refs() methodJames Ennis2019-08-271-0/+15
| |
| * element.py: Add _get_artifact() methodJames Ennis2019-08-271-0/+11
| | | | | | | | | | | | | | Add a getter for Element's __artifact (Artifact object). This is required by ArtifactElement. The ArtifactElement should have access to its Artifact.
| * _artifact.py: Add get_dependency_refs() methodJames Ennis2019-08-271-0/+44
|/
* Merge branch 'bschubert/register-sources-on-test' into 'master'bst-marge-bot2019-08-2711-171/+235
|\ | | | | | | | | testing/sources: Automatically register plugin sources See merge request BuildStream/buildstream!1537
| * sourcetests/track: Don't overwrite project configurationbschubert/register-sources-on-testBenjamin Schubert2019-08-263-17/+10
| | | | | | | | | | | | | | | | We need to keep the project configuration to use the expected plugins as configured by the `kind` fixture. This adds a utility method `update_project_configuration` that allows updated part of the project.conf.
| * _sourcetests/mirror: Don't overwrite project_confBenjamin Schubert2019-08-261-100/+74
| | | | | | | | | | | | If we overwrite project_conf, we loose the plugins registration. The only part that we really need to update is the 'aliases' and 'mirrors', which we can update ourselves.
| * testing/sources: Automatically register plugin sourcesBenjamin Schubert2019-08-2610-54/+151
|/ | | | | This fixes a bug where third party plugins cannot get tested automatically because they are not part of BuildStream.
* Merge branch 'bschubert/fix-mutable-args' into 'master'bst-marge-bot2019-08-231-6/+23
|\ | | | | | | | | sandbox/_mounter: Remove default mutable arguments stderr/out See merge request BuildStream/buildstream!1562
| * sandbox/_mounter: Remove default mutable arguments stderr/outBenjamin Schubert2019-08-231-6/+23
|/ | | | | | | | | | | | | | | | stderr and stdout were passed as default arguments and would therefore retain the first value they had when the module was imported, which means they wouldn't get overriden by the pytest capture of stderr/out. This also meant that depending how the mounter was imported, if the stdout/err was patched at that moment, and the file closed, we would get an error. The bug can be reproduced by running: tox -e pyXX -- tests/integration/cmake.py On master, and seeing that it is now fixed.
* Merge branch 'juerg/server-casd' into 'master'bst-marge-bot2019-08-221-0/+4
|\ | | | | | | | | casserver.py: Fix write operations with bst-artifact-server See merge request BuildStream/buildstream!1558
| * casserver.py: Fix write operations with bst-artifact-serverJürg Billeter2019-08-221-0/+4
|/ | | | Allow gRPC communication in the bst-artifact-server main process.
* Merge branch 'tmewett/artifact-help' into 'master'bst-marge-bot2019-08-221-36/+27
|\ | | | | | | | | Clarify bst artifact subcommand help text See merge request BuildStream/buildstream!1541
| * cli.py: Rewrite artifact log help text & move up to main subcommandTom Mewett2019-08-221-36/+27
|/
* Merge branch 'aevri/nomp' into 'master'bst-marge-bot2019-08-204-137/+27
|\ | | | | | | | | Remove uneccesary _platform.multiprocessing See merge request BuildStream/buildstream!1554
| * Remove uneccesary _platform.multiprocessingaevri/nompAngelos Evripiotis2019-08-204-137/+27
|/ | | | | | | | It turns out we don't need to use multiprocessing.Manager() queues when using the 'spawn' method - the regular multiprocessing queues are also picklable, if passed as parameters to the new process. Thanks to @BenjaminSchubert for pointing this out.
* Merge branch 'juerg/casd' into 'master'bst-marge-bot2019-08-2036-1845/+2426
|\ | | | | | | | | Use buildbox-casd for CAS access See merge request BuildStream/buildstream!1499
| * casserver.py: Use quota instead of headroomJürg Billeter2019-08-203-67/+21
| |
| * casserver.py: Handle CASCacheError for add_object() callsJürg Billeter2019-08-201-3/+22
| |
| * casserver.py: Update mtime on readJürg Billeter2019-08-201-1/+6
| |
| * _artifactcache.py: Handle CASRemoteErrorJürg Billeter2019-08-201-1/+5
| |
| * casremote.py: Use UploadMissingBlobs in CASBatchUpdateJürg Billeter2019-08-202-50/+9
| |
| * casremote.py: Handle RESOURCE_EXHAUSTED in CASBatchUpdateJürg Billeter2019-08-201-1/+6
| |
| * casremote.py: Drop unused ByteStreamStubJürg Billeter2019-08-201-3/+0
| |
| * casremote.py: Use UploadMissingBlobs in _send_blob()Jürg Billeter2019-08-202-38/+20
| |
| * casremote.py: Use add_object() in push_message()Jürg Billeter2019-08-201-6/+1
| |
| * cascache.py: Add instance_name parameter to add_object()Jürg Billeter2019-08-201-1/+5
| |
| * casremote.py: Use FetchMissingBlobs in CASBatchReadJürg Billeter2019-08-202-59/+11
| |
| * casremote.py: Use FetchMissingBlobs in _fetch_blob()Jürg Billeter2019-08-202-32/+25
| |
| * casremote.py: Use buildbox-casd in init()Jürg Billeter2019-08-203-14/+29
| |
| * tests/artifactcache/expiry.py: Fix test_cleanup_firstJürg Billeter2019-08-201-14/+0
| | | | | | | | | | | | | | Remove check for order of events as cache cleanup is now handled by buildbox-casd, not BuildStream scheduler jobs. The test still verifies that build succeeds when the cache disk usage is larger than the configured quota.
| * tests/artifactcache/expiry.py: Fix test_never_delete_requiredJürg Billeter2019-08-201-17/+5
| | | | | | | | | | | | buildbox-casd checks disk usage against the quota before actually committing a new blob to the local cache and thus, the disk usage will never outgrow the quota.
| * tests/artifactcache/expiry.py: Limit to single fetcherJürg Billeter2019-08-201-0/+2
| | | | | | | | | | Parallel fetching leads to sporadic test failures due to scheduling differences.
| * _context.py: Pass cache quota to CASCacheJürg Billeter2019-08-202-6/+1
| |
| * cascache.py: Pass cache quota to casdJürg Billeter2019-08-201-1/+9
| |
| * cascache.py: Use buildbox-casd in add_object()Jürg Billeter2019-08-201-33/+20
| | | | | | | | | | buildbox-casd clients are not allowed to directly write into the local cache directory. Use LocalCas.CaptureFiles() instead.
| * tests/artifactcache/artifactservice.py: Enable write access via casdJürg Billeter2019-08-201-1/+1
| |
| * tests/testutils/artifactshare.py: Allow write access via casdJürg Billeter2019-08-201-4/+8
| |
| * _stream.py: Disable fork for Element._shell()Jürg Billeter2019-08-201-0/+2
| | | | | | | | | | | | With the buildbox sandboxing backend, communication with casd is required by Element._shell(). Disable fork after preparation to allow communication with casd in the main process.