summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* cas: move remote only functions to CASRemoteraoul/cas-refactorRaoul Hidalgo Charman2019-01-154-144/+148
| | | | | | | | | | | | List of methods moved * Initialization check: made it a class method that is run in a subprocess, for when checking in the main buildstream process. * fetch_blobs * send_blobs * verify_digest_on_remote * push_method Part of #802
* casremote.py: Move remote CAS classes into its own fileRaoul Hidalgo Charman2019-01-154-257/+283
| | | | Part of #802
* _cas: Rename artifactcache folder and move that to a root moduleRaoul Hidalgo Charman2019-01-1513-21/+20
| | | | | | | | | Other components will start to reply on cas modules, and not the artifact cache modules so it should be organized to reflect this. All relevant imports have been changed. Part #802
* Merge branch 'chandan/reqs-update-test' into 'master'Chandan Singh2019-01-151-1/+16
|\ | | | | | | | | .gitlab-ci.yml: Add job to attempt to update dependencies See merge request BuildStream/buildstream!1038
| * .gitlab-ci.yml: Add job to attempt to update dependenciesChandan Singh2019-01-151-1/+16
|/ | | | | | | This will help us check if BuildStream is working with the latest version of dependencies, as per our constraints. This job is allowed to fail but its failure should signal that we need to add stricter constraints in some of our `.in` requirements files.
* Merge branch 'jjardon/bst_external_0_9' into 'master'Javier Jardón2019-01-151-1/+1
|\ | | | | | | | | | | | | .gitlab-ci.yml: Use latest bst-external Closes #861 See merge request BuildStream/buildstream!1068
| * .gitlab-ci.yml: Use latest bst-externaljjardon/bst_external_0_9Javier Jardón2019-01-141-1/+1
|/ | | | which include flatpak_repo plugin needed to build fdsdk
* Merge branch 'jennis/add_artifacts_completion' into 'master'Tristan Van Berkom2019-01-142-7/+61
|\ | | | | | | | | completions.py: Add a test for our artifact ref autocompletions See merge request BuildStream/buildstream!1054
| * completions.py: Add a test for our artifact ref autocompletionsjennis/add_artifacts_completionJames Ennis2019-01-141-0/+41
| | | | | | | | | | | | | | Since the artifact subcommand group has been created, we have been able to tab complete both element names and artifact refs as arguments to the artifact subcommands (e.g. bst artifact log), this commit adds a test for this.
| * _frontend/cli.py: Also check original args for --config in bash completionJürg Billeter2019-01-141-7/+20
|/ | | | | | | The path of the config file generated by testutils for completion tests is passed as regular argument, not via COMP_WORDS. Use that config file in complete_artifact() to ensure the test uses the right artifact directory.
* Merge branch 'chandan/fix-overnight-aarch' into 'master'Chandan Singh2019-01-141-1/+7
|\ | | | | | | | | | | | | Chandan/fix overnight aarch Closes #859 See merge request BuildStream/buildstream!1065
| * .gitlab-ci.yml: Use newer image for overning aarch testsChandan Singh2019-01-141-1/+7
|/ | | | | | | | | | | | During recent reorganizing of `.gitlab-ci.yml` to work with `tox`, seems like we missed to update the image used by the overnight aarch tests, meaning that they currently fail due to `tox` being missing from them. While these tests will be skipped on MRs usually, here is an example of what the tests look like if they are actually run with this change: https://gitlab.com/BuildStream/buildstream/-/jobs/145449561. Fixes #859.
* Merge branch 'jjardon/freedesktop-sdk_latest' into 'master'Valentin David2019-01-141-1/+1
|\ | | | | | | | | | | | | .gitlab-ci.yml: Use latest freedesktop-sdk 18.08.25 Closes #858 See merge request BuildStream/buildstream!1064
| * .gitlab-ci.yml: Use latest freedesktop-sdk 18.08.25Javier Jardón2019-01-141-1/+1
|/
* Merge branch 'tristan/fix-skipped-elements' into 'master'Tristan Van Berkom2019-01-121-1/+1
|\ | | | | | | | | _scheduler/queues/queue.py: Put elements in the skip list, not jobs See merge request BuildStream/buildstream!1063
| * _scheduler/queues/queue.py: Put elements in the skip list, not jobsTristan Van Berkom2019-01-121-1/+1
|/ | | | | Minor correction, looks like we're not observing this queue otherwise we'd be seeing crashes.
* Merge branch 'aevri/tox_no_cov' into 'master'Angelos Evripiotis2019-01-112-1/+11
|\ | | | | | | | | pytest-cov==2.6.1, contributing: '--last-failed' and '--no-cov' tips See merge request BuildStream/buildstream!1059
| * contributing: '--last-failed' and '--no-cov' tipsAngelos Evripiotis2019-01-111-0/+10
| | | | | | | | | | To help new folks get to grips with pytest, add some tips on other frequently used features.
| * dev-requirements: pytest-cov==2.6.1 for '--no-cov'Angelos Evripiotis2019-01-111-1/+1
|/ | | | | | | | | | | | | | | Bump the version of pytest-cov, so that we pick up the fix for the '--no-cov' option breaking in pytest 4.0: https://github.com/pytest-dev/pytest-cov/pull/230 This was the error you would get prior to this version: _pytest.warning_types.RemovedInPytest4Warning: config.warn has been deprecated, use warnings.warn instead Although it says 'deprecated', it did result in termination with stack trace.
* Merge branch 'tristan/element-processing-order' into 'master'Tristan Van Berkom2019-01-113-1/+128
|\ | | | | | | | | Make build plan element list stable See merge request BuildStream/buildstream!1058
| * tests/frontend/order.py: Adding tests ensuring stable element processing orderTristan Van Berkom2019-01-101-0/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | For each sample project and expected result order, this test ensures that: * bst show --deps plan: Always shows the expected build order. * bst source fetch: Always executes in the expected build order. * bst build: Always builds in the expected order (disabled). The build part of the test is currently disabled as the scheduler seems to be messing with the order even in a `--builders 1` scenario.
| * testutils/runcli.py: Added Result.get_start_order()Tristan Van Berkom2019-01-101-0/+17
| | | | | | | | | | Added a function to report the list of elements which appeared in a given queue in the order of their first appearance.
| * _pipeline.py: Fix the planner to retain the original order when depth sortingTristan Van Berkom2019-01-101-1/+2
|/ | | | | | | | | | | The algorithm adds elements to a dictionary and then sorts the dictionary by the discovered depths while recursing - using an OrderedDict is enough to ensure a stable order. This fixes `bst show --deps plan ...` reporting different results on each invocation. This fixes an aspect of #824
* Merge branch 'aevri/contrib-typos' into 'master'Angelos Evripiotis2019-01-101-11/+11
|\ | | | | | | | | contributing: fix 'oprtation' and some other typos See merge request BuildStream/buildstream!1055
| * contributing: fix 'oprtation' and some other typosAngelos Evripiotis2019-01-101-11/+11
|/
* Merge branch 'juerg/arch' into 'master'Jürg Billeter2019-01-108-16/+146
|\ | | | | | | | | Accept architecture aliases See merge request BuildStream/buildstream!1034
| * tests/format/optionarch.py: Add tests for architecture aliasesJürg Billeter2019-01-105-0/+81
| |
| * element.py: Accept architecture aliases for sandbox configjuerg/archJürg Billeter2019-01-101-1/+7
| | | | | | | | | | Accept common architecture aliases for the sandbox config for consistency with arch options.
| * _options/optionarch.py: Accept architecture aliasesJürg Billeter2019-01-101-1/+30
| | | | | | | | | | | | | | | | Accept common architecture aliases for arch options instead of only accepting the canonicalized, OS-independent architecture name. This restores compatibility with existing projects and may simplify option handling for projects that only target a single OS (and thus, do not need OS-independent architecture names).
| * _platform/platform.py: Add canonicalize_arch() methodJürg Billeter2019-01-101-14/+28
|/
* Merge branch 'tristan/refine-coverage' into 'master'Tristan Van Berkom2019-01-091-1/+3
|\ | | | | | | | | .coveragerc: Omit some things which are irrelevant to cover. See merge request BuildStream/buildstream!1052
| * .coveragerc: Omit some things which are irrelevant to cover.Tristan Van Berkom2019-01-091-1/+3
|/ | | | | | | * Omit versioneer's _version.py * Omit our __main__.py which is used only internally for generating documentation
* Merge branch 'tristan/detox-tests' into 'master'Tristan Van Berkom2019-01-095-19/+76
|\ | | | | | | | | | | | | Allow using detox, and fix/refactor collection of coverage reports Closes #844 See merge request BuildStream/buildstream!1051
| * CONTRIBUTING.rst: Updated to mention new `coverage` tox environment.Tristan Van Berkom2019-01-091-0/+20
| | | | | | | | | | Also point out that it is possible to run test environments in parallel using the `detox` tool.
| * Support running test environments in parallel with `detox`Tristan Van Berkom2019-01-094-19/+56
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch namespaces the test temp directory and the output coverage report file with the name of the environment under test, such that separately run tests do not access the same files. When running tests without tox, directly through setup.py, then the tmp directory will still be `./tmp`. * .gitignore: Added new .coverage-reports/ directory * .gitlab-ci.yml: Rely on tox to combine and report coverage, only tell tox about the COVERAGE_PREFIX so that results can be namespaced by CI job name. This change also publishes the sources and final combined `.coverage` file in an output gitlab artifact for inspection, and lists some missing dependencies to the `coverage` job. * tox.ini: Add comments and refactor main [testenv] section so that other environments dont inherit too much unrelated cruft. Generate the coverate reports in the respective {envtmpdir} so that all per-process coverage files are prefixed with a full path, ensuring that concurrent runs don't mix reports and addressing concerns raised in #844. Also implemented new `tox -e coverage` environment to combine any found coverage and print a report. * .coveragerc: Omit .tox/ directory from coverage stats Fixes issue #844
* Merge branch 'jmac/rename_instance_name' into 'master'Jim MacArthur2019-01-091-2/+2
|\ | | | | | | | | Rename 'instance_name' option to 'instance-name' See merge request BuildStream/buildstream!1048
| * sandboxremote.py: Rename 'instance_name' option to 'instance-name'jmac/rename_instance_nameJim MacArthur2019-01-091-2/+2
|/ | | | It was 'instance-name' in the documentation.
* Merge branch 'valentindavid/script_virtual_directory' into 'master'Valentin David2019-01-091-0/+3
|\ | | | | | | | | | | | | buildstream/plugins/elements/script.py: Mark script as BST_VIRTUAL_DIRECTORY Closes #850 See merge request BuildStream/buildstream!1047
| * buildstream/plugins/elements/script.py: Mark script as BST_VIRTUAL_DIRECTORYvalentindavid/script_virtual_directoryValentin David2019-01-091-0/+3
|/ | | | | | | ScriptElement does not use Sandbox.get_directory. It works using it with remote execution. Fixes #850
* Merge branch 'valentindavid/remote_execution_configuration' into 'master'Valentin David2019-01-095-13/+115
|\ | | | | | | | | | | | | Remote execution configuration: HTTPS and user configuration Closes #780 and #631 See merge request BuildStream/buildstream!1030
| * Add support for https channel to remote execution and actions serversvalentindavid/remote_execution_configurationValentin David2019-01-092-11/+35
| | | | | | | | Fixes #780.
| * Add support for user remote execution configurationValentin David2019-01-095-4/+72
| | | | | | | | Fixes #631.
| * Use relative path to project directory for remote execution certificates/keysValentin David2019-01-091-0/+10
|/
* Merge branch 'tristan/sandbox-programming-error' into 'master'Tristan Van Berkom2019-01-081-4/+4
|\ | | | | | | | | sandbox/sandbox.py: Use assertions for programming errors instead of BstErrors. See merge request BuildStream/buildstream!1046
| * sandbox/sandbox.py: Use assertions for programming errors instead of BstErrors.tristan/sandbox-programming-errorTristan Van Berkom2019-01-081-4/+4
|/ | | | | When code is faulty, in a plugin or in the core, we should get a stack trace and a BUG message.
* Merge branch 'phil/remove-source-bundle-reference' into 'master'Jürg Billeter2019-01-081-1/+1
|\ | | | | | | | | element.py: remove documentation reference to source bundle command See merge request BuildStream/buildstream!1041
| * element.py: remove reference to source bundle commandphil/remove-source-bundle-referencePhil Dawson2019-01-081-1/+1
|/ | | | This command has been replacved by the bst source checkout command
* Merge branch 'tristan/fix-command-status-messages' into 'master'Tristan Van Berkom2019-01-081-1/+1
|\ | | | | | | | | sandbox/sandbox.py: Fix regression of command logging See merge request BuildStream/buildstream!1044
| * sandbox/sandbox.py: Fix regression of command loggingTristan Van Berkom2019-01-071-1/+1
|/ | | | | | | | | | Since we added batch commands, the batch commands print the text of the commands directly in the message text, but this is wrong. The detail string is the appropriate place for text of unknown lengths (the user can actually configure how many max lines of commands they want to see in their log), the message text itself should be controlled and brief enough to avoid text wrapping.
* Merge branch 'tristan/one-cache-size-job' into 'master'Tristan Van Berkom2019-01-0713-82/+133
|\ | | | | | | | | | | | | Only queue one cache size job Closes #753 See merge request BuildStream/buildstream!1040