[0KRunning with gitlab-runner 11.2.0 (35e8515d) [0;m[0K on buildstream-bastion a334e492 [0;m[0KUsing Docker executor with image buildstream/testsuite-debian:9-5da27168-32c47d1c ... [0;m[0KPulling docker image buildstream/testsuite-debian:9-5da27168-32c47d1c ... [0;m[0KUsing docker image sha256:b7aa87c2ff015b1398d182bb42846d20aab885720415469347034e7559241daa for buildstream/testsuite-debian:9-5da27168-32c47d1c ... [0;msection_start:1547830146:prepare_script [0KRunning on runner-a334e492-project-1975139-concurrent-0 via runner-a334e492-gitlab-runner-autoscale-1547823430-ffaec7fd... section_end:1547830148:prepare_script [0Ksection_start:1547830148:get_sources [0K[32;1mFetching changes...[0;m Removing .tox/ Removing BuildStream.egg-info/ Removing __pycache__/ Removing buildstream/__pycache__/ Removing buildstream/_cas/__pycache__/ Removing buildstream/_frontend/__pycache__/ Removing buildstream/_loader/__pycache__/ Removing buildstream/_options/__pycache__/ Removing buildstream/_platform/__pycache__/ Removing buildstream/_protos/__pycache__/ Removing buildstream/_protos/build/__pycache__/ Removing buildstream/_protos/build/bazel/__pycache__/ Removing buildstream/_protos/build/bazel/remote/__pycache__/ Removing buildstream/_protos/build/bazel/remote/execution/__pycache__/ Removing buildstream/_protos/build/bazel/remote/execution/v2/__pycache__/ Removing buildstream/_protos/build/bazel/semver/__pycache__/ Removing buildstream/_protos/buildstream/__pycache__/ Removing buildstream/_protos/buildstream/v2/__pycache__/ Removing buildstream/_protos/google/__pycache__/ Removing buildstream/_protos/google/api/__pycache__/ Removing buildstream/_protos/google/bytestream/__pycache__/ Removing buildstream/_protos/google/longrunning/__pycache__/ Removing buildstream/_protos/google/rpc/__pycache__/ Removing buildstream/_scheduler/__pycache__/ Removing buildstream/_scheduler/jobs/__pycache__/ Removing buildstream/_scheduler/queues/__pycache__/ Removing buildstream/plugins/elements/__pycache__/ Removing buildstream/plugins/sources/__pycache__/ Removing buildstream/sandbox/__pycache__/ Removing buildstream/storage/__pycache__/ Removing cache/ Removing tests/__pycache__/ Removing tests/artifactcache/__pycache__/ Removing tests/cachekey/__pycache__/ Removing tests/elements/__pycache__/ Removing tests/elements/filter/basic/element_plugins/__pycache__/ Removing tests/examples/__pycache__/ Removing tests/format/__pycache__/ Removing tests/format/project/duplicate-plugins/bar/__pycache__/ Removing tests/format/project/duplicate-plugins/baz/__pycache__/ Removing tests/format/project/plugin-allowed/__pycache__/ Removing tests/format/project/plugin-allowed/plugins/__pycache__/ Removing tests/format/project/plugin-forbidden/forbidden-plugins/__pycache__/ Removing tests/format/project/plugin-no-load-ref/plugins/__pycache__/ Removing tests/format/project/plugin-preflight-error/errorplugin/__pycache__/ Removing tests/frontend/__pycache__/ Removing tests/frontend/configuredwarning/plugins/__pycache__/ Removing tests/frontend/consistencyerror/__pycache__/ Removing tests/frontend/consistencyerror/plugins/__pycache__/ Removing tests/frontend/project/sources/__pycache__/ Removing tests/integration/__pycache__/ Removing tests/internals/__pycache__/ Removing tests/internals/pluginfactory/anotherelement/__pycache__/ Removing tests/internals/pluginfactory/anothersource/__pycache__/ Removing tests/internals/pluginfactory/badsetup/__pycache__/ Removing tests/internals/pluginfactory/badversionelement/__pycache__/ Removing tests/internals/pluginfactory/badversionsource/__pycache__/ Removing tests/internals/pluginfactory/customelement/__pycache__/ Removing tests/internals/pluginfactory/customsource/__pycache__/ Removing tests/internals/pluginfactory/nosetup/__pycache__/ Removing tests/internals/pluginfactory/notatype/__pycache__/ Removing tests/internals/pluginfactory/wrongtype/__pycache__/ Removing tests/internals/pluginloading/badversionelement/customelements/__pycache__/ Removing tests/internals/pluginloading/badversionsource/customsources/__pycache__/ Removing tests/internals/pluginloading/customelement/pluginelements/__pycache__/ Removing tests/internals/pluginloading/customsource/pluginsources/__pycache__/ Removing tests/sandboxes/__pycache__/ Removing tests/sandboxes/mounting/__pycache__/ Removing tests/sources/__pycache__/ Removing tests/sources/no-fetch-cached/plugins/sources/__pycache__/ Removing tests/sources/previous_source_access/plugins/sources/__pycache__/ Removing tests/testutils/__pycache__/ Removing tests/testutils/repo/__pycache__/ HEAD is now at 4236bcc7 Merge branch 'tristan/fix-bzr-race' into 'master' From https://gitlab.com/BuildStream/buildstream + eb4286fd...745794d8 tlater/message-lines -> origin/tlater/message-lines (forced update) [32;1mChecking out 745794d8 as tlater/message-lines...[0;m [32;1mSkipping Git submodules setup[0;m section_end:1547830157:get_sources [0Ksection_start:1547830157:restore_cache [0K[32;1mChecking cache for tests-debian-9--4...[0;m Downloading cache.zip from https://ams3.digitaloceanspaces.com/buildstream-ci-gitlab-cache/runner/a334e492/project/1975139/tests-debian-9--4[0;m [32;1mSuccessfully extracted cache[0;m section_end:1547830166:restore_cache [0Ksection_start:1547830166:download_artifacts [0Ksection_end:1547830168:download_artifacts [0Ksection_start:1547830168:build_script [0K[32;1m$ mount[0;m /dev/mapper/docker-252:1-264677-505e4ca1c6a6070acfe6df4c06fbbd76390730f971b70897d7410e890d15cd07 on / type xfs (rw,relatime,seclabel,nouuid,attr2,inode64,sunit=128,swidth=128,noquota) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) tmpfs on /dev type tmpfs (rw,nosuid,seclabel,size=65536k,mode=755) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=666) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,relatime,seclabel,mode=755) cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,xattr,name=systemd) cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,net_cls,net_prio) cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,blkio) cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,hugetlb) cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpuset) cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,freezer) cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpu,cpuacct) cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,devices) cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,perf_event) cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,pids) cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,memory) mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime,seclabel) /dev/vda1 on /cache type ext4 (rw,relatime,seclabel,data=ordered) /dev/vda1 on /builds/BuildStream type ext4 (rw,relatime,seclabel,data=ordered) /dev/vda1 on /etc/resolv.conf type ext4 (rw,relatime,seclabel,data=ordered) /dev/vda1 on /etc/hostname type ext4 (rw,relatime,seclabel,data=ordered) /dev/vda1 on /etc/hosts type ext4 (rw,relatime,seclabel,data=ordered) shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,seclabel,size=65536k) [32;1m$ df -h[0;m Filesystem Size Used Avail Use% Mounted on /dev/mapper/docker-252:1-264677-505e4ca1c6a6070acfe6df4c06fbbd76390730f971b70897d7410e890d15cd07 10G 693M 9.4G 7% / tmpfs 64M 0 64M 0% /dev tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup /dev/vda1 25G 5.3G 19G 23% /cache shm 64M 0 64M 0% /dev/shm [32;1m$ useradd -Um buildstream[0;m [32;1m$ chown -R buildstream:buildstream .[0;m [32;1m$ su buildstream -c "${TEST_COMMAND}"[0;m GLOB sdist-make: /builds/BuildStream/buildstream/setup.py py35 create: /builds/BuildStream/buildstream/.tox/py35 py35 installdeps: -rrequirements/requirements.txt, -rrequirements/dev-requirements.txt, -rrequirements/plugin-requirements.txt py35 inst: /builds/BuildStream/buildstream/.tox/.tmp/package/1/BuildStream-1.3.0+1299.g745794d8.zip py35 installed: apipkg==1.5,arpy==1.1.1,astroid==2.1.0,atomicwrites==1.2.1,attrs==18.2.0,BuildStream==1.3.0+1299.g745794d8,Click==7.0,coverage==4.4,execnet==1.5.0,grpcio==1.17.1,isort==4.3.4,Jinja2==2.10,lazy-object-proxy==1.3.1,MarkupSafe==1.1.0,mccabe==0.6.1,more-itertools==5.0.0,pathlib2==2.3.3,pkg-resources==0.0.0,pluggy==0.8.0,pluginbase==0.7,protobuf==3.6.1,psutil==5.4.8,py==1.7.0,pycairo==1.18.0,pycodestyle==2.4.0,pyftpdlib==1.5.4,PyGObject==3.30.4,pylint==2.2.2,pytest==4.0.2,pytest-cov==2.6.1,pytest-datafiles==2.0,pytest-env==0.6.2,pytest-forked==0.2,pytest-timeout==1.3.3,pytest-xdist==1.25.0,ruamel.yaml==0.15.51,six==1.12.0,typed-ast==1.2.0,wrapt==1.10.11 py35 run-test-pre: PYTHONHASHSEED='3501163299' py35 runtests: commands[0] | pytest --basetemp /builds/BuildStream/buildstream/.tox/py35/tmp --color=yes --integration [1m============================= test session starts ==============================[0m platform linux -- Python 3.5.3, pytest-4.0.2, py-1.7.0, pluggy-0.8.0 -- /builds/BuildStream/buildstream/.tox/py35/bin/python cachedir: .tox/py35/.pytest_cache rootdir: /builds/BuildStream/buildstream, inifile: setup.cfg plugins: xdist-1.25.0, timeout-1.3.3, forked-0.2, env-0.6.2, datafiles-2.0, cov-2.6.1 [1mcollecting ... [0mcollected 1284 items tests/artifactcache/cache_size.py::test_cache_size_roundtrip [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/cache_size.py::test_cache_size_write [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[empty-config] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[user-config] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[project-config] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[project-override-in-user-config] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[list-order] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_artifact_cache_precedence[duplicates] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_missing_certs[client-cert-client.crt] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/config.py::test_missing_certs[client-key-client.key] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/expiry.py::test_artifact_expires [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/expiry.py::test_artifact_too_large[500000] [32mPASSED[0m[36m [ 0%][0m tests/artifactcache/expiry.py::test_artifact_too_large[399999] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_expiry_order [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_keep_dependencies [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_never_delete_required [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_never_delete_required_track [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[1-True] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[1K-True] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[50%-True] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[infinity-True] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[0-True] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[-1-False] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[pony-False] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[7K-False] [32mPASSED[0m[36m [ 1%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[70%-False] [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/expiry.py::test_invalid_cache_quota[200%-False] [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/expiry.py::test_extract_expiry [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/junctions.py::test_push_pull [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/pull.py::test_pull [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/pull.py::test_pull_tree [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/push.py::test_push [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/push.py::test_push_directory [32mPASSED[0m[36m [ 2%][0m tests/artifactcache/push.py::test_push_message [32mPASSED[0m[36m [ 2%][0m tests/cachekey/cachekey.py::test_cache_key [32mPASSED[0m[36m [ 2%][0m tests/cachekey/cachekey.py::test_cache_key_fatal_warnings[first_warnings0-second_warnings0-True] [32mPASSED[0m[36m [ 2%][0m tests/cachekey/cachekey.py::test_cache_key_fatal_warnings[first_warnings1-second_warnings1-False] [32mPASSED[0m[36m [ 2%][0m tests/cachekey/cachekey.py::test_cache_key_fatal_warnings[first_warnings2-second_warnings2-False] [32mPASSED[0m[36m [ 2%][0m tests/cachekey/cachekey.py::test_cache_key_fatal_warnings[first_warnings3-second_warnings3-True] [32mPASSED[0m[36m [ 3%][0m tests/cachekey/cachekey.py::test_cache_key_fatal_warnings[first_warnings4-second_warnings4-True] [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_include [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_include_dynamic [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_exclude [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_orphans [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_deps_ok [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_forbid_sources [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_forbid_multi_bdep [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_forbid_no_bdep [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_forbid_also_rdep [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_workspace_open [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_workspace_open_multi [32mPASSED[0m[36m [ 3%][0m tests/elements/filter.py::test_filter_workspace_build [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_workspace_close [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_workspace_reset [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_track [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_track_excepted [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_track_multi_to_one [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_track_multi [32mPASSED[0m[36m [ 4%][0m tests/elements/filter.py::test_filter_track_multi_exclude [32mPASSED[0m[36m [ 4%][0m tests/examples/autotools.py::test_autotools_build [32mPASSED[0m[36m [ 4%][0m tests/examples/autotools.py::test_autotools_run [32mPASSED[0m[36m [ 4%][0m tests/examples/developing.py::test_autotools_build [32mPASSED[0m[36m [ 4%][0m tests/examples/developing.py::test_run_unmodified_hello [32mPASSED[0m[36m [ 4%][0m tests/examples/developing.py::test_open_workspace [32mPASSED[0m[36m [ 4%][0m tests/examples/developing.py::test_make_change_in_workspace [32mPASSED[0m[36m [ 5%][0m tests/examples/first-project.py::test_first_project_build_checkout [32mPASSED[0m[36m [ 5%][0m tests/examples/flatpak-autotools.py::test_autotools_build [32mPASSED[0m[36m [ 5%][0m tests/examples/flatpak-autotools.py::test_autotools_run [32mPASSED[0m[36m [ 5%][0m tests/examples/integration-commands.py::test_integration_commands_build [32mPASSED[0m[36m [ 5%][0m tests/examples/integration-commands.py::test_integration_commands_run [32mPASSED[0m[36m [ 5%][0m tests/examples/junctions.py::test_build [32mPASSED[0m[36m [ 5%][0m tests/examples/junctions.py::test_shell_call_hello [32mPASSED[0m[36m [ 5%][0m tests/examples/junctions.py::test_open_cross_junction_workspace [32mPASSED[0m[36m [ 5%][0m tests/examples/running-commands.py::test_running_commands_build [32mPASSED[0m[36m [ 5%][0m tests/examples/running-commands.py::test_running_commands_run [32mPASSED[0m[36m [ 5%][0m tests/format/assertion.py::test_assertion_cli[raw-assertion.bst-False-False-Raw assertion boogey] [32mPASSED[0m[36m [ 5%][0m tests/format/assertion.py::test_assertion_cli[conditional-assertion.bst-True-False-It's not pony time yet] [32mPASSED[0m[36m [ 5%][0m tests/format/assertion.py::test_assertion_cli[ordered-assertion.bst-True-True-It's not horsy time yet] [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_two_files [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_shared_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_dependency_dict [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_invalid_dependency_declaration [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_invalid_dependency_type [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_circular_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_build_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_runtime_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_all_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_list_build_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_list_runtime_dependency [32mPASSED[0m[36m [ 6%][0m tests/format/dependencies.py::test_list_dependencies_combined [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_list_overlap [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_scope_all [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_scope_run [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_scope_build [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_scope_build_of_child [32mPASSED[0m[36m [ 7%][0m tests/format/dependencies.py::test_no_recurse [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_include_junction_file [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_include_junction_options [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_junction_element_partial_project_project [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_junction_element_not_partial_project_file [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_include_element_overrides [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_include_element_overrides_composition [32mPASSED[0m[36m [ 7%][0m tests/format/include.py::test_include_element_overrides_sub_include [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_junction_do_not_use_included_overrides [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_conditional_in_fragment [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_inner [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_recusive_include [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_local_to_junction [32mPASSED[0m[36m [ 8%][0m tests/format/include.py::test_include_project_file [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_main_has_prority [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_include_cannot_append [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_main_can_append [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_sibling_cannot_append_backward [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_sibling_can_append_forward [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_lastest_sibling_has_priority [32mPASSED[0m[36m [ 8%][0m tests/format/include_composition.py::test_main_keeps_keys [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_simple_pipeline [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_simple_build [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_build_of_same_junction_used_twice [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_nested_simple [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_nested_double [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_nested_conflict [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_missing_junction [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_missing_subproject_element [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_invalid_with_deps [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_invalid_junction_dep [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_options_default [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_options [32mPASSED[0m[36m [ 9%][0m tests/format/junctions.py::test_options_inherit [32mPASSED[0m[36m [ 10%][0m tests/format/junctions.py::test_git_show [32mPASSED[0m[36m [ 10%][0m tests/format/junctions.py::test_git_build [32mPASSED[0m[36m [ 10%][0m tests/format/junctions.py::test_cross_junction_names [32mPASSED[0m[36m [ 10%][0m tests/format/junctions.py::test_build_git_cross_junction_names [32mPASSED[0m[36m [ 10%][0m tests/format/listdirectiveerrors.py::test_element_error[variables.bst] [32mPASSED[0m[36m [ 10%][0m tests/format/listdirectiveerrors.py::test_element_error[environment.bst] [32mPASSED[0m[36m [ 10%][0m tests/format/listdirectiveerrors.py::test_element_error[config.bst] [32mPASSED[0m[36m [ 10%][0m tests/format/listdirectiveerrors.py::test_element_error[public.bst] [32mPASSED[0m[36m [ 10%][0m tests/format/listdirectiveerrors.py::test_project_error [32mPASSED[0m[36m [ 10%][0m tests/format/optionarch.py::test_conditional[arm-aarch32-Army] [32mPASSED[0m[36m [ 10%][0m tests/format/optionarch.py::test_conditional[arm-aarch64-Aarchy] [32mPASSED[0m[36m [ 10%][0m tests/format/optionarch.py::test_conditional[arm-None-Army] [32mPASSED[0m[36m [ 10%][0m tests/format/optionarch.py::test_conditional[aarch64-None-Aarchy] [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_conditional[i386-aarch32-Army] [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_conditional[x86_64-aarch64-Aarchy] [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_unsupported_arch [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_alias [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_unknown_host_arch [32mPASSED[0m[36m [ 11%][0m tests/format/optionarch.py::test_unknown_project_arch [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element.bst-True-a pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element.bst-true-a pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element.bst-False-not pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element.bst-false-not pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element-not.bst-False-not pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element-not.bst-True-a pony] [32mPASSED[0m[36m [ 11%][0m tests/format/optionbool.py::test_conditional_cli[element-equals.bst-False-not pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_conditional_cli[element-equals.bst-True-a pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_conditional_cli[element-not-equals.bst-False-not pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_conditional_cli[element-not-equals.bst-True-a pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_conditional_config[element.bst-True-a pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_conditional_config[element.bst-False-not pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_cli[falsey] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_cli[pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_cli[trUE] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_config[pony] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_config[config_option1] [32mPASSED[0m[36m [ 12%][0m tests/format/optionbool.py::test_invalid_value_config[config_option2] [32mPASSED[0m[36m [ 12%][0m tests/format/optioneltmask.py::test_conditional_cli[pony.bst-pony.bst-True] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_conditional_cli[horsy.bst-pony.bst, horsy.bst-True] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_conditional_cli[zebry.bst-pony.bst, horsy.bst-False] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_conditional_config[pony.bst-value0-True] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_conditional_config[horsy.bst-value1-True] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_conditional_config[zebry.bst-value2-False] [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_invalid_declaration [32mPASSED[0m[36m [ 13%][0m tests/format/optioneltmask.py::test_invalid_value [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element.bst-brother-pony-a pony] [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element.bst-brother-zebry-a zebry] [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element.bst-brother-horsy-a horsy] [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element-compare.bst-brother-horsy-different] [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element-compare.bst-brother-zebry-same] [32mPASSED[0m[36m [ 13%][0m tests/format/optionenum.py::test_conditional_cli[element-compare.bst-sister-pony-same] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element.bst-brother-pony-a pony] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element.bst-brother-zebry-a zebry] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element.bst-brother-horsy-a horsy] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element-compare.bst-brother-horsy-different] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element-compare.bst-brother-zebry-same] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_conditional_config[element-compare.bst-sister-pony-same] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_invalid_value_cli [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_invalid_value_config[giraffy] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_invalid_value_config[config_option1] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_invalid_value_config[config_option2] [32mPASSED[0m[36m [ 14%][0m tests/format/optionenum.py::test_missing_values [32mPASSED[0m[36m [ 14%][0m tests/format/optionexports.py::test_export[bool_export-False-exported-bool-0] [32mPASSED[0m[36m [ 14%][0m tests/format/optionexports.py::test_export[bool_export-True-exported-bool-1] [32mPASSED[0m[36m [ 15%][0m tests/format/optionexports.py::test_export[enum_export-pony-exported-enum-pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionexports.py::test_export[enum_export-horsy-exported-enum-horsy] [32mPASSED[0m[36m [ 15%][0m tests/format/optionexports.py::test_export[flags_export-pony-exported-flags-pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionexports.py::test_export[flags_export-pony, horsy-exported-flags-horsy,pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element.bst-farm-pony-a pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element.bst-farm-zebry-a zebry] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element.bst-farm-pony, horsy-a pony and a horsy] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element.bst-farm-zebry,horsy , pony-all the animals] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element-in.bst-farm-zebry, horsy, pony-a zebry] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element-in.bst-farm-zebry, horsy-no pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_cli[element-in.bst-farm-zebry, pony-no horsy] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_config[element.bst-farm-value0-a pony] [32mPASSED[0m[36m [ 15%][0m tests/format/optionflags.py::test_conditional_config[element.bst-farm-value1-a zebry] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_conditional_config[element.bst-farm-value2-a pony and a horsy] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_conditional_config[element.bst-farm-value3-all the animals] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_invalid_value_cli[giraffy] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_invalid_value_cli[horsy pony] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_invalid_value_config[pony] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_invalid_value_config[config_option1] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_invalid_value_config[config_option2] [32mPASSED[0m[36m [ 16%][0m tests/format/optionflags.py::test_missing_values [32mPASSED[0m[36m [ 16%][0m tests/format/optionos.py::test_conditionals[Darwin-Linux-Linuxy] [32mPASSED[0m[36m [ 16%][0m tests/format/optionos.py::test_conditionals[SunOS-FreeBSD-FreeBSDy] [32mPASSED[0m[36m [ 16%][0m tests/format/optionos.py::test_conditionals[Linux-None-Linuxy] [32mPASSED[0m[36m [ 16%][0m tests/format/optionos.py::test_conditionals[Darwin-None-Darwiny] [32mPASSED[0m[36m [ 16%][0m tests/format/optionos.py::test_conditionals[AIX-Linux-Linuxy] [32mPASSED[0m[36m [ 17%][0m tests/format/optionos.py::test_conditionals[HaikuOS-SunOS-SunOSy] [32mPASSED[0m[36m [ 17%][0m tests/format/optionos.py::test_unsupported_arch [32mPASSED[0m[36m [ 17%][0m tests/format/optionoverrides.py::test_override[i686] [32mPASSED[0m[36m [ 17%][0m tests/format/optionoverrides.py::test_override[x86_64] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_name[invalid-name-spaces] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_name[invalid-name-dashes] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_name[invalid-name-plus] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_name[invalid-name-leading-number] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_variable_name[invalid-variable-name-spaces] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_variable_name[invalid-variable-name-plus] [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_type [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_cli [32mPASSED[0m[36m [ 17%][0m tests/format/options.py::test_invalid_option_config [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_invalid_expression [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_undefined [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_invalid_condition [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_simple_conditional[False-/usr] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_simple_conditional[True-/opt] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_nested_conditional[False-False-False] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_nested_conditional[True-False-False] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_nested_conditional[False-True-False] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_nested_conditional[True-True-True] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_compound_and_conditional[False-False-False] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_compound_and_conditional[True-False-False] [32mPASSED[0m[36m [ 18%][0m tests/format/options.py::test_compound_and_conditional[False-True-False] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_compound_and_conditional[True-True-True] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_compound_or_conditional[False-False-False] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_compound_or_conditional[True-False-True] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_compound_or_conditional[False-True-True] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_compound_or_conditional[True-True-True] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_deep_nesting_level1[False-horsy] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_deep_nesting_level1[True-pony] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_deep_nesting_level2[False-horsy] [32mPASSED[0m[36m [ 19%][0m tests/format/options.py::test_deep_nesting_level2[True-pony] [32mPASSED[0m[36m [ 19%][0m tests/format/project.py::test_missing_project_conf [32mPASSED[0m[36m [ 19%][0m tests/format/project.py::test_missing_project_name [32mPASSED[0m[36m [ 19%][0m tests/format/project.py::test_empty_project_name [32mPASSED[0m[36m [ 19%][0m tests/format/project.py::test_invalid_project_name [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_invalid_yaml [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_load_default_project [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_load_project_from_subdir [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_override_project_path [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_project_unsupported [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_missing_element_path_directory [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_element_path_not_a_directory [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_missing_local_plugin_directory [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_local_plugin_not_directory [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_plugin_load_allowed [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_plugin_load_forbidden [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_plugin_no_load_ref[inline] [32mPASSED[0m[36m [ 20%][0m tests/format/project.py::test_plugin_no_load_ref[project.refs] [32mPASSED[0m[36m [ 21%][0m tests/format/project.py::test_plugin_preflight_error [32mPASSED[0m[36m [ 21%][0m tests/format/project.py::test_duplicate_plugins [32mPASSED[0m[36m [ 21%][0m tests/format/project.py::test_project_refs_options [32mPASSED[0m[36m [ 21%][0m tests/format/project.py::test_element_path_project_path_contains_symlinks [32mPASSED[0m[36m [ 21%][0m tests/format/project.py::test_empty_depends [32mPASSED[0m[36m [ 21%][0m tests/format/projectoverrides.py::test_prepend_configure_commands [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[autotools.bst-make-install-make -j1 DESTDIR="/buildstream-install" install] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[cmake.bst-cmake-cmake -B_builddir -H"." -G"Unix Makefiles" -DCMAKE_INSTALL_PREFIX:PATH="/usr" \\\n-DCMAKE_INSTALL_LIBDIR:PATH="lib" ] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[distutils.bst-python-install-python3 ./setup.py install --prefix "/usr" \\\n--root "/buildstream-install"] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[makemaker.bst-configure-perl Makefile.PL PREFIX=/buildstream-install/usr] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[modulebuild.bst-configure-perl Build.PL --prefix "/buildstream-install/usr"] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_defaults[qmake.bst-make-install-make -j1 INSTALL_ROOT="/buildstream-install" install] [32mPASSED[0m[36m [ 21%][0m tests/format/variables.py::test_overrides[autotools.bst-make-install-make -j1 DESTDIR="/custom/install/root" install] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_overrides[cmake.bst-cmake-cmake -B_builddir -H"." -G"Ninja" -DCMAKE_INSTALL_PREFIX:PATH="/opt" \\\n-DCMAKE_INSTALL_LIBDIR:PATH="lib" ] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_overrides[distutils.bst-python-install-python3 ./setup.py install --prefix "/opt" \\\n--root "/custom/install/root"] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_overrides[makemaker.bst-configure-perl Makefile.PL PREFIX=/custom/install/root/opt] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_overrides[modulebuild.bst-configure-perl Build.PL --prefix "/custom/install/root/opt"] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_overrides[qmake.bst-make-install-make -j1 INSTALL_ROOT="/custom/install/root" install] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_missing_variable [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_cyclic_variables [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_project_conf[project-name] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_project_conf[element-name] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_project_conf[max-jobs] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_element_overrides[project-name] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_element_overrides[element-name] [32mPASSED[0m[36m [ 22%][0m tests/format/variables.py::test_use_of_protected_var_element_overrides[max-jobs] [32mPASSED[0m[36m [ 23%][0m tests/format/variables.py::test_use_of_protected_var_in_element[project-name] [32mPASSED[0m[36m [ 23%][0m tests/format/variables.py::test_use_of_protected_var_in_element[element-name] [32mPASSED[0m[36m [ 23%][0m tests/format/variables.py::test_use_of_protected_var_in_element[max-jobs] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout[strict-copies] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout[strict-hardlinks] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout[non-strict-copies] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout[non-strict-hardlinks] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_invalid_suffix[non-strict-hardlinks] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_invalid_suffix_dep[non-strict-hardlinks] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_invalid_filename_chars [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_invalid_filename_chars_dep [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout_deps[run] [32mPASSED[0m[36m [ 23%][0m tests/frontend/buildcheckout.py::test_build_checkout_deps[none] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_deps[build] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_unbuilt [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_tarball [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_tarball_stdout [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_tarball_is_deterministic [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_nonempty[copies] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_nonempty[hardlinks] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_force[copies] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_force[hardlinks] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_build_checkout_force_tarball [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[strict-git] [32mPASSED[0m[36m [ 24%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[strict-bzr] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[strict-ostree] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[strict-tar] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[strict-zip] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[non-strict-git] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[non-strict-bzr] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[non-strict-ostree] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[non-strict-tar] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_fetch_build_checkout[non-strict-zip] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_install_to_build [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_inconsistent_junction[inline] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_inconsistent_junction[project.refs] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_unfetched_junction[inline] [32mPASSED[0m[36m [ 25%][0m tests/frontend/buildcheckout.py::test_unfetched_junction[project.refs] [32mPASSED[0m[36m [ 26%][0m tests/frontend/buildcheckout.py::test_build_checkout_junction [32mPASSED[0m[36m [ 26%][0m tests/frontend/buildcheckout.py::test_build_checkout_workspaced_junction [32mPASSED[0m[36m [ 26%][0m tests/frontend/buildcheckout.py::test_build_checkout_cross_junction [32mPASSED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets0-exceptions0-tracked0-inline] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets0-exceptions0-tracked0-project.refs] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets1-exceptions1-tracked1-inline] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets1-exceptions1-tracked1-project.refs] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets2-exceptions2-tracked2-inline] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets2-exceptions2-tracked2-project.refs] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets3-exceptions3-tracked3-inline] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets3-exceptions3-tracked3-project.refs] [31mFAILED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets4-exceptions4-tracked4-inline] [32mPASSED[0m[36m [ 26%][0m tests/frontend/buildtrack.py::test_build_track[track_targets4-exceptions4-tracked4-project.refs] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets5-exceptions5-tracked5-inline] [31mFAILED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets5-exceptions5-tracked5-project.refs] [31mFAILED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets6-exceptions6-tracked6-inline] [31mFAILED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets6-exceptions6-tracked6-project.refs] [31mFAILED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets7-exceptions7-tracked7-inline] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets7-exceptions7-tracked7-project.refs] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets8-exceptions8-tracked8-inline] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track[track_targets8-exceptions8-tracked8-project.refs] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets0-exceptions0-tracked0] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets1-exceptions1-tracked1] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets2-exceptions2-tracked2] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets3-exceptions3-tracked3] [32mPASSED[0m[36m [ 27%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets4-exceptions4-tracked4] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets5-exceptions5-tracked5] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets6-exceptions6-tracked6] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets7-exceptions7-tracked7] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_update[track_targets8-exceptions8-tracked8] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_inconsistent[track_targets0-exceptions0] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_inconsistent[track_targets1-exceptions1] [32mPASSED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_track_first[--strict] [31mFAILED[0m[36m [ 28%][0m tests/frontend/buildtrack.py::test_build_track_track_first[--no-strict] [31mFAILED[0m[36m [ 28%][0m tests/frontend/completions.py::test_commands[bst-0-expected0] [32mPASSED[0m[36m [ 28%][0m tests/frontend/completions.py::test_commands[bst -1-expected1] [32mPASSED[0m[36m [ 28%][0m tests/frontend/completions.py::test_commands[bst pu-1-expected2] [32mPASSED[0m[36m [ 28%][0m tests/frontend/completions.py::test_commands[bst pul-1-expected3] [32mPASSED[0m[36m [ 28%][0m tests/frontend/completions.py::test_commands[bst source -2-expected4] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_commands[bst w -1-expected5] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_commands[bst workspace -2-expected6] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_options[bst --1-expected0] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_options[bst --l-1-expected1] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_options[bst --no-colors build --3-expected2] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_options[bst --fetchers -2-expected3] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_options[bst --no-colors -2-expected4] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst --on-error -2-expected0] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst show --deps -3-expected1] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst show --deps=-2-expected2] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst show --deps b-3-expected3] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst show --deps=b-2-expected4] [32mPASSED[0m[36m [ 29%][0m tests/frontend/completions.py::test_option_choice[bst show --deps r-3-expected5] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_choice[bst track --deps -3-expected6] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config -2-expected0-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --log-file -2-expected1-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config f-2-expected2-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --log-file f-2-expected3-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config files-2-expected4-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --log-file files-2-expected5-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config files/-2-expected6-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --log-file elements/-2-expected7-None] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config ../-2-expected8-files] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config ../elements/-2-expected9-files] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config ../nofile-2-expected10-files] [32mPASSED[0m[36m [ 30%][0m tests/frontend/completions.py::test_option_file[bst --config /pony/rainbow/nobodyhas/this/file-2-expected11-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_option_directory[bst --directory -2-expected0-None] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_option_directory[bst --directory elements/-2-expected1-None] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_option_directory[bst --directory -2-expected2-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_option_directory[bst --directory ../-2-expected3-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst show -2-expected0-None] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst build com-2-expected1-None] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst show -2-expected2-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst build com-2-expected3-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst --directory ../ show -4-expected4-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst --directory ../ build com-4-expected5-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst --directory ../ checkout t -4-expected6-files] [32mPASSED[0m[36m [ 31%][0m tests/frontend/completions.py::test_argument_element[project-bst --directory ../ checkout target.bst -5-expected7-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst show -2-expected8-None] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst build com-2-expected9-None] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst show -2-expected10-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst build com-2-expected11-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ show -4-expected12-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ show f-4-expected13-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ show files/-4-expected14-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ build com-4-expected15-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ checkout t -4-expected16-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[no-element-path-bst --directory ../ checkout target.bst -5-expected17-files] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[sub-folders-bst show base-2-expected18-None] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element[sub-folders-bst show base/-2-expected19-None] [32mPASSED[0m[36m [ 32%][0m tests/frontend/completions.py::test_argument_element_invalid[project-bst --directory ../ show -4-expected0-files] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst he-1-expected0] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help -2-expected1] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help in-2-expected2] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help p-2-expected3] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help p-2-expected4] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help source -3-expected5] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help w-2-expected6] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_help_commands[bst help workspace -3-expected7] [32mPASSED[0m[36m [ 33%][0m tests/frontend/completions.py::test_argument_artifact [32mPASSED[0m[36m [ 33%][0m tests/frontend/compose_splits.py::test_compose_splits[compose-include-bin.bst] [32mPASSED[0m[36m [ 33%][0m tests/frontend/compose_splits.py::test_compose_splits[compose-exclude-dev.bst] [32mPASSED[0m[36m [ 33%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[corewarn.bst-fatal_warnings0-True-ErrorDomain.STREAM] [32mPASSED[0m[36m [ 33%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warninga.bst-fatal_warnings1-True-ErrorDomain.STREAM] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warningb.bst-fatal_warnings2-True-ErrorDomain.STREAM] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[corewarn.bst-fatal_warnings3-False-None] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warninga.bst-fatal_warnings4-False-None] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warningb.bst-fatal_warnings5-False-None] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warninga.bst-fatal_warnings6-False-None] [32mPASSED[0m[36m [ 34%][0m tests/frontend/configurable_warnings.py::test_fatal_warnings[warningb.bst-fatal_warnings7-False-None] [32mPASSED[0m[36m [ 34%][0m tests/frontend/cross_junction_workspace.py::test_open_cross_junction [32mPASSED[0m[36m [ 34%][0m tests/frontend/cross_junction_workspace.py::test_list_cross_junction [32mPASSED[0m[36m [ 34%][0m tests/frontend/cross_junction_workspace.py::test_close_cross_junction [32mPASSED[0m[36m [ 34%][0m tests/frontend/cross_junction_workspace.py::test_close_all_cross_junction [32mPASSED[0m[36m [ 34%][0m tests/frontend/cross_junction_workspace.py::test_subdir_command_cross_junction [32mPASSED[0m[36m [ 34%][0m tests/frontend/fetch.py::test_fetch[git] [32mPASSED[0m[36m [ 34%][0m tests/frontend/fetch.py::test_fetch[bzr] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch[ostree] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch[tar] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch[zip] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_consistency_error [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_consistency_bug [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_unfetched_junction[inline] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_unfetched_junction[project.refs] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_inconsistent_junction[inline] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_inconsistent_junction[project.refs] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_cross_junction[git-inline] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_cross_junction[git-project.refs] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_cross_junction[bzr-inline] [32mPASSED[0m[36m [ 35%][0m tests/frontend/fetch.py::test_fetch_cross_junction[bzr-project.refs] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[ostree-inline] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[ostree-project.refs] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[tar-inline] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[tar-project.refs] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[zip-inline] [32mPASSED[0m[36m [ 36%][0m tests/frontend/fetch.py::test_fetch_cross_junction[zip-project.refs] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help_main [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[build] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[checkout] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[pull] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[push] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[shell] [32mPASSED[0m[36m [ 36%][0m tests/frontend/help.py::test_help[show] [32mPASSED[0m[36m [ 37%][0m tests/frontend/help.py::test_help[source] [32mPASSED[0m[36m [ 37%][0m tests/frontend/help.py::test_help[workspace] [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_defaults [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_all_options [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_no_project_name [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_project_exists [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_force_overwrite_project [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_bad_project_name[Micheal Jackson] [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_bad_project_name[one+one] [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_bad_format_version[-1] [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_bad_format_version[21] [32mPASSED[0m[36m [ 37%][0m tests/frontend/init.py::test_bad_element_path[/absolute/path] [32mPASSED[0m[36m [ 38%][0m tests/frontend/init.py::test_bad_element_path[../outside/of/project] [32mPASSED[0m[36m [ 38%][0m tests/frontend/init.py::test_element_path_interactive[foo] [32mPASSED[0m[36m [ 38%][0m tests/frontend/init.py::test_element_path_interactive[foo/bar] [32mPASSED[0m[36m [ 38%][0m tests/frontend/logging.py::test_default_logging [32mPASSED[0m[36m [ 38%][0m tests/frontend/logging.py::test_custom_logging [32mPASSED[0m[36m [ 38%][0m tests/frontend/logging.py::test_failed_build_listing [32mPASSED[0m[36m [ 38%][0m tests/frontend/main.py::test_prefix_choice_value_proc_full_match [32mPASSED[0m[36m [ 38%][0m tests/frontend/main.py::test_prefix_choice_value_proc_prefix_match [32mPASSED[0m[36m [ 38%][0m tests/frontend/main.py::test_prefix_choice_value_proc_ambigous_match [32mPASSED[0m[36m [ 38%][0m tests/frontend/main.py::test_prefix_choice_value_proc_value_not_in_choices [32mPASSED[0m[36m [ 38%][0m tests/frontend/mirror.py::test_mirror_fetch[git] [32mPASSED[0m[36m [ 38%][0m tests/frontend/mirror.py::test_mirror_fetch[bzr] [32mPASSED[0m[36m [ 38%][0m tests/frontend/mirror.py::test_mirror_fetch[ostree] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch[tar] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch[zip] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[no-mirror-inline] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[no-mirror-project.refs] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[mirror-inline] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[mirror-project.refs] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[unrelated-mirror-inline] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_ref_storage[unrelated-mirror-project.refs] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_upstream_absent[git] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_upstream_absent[bzr] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_upstream_absent[ostree] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_upstream_absent[tar] [32mPASSED[0m[36m [ 39%][0m tests/frontend/mirror.py::test_mirror_fetch_upstream_absent[zip] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_fetch_multi [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_fetch_default_cmdline [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_fetch_default_userconfig [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_fetch_default_cmdline_overrides_config [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_present[git] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_present[bzr] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_present[ostree] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_present[tar] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_present[zip] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_absent[git] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_absent[bzr] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_absent[ostree] [32mPASSED[0m[36m [ 40%][0m tests/frontend/mirror.py::test_mirror_track_upstream_absent[tar] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_track_upstream_absent[zip] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_from_includes[git] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_from_includes[bzr] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_from_includes[ostree] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_from_includes[tar] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_from_includes[zip] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_junction_from_includes[git] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_junction_from_includes[bzr] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_junction_from_includes[ostree] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_junction_from_includes[tar] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_junction_from_includes[zip] [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_git_submodule_fetch [32mPASSED[0m[36m [ 41%][0m tests/frontend/mirror.py::test_mirror_fallback_git_only_submodules [32mPASSED[0m[36m [ 42%][0m tests/frontend/mirror.py::test_mirror_fallback_git_with_submodules [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[show-3.bst-template0-expected0] [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[show-target.bst-template1-expected1] [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[fetch-3.bst-template0-expected0] [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[fetch-target.bst-template1-expected1] [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[build-3.bst-template0-expected0] [32mPASSED[0m[36m [ 42%][0m tests/frontend/order.py::test_order[build-target.bst-template1-expected1] [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps[True] [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps[False] [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps_error[True] [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps_error[False] [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps_whitelist [32mPASSED[0m[36m [ 42%][0m tests/frontend/overlaps.py::test_overlaps_whitelist_ignored [32mPASSED[0m[36m [ 43%][0m tests/frontend/overlaps.py::test_overlaps_whitelist_on_overlapper [32mPASSED[0m[36m [ 43%][0m tests/frontend/overlaps.py::test_overlaps_script[True] [32mPASSED[0m[36m [ 43%][0m tests/frontend/overlaps.py::test_overlaps_script[False] [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_push_pull_all [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_pull_secondary_cache [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_push_pull_specific_remote [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_push_pull_non_strict [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_push_pull_track_non_strict [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_push_pull_cross_junction [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_pull_missing_blob [32mPASSED[0m[36m [ 43%][0m tests/frontend/pull.py::test_pull_missing_notifies_user [32mPASSED[0m[36m [ 43%][0m tests/frontend/push.py::test_push [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_push_all [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_push_after_pull [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_artifact_expires [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_artifact_too_large [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_recently_pulled_artifact_does_not_expire [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_push_cross_junction [32mPASSED[0m[36m [ 44%][0m tests/frontend/push.py::test_push_already_cached [32mPASSED[0m[36m [ 44%][0m tests/frontend/rebuild.py::test_rebuild[strict] [32mPASSED[0m[36m [ 44%][0m tests/frontend/rebuild.py::test_rebuild[non-strict] [32mPASSED[0m[36m [ 44%][0m tests/frontend/show.py::test_show[import-bin.bst-%{name}-import-bin.bst] [32mPASSED[0m[36m [ 44%][0m tests/frontend/show.py::test_show[import-bin.bst-%{state}-buildable] [32mPASSED[0m[36m [ 44%][0m tests/frontend/show.py::test_show[compose-all.bst-%{state}-waiting] [32mPASSED[0m[36m [ 44%][0m tests/frontend/show.py::test_show_invalid_element_path [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except_simple[target.bst-import-bin.bst-expected0] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except_simple[target.bst-import-dev.bst-expected1] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except_simple[target.bst-compose-all.bst-expected2] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except_simple[compose-all.bst-import-bin.bst-expected3] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets0-None-expected0] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets1-exceptions1-expected1] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets2-exceptions2-expected2] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets3-exceptions3-expected3] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets4-exceptions4-expected4] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_show_except[targets5-exceptions5-expected5] [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_parallel_order [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_target_is_dependency [32mPASSED[0m[36m [ 45%][0m tests/frontend/show.py::test_unfetched_junction[junction-dep.bst-inline] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_unfetched_junction[junction-dep.bst-project.refs] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_unfetched_junction[junction.bst:import-etc.bst-inline] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_unfetched_junction[junction.bst:import-etc.bst-project.refs] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_inconsistent_junction[junction-dep.bst-inline] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_inconsistent_junction[junction-dep.bst-project.refs] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_inconsistent_junction[junction.bst:import-etc.bst-inline] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_inconsistent_junction[junction.bst:import-etc.bst-project.refs] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_fetched_junction[junction-dep.bst] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_fetched_junction[junction.bst:import-etc.bst] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_exceed_max_recursion_depth[100] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_exceed_max_recursion_depth[500] [32mPASSED[0m[36m [ 46%][0m tests/frontend/show.py::test_exceed_max_recursion_depth[1200] [32mPASSED[0m[36m [ 46%][0m tests/frontend/source_checkout.py::test_source_checkout[workspace-guess] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout[workspace-no-guess] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout[no-workspace-no-guess] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_force[--force] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_force[-f] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_tar [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_deps[build] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_deps[none] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_deps[run] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_deps[all] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_except [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_fetch[False] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_fetch[True] [32mPASSED[0m[36m [ 47%][0m tests/frontend/source_checkout.py::test_source_checkout_build_scripts [32mPASSED[0m[36m [ 48%][0m tests/frontend/source_checkout.py::test_source_checkout_tar_buildscripts [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[git-inline] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[git-project.refs] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[bzr-inline] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[bzr-project.refs] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[ostree-inline] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[ostree-project.refs] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[tar-inline] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[tar-project.refs] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[zip-inline] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track[zip-project.refs] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track_recurse[git] [32mPASSED[0m[36m [ 48%][0m tests/frontend/track.py::test_track_recurse[bzr] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse[ostree] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse[tar] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse[zip] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_single [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse_except[git] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse_except[bzr] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse_except[ostree] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse_except[tar] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_recurse_except[zip] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_optional[inline] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_optional[project-refs] [32mPASSED[0m[36m [ 49%][0m tests/frontend/track.py::test_track_cross_junction[inline-cross] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_track_cross_junction[inline-nocross] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_track_cross_junction[project.refs-cross] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_track_cross_junction[project.refs-nocross] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_track_consistency_error [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_track_consistency_bug [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_inconsistent_junction[inline] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_inconsistent_junction[project.refs] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_junction_element[inline] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_junction_element[project.refs] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_cross_junction[git-inline] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_cross_junction[git-project.refs] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_cross_junction[bzr-inline] [32mPASSED[0m[36m [ 50%][0m tests/frontend/track.py::test_cross_junction[bzr-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[ostree-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[ostree-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[tar-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[tar-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[zip-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_cross_junction[zip-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[git-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[git-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[bzr-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[bzr-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[ostree-inline] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[ostree-project.refs] [32mPASSED[0m[36m [ 51%][0m tests/frontend/track.py::test_track_include[tar-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include[tar-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include[zip-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include[zip-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[git-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[git-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[bzr-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[bzr-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[ostree-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[ostree-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[tar-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[tar-project.refs] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[zip-inline] [32mPASSED[0m[36m [ 52%][0m tests/frontend/track.py::test_track_include_junction[zip-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[git-inline] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[git-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[bzr-inline] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[bzr-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[ostree-inline] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[ostree-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[tar-inline] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[tar-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[zip-inline] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_junction_included[zip-project.refs] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_error_cannot_write_file[git] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_error_cannot_write_file[bzr] [32mPASSED[0m[36m [ 53%][0m tests/frontend/track.py::test_track_error_cannot_write_file[ostree] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track.py::test_track_error_cannot_write_file[tar] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track.py::test_track_error_cannot_write_file[zip] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_cross_junction_multiple_projects[git] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_cross_junction_multiple_projects[bzr] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_cross_junction_multiple_projects[ostree] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_cross_junction_multiple_projects[tar] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_cross_junction_multiple_projects[zip] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_track_exceptions[git] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_track_exceptions[bzr] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_track_exceptions[ostree] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_track_exceptions[tar] [32mPASSED[0m[36m [ 54%][0m tests/frontend/track_cross_junction.py::test_track_exceptions[zip] [32mPASSED[0m[36m [ 54%][0m tests/frontend/version.py::test_version [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open[git] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open[bzr] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open[ostree] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open[tar] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open[zip] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_bzr_customize [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_multi [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_multi_unwritable [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_multi_with_directory [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_defaultlocation [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_defaultlocation_exists [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_track[git] [32mPASSED[0m[36m [ 55%][0m tests/frontend/workspace.py::test_open_track[bzr] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_track[ostree] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_track[tar] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_track[zip] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force[git] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force[bzr] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force[ostree] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force[tar] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force[zip] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force_open[git] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force_open[bzr] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force_open[ostree] [32mPASSED[0m[36m [ 56%][0m tests/frontend/workspace.py::test_open_force_open[tar] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_open[zip] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_different_workspace[git] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_different_workspace[bzr] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_different_workspace[ostree] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_different_workspace[tar] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_open_force_different_workspace[zip] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close[git] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close[bzr] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close[ostree] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close[tar] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close[zip] [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close_external_after_move_project [32mPASSED[0m[36m [ 57%][0m tests/frontend/workspace.py::test_close_internal_after_move_project [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_close_removed [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_close_nonexistant_element [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_close_multiple [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_close_all [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_reset [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_reset_multiple [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_reset_all [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_list [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_build[project-no-guess-strict-git] [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_build[project-no-guess-strict-bzr] [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_build[project-no-guess-strict-ostree] [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_build[project-no-guess-strict-tar] [32mPASSED[0m[36m [ 58%][0m tests/frontend/workspace.py::test_build[project-no-guess-strict-zip] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[project-no-guess-non-strict-git] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[project-no-guess-non-strict-bzr] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[project-no-guess-non-strict-ostree] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[project-no-guess-non-strict-tar] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[project-no-guess-non-strict-zip] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-strict-git] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-strict-bzr] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-strict-ostree] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-strict-tar] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-strict-zip] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-non-strict-git] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-non-strict-bzr] [32mPASSED[0m[36m [ 59%][0m tests/frontend/workspace.py::test_build[workspace-guess-non-strict-ostree] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-guess-non-strict-tar] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-guess-non-strict-zip] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-strict-git] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-strict-bzr] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-strict-ostree] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-strict-tar] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-strict-zip] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-non-strict-git] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-non-strict-bzr] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-non-strict-ostree] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-non-strict-tar] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_build[workspace-no-guess-non-strict-zip] [32mPASSED[0m[36m [ 60%][0m tests/frontend/workspace.py::test_buildable_no_ref [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[strict-addfile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[strict-removefile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[strict-modifyfile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[non-strict-addfile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[non-strict-removefile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_detect_modifications[non-strict-modifyfile] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_unsupported_workspace[workspace_cfg0] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_unsupported_workspace[workspace_cfg1] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_unsupported_workspace[workspace_cfg2] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_unsupported_workspace[workspace_cfg3] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_supported_workspace[workspace_cfg0-expected0] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_supported_workspace[workspace_cfg1-expected1] [32mPASSED[0m[36m [ 61%][0m tests/frontend/workspace.py::test_list_supported_workspace[workspace_cfg2-expected2] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_list_supported_workspace[workspace_cfg3-expected3] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_list_supported_workspace[workspace_cfg4-expected4] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_inconsitent_pipeline_message[git] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_inconsitent_pipeline_message[bzr] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_inconsitent_pipeline_message[ostree] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_inconsitent_pipeline_message[tar] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_inconsitent_pipeline_message[zip] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_cache_key_workspace_in_dependencies[strict] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_cache_key_workspace_in_dependencies[non-strict] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_multiple_failed_builds [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_external_fetch[guess-subdir] [32mPASSED[0m[36m [ 62%][0m tests/frontend/workspace.py::test_external_fetch[guess-no-subdir] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_fetch[no-guess-subdir] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_fetch[no-guess-no-subdir] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_push_pull[guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_push_pull[no-guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_track[guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_track[no-guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_open_other [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_close_other [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_close_self[guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_close_self[no-guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_reset_other [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_reset_self[guess] [32mPASSED[0m[36m [ 63%][0m tests/frontend/workspace.py::test_external_reset_self[no-guess] [32mPASSED[0m[36m [ 64%][0m tests/frontend/workspace.py::test_external_list [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[move-no-junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[move-no-junction-project.refs] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[move-junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[move-junction-project.refs] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[no-move-no-junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[no-move-no-junction-project.refs] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[no-move-junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_used[no-move-junction-project.refs] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_changed_file[junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_changed_file[junction-project.refs] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_changed_file[no-junction-inline] [32mPASSED[0m[36m [ 64%][0m tests/frontend/yamlcache.py::test_yamlcache_changed_file[no-junction-project.refs] [32mPASSED[0m[36m [ 65%][0m tests/integration/artifact.py::test_artifact_log [32mPASSED[0m[36m [ 65%][0m tests/integration/autotools.py::test_autotools_build [32mPASSED[0m[36m [ 65%][0m tests/integration/autotools.py::test_autotools_confroot_build [32mPASSED[0m[36m [ 65%][0m tests/integration/autotools.py::test_autotools_run [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_staged [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_staged_forced_true [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_staged_if_available [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_staged_forced_false [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_from_failure [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_pulled [32mPASSED[0m[36m [ 65%][0m tests/integration/build-tree.py::test_buildtree_options [32mPASSED[0m[36m [ 65%][0m tests/integration/build-uid.py::test_build_uid_overridden [32mPASSED[0m[36m [ 65%][0m tests/integration/build-uid.py::test_build_uid_in_project [32mPASSED[0m[36m [ 66%][0m tests/integration/build-uid.py::test_build_uid_default [32mPASSED[0m[36m [ 66%][0m tests/integration/cachedfail.py::test_build_checkout_cached_fail [32mPASSED[0m[36m [ 66%][0m tests/integration/cachedfail.py::test_build_depend_on_cached_fail [32mPASSED[0m[36m [ 66%][0m tests/integration/cachedfail.py::test_push_cached_fail[continue] [32mPASSED[0m[36m [ 66%][0m tests/integration/cachedfail.py::test_push_cached_fail[quit] [32mPASSED[0m[36m [ 66%][0m tests/integration/cachedfail.py::test_host_tools_errors_are_not_cached [32mPASSED[0m[36m [ 66%][0m tests/integration/cmake.py::test_cmake_build [32mPASSED[0m[36m [ 66%][0m tests/integration/cmake.py::test_cmake_confroot_build [32mPASSED[0m[36m [ 66%][0m tests/integration/cmake.py::test_cmake_run [32mPASSED[0m[36m [ 66%][0m tests/integration/compose-symlinks.py::test_compose_symlinks [32mPASSED[0m[36m [ 66%][0m tests/integration/compose.py::test_compose_include[include_domains0-exclude_domains0-expected0] [32mPASSED[0m[36m [ 66%][0m tests/integration/compose.py::test_compose_include[include_domains1-exclude_domains1-expected1] [32mPASSED[0m[36m [ 66%][0m tests/integration/compose.py::test_compose_include[include_domains2-exclude_domains2-expected2] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains3-exclude_domains3-expected3] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains4-exclude_domains4-expected4] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains5-exclude_domains5-expected5] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains6-exclude_domains6-expected6] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains7-exclude_domains7-expected7] [32mPASSED[0m[36m [ 67%][0m tests/integration/compose.py::test_compose_include[include_domains8-exclude_domains8-expected8] [32mPASSED[0m[36m [ 67%][0m tests/integration/import.py::test_import[/-/-files/import-source-expected0] [32mPASSED[0m[36m [ 67%][0m tests/integration/import.py::test_import[/subdir-/-files/import-source-expected1] [32mPASSED[0m[36m [ 67%][0m tests/integration/import.py::test_import[/-/-files/import-source/subdir-expected2] [32mPASSED[0m[36m [ 67%][0m tests/integration/import.py::test_import[/-/output-files/import-source-expected3] [32mPASSED[0m[36m [ 67%][0m tests/integration/make.py::test_make_build [32mPASSED[0m[36m [ 67%][0m tests/integration/make.py::test_make_run [32mPASSED[0m[36m [ 67%][0m tests/integration/manual.py::test_manual_element [32mPASSED[0m[36m [ 68%][0m tests/integration/manual.py::test_manual_element_environment [32mPASSED[0m[36m [ 68%][0m tests/integration/manual.py::test_manual_element_noparallel [32mPASSED[0m[36m [ 68%][0m tests/integration/manual.py::test_manual_element_logging [32mPASSED[0m[36m [ 68%][0m tests/integration/messages.py::test_disable_message_lines [32mPASSED[0m[36m [ 68%][0m tests/integration/messages.py::test_disable_error_lines [32mPASSED[0m[36m [ 68%][0m tests/integration/pip_element.py::test_pip_build [32mPASSED[0m[36m [ 68%][0m tests/integration/pip_element.py::test_pip_run [32mPASSED[0m[36m [ 68%][0m tests/integration/pip_source.py::test_pip_source_import [32mPASSED[0m[36m [ 68%][0m tests/integration/pip_source.py::test_pip_source_build [32mPASSED[0m[36m [ 68%][0m tests/integration/pullbuildtrees.py::test_pullbuildtrees [32mPASSED[0m[36m [ 68%][0m tests/integration/pullbuildtrees.py::test_invalid_cache_pullbuildtrees[True-True] [32mPASSED[0m[36m [ 68%][0m tests/integration/pullbuildtrees.py::test_invalid_cache_pullbuildtrees[False-True] [32mPASSED[0m[36m [ 69%][0m tests/integration/pullbuildtrees.py::test_invalid_cache_pullbuildtrees[pony-False] [32mPASSED[0m[36m [ 69%][0m tests/integration/pullbuildtrees.py::test_invalid_cache_pullbuildtrees[1-False] [32mPASSED[0m[36m [ 69%][0m tests/integration/sandbox-bwrap.py::test_sandbox_bwrap_cleanup_build [32mPASSED[0m[36m [ 69%][0m tests/integration/sandbox-bwrap.py::test_sandbox_bwrap_distinguish_setup_error [33mSKIPPED[0m[36m [ 69%][0m tests/integration/sandbox-bwrap.py::test_sandbox_bwrap_return_subprocess [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_script [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_script_root [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_script_no_root [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_script_cwd [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_script_layout [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_regression_cache_corruption [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_regression_tmpdir [32mPASSED[0m[36m [ 69%][0m tests/integration/script.py::test_regression_cache_corruption_2 [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_shell [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_executable [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign[Horse] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign[Pony] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign_expand_host_environ[Horse] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign_expand_host_environ[Pony] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign_isolated[Horse] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_env_assign_isolated[Pony] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_no_shell [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_host_files[/etc/pony.conf] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_host_files[/usr/share/pony/pony.txt] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_host_files_expand_environ[/etc] [32mPASSED[0m[36m [ 70%][0m tests/integration/shell.py::test_host_files_expand_environ[/usr/share/pony] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_isolated_no_mount[/etc/pony.conf] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_isolated_no_mount[/usr/share/pony/pony.txt] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_host_files_missing[mandatory] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_host_files_missing[optional] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_cli_mount[/etc/pony.conf] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_cli_mount[/usr/share/pony/pony.txt] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_workspace_visible [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_sysroot [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_integration_devices [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_integration_external_workspace[guess-build] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_integration_external_workspace[guess-nobuild] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_integration_external_workspace[no-guess-build] [32mPASSED[0m[36m [ 71%][0m tests/integration/shell.py::test_integration_external_workspace[no-guess-nobuild] [32mPASSED[0m[36m [ 72%][0m tests/integration/sockets.py::test_builddir_socket_ignored [32mPASSED[0m[36m [ 72%][0m tests/integration/sockets.py::test_install_root_socket_ignored [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[git] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[bzr] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[ostree] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[tar] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[zip] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_umask[local] [32mPASSED[0m[36m [ 72%][0m tests/integration/source-determinism.py::test_deterministic_source_local [32mPASSED[0m[36m [ 72%][0m tests/integration/stack.py::test_stack [32mPASSED[0m[36m [ 72%][0m tests/integration/symlinks.py::test_absolute_symlinks_made_relative [32mPASSED[0m[36m [ 72%][0m tests/integration/symlinks.py::test_allow_overlaps_inside_symlink_with_dangling_target [32mPASSED[0m[36m [ 72%][0m tests/integration/symlinks.py::test_detect_symlink_overlaps_pointing_outside_sandbox [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_workspace_mount [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_workspace_commanddir [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_workspace_updated_dependency [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_workspace_update_dependency_failed [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_updated_dependency_nested [32mPASSED[0m[36m [ 73%][0m tests/integration/workspace.py::test_incremental_configure_commands_run_only_once [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_create [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load_envvar [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load_user_config [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load_missing_config [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load_malformed_config [32mPASSED[0m[36m [ 73%][0m tests/internals/context.py::test_context_load_notdict_config [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_one_file [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_missing_file [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_invalid_reference [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_invalid_yaml [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_fail_fullpath_target [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_invalid_key [32mPASSED[0m[36m [ 74%][0m tests/internals/loader.py::test_invalid_directory_load [32mPASSED[0m[36m [ 74%][0m tests/internals/pluginfactory.py::test_fixture [32mPASSED[0m[36m [ 74%][0m tests/internals/pluginfactory.py::test_source_factory [32mPASSED[0m[36m [ 74%][0m tests/internals/pluginfactory.py::test_element_factory [32mPASSED[0m[36m [ 74%][0m tests/internals/pluginfactory.py::test_custom_source [32mPASSED[0m[36m [ 74%][0m tests/internals/pluginfactory.py::test_custom_element [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_missing_source [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_missing_element [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_notatype [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_element_notatype [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_wrongtype [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_element_wrongtype [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_missing_setup [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_element_missing_setup [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_bad_setup [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_element_bad_setup [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_badversion [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_element_badversion [32mPASSED[0m[36m [ 75%][0m tests/internals/pluginfactory.py::test_source_multicontext [32mPASSED[0m[36m [ 76%][0m tests/internals/pluginfactory.py::test_element_multicontext [32mPASSED[0m[36m [ 76%][0m tests/internals/pluginloading.py::test_customsource [32mPASSED[0m[36m [ 76%][0m tests/internals/pluginloading.py::test_customelement [32mPASSED[0m[36m [ 76%][0m tests/internals/pluginloading.py::test_badversionsource [32mPASSED[0m[36m [ 76%][0m tests/internals/pluginloading.py::test_badversionelement [32mPASSED[0m[36m [ 76%][0m tests/internals/storage.py::test_import[FileBasedDirectory] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage.py::test_import[CasBasedDirectory] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage.py::test_modified_file_list[FileBasedDirectory] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage.py::test_modified_file_list[CasBasedDirectory] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[1] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[2] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[3] [32mPASSED[0m[36m [ 76%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[4] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[5] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[6] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[7] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[8] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[9] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_fixed_cas_import[10] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[1] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[2] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[3] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[4] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[5] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[6] [32mPASSED[0m[36m [ 77%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[7] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[8] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[9] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_cas_import[10] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[1] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[2] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[3] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[4] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[5] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[6] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[7] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[8] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[9] [32mPASSED[0m[36m [ 78%][0m tests/internals/storage_vdir_import.py::test_random_directory_listing[10] [32mPASSED[0m[36m [ 79%][0m tests/internals/storage_vdir_import.py::test_fixed_directory_listing[1] [32mPASSED[0m[36m [ 79%][0m tests/internals/storage_vdir_import.py::test_fixed_directory_listing[2] [32mPASSED[0m[36m [ 79%][0m tests/internals/storage_vdir_import.py::test_fixed_directory_listing[3] [32mPASSED[0m[36m [ 79%][0m tests/internals/storage_vdir_import.py::test_fixed_directory_listing[4] [32mPASSED[0m[36m [ 79%][0m tests/internals/storage_vdir_import.py::test_fixed_directory_listing[5] [32mPASSED[0m[36m [ 79%][0m tests/internals/utils.py::test_parse_size_over_1024T [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_to_empty_dir [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_to_empty_dir_create_parents [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_to_empty_dir_no_create_parents [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_non_existing_dir [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_to_existing_empty_dir [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_to_existing_file [32mPASSED[0m[36m [ 79%][0m tests/internals/utils_move_atomic.py::test_move_file_to_existing_file [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_move_atomic.py::test_move_to_existing_non_empty_dir [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_save_atomic.py::test_save_new_file [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_save_atomic.py::test_save_over_existing_file [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_save_atomic.py::test_exception_new_file [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_save_atomic.py::test_exception_existing_file [32mPASSED[0m[36m [ 80%][0m tests/internals/utils_save_atomic.py::test_attributes [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_load_yaml [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_basic_provenance [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_member_provenance [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_element_provenance [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_node_validate [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_node_get [32mPASSED[0m[36m [ 80%][0m tests/internals/yaml.py::test_composite_preserve_originals [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-0-9-prepended1-listprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-0-9-prepended1-listprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-1-9-prepended2-listprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-1-9-prepended2-listprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-2-9-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-2-9-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-8-9-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listprepend.yaml-8-9-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-7-9-appended1-listappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-7-9-appended1-listappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-8-9-appended2-listappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 81%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-8-9-appended2-listappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-0-9-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-0-9-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-6-9-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappend.yaml-6-9-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-0-11-prepended1-listappendprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-0-11-prepended1-listappendprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-1-11-prepended2-listappendprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-1-11-prepended2-listappendprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-2-11-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-2-11-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-8-11-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-8-11-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 82%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-9-11-appended1-listappendprepend.yaml-10-10-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-9-11-appended1-listappendprepend.yaml-10-10-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-10-11-appended2-listappendprepend.yaml-12-10-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listappendprepend.yaml-10-11-appended2-listappendprepend.yaml-12-10-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-raw] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition[implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-cached] [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_deletion [32mPASSED[0m[36m [ 83%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-0-11-prepended1-listprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-0-11-prepended1-listprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-1-11-prepended2-listprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-1-11-prepended2-listprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-2-11-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-2-11-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-8-11-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-8-11-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-9-11-appended1-listappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-9-11-appended1-listappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-10-11-appended2-listappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listappend.yaml-10-11-appended2-listappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-0-11-prepended1-listprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 84%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-0-11-prepended1-listprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-1-11-prepended2-listprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-1-11-prepended2-listprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-2-11-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-2-11-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-8-11-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-8-11-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-9-11-appended1-listappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-9-11-appended1-listappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-10-11-appended2-listappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listprepend.yaml-10-11-appended2-listappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-0-11-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-0-11-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 85%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-6-11-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-6-11-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-7-11-appended1-listappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-7-11-appended1-listappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-8-11-appended2-listappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-8-11-appended2-listappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-9-11-secondappend1-secondappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-9-11-secondappend1-secondappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-10-11-secondappend2-secondappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-secondappend.yaml-10-11-secondappend2-secondappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-0-11-secondprepend1-secondprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-0-11-secondprepend1-secondprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-1-11-secondprepend2-secondprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 86%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-1-11-secondprepend2-secondprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-2-11-prepended1-listprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-2-11-prepended1-listprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-3-11-prepended2-listprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-3-11-prepended2-listprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-4-11-silly-basics.yaml-8-8-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-4-11-silly-basics.yaml-8-8-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-10-11-sleepy-basics.yaml-20-8-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-secondprepend.yaml-10-11-sleepy-basics.yaml-20-8-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-cached] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-raw] [32mPASSED[0m[36m [ 87%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-implicitoverwrite.yaml-0-2-overwrite1-implicitoverwrite.yaml-4-8-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-implicitoverwrite.yaml-1-2-overwrite2-implicitoverwrite.yaml-6-8-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listappend.yaml-listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listoverwrite.yaml-0-2-overwrite1-listoverwrite.yaml-5-10-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-raw] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listprepend.yaml-listoverwrite.yaml-1-2-overwrite2-listoverwrite.yaml-7-10-cached] [32mPASSED[0m[36m [ 88%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-0-4-overwrite1-listoverwrite.yaml-5-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-0-4-overwrite1-listoverwrite.yaml-5-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-1-4-overwrite2-listoverwrite.yaml-7-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-1-4-overwrite2-listoverwrite.yaml-7-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-2-4-appended1-listappend.yaml-5-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-2-4-appended1-listappend.yaml-5-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-3-4-appended2-listappend.yaml-7-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listappend.yaml-3-4-appended2-listappend.yaml-7-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-0-4-prepended1-listprepend.yaml-5-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-0-4-prepended1-listprepend.yaml-5-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-1-4-prepended2-listprepend.yaml-7-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-1-4-prepended2-listprepend.yaml-7-10-cached] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-2-4-overwrite1-listoverwrite.yaml-5-10-raw] [32mPASSED[0m[36m [ 89%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-2-4-overwrite1-listoverwrite.yaml-5-10-cached] [32mPASSED[0m[36m [ 90%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-3-4-overwrite2-listoverwrite.yaml-7-10-raw] [32mPASSED[0m[36m [ 90%][0m tests/internals/yaml.py::test_list_composition_twice[listoverwrite.yaml-listprepend.yaml-3-4-overwrite2-listoverwrite.yaml-7-10-cached] [32mPASSED[0m[36m [ 90%][0m tests/internals/yaml.py::test_convert_value_to_string [32mPASSED[0m[36m [ 90%][0m tests/internals/yaml.py::test_value_doesnt_match_expected [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/missing-command.py::test_missing_command [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/missing_dependencies.py::test_missing_brwap_has_nice_error_message [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/missing_dependencies.py::test_old_brwap_has_nice_error_message [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/remote-exec-config.py::test_old_and_new_configs [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/remote-exec-config.py::test_missing_certs[client-cert-client.crt] [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/remote-exec-config.py::test_missing_certs[client-key-client.key] [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/remote-exec-config.py::test_empty_config [32mPASSED[0m[36m [ 90%][0m tests/sandboxes/mounting/mount_simple.py::test_bind_mount [33mSKIPPED[0m[36m [ 90%][0m tests/sandboxes/mounting/mount_simple.py::test_mount_proc [33mSKIPPED[0m[36m [ 91%][0m tests/sources/bzr.py::test_fetch_checkout [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_no_ref [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_fetch_bad_url [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_fetch_bad_ref [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_track_warning [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_stage_default_basedir [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_stage_no_basedir [32mPASSED[0m[36m [ 91%][0m tests/sources/deb.py::test_stage_explicit_basedir [32mPASSED[0m[36m [ 91%][0m tests/sources/git.py::test_fetch_bad_ref [32mPASSED[0m[36m [ 91%][0m tests/sources/git.py::test_submodule_fetch_checkout [32mPASSED[0m[36m [ 91%][0m tests/sources/git.py::test_submodule_fetch_source_enable_explicit [32mPASSED[0m[36m [ 91%][0m tests/sources/git.py::test_submodule_fetch_source_disable [32mPASSED[0m[36m [ 91%][0m tests/sources/git.py::test_submodule_fetch_submodule_does_override [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_submodule_fetch_submodule_individual_checkout [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_submodule_fetch_submodule_individual_checkout_explicit [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_submodule_fetch_project_override [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_submodule_track_ignore_inconsistent [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_submodule_track_no_ref_or_track [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_ref_not_in_track[warn] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_ref_not_in_track[error] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_unlisted_submodule[warn] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_unlisted_submodule[error] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_track_unlisted_submodule[warn] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_track_unlisted_submodule[error] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_invalid_submodule[warn] [32mPASSED[0m[36m [ 92%][0m tests/sources/git.py::test_invalid_submodule[error] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_invalid_submodule[warn] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_invalid_submodule[error] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[False-False-sha1] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[False-False-git-describe] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[True-False-sha1] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[True-False-git-describe] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[True-True-sha1] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_track_fetch[True-True-git-describe] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_git_describe[annotated-inline] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_git_describe[annotated-project.refs] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_git_describe[lightweight-inline] [32mPASSED[0m[36m [ 93%][0m tests/sources/git.py::test_git_describe[lightweight-project.refs] [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_git_describe_head_is_tagged[annotated-inline] [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_git_describe_head_is_tagged[annotated-project.refs] [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_git_describe_head_is_tagged[lightweight-inline] [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_git_describe_head_is_tagged[lightweight-project.refs] [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_git_describe_relevant_history [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_default_do_not_track_tags [32mPASSED[0m[36m [ 94%][0m tests/sources/git.py::test_overwrite_rogue_tag_multiple_remotes [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_missing_path [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_non_regular_file_or_directory [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_invalid_absolute_path [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_invalid_relative_path [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_stage_file [32mPASSED[0m[36m [ 94%][0m tests/sources/local.py::test_stage_directory [32mPASSED[0m[36m [ 95%][0m tests/sources/local.py::test_stage_symlink [32mPASSED[0m[36m [ 95%][0m tests/sources/local.py::test_stage_file_exists [32mPASSED[0m[36m [ 95%][0m tests/sources/no_fetch_cached.py::test_no_fetch_cached [32mPASSED[0m[36m [ 95%][0m tests/sources/ostree.py::test_submodule_track_no_ref_or_track [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_missing_patch [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_non_regular_file_patch [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_invalid_absolute_path [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_invalid_relative_path [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_stage_and_patch [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_stage_file_nonexistent_dir [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_stage_file_empty_dir [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_stage_separate_patch_dir [32mPASSED[0m[36m [ 95%][0m tests/sources/patch.py::test_stage_multiple_patches [32mPASSED[0m[36m [ 96%][0m tests/sources/patch.py::test_patch_strip_level [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_no_ref [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_first_source [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_no_packages [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[dotted.package-0.9.8.tar.gz-dotted.package-0.9.8] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[hyphenated-package-2.6.0.tar.gz-hyphenated-package-2.6.0] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[underscore_pkg-3.1.0.tar.gz-underscore_pkg-3.1.0] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[numbers2and5-1.0.1.tar.gz-numbers2and5-1.0.1] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[multiple.dots.package-5.6.7.tar.gz-multiple.dots.package-5.6.7] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[multiple-hyphens-package-1.2.3.tar.gz-multiple-hyphens-package-1.2.3] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[multiple_underscore_pkg-3.4.5.tar.gz-multiple_underscore_pkg-3.4.5] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[shortversion-1.0.tar.gz-shortversion-1.0] [32mPASSED[0m[36m [ 96%][0m tests/sources/pip.py::test_match_package_name[longversion-1.2.3.4.tar.gz-longversion-1.2.3.4] [32mPASSED[0m[36m [ 97%][0m tests/sources/previous_source_access.py::test_custom_transform_source [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_no_ref [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_missing_file [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_path_in_filename [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_simple_file_build [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_simple_file_custom_name_build [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_unique_key [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_executable [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_use_netrc[FTP] [32mPASSED[0m[36m [ 97%][0m tests/sources/remote.py::test_use_netrc[HTTP] [32mPASSED[0m[36m [ 97%][0m tests/sources/tar.py::test_no_ref [32mPASSED[0m[36m [ 97%][0m tests/sources/tar.py::test_fetch_bad_url [32mPASSED[0m[36m [ 97%][0m tests/sources/tar.py::test_fetch_bad_ref [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_track_warning [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_default_basedir[a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_default_basedir[./a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_no_basedir[a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_no_basedir[./a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_explicit_basedir[a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_explicit_basedir[./a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_contains_links [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_default_basedir_lzip[a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_stage_default_basedir_lzip[./a] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_read_only_dir [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_use_netrc[FTP] [32mPASSED[0m[36m [ 98%][0m tests/sources/tar.py::test_use_netrc[HTTP] [32mPASSED[0m[36m [ 99%][0m tests/sources/tar.py::test_netrc_already_specified_user[FTP] [32mPASSED[0m[36m [ 99%][0m tests/sources/tar.py::test_netrc_already_specified_user[HTTP] [32mPASSED[0m[36m [ 99%][0m tests/sources/tar.py::test_homeless_environment [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_no_ref [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_fetch_bad_url [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_fetch_bad_ref [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_track_warning [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_stage_default_basedir [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_stage_no_basedir [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_stage_explicit_basedir [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_use_netrc[FTP] [32mPASSED[0m[36m [ 99%][0m tests/sources/zip.py::test_use_netrc[HTTP] [32mPASSED[0m[36m [100%][0m =================================== FAILURES =================================== [31m[1m_________ test_build_track[track_targets0-exceptions0-tracked0-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cc95bbe0> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0') ref_storage = 'inline', track_targets = ['0.bst'], exceptions = [] tracked = ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', ...] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cc95bbe0> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0' element_name = '5.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0 build --track 0.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:30 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst no reference ???????????????????????????????????????????????????????????????? 7.bst no reference ???????????????????????????????????????????????????????????????? 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:6.bst ] START test/6/????????-track.6147.log [--:--:--][????????][track:4.bst ] START test/4/????????-track.6145.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.6148.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.6146.log [--:--:--][????????][track:2.bst ] START test/2/????????-track.6150.log [--:--:--][????????][track:2.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:7.bst ] START test/7/????????-track.6149.log [--:--:--][????????][track:7.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:0.bst ] START test/0/????????-track.6151.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [00:00:00][????????][track:2.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:2.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:2.bst ] SUCCESS test/2/????????-track.6150.log [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.6145.log [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.6151.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.6147.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.6148.log [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.6146.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:7.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets0/repo [--:--:--][????????][track:7.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:7.bst ] SUCCESS test/7/????????-track.6149.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][c531e851][build:4.bst ] START test/4/c531e851-build.6268.log [--:--:--][c531e851][build:4.bst ] START Staging sources [00:00:00][c531e851][build:4.bst ] SUCCESS Staging sources [--:--:--][c531e851][build:4.bst ] START Caching artifact [00:00:00][c531e851][build:4.bst ] SUCCESS Caching artifact [00:00:00][c531e851][build:4.bst ] SUCCESS test/4/c531e851-build.6268.log [--:--:--][c531e851][build:5.bst ] START test/5/c531e851-build.6276.log [--:--:--][c531e851][build:5.bst ] START Staging sources [00:00:00][c531e851][build:5.bst ] SUCCESS Staging sources [--:--:--][c531e851][build:5.bst ] START Caching artifact [00:00:00][c531e851][build:5.bst ] SUCCESS Caching artifact [00:00:00][c531e851][build:5.bst ] SUCCESS test/5/c531e851-build.6276.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][c531e851][build:7.bst ] START test/7/c531e851-build.6298.log [--:--:--][c531e851][build:7.bst ] START Staging sources [--:--:--][645ce5fe][build:6.bst ] START test/6/645ce5fe-build.6300.log [--:--:--][645ce5fe][build:6.bst ] START Staging sources [00:00:00][c531e851][build:7.bst ] SUCCESS Staging sources [--:--:--][c531e851][build:7.bst ] START Caching artifact [00:00:00][645ce5fe][build:6.bst ] SUCCESS Staging sources [00:00:00][c531e851][build:7.bst ] SUCCESS Caching artifact [00:00:00][c531e851][build:7.bst ] SUCCESS test/7/c531e851-build.6298.log [--:--:--][645ce5fe][build:6.bst ] START Caching artifact Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][645ce5fe][build:6.bst ] SUCCESS Caching artifact [00:00:00][645ce5fe][build:6.bst ] SUCCESS test/6/645ce5fe-build.6300.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][09e389f6][build:3.bst ] START test/3/09e389f6-build.6312.log [--:--:--][09e389f6][build:3.bst ] START Staging sources [00:00:00][09e389f6][build:3.bst ] SUCCESS Staging sources [--:--:--][09e389f6][build:3.bst ] START Caching artifact [00:00:00][09e389f6][build:3.bst ] SUCCESS Caching artifact [00:00:00][09e389f6][build:3.bst ] SUCCESS test/3/09e389f6-build.6312.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][6ca39592][build:2.bst ] START test/2/6ca39592-build.6319.log [--:--:--][6ca39592][build:2.bst ] START Staging sources [00:00:00][6ca39592][build:2.bst ] SUCCESS Staging sources [--:--:--][6ca39592][build:2.bst ] START Caching artifact [00:00:00][6ca39592][build:2.bst ] SUCCESS Caching artifact [00:00:00][6ca39592][build:2.bst ] SUCCESS test/2/6ca39592-build.6319.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][7ab9b182][build:0.bst ] START test/0/7ab9b182-build.6326.log [--:--:--][7ab9b182][build:0.bst ] START Staging sources [00:00:00][7ab9b182][build:0.bst ] SUCCESS Staging sources [--:--:--][7ab9b182][build:0.bst ] START Caching artifact [00:00:00][7ab9b182][build:0.bst ] SUCCESS Caching artifact [00:00:00][7ab9b182][build:0.bst ] SUCCESS test/0/7ab9b182-build.6326.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 7ab9b1824e32df1c8f3326fc7ca6470985f7d43903ba4ccecc38a288ca954488 0.bst cached 6ca3959226b73d03c5c6deb6c44d84598bbc5d0e9287c7bd45a9cb45a04a386d 2.bst cached 09e389f6bcbae6484cfaf783915e8b3067e840fa80e141bc2bc9510d6a5b51b4 3.bst cached c531e8513c7070d13cd64d0112b15a8cc3087e9eb32fcf7791390195012a3743 4.bst cached c531e8513c7070d13cd64d0112b15a8cc3087e9eb32fcf7791390195012a3743 5.bst cached 645ce5fe6c3479fdc3732d66b12bd00bbf17eae2e12da585356effee8e2318ed 6.bst cached c531e8513c7070d13cd64d0112b15a8cc3087e9eb32fcf7791390195012a3743 7.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 7, skipped 0, failed 0 Fetch Queue: processed 0, skipped 7, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets0-exceptions0-tracked0-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cd0d9400> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1') ref_storage = 'project.refs', track_targets = ['0.bst'], exceptions = [] tracked = ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', ...] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cd0d9400> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1' element_name = '5.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1 build --track 0.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:31 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst no reference ???????????????????????????????????????????????????????????????? 7.bst no reference ???????????????????????????????????????????????????????????????? 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:5.bst ] START test/5/????????-track.6342.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.6341.log [--:--:--][????????][track:3.bst ] START test/3/????????-track.6344.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.6343.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:7.bst ] START test/7/????????-track.6345.log [--:--:--][????????][track:2.bst ] START test/2/????????-track.6346.log [--:--:--][????????][track:2.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:7.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:0.bst ] START test/0/????????-track.6349.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.6342.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.6344.log [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.6341.log [00:00:00][????????][track:7.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:7.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:7.bst ] SUCCESS test/7/????????-track.6345.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.6343.log [00:00:00][????????][track:2.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:2.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:2.bst ] SUCCESS test/2/????????-track.6346.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets1/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.6349.log [--:--:--][ce84722b][build:5.bst ] START test/5/ce84722b-build.6467.log [--:--:--][ce84722b][build:5.bst ] START Staging sources [00:00:00][ce84722b][build:5.bst ] SUCCESS Staging sources [--:--:--][ce84722b][build:5.bst ] START Caching artifact [00:00:00][ce84722b][build:5.bst ] SUCCESS Caching artifact [00:00:00][ce84722b][build:5.bst ] SUCCESS test/5/ce84722b-build.6467.log [--:--:--][ce84722b][build:7.bst ] START test/7/ce84722b-build.6486.log [--:--:--][ce84722b][build:7.bst ] START Staging sources [00:00:00][ce84722b][build:7.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][ce84722b][build:7.bst ] START Caching artifact [00:00:00][ce84722b][build:7.bst ] SUCCESS Caching artifact [00:00:00][ce84722b][build:7.bst ] SUCCESS test/7/ce84722b-build.6486.log [--:--:--][d6ab7023][build:6.bst ] START test/6/d6ab7023-build.6501.log [--:--:--][d6ab7023][build:6.bst ] START Staging sources [00:00:00][d6ab7023][build:6.bst ] SUCCESS Staging sources [--:--:--][ce84722b][build:4.bst ] START test/4/ce84722b-build.6508.log [--:--:--][ce84722b][build:4.bst ] START Staging sources [--:--:--][d6ab7023][build:6.bst ] START Caching artifact [00:00:00][d6ab7023][build:6.bst ] SUCCESS Caching artifact [00:00:00][d6ab7023][build:6.bst ] SUCCESS test/6/d6ab7023-build.6501.log [00:00:00][ce84722b][build:4.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][ce84722b][build:4.bst ] START Caching artifact [00:00:00][ce84722b][build:4.bst ] SUCCESS Caching artifact [00:00:00][ce84722b][build:4.bst ] SUCCESS test/4/ce84722b-build.6508.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][3ffccd07][build:3.bst ] START test/3/3ffccd07-build.6519.log [--:--:--][3ffccd07][build:3.bst ] START Staging sources [00:00:00][3ffccd07][build:3.bst ] SUCCESS Staging sources [--:--:--][3ffccd07][build:3.bst ] START Caching artifact [00:00:00][3ffccd07][build:3.bst ] SUCCESS Caching artifact [00:00:00][3ffccd07][build:3.bst ] SUCCESS test/3/3ffccd07-build.6519.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][40f2058e][build:2.bst ] START test/2/40f2058e-build.6526.log [--:--:--][40f2058e][build:2.bst ] START Staging sources [00:00:00][40f2058e][build:2.bst ] SUCCESS Staging sources [--:--:--][40f2058e][build:2.bst ] START Caching artifact [00:00:00][40f2058e][build:2.bst ] SUCCESS Caching artifact [00:00:00][40f2058e][build:2.bst ] SUCCESS test/2/40f2058e-build.6526.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][309eb28b][build:0.bst ] START test/0/309eb28b-build.6533.log [--:--:--][309eb28b][build:0.bst ] START Staging sources [00:00:00][309eb28b][build:0.bst ] SUCCESS Staging sources [--:--:--][309eb28b][build:0.bst ] START Caching artifact [00:00:00][309eb28b][build:0.bst ] SUCCESS Caching artifact [00:00:00][309eb28b][build:0.bst ] SUCCESS test/0/309eb28b-build.6533.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 309eb28be5f79d1f384b6339251d65072b7ee6a3ef286ee097be3bde509a7db5 0.bst cached 40f2058e7527f0992dded8cd59f9bf98cd4f9e75d554357377517aa888f59f86 2.bst cached 3ffccd07bc5b9401d02fd6da29600ebe6e6ed15cc1f2a580fa9d790ae7c4eb7c 3.bst cached ce84722b7c40ca7b090713ad40d612afa8759677d9558994988a8a8b330fab18 4.bst cached ce84722b7c40ca7b090713ad40d612afa8759677d9558994988a8a8b330fab18 5.bst cached d6ab70236a364ef401c8a076abbf2d645e1802523f99304773654e0d9fde5023 6.bst cached ce84722b7c40ca7b090713ad40d612afa8759677d9558994988a8a8b330fab18 7.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 7, skipped 0, failed 0 Fetch Queue: processed 0, skipped 7, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m_________ test_build_track[track_targets1-exceptions1-tracked1-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70ccd31be0> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2') ref_storage = 'inline', track_targets = ['3.bst'], exceptions = [] tracked = ['3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70ccd31be0> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2 build --track 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:32 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed b58939eab1cc32f8b70a65a97d7842324b106847f41872d75f39279a73b16895 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][b58939ea][fetch:7.bst ] START test/7/b58939ea-fetch.6548.log [--:--:--][b58939ea][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.6550.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.6549.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.6552.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.6553.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [00:00:00][b58939ea][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [00:00:00][b58939ea][fetch:7.bst ] SUCCESS test/7/b58939ea-fetch.6548.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.6549.log [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.6550.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.6552.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets2/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.6553.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][b58939ea][build:7.bst ] START test/7/b58939ea-build.6641.log [--:--:--][b58939ea][build:7.bst ] START Staging sources [00:00:00][b58939ea][build:7.bst ] SUCCESS Staging sources [--:--:--][b58939ea][build:7.bst ] START Caching artifact [00:00:00][b58939ea][build:7.bst ] SUCCESS Caching artifact [00:00:00][b58939ea][build:7.bst ] SUCCESS test/7/b58939ea-build.6641.log [--:--:--][b58939ea][build:4.bst ] START test/4/b58939ea-build.6649.log [--:--:--][b58939ea][build:4.bst ] START Staging sources [00:00:00][b58939ea][build:4.bst ] SUCCESS Staging sources [--:--:--][b58939ea][build:4.bst ] START Caching artifact [00:00:00][b58939ea][build:4.bst ] SUCCESS Caching artifact [00:00:00][b58939ea][build:4.bst ] SUCCESS test/4/b58939ea-build.6649.log [--:--:--][b58939ea][build:5.bst ] START test/5/b58939ea-build.6658.log [--:--:--][b58939ea][build:5.bst ] START Staging sources [00:00:00][b58939ea][build:5.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][b58939ea][build:5.bst ] START Caching artifact [00:00:00][b58939ea][build:5.bst ] SUCCESS Caching artifact [00:00:00][b58939ea][build:5.bst ] SUCCESS test/5/b58939ea-build.6658.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][d10e4503][build:6.bst ] START test/6/d10e4503-build.6678.log [--:--:--][d10e4503][build:6.bst ] START Staging sources [00:00:00][d10e4503][build:6.bst ] SUCCESS Staging sources [--:--:--][d10e4503][build:6.bst ] START Caching artifact [00:00:00][d10e4503][build:6.bst ] SUCCESS Caching artifact [00:00:00][d10e4503][build:6.bst ] SUCCESS test/6/d10e4503-build.6678.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][0b6c1945][build:3.bst ] START test/3/0b6c1945-build.6685.log [--:--:--][0b6c1945][build:3.bst ] START Staging sources [00:00:00][0b6c1945][build:3.bst ] SUCCESS Staging sources [--:--:--][0b6c1945][build:3.bst ] START Caching artifact [00:00:00][0b6c1945][build:3.bst ] SUCCESS Caching artifact [00:00:00][0b6c1945][build:3.bst ] SUCCESS test/3/0b6c1945-build.6685.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][25a4be5f][build:2.bst ] START test/2/25a4be5f-build.6692.log [--:--:--][25a4be5f][build:2.bst ] START Staging sources [00:00:00][25a4be5f][build:2.bst ] SUCCESS Staging sources [--:--:--][25a4be5f][build:2.bst ] START Caching artifact [00:00:00][25a4be5f][build:2.bst ] SUCCESS Caching artifact [00:00:00][25a4be5f][build:2.bst ] SUCCESS test/2/25a4be5f-build.6692.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][2ba17dbb][build:0.bst ] START test/0/2ba17dbb-build.6699.log [--:--:--][2ba17dbb][build:0.bst ] START Staging sources [00:00:00][2ba17dbb][build:0.bst ] SUCCESS Staging sources [--:--:--][2ba17dbb][build:0.bst ] START Caching artifact [00:00:00][2ba17dbb][build:0.bst ] SUCCESS Caching artifact [00:00:00][2ba17dbb][build:0.bst ] SUCCESS test/0/2ba17dbb-build.6699.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 2ba17dbb93ce1f980d994c98f758c44581d7fe32b7f7f77e3f3d7fc56d32ba3c 0.bst cached 25a4be5fed4886e6aee80216ff98cae2eafe33b91481581b4aa83b795c6120ab 2.bst cached 0b6c1945e0902ccf48cd5172e606499d4e75ad1d6586e2489aa2a26a09260a1c 3.bst cached b58939eab1cc32f8b70a65a97d7842324b106847f41872d75f39279a73b16895 4.bst cached b58939eab1cc32f8b70a65a97d7842324b106847f41872d75f39279a73b16895 5.bst cached d10e4503168b5e0779796de69b2f5fd7671ef6be59344fe14cbbcc40cfa7a8ec 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 4, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets1-exceptions1-tracked1-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cc862fd0> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3') ref_storage = 'project.refs', track_targets = ['3.bst'], exceptions = [] tracked = ['3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cc862fd0> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3 build --track 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:34 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed b7188126e33ea9719a9d9c77d463d239689953f78362d84c0606db99dabfdbb2 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][b7188126][fetch:7.bst ] START test/7/b7188126-fetch.6714.log [--:--:--][b7188126][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.6716.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.6715.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.6717.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.6719.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [00:00:00][b7188126][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [00:00:00][b7188126][fetch:7.bst ] SUCCESS test/7/b7188126-fetch.6714.log [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.6716.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.6715.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.6717.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets3/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.6719.log [--:--:--][b7188126][build:7.bst ] START test/7/b7188126-build.6792.log [--:--:--][b7188126][build:7.bst ] START Staging sources [00:00:00][b7188126][build:7.bst ] SUCCESS Staging sources [--:--:--][b7188126][build:7.bst ] START Caching artifact [00:00:00][b7188126][build:7.bst ] SUCCESS Caching artifact [00:00:00][b7188126][build:7.bst ] SUCCESS test/7/b7188126-build.6792.log [--:--:--][b7188126][build:4.bst ] START test/4/b7188126-build.6800.log [--:--:--][b7188126][build:4.bst ] START Staging sources [00:00:00][b7188126][build:4.bst ] SUCCESS Staging sources [--:--:--][b7188126][build:4.bst ] START Caching artifact [00:00:00][b7188126][build:4.bst ] SUCCESS Caching artifact [00:00:00][b7188126][build:4.bst ] SUCCESS test/4/b7188126-build.6800.log [--:--:--][b7188126][build:5.bst ] START test/5/b7188126-build.6809.log [--:--:--][b7188126][build:5.bst ] START Staging sources [00:00:00][b7188126][build:5.bst ] SUCCESS Staging sources [--:--:--][b7188126][build:5.bst ] START Caching artifact [00:00:00][b7188126][build:5.bst ] SUCCESS Caching artifact [00:00:00][b7188126][build:5.bst ] SUCCESS test/5/b7188126-build.6809.log [--:--:--][f57e29ff][build:6.bst ] START test/6/f57e29ff-build.6830.log [--:--:--][f57e29ff][build:6.bst ] START Staging sources [00:00:00][f57e29ff][build:6.bst ] SUCCESS Staging sources [--:--:--][f57e29ff][build:6.bst ] START Caching artifact [00:00:00][f57e29ff][build:6.bst ] SUCCESS Caching artifact [00:00:00][f57e29ff][build:6.bst ] SUCCESS test/6/f57e29ff-build.6830.log [--:--:--][f1398d84][build:3.bst ] START test/3/f1398d84-build.6837.log [--:--:--][f1398d84][build:3.bst ] START Staging sources [00:00:00][f1398d84][build:3.bst ] SUCCESS Staging sources [--:--:--][f1398d84][build:3.bst ] START Caching artifact [00:00:00][f1398d84][build:3.bst ] SUCCESS Caching artifact [00:00:00][f1398d84][build:3.bst ] SUCCESS test/3/f1398d84-build.6837.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][a419b706][build:2.bst ] START test/2/a419b706-build.6844.log [--:--:--][a419b706][build:2.bst ] START Staging sources [00:00:00][a419b706][build:2.bst ] SUCCESS Staging sources [--:--:--][a419b706][build:2.bst ] START Caching artifact [00:00:00][a419b706][build:2.bst ] SUCCESS Caching artifact [00:00:00][a419b706][build:2.bst ] SUCCESS test/2/a419b706-build.6844.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][c59309e8][build:0.bst ] START test/0/c59309e8-build.6851.log [--:--:--][c59309e8][build:0.bst ] START Staging sources [00:00:00][c59309e8][build:0.bst ] SUCCESS Staging sources [--:--:--][c59309e8][build:0.bst ] START Caching artifact [00:00:00][c59309e8][build:0.bst ] SUCCESS Caching artifact [00:00:00][c59309e8][build:0.bst ] SUCCESS test/0/c59309e8-build.6851.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:02][][] SUCCESS Build Resolved key Summary cached c59309e8e88247a96f6d15e26cd83656f890eed0c0840cc4dd2a942b11d7d032 0.bst cached a419b7069b6a46f3e6c7a6f0c6f5983692f5e8455d6d0df552ad70a27a53fc60 2.bst cached f1398d841973fb334999faf8bee32ddd6c6f1fbe72a204755cf4b8796855629e 3.bst cached b7188126e33ea9719a9d9c77d463d239689953f78362d84c0606db99dabfdbb2 4.bst cached b7188126e33ea9719a9d9c77d463d239689953f78362d84c0606db99dabfdbb2 5.bst cached f57e29ffaa2f6189622094e684b35dfa2bafb6dc5581aa3ed2fa71a26571c178 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 4, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m_________ test_build_track[track_targets2-exceptions2-tracked2-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70c64a3dd8> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4') ref_storage = 'inline', track_targets = ['2.bst', '3.bst'], exceptions = [] tracked = ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70c64a3dd8> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4' element_name = '5.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4 build --track 2.bst --track 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:36 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst no reference ???????????????????????????????????????????????????????????????? 7.bst no reference ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:5.bst ] START test/5/????????-track.6867.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.6869.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.6866.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.6868.log [--:--:--][????????][track:2.bst ] START test/2/????????-track.6871.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:2.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:7.bst ] START test/7/????????-track.6870.log [--:--:--][????????][track:7.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.6866.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.6869.log [00:00:00][????????][track:7.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:7.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:7.bst ] SUCCESS test/7/????????-track.6870.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.6867.log [00:00:00][????????][track:2.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:2.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:2.bst ] SUCCESS test/2/????????-track.6871.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets4/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.6868.log [--:--:--][9aae200f][build:7.bst ] START test/7/9aae200f-build.6980.log [--:--:--][9aae200f][build:7.bst ] START Staging sources Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][9aae200f][build:7.bst ] SUCCESS Staging sources [--:--:--][9aae200f][build:7.bst ] START Caching artifact [00:00:00][9aae200f][build:7.bst ] SUCCESS Caching artifact [00:00:00][9aae200f][build:7.bst ] SUCCESS test/7/9aae200f-build.6980.log [--:--:--][9aae200f][build:4.bst ] START test/4/9aae200f-build.6995.log [--:--:--][9aae200f][build:4.bst ] START Staging sources [00:00:00][9aae200f][build:4.bst ] SUCCESS Staging sources [--:--:--][9aae200f][build:5.bst ] START test/5/9aae200f-build.7003.log [--:--:--][9aae200f][build:5.bst ] START Staging sources [--:--:--][9aae200f][build:4.bst ] START Caching artifact [00:00:00][9aae200f][build:4.bst ] SUCCESS Caching artifact [00:00:00][9aae200f][build:4.bst ] SUCCESS test/4/9aae200f-build.6995.log [00:00:00][9aae200f][build:5.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][9aae200f][build:5.bst ] START Caching artifact [00:00:00][9aae200f][build:5.bst ] SUCCESS Caching artifact [00:00:00][9aae200f][build:5.bst ] SUCCESS test/5/9aae200f-build.7003.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][e4ad8f16][build:6.bst ] START test/6/e4ad8f16-build.7017.log [--:--:--][e4ad8f16][build:6.bst ] START Staging sources [00:00:00][e4ad8f16][build:6.bst ] SUCCESS Staging sources [--:--:--][e4ad8f16][build:6.bst ] START Caching artifact [00:00:00][e4ad8f16][build:6.bst ] SUCCESS Caching artifact [00:00:00][e4ad8f16][build:6.bst ] SUCCESS test/6/e4ad8f16-build.7017.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][d7039fd7][build:3.bst ] START test/3/d7039fd7-build.7024.log [--:--:--][d7039fd7][build:3.bst ] START Staging sources [00:00:00][d7039fd7][build:3.bst ] SUCCESS Staging sources [--:--:--][d7039fd7][build:3.bst ] START Caching artifact [00:00:00][d7039fd7][build:3.bst ] SUCCESS Caching artifact [00:00:00][d7039fd7][build:3.bst ] SUCCESS test/3/d7039fd7-build.7024.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][ac195c9f][build:2.bst ] START test/2/ac195c9f-build.7031.log [--:--:--][ac195c9f][build:2.bst ] START Staging sources [00:00:00][ac195c9f][build:2.bst ] SUCCESS Staging sources [--:--:--][ac195c9f][build:2.bst ] START Caching artifact [00:00:00][ac195c9f][build:2.bst ] SUCCESS Caching artifact [00:00:00][ac195c9f][build:2.bst ] SUCCESS test/2/ac195c9f-build.7031.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][720316c4][build:0.bst ] START test/0/720316c4-build.7038.log [--:--:--][720316c4][build:0.bst ] START Staging sources [00:00:00][720316c4][build:0.bst ] SUCCESS Staging sources [--:--:--][720316c4][build:0.bst ] START Caching artifact [00:00:00][720316c4][build:0.bst ] SUCCESS Caching artifact [00:00:00][720316c4][build:0.bst ] SUCCESS test/0/720316c4-build.7038.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 720316c426bb86b6f0128bb0ca16c4c2df076eef50c974a51bcfb666a79d3f84 0.bst cached ac195c9f9eca4ae28864f4dec6027fef099d9d2de9fe6bede09e23717b292fe4 2.bst cached d7039fd779f6def7b411a0f8e2f32bcb3ae7d7893713f18ec59ba6f702b15e5d 3.bst cached 9aae200fbb73ce6e72c9ab218209fe01e85a580628ed95f72f848c0544429ca3 4.bst cached 9aae200fbb73ce6e72c9ab218209fe01e85a580628ed95f72f848c0544429ca3 5.bst cached e4ad8f164036b746baa7c2d8cc3c268f582c656ff4d0e1baa8a5510e42c63bd8 6.bst cached 9aae200fbb73ce6e72c9ab218209fe01e85a580628ed95f72f848c0544429ca3 7.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 6, skipped 0, failed 0 Fetch Queue: processed 0, skipped 7, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets2-exceptions2-tracked2-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cd142710> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5') ref_storage = 'project.refs', track_targets = ['2.bst', '3.bst'] exceptions = [] tracked = ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cd142710> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5' element_name = '5.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5 build --track 2.bst --track 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:37 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst no reference ???????????????????????????????????????????????????????????????? 7.bst no reference ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:5.bst ] START test/5/????????-track.7054.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.7053.log [--:--:--][????????][track:3.bst ] START test/3/????????-track.7056.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.7055.log [--:--:--][????????][track:2.bst ] START test/2/????????-track.7058.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:2.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:7.bst ] START test/7/????????-track.7057.log [--:--:--][????????][track:7.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.7054.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.7056.log [00:00:00][????????][track:7.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:7.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:7.bst ] SUCCESS test/7/????????-track.7057.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:2.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:2.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:2.bst ] SUCCESS test/2/????????-track.7058.log [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.7053.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets5/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.7055.log [--:--:--][40dd778e][build:7.bst ] START test/7/40dd778e-build.7161.log [--:--:--][40dd778e][build:7.bst ] START Staging sources Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][40dd778e][build:7.bst ] SUCCESS Staging sources [--:--:--][40dd778e][build:7.bst ] START Caching artifact [00:00:00][40dd778e][build:7.bst ] SUCCESS Caching artifact [00:00:00][40dd778e][build:7.bst ] SUCCESS test/7/40dd778e-build.7161.log [--:--:--][40dd778e][build:4.bst ] START test/4/40dd778e-build.7176.log [--:--:--][40dd778e][build:4.bst ] START Staging sources [00:00:00][40dd778e][build:4.bst ] SUCCESS Staging sources [--:--:--][40dd778e][build:4.bst ] START Caching artifact [--:--:--][40dd778e][build:5.bst ] START test/5/40dd778e-build.7185.log [--:--:--][40dd778e][build:5.bst ] START Staging sources [00:00:00][40dd778e][build:4.bst ] SUCCESS Caching artifact [00:00:00][40dd778e][build:4.bst ] SUCCESS test/4/40dd778e-build.7176.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][40dd778e][build:5.bst ] SUCCESS Staging sources [--:--:--][40dd778e][build:5.bst ] START Caching artifact [00:00:00][40dd778e][build:5.bst ] SUCCESS Caching artifact [00:00:00][40dd778e][build:5.bst ] SUCCESS test/5/40dd778e-build.7185.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][833dca6b][build:6.bst ] START test/6/833dca6b-build.7199.log [--:--:--][833dca6b][build:6.bst ] START Staging sources [00:00:00][833dca6b][build:6.bst ] SUCCESS Staging sources [--:--:--][833dca6b][build:6.bst ] START Caching artifact [00:00:00][833dca6b][build:6.bst ] SUCCESS Caching artifact [00:00:00][833dca6b][build:6.bst ] SUCCESS test/6/833dca6b-build.7199.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][d8137ec8][build:3.bst ] START test/3/d8137ec8-build.7206.log [--:--:--][d8137ec8][build:3.bst ] START Staging sources [00:00:00][d8137ec8][build:3.bst ] SUCCESS Staging sources [--:--:--][d8137ec8][build:3.bst ] START Caching artifact [00:00:00][d8137ec8][build:3.bst ] SUCCESS Caching artifact [00:00:00][d8137ec8][build:3.bst ] SUCCESS test/3/d8137ec8-build.7206.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][d1743b84][build:2.bst ] START test/2/d1743b84-build.7213.log [--:--:--][d1743b84][build:2.bst ] START Staging sources [00:00:00][d1743b84][build:2.bst ] SUCCESS Staging sources [--:--:--][d1743b84][build:2.bst ] START Caching artifact [00:00:00][d1743b84][build:2.bst ] SUCCESS Caching artifact [00:00:00][d1743b84][build:2.bst ] SUCCESS test/2/d1743b84-build.7213.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][4d2a1ff3][build:0.bst ] START test/0/4d2a1ff3-build.7220.log [--:--:--][4d2a1ff3][build:0.bst ] START Staging sources [00:00:00][4d2a1ff3][build:0.bst ] SUCCESS Staging sources [--:--:--][4d2a1ff3][build:0.bst ] START Caching artifact [00:00:00][4d2a1ff3][build:0.bst ] SUCCESS Caching artifact [00:00:00][4d2a1ff3][build:0.bst ] SUCCESS test/0/4d2a1ff3-build.7220.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 4d2a1ff38f82cf8411ef3252b77e9bd7c6e6ea094f45f58d02fbabfba3ba420e 0.bst cached d1743b848ec28af18a5cdfcc839caa8f8743127b29c649bcc81fd129f7d18fcf 2.bst cached d8137ec8252f0f7539f0426eee9a0fbccf27e09618fed68afd563feabbc1c454 3.bst cached 40dd778e2b26f86e42432375805822be3421ee7224c6847ea933ab0c1d73f6d3 4.bst cached 40dd778e2b26f86e42432375805822be3421ee7224c6847ea933ab0c1d73f6d3 5.bst cached 833dca6ba8601fc4f3824cfc4f48ac75639c3363204f0ff38bd51a96ea10d784 6.bst cached 40dd778e2b26f86e42432375805822be3421ee7224c6847ea933ab0c1d73f6d3 7.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 6, skipped 0, failed 0 Fetch Queue: processed 0, skipped 7, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m_________ test_build_track[track_targets3-exceptions3-tracked3-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70ccddef98> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6') ref_storage = 'inline', track_targets = ['0.bst'], exceptions = ['2.bst'] tracked = ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70ccddef98> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6 build --track 0.bst --track-except 2.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:39 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed 3158bb31b9fc4311e723e3c4ac08f5f8abbde64e84f6e45d1fdd15b092793f73 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:4.bst ] START test/4/????????-track.7236.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.7238.log [--:--:--][3158bb31][fetch:7.bst ] START test/7/3158bb31-fetch.7235.log [--:--:--][3158bb31][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.7237.log [--:--:--][????????][track:0.bst ] START test/0/????????-track.7240.log [--:--:--][????????][track:3.bst ] START test/3/????????-track.7239.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [00:00:00][3158bb31][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [00:00:00][3158bb31][fetch:7.bst ] SUCCESS test/7/3158bb31-fetch.7235.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.7238.log [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.7240.log [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.7236.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.7237.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets6/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.7239.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][3158bb31][build:7.bst ] START test/7/3158bb31-build.7341.log [--:--:--][3158bb31][build:7.bst ] START Staging sources [00:00:00][3158bb31][build:7.bst ] SUCCESS Staging sources [--:--:--][3158bb31][build:7.bst ] START Caching artifact [00:00:00][3158bb31][build:7.bst ] SUCCESS Caching artifact [00:00:00][3158bb31][build:7.bst ] SUCCESS test/7/3158bb31-build.7341.log [--:--:--][3158bb31][build:4.bst ] START test/4/3158bb31-build.7349.log [--:--:--][3158bb31][build:4.bst ] START Staging sources [00:00:00][3158bb31][build:4.bst ] SUCCESS Staging sources [--:--:--][3158bb31][build:4.bst ] START Caching artifact [00:00:00][3158bb31][build:4.bst ] SUCCESS Caching artifact [00:00:00][3158bb31][build:4.bst ] SUCCESS test/4/3158bb31-build.7349.log [--:--:--][3158bb31][build:5.bst ] START test/5/3158bb31-build.7358.log [--:--:--][3158bb31][build:5.bst ] START Staging sources [00:00:00][3158bb31][build:5.bst ] SUCCESS Staging sources [--:--:--][3158bb31][build:5.bst ] START Caching artifact [00:00:00][3158bb31][build:5.bst ] SUCCESS Caching artifact [00:00:00][3158bb31][build:5.bst ] SUCCESS test/5/3158bb31-build.7358.log [--:--:--][e2f5192a][build:6.bst ] START test/6/e2f5192a-build.7382.log [--:--:--][e2f5192a][build:6.bst ] START Staging sources [00:00:00][e2f5192a][build:6.bst ] SUCCESS Staging sources [--:--:--][e2f5192a][build:6.bst ] START Caching artifact [00:00:00][e2f5192a][build:6.bst ] SUCCESS Caching artifact [00:00:00][e2f5192a][build:6.bst ] SUCCESS test/6/e2f5192a-build.7382.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][0c747689][build:3.bst ] START test/3/0c747689-build.7389.log [--:--:--][0c747689][build:3.bst ] START Staging sources [00:00:00][0c747689][build:3.bst ] SUCCESS Staging sources [--:--:--][0c747689][build:3.bst ] START Caching artifact [00:00:00][0c747689][build:3.bst ] SUCCESS Caching artifact [00:00:00][0c747689][build:3.bst ] SUCCESS test/3/0c747689-build.7389.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][9d048844][build:2.bst ] START test/2/9d048844-build.7396.log [--:--:--][9d048844][build:2.bst ] START Staging sources [00:00:00][9d048844][build:2.bst ] SUCCESS Staging sources [--:--:--][9d048844][build:2.bst ] START Caching artifact [00:00:00][9d048844][build:2.bst ] SUCCESS Caching artifact [00:00:00][9d048844][build:2.bst ] SUCCESS test/2/9d048844-build.7396.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][10d526fa][build:0.bst ] START test/0/10d526fa-build.7403.log [--:--:--][10d526fa][build:0.bst ] START Staging sources [00:00:00][10d526fa][build:0.bst ] SUCCESS Staging sources [--:--:--][10d526fa][build:0.bst ] START Caching artifact [00:00:00][10d526fa][build:0.bst ] SUCCESS Caching artifact [00:00:00][10d526fa][build:0.bst ] SUCCESS test/0/10d526fa-build.7403.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 10d526fa2521ec9a74c14f50a9f4e9d8680176ef6c72065d6c73b81bc2caa438 0.bst cached 9d04884425168773b44f97ac2770a7d7f809e71535d756cddd6b413bd6fc930e 2.bst cached 0c7476890eb6b7261b41650d5cddd0b74ef90f8289bbca8fdfc54f2dabc974a1 3.bst cached 3158bb31b9fc4311e723e3c4ac08f5f8abbde64e84f6e45d1fdd15b092793f73 4.bst cached 3158bb31b9fc4311e723e3c4ac08f5f8abbde64e84f6e45d1fdd15b092793f73 5.bst cached e2f5192a49f3ff1eaeee4dc2ea378a11b35e7f38c7dd92510271209173097cca 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 5, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets3-exceptions3-tracked3-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cca11e48> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7') ref_storage = 'project.refs', track_targets = ['0.bst'], exceptions = ['2.bst'] tracked = ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cca11e48> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7 build --track 0.bst --track-except 2.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:40 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed 71386a5ae8546b1a935dbcd3b866327557defc74b71d729d40e3e6f8e72e6280 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][71386a5a][fetch:7.bst ] START test/7/71386a5a-fetch.7418.log [--:--:--][71386a5a][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:4.bst ] START test/4/????????-track.7419.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.7420.log [--:--:--][????????][track:6.bst ] START test/6/????????-track.7421.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.7422.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:0.bst ] START test/0/????????-track.7424.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [00:00:00][71386a5a][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.7419.log [00:00:00][71386a5a][fetch:7.bst ] SUCCESS test/7/71386a5a-fetch.7418.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.7420.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.7421.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.7422.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets7/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.7424.log [--:--:--][71386a5a][build:7.bst ] START test/7/71386a5a-build.7524.log [--:--:--][71386a5a][build:7.bst ] START Staging sources [00:00:00][71386a5a][build:7.bst ] SUCCESS Staging sources [--:--:--][71386a5a][build:7.bst ] START Caching artifact [00:00:00][71386a5a][build:7.bst ] SUCCESS Caching artifact [00:00:00][71386a5a][build:7.bst ] SUCCESS test/7/71386a5a-build.7524.log [--:--:--][71386a5a][build:4.bst ] START test/4/71386a5a-build.7531.log [--:--:--][71386a5a][build:4.bst ] START Staging sources [00:00:00][71386a5a][build:4.bst ] SUCCESS Staging sources [--:--:--][71386a5a][build:4.bst ] START Caching artifact [00:00:00][71386a5a][build:4.bst ] SUCCESS Caching artifact [00:00:00][71386a5a][build:4.bst ] SUCCESS test/4/71386a5a-build.7531.log [--:--:--][71386a5a][build:5.bst ] START test/5/71386a5a-build.7543.log [--:--:--][71386a5a][build:5.bst ] START Staging sources [00:00:00][71386a5a][build:5.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][71386a5a][build:5.bst ] START Caching artifact [00:00:00][71386a5a][build:5.bst ] SUCCESS Caching artifact [00:00:00][71386a5a][build:5.bst ] SUCCESS test/5/71386a5a-build.7543.log [--:--:--][78d36e60][build:6.bst ] START test/6/78d36e60-build.7566.log [--:--:--][78d36e60][build:6.bst ] START Staging sources [00:00:00][78d36e60][build:6.bst ] SUCCESS Staging sources [--:--:--][78d36e60][build:6.bst ] START Caching artifact [00:00:00][78d36e60][build:6.bst ] SUCCESS Caching artifact [00:00:00][78d36e60][build:6.bst ] SUCCESS test/6/78d36e60-build.7566.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][a201aaad][build:3.bst ] START test/3/a201aaad-build.7573.log [--:--:--][a201aaad][build:3.bst ] START Staging sources [00:00:00][a201aaad][build:3.bst ] SUCCESS Staging sources [--:--:--][a201aaad][build:3.bst ] START Caching artifact [00:00:00][a201aaad][build:3.bst ] SUCCESS Caching artifact [00:00:00][a201aaad][build:3.bst ] SUCCESS test/3/a201aaad-build.7573.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][c68deacc][build:2.bst ] START test/2/c68deacc-build.7580.log [--:--:--][c68deacc][build:2.bst ] START Staging sources [00:00:00][c68deacc][build:2.bst ] SUCCESS Staging sources [--:--:--][c68deacc][build:2.bst ] START Caching artifact [00:00:00][c68deacc][build:2.bst ] SUCCESS Caching artifact [00:00:00][c68deacc][build:2.bst ] SUCCESS test/2/c68deacc-build.7580.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][6f63437b][build:0.bst ] START test/0/6f63437b-build.7587.log [--:--:--][6f63437b][build:0.bst ] START Staging sources [00:00:00][6f63437b][build:0.bst ] SUCCESS Staging sources [--:--:--][6f63437b][build:0.bst ] START Caching artifact [00:00:00][6f63437b][build:0.bst ] SUCCESS Caching artifact [00:00:00][6f63437b][build:0.bst ] SUCCESS test/0/6f63437b-build.7587.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 6f63437b7a08ee5517fe81f6892109e95e6ad46f160ae0d31c638c45179efcbf 0.bst cached c68deacc6a872a1ecd82d890be620c4739d17851aab591a966faa27e65baa882 2.bst cached a201aaad9c01e046880885f43bc9f8968dafbc20649d8a7e965854bc84cc3fe8 3.bst cached 71386a5ae8546b1a935dbcd3b866327557defc74b71d729d40e3e6f8e72e6280 4.bst cached 71386a5ae8546b1a935dbcd3b866327557defc74b71d729d40e3e6f8e72e6280 5.bst cached 78d36e6004009e5f40ac6011a1cae8e3e144520eefd3ef70cd7e3a6749ad11b1 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 5, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m_________ test_build_track[track_targets5-exceptions5-tracked5-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cc7f6358> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10') ref_storage = 'inline', track_targets = ['2.bst', '3.bst'] exceptions = ['2.bst'], tracked = ['3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cc7f6358> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10 build --track 2.bst --track 3.bst --track-except 2.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:44 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed 41b2e916eebf65fa7a421eecc41e58998041302d1fa247a8b4e84c3e5593ae2e 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:4.bst ] START test/4/????????-track.7945.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.7947.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][41b2e916][fetch:7.bst ] START test/7/41b2e916-fetch.7944.log [--:--:--][41b2e916][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.7946.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.7948.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [00:00:00][41b2e916][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.7945.log [00:00:00][41b2e916][fetch:7.bst ] SUCCESS test/7/41b2e916-fetch.7944.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.7946.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.7947.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets10/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.7948.log [--:--:--][41b2e916][build:4.bst ] START test/4/41b2e916-build.8029.log [--:--:--][41b2e916][build:4.bst ] START Staging sources [00:00:00][41b2e916][build:4.bst ] SUCCESS Staging sources [--:--:--][41b2e916][build:4.bst ] START Caching artifact [00:00:00][41b2e916][build:4.bst ] SUCCESS Caching artifact [00:00:00][41b2e916][build:4.bst ] SUCCESS test/4/41b2e916-build.8029.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][41b2e916][build:5.bst ] START test/5/41b2e916-build.8037.log [--:--:--][41b2e916][build:5.bst ] START Staging sources [00:00:00][41b2e916][build:5.bst ] SUCCESS Staging sources [--:--:--][41b2e916][build:5.bst ] START Caching artifact [00:00:00][41b2e916][build:5.bst ] SUCCESS Caching artifact [00:00:00][41b2e916][build:5.bst ] SUCCESS test/5/41b2e916-build.8037.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][41b2e916][build:7.bst ] START test/7/41b2e916-build.8060.log [--:--:--][41b2e916][build:7.bst ] START Staging sources [--:--:--][5c66255b][build:6.bst ] START test/6/5c66255b-build.8062.log [00:00:00][41b2e916][build:7.bst ] SUCCESS Staging sources [--:--:--][5c66255b][build:6.bst ] START Staging sources [--:--:--][41b2e916][build:7.bst ] START Caching artifact [00:00:00][41b2e916][build:7.bst ] SUCCESS Caching artifact [00:00:00][41b2e916][build:7.bst ] SUCCESS test/7/41b2e916-build.8060.log [00:00:00][5c66255b][build:6.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][5c66255b][build:6.bst ] START Caching artifact [00:00:00][5c66255b][build:6.bst ] SUCCESS Caching artifact [00:00:00][5c66255b][build:6.bst ] SUCCESS test/6/5c66255b-build.8062.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][6cd78736][build:3.bst ] START test/3/6cd78736-build.8074.log [--:--:--][6cd78736][build:3.bst ] START Staging sources [00:00:00][6cd78736][build:3.bst ] SUCCESS Staging sources [--:--:--][6cd78736][build:3.bst ] START Caching artifact [00:00:00][6cd78736][build:3.bst ] SUCCESS Caching artifact [00:00:00][6cd78736][build:3.bst ] SUCCESS test/3/6cd78736-build.8074.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][d9903931][build:2.bst ] START test/2/d9903931-build.8081.log [--:--:--][d9903931][build:2.bst ] START Staging sources [00:00:00][d9903931][build:2.bst ] SUCCESS Staging sources [--:--:--][d9903931][build:2.bst ] START Caching artifact [00:00:00][d9903931][build:2.bst ] SUCCESS Caching artifact [00:00:00][d9903931][build:2.bst ] SUCCESS test/2/d9903931-build.8081.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][951e540d][build:0.bst ] START test/0/951e540d-build.8088.log [--:--:--][951e540d][build:0.bst ] START Staging sources [00:00:00][951e540d][build:0.bst ] SUCCESS Staging sources [--:--:--][951e540d][build:0.bst ] START Caching artifact [00:00:00][951e540d][build:0.bst ] SUCCESS Caching artifact [00:00:00][951e540d][build:0.bst ] SUCCESS test/0/951e540d-build.8088.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 951e540da71f694ebdc7c43f4b9b4e04492d66cfcda2646136512e5f11d71e15 0.bst cached d9903931ca93121cf6726c2a1139e005050c31e3b5876e12ae3dfaf60bb00c7e 2.bst cached 6cd78736be2e911c686c304d456a2254cf49ca050db71bb66fa4f913840e2698 3.bst cached 41b2e916eebf65fa7a421eecc41e58998041302d1fa247a8b4e84c3e5593ae2e 4.bst cached 41b2e916eebf65fa7a421eecc41e58998041302d1fa247a8b4e84c3e5593ae2e 5.bst cached 5c66255b155a0feef2cec86f646aaa0b02415d68e27d507cbe3df3f85e4c260b 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 4, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets5-exceptions5-tracked5-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cca2a080> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11') ref_storage = 'project.refs', track_targets = ['2.bst', '3.bst'] exceptions = ['2.bst'], tracked = ['3.bst', '4.bst', '5.bst', '6.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cca2a080> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11' element_name = '6.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11 build --track 2.bst --track 3.bst --track-except 2.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:46 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline no reference ???????????????????????????????????????????????????????????????? 4.bst no reference ???????????????????????????????????????????????????????????????? 5.bst no reference ???????????????????????????????????????????????????????????????? 6.bst no reference ???????????????????????????????????????????????????????????????? 3.bst fetch needed 9c68e91af32519492a2f6b629c2427684af049e82a1a1b841cf43342679f2c98 7.bst fetch needed ???????????????????????????????????????????????????????????????? 2.bst fetch needed ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][????????][track:4.bst ] START test/4/????????-track.8104.log [--:--:--][????????][track:4.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:6.bst ] START test/6/????????-track.8106.log [--:--:--][????????][track:6.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][9c68e91a][fetch:7.bst ] START test/7/9c68e91a-fetch.8103.log [--:--:--][9c68e91a][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:5.bst ] START test/5/????????-track.8105.log [--:--:--][????????][track:5.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:3.bst ] START test/3/????????-track.8107.log [--:--:--][????????][track:3.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [00:00:00][????????][track:4.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:4.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:4.bst ] SUCCESS test/4/????????-track.8104.log [00:00:00][????????][track:6.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:6.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:6.bst ] SUCCESS test/6/????????-track.8106.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][????????][track:5.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:5.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:5.bst ] SUCCESS test/5/????????-track.8105.log [00:00:00][????????][track:3.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [--:--:--][????????][track:3.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:3.bst ] SUCCESS test/3/????????-track.8107.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][9c68e91a][build:4.bst ] START test/4/9c68e91a-build.8196.log [--:--:--][9c68e91a][build:4.bst ] START Staging sources [00:00:00][9c68e91a][build:4.bst ] SUCCESS Staging sources [--:--:--][9c68e91a][build:4.bst ] START Caching artifact [00:00:00][9c68e91a][build:4.bst ] SUCCESS Caching artifact [00:00:00][9c68e91a][build:4.bst ] SUCCESS test/4/9c68e91a-build.8196.log [00:00:00][9c68e91a][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets11/repo [00:00:00][9c68e91a][fetch:7.bst ] SUCCESS test/7/9c68e91a-fetch.8103.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][9c68e91a][build:5.bst ] START test/5/9c68e91a-build.8204.log [--:--:--][9c68e91a][build:5.bst ] START Staging sources [00:00:00][9c68e91a][build:5.bst ] SUCCESS Staging sources [--:--:--][9c68e91a][build:5.bst ] START Caching artifact [00:00:00][9c68e91a][build:5.bst ] SUCCESS Caching artifact [00:00:00][9c68e91a][build:5.bst ] SUCCESS test/5/9c68e91a-build.8204.log [--:--:--][9c68e91a][build:7.bst ] START test/7/9c68e91a-build.8227.log [--:--:--][9c68e91a][build:7.bst ] START Staging sources [--:--:--][f914c56a][build:6.bst ] START test/6/f914c56a-build.8228.log [--:--:--][f914c56a][build:6.bst ] START Staging sources [00:00:00][9c68e91a][build:7.bst ] SUCCESS Staging sources [--:--:--][9c68e91a][build:7.bst ] START Caching artifact [00:00:00][f914c56a][build:6.bst ] SUCCESS Staging sources [00:00:00][9c68e91a][build:7.bst ] SUCCESS Caching artifact [00:00:00][9c68e91a][build:7.bst ] SUCCESS test/7/9c68e91a-build.8227.log [--:--:--][f914c56a][build:6.bst ] START Caching artifact Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][f914c56a][build:6.bst ] SUCCESS Caching artifact [00:00:00][f914c56a][build:6.bst ] SUCCESS test/6/f914c56a-build.8228.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][3d7dc52e][build:3.bst ] START test/3/3d7dc52e-build.8241.log [--:--:--][3d7dc52e][build:3.bst ] START Staging sources [00:00:00][3d7dc52e][build:3.bst ] SUCCESS Staging sources [--:--:--][3d7dc52e][build:3.bst ] START Caching artifact [00:00:00][3d7dc52e][build:3.bst ] SUCCESS Caching artifact [00:00:00][3d7dc52e][build:3.bst ] SUCCESS test/3/3d7dc52e-build.8241.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][02aea2b8][build:2.bst ] START test/2/02aea2b8-build.8248.log [--:--:--][02aea2b8][build:2.bst ] START Staging sources [00:00:00][02aea2b8][build:2.bst ] SUCCESS Staging sources [--:--:--][02aea2b8][build:2.bst ] START Caching artifact [00:00:00][02aea2b8][build:2.bst ] SUCCESS Caching artifact [00:00:00][02aea2b8][build:2.bst ] SUCCESS test/2/02aea2b8-build.8248.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][82894772][build:0.bst ] START test/0/82894772-build.8255.log [--:--:--][82894772][build:0.bst ] START Staging sources [00:00:00][82894772][build:0.bst ] SUCCESS Staging sources [--:--:--][82894772][build:0.bst ] START Caching artifact [00:00:00][82894772][build:0.bst ] SUCCESS Caching artifact [00:00:00][82894772][build:0.bst ] SUCCESS test/0/82894772-build.8255.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached 8289477243840d711013d7cd6906f013bf75dead4a391ce5f4157d2989a956b1 0.bst cached 02aea2b8b15f4a388770c4b414e2b77565c15b4287be5bd0f175da6dbdf19611 2.bst cached 3d7dc52e8312fd0b857c0a8faddf7dee051d8b945ee1b51a24d6eaac2010bcdb 3.bst cached 9c68e91af32519492a2f6b629c2427684af049e82a1a1b841cf43342679f2c98 4.bst cached 9c68e91af32519492a2f6b629c2427684af049e82a1a1b841cf43342679f2c98 5.bst cached f914c56a803102f15c83b0db44fb2c82d87ef08706303ea35e8b43f5f6408b32 6.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 4, skipped 0, failed 0 Fetch Queue: processed 1, skipped 6, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m_________ test_build_track[track_targets6-exceptions6-tracked6-inline] _________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cd1989e8> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12') ref_storage = 'inline', track_targets = ['0.bst'] exceptions = ['2.bst', '3.bst'], tracked = ['0.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cd1989e8> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12' element_name = '0.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12 build --track 0.bst --track-except 2.bst --track-except 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:47 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline fetch needed 2efb3fd841d7ec26b3a7b8fe9bf1985e78cd6475bc340ea5c7440d8010b05cbb 4.bst fetch needed 2efb3fd841d7ec26b3a7b8fe9bf1985e78cd6475bc340ea5c7440d8010b05cbb 5.bst fetch needed 962bfe8e7c2453fe16ed7fae0d64ba9ed57c5d4502b79674c75237dd5ff683f5 6.bst fetch needed 9b1eb7611c30e488678982f224114bed6b0462793b5b5b965074a14cf79d1fc0 3.bst fetch needed 2efb3fd841d7ec26b3a7b8fe9bf1985e78cd6475bc340ea5c7440d8010b05cbb 7.bst fetch needed 20b3dd5ce72efa2a260cb69e33b3e571730be95aa9ac0d9f985fdef8658abdea 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][2efb3fd8][fetch:4.bst ] START test/4/2efb3fd8-fetch.8271.log [--:--:--][2efb3fd8][fetch:4.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][9b1eb761][fetch:3.bst ] START test/3/9b1eb761-fetch.8273.log [--:--:--][2efb3fd8][fetch:5.bst ] START test/5/2efb3fd8-fetch.8270.log [--:--:--][2efb3fd8][fetch:5.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][9b1eb761][fetch:3.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][962bfe8e][fetch:6.bst ] START test/6/962bfe8e-fetch.8272.log [--:--:--][962bfe8e][fetch:6.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][20b3dd5c][fetch:2.bst ] START test/2/20b3dd5c-fetch.8275.log [--:--:--][2efb3fd8][fetch:7.bst ] START test/7/2efb3fd8-fetch.8274.log [--:--:--][2efb3fd8][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][20b3dd5c][fetch:2.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][????????][track:0.bst ] START test/0/????????-track.8276.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][9b1eb761][fetch:3.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][962bfe8e][fetch:6.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][962bfe8e][fetch:6.bst ] SUCCESS test/6/962bfe8e-fetch.8272.log [00:00:00][9b1eb761][fetch:3.bst ] SUCCESS test/3/9b1eb761-fetch.8273.log [00:00:00][2efb3fd8][fetch:5.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][2efb3fd8][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][2efb3fd8][fetch:4.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][2efb3fd8][fetch:7.bst ] SUCCESS test/7/2efb3fd8-fetch.8274.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][20b3dd5c][fetch:2.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [00:00:00][20b3dd5c][fetch:2.bst ] SUCCESS test/2/20b3dd5c-fetch.8275.log [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets12/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.8276.log [00:00:00][2efb3fd8][fetch:5.bst ] SUCCESS test/5/2efb3fd8-fetch.8270.log [00:00:00][2efb3fd8][fetch:4.bst ] SUCCESS test/4/2efb3fd8-fetch.8271.log [--:--:--][2efb3fd8][build:7.bst ] START test/7/2efb3fd8-build.8377.log [--:--:--][2efb3fd8][build:7.bst ] START Staging sources [00:00:00][2efb3fd8][build:7.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][2efb3fd8][build:7.bst ] START Caching artifact [00:00:00][2efb3fd8][build:7.bst ] SUCCESS Caching artifact [00:00:00][2efb3fd8][build:7.bst ] SUCCESS test/7/2efb3fd8-build.8377.log [--:--:--][2efb3fd8][build:5.bst ] START test/5/2efb3fd8-build.8396.log [--:--:--][2efb3fd8][build:5.bst ] START Staging sources [00:00:00][2efb3fd8][build:5.bst ] SUCCESS Staging sources [--:--:--][2efb3fd8][build:4.bst ] START test/4/2efb3fd8-build.8402.log [--:--:--][2efb3fd8][build:4.bst ] START Staging sources [--:--:--][2efb3fd8][build:5.bst ] START Caching artifact [00:00:00][2efb3fd8][build:5.bst ] SUCCESS Caching artifact [00:00:00][2efb3fd8][build:5.bst ] SUCCESS test/5/2efb3fd8-build.8396.log [00:00:00][2efb3fd8][build:4.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][2efb3fd8][build:4.bst ] START Caching artifact [00:00:00][2efb3fd8][build:4.bst ] SUCCESS Caching artifact [00:00:00][2efb3fd8][build:4.bst ] SUCCESS test/4/2efb3fd8-build.8402.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][962bfe8e][build:6.bst ] START test/6/962bfe8e-build.8414.log [--:--:--][962bfe8e][build:6.bst ] START Staging sources [00:00:00][962bfe8e][build:6.bst ] SUCCESS Staging sources [--:--:--][962bfe8e][build:6.bst ] START Caching artifact [00:00:00][962bfe8e][build:6.bst ] SUCCESS Caching artifact [00:00:00][962bfe8e][build:6.bst ] SUCCESS test/6/962bfe8e-build.8414.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][9b1eb761][build:3.bst ] START test/3/9b1eb761-build.8421.log [--:--:--][9b1eb761][build:3.bst ] START Staging sources [00:00:00][9b1eb761][build:3.bst ] SUCCESS Staging sources [--:--:--][9b1eb761][build:3.bst ] START Caching artifact [00:00:00][9b1eb761][build:3.bst ] SUCCESS Caching artifact [00:00:00][9b1eb761][build:3.bst ] SUCCESS test/3/9b1eb761-build.8421.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][20b3dd5c][build:2.bst ] START test/2/20b3dd5c-build.8428.log [--:--:--][20b3dd5c][build:2.bst ] START Staging sources [00:00:00][20b3dd5c][build:2.bst ] SUCCESS Staging sources [--:--:--][20b3dd5c][build:2.bst ] START Caching artifact [00:00:00][20b3dd5c][build:2.bst ] SUCCESS Caching artifact [00:00:00][20b3dd5c][build:2.bst ] SUCCESS test/2/20b3dd5c-build.8428.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][b14f1bb3][build:0.bst ] START test/0/b14f1bb3-build.8435.log [--:--:--][b14f1bb3][build:0.bst ] START Staging sources [00:00:00][b14f1bb3][build:0.bst ] SUCCESS Staging sources [--:--:--][b14f1bb3][build:0.bst ] START Caching artifact [00:00:00][b14f1bb3][build:0.bst ] SUCCESS Caching artifact [00:00:00][b14f1bb3][build:0.bst ] SUCCESS test/0/b14f1bb3-build.8435.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached b14f1bb3d06ed1c07e911b857e29c2bd09ce93642e9cb44a756cffaf6ed9c873 0.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 1, skipped 0, failed 0 Fetch Queue: processed 6, skipped 1, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m______ test_build_track[track_targets6-exceptions6-tracked6-project.refs] ______[0m cli = <tests.testutils.runcli.Cli object at 0x7f70cc992dd8> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13') ref_storage = 'project.refs', track_targets = ['0.bst'] exceptions = ['2.bst', '3.bst'], tracked = ['0.bst'] [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("ref_storage", [('inline'), ('project.refs')])[0m [1m @pytest.mark.parametrize("track_targets,exceptions,tracked", [[0m [1m # Test with no exceptions[0m [1m (['0.bst'], [], ['0.bst', '2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m (['3.bst'], [], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['2.bst', '3.bst'], [], ['2.bst', '3.bst', '4.bst', '5.bst', '6.bst', '7.bst']),[0m [1m [0m [1m # Test excepting '2.bst'[0m [1m (['0.bst'], ['2.bst'], ['0.bst', '3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m (['3.bst'], ['2.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst'], ['3.bst', '4.bst', '5.bst', '6.bst']),[0m [1m [0m [1m # Test excepting '2.bst' and '3.bst'[0m [1m (['0.bst'], ['2.bst', '3.bst'], ['0.bst']),[0m [1m (['3.bst'], ['2.bst', '3.bst'], []),[0m [1m (['2.bst', '3.bst'], ['2.bst', '3.bst'], [])[0m [1m ])[0m [1m def test_build_track(cli, datafiles, tmpdir, ref_storage,[0m [1m track_targets, exceptions, tracked):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m configure_project(project, {[0m [1m 'ref-storage': ref_storage[0m [1m })[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '2.bst',[0m [1m '3.bst'[0m [1m ],[0m [1m '2.bst': [[0m [1m '3.bst',[0m [1m '7.bst'[0m [1m ],[0m [1m '3.bst': [[0m [1m '4.bst',[0m [1m '5.bst',[0m [1m '6.bst'[0m [1m ],[0m [1m '4.bst': [],[0m [1m '5.bst': [],[0m [1m '6.bst': [[0m [1m '5.bst'[0m [1m ],[0m [1m '7.bst': [][0m [1m }[0m [1m [0m [1m initial_project_refs = {}[0m [1m for element, dependencies in create_elements.items():[0m [1m # Test the element inconsistency resolution by ensuring that[0m [1m # only elements that aren't tracked have refs[0m [1m if element in set(tracked):[0m [1m # Elements which should not have a ref set[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m elif ref_storage == 'project.refs':[0m [1m # Store a ref in project.refs[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies)[0m [1m initial_project_refs[element] = [{'ref': ref}][0m [1m else:[0m [1m # Store a ref in the element itself[0m [1m #[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m [0m [1m # Generate initial project.refs[0m [1m if ref_storage == 'project.refs':[0m [1m project_refs = {[0m [1m 'projects': {[0m [1m 'test': initial_project_refs[0m [1m }[0m [1m }[0m [1m _yaml.dump(project_refs, os.path.join(project, 'project.refs'))[0m [1m [0m [1m args = ['build'][0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track'), track_targets))[0m [1m args += itertools.chain.from_iterable(zip(itertools.repeat('--track-except'), exceptions))[0m [1m args += ['0.bst'][0m [1m [0m [1m result = cli.run(project=project, silent=True, args=args)[0m [1m result.assert_success()[0m [1m tracked_elements = result.get_tracked_elements()[0m [1m [0m [1m assert set(tracked_elements) == set(tracked)[0m [1m [0m [1m # Delete element sources[0m [1m source_dir = os.path.join(project, 'cache', 'sources')[0m [1m shutil.rmtree(source_dir)[0m [1m [0m [1m # Delete artifacts one by one and assert element states[0m [1m for target in set(tracked):[0m [1m> cli.remove_artifact_from_cache(project, target)[0m [31m[1mtests/frontend/buildtrack.py[0m:129: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70cc992dd8> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13' element_name = '0.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13 build --track 0.bst --track-except 2.bst --track-except 3.bst 0.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] WARNING Ignoring redundant source references The following inline specified source references will be ignored: 0.bst [line 6 column 2]:(None, []) 3.bst [line 7 column 2]:(None, []) 4.bst [line 4 column 2]:(None, []) 5.bst [line 4 column 2]:(None, []) 6.bst [line 5 column 2]:(None, []) 2.bst [line 6 column 2]:(None, []) 7.bst [line 4 column 2]:(None, []) [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:56:49 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13) Targets: 0.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline fetch needed 6a155b0fcba0cdb8d5a3fecee234c88975f9d5d11d2faf669e68e7824fc2a046 4.bst fetch needed 6a155b0fcba0cdb8d5a3fecee234c88975f9d5d11d2faf669e68e7824fc2a046 5.bst fetch needed 48f8618d3122489cf7edc1a3848c4bd39e42bdc416a218e9b8b31155979aa417 6.bst fetch needed eb35f4511ef8e2c52535e57255a13fc23ded66a44d5e5a4b58ce7f72c6272b1a 3.bst fetch needed 6a155b0fcba0cdb8d5a3fecee234c88975f9d5d11d2faf669e68e7824fc2a046 7.bst fetch needed 12cb506d87ca1c3261789aeda0b17736742dca004ede0876a2b21a4d772b77f8 2.bst no reference ???????????????????????????????????????????????????????????????? 0.bst =============================================================================== [--:--:--][6a155b0f][fetch:4.bst ] START test/4/6a155b0f-fetch.8451.log [--:--:--][6a155b0f][fetch:5.bst ] START test/5/6a155b0f-fetch.8450.log [--:--:--][6a155b0f][fetch:4.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][eb35f451][fetch:3.bst ] START test/3/eb35f451-fetch.8453.log [--:--:--][6a155b0f][fetch:5.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][eb35f451][fetch:3.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][48f8618d][fetch:6.bst ] START test/6/48f8618d-fetch.8452.log [--:--:--][12cb506d][fetch:2.bst ] START test/2/12cb506d-fetch.8455.log [--:--:--][12cb506d][fetch:2.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][48f8618d][fetch:6.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][6a155b0f][fetch:7.bst ] START test/7/6a155b0f-fetch.8454.log [--:--:--][6a155b0f][fetch:7.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][????????][track:0.bst ] START test/0/????????-track.8456.log [--:--:--][????????][track:0.bst ] START Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][6a155b0f][fetch:4.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][eb35f451][fetch:3.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][eb35f451][fetch:3.bst ] SUCCESS test/3/eb35f451-fetch.8453.log [00:00:00][48f8618d][fetch:6.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][12cb506d][fetch:2.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][48f8618d][fetch:6.bst ] SUCCESS test/6/48f8618d-fetch.8452.log [00:00:00][6a155b0f][fetch:5.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][6a155b0f][fetch:4.bst ] SUCCESS test/4/6a155b0f-fetch.8451.log [00:00:00][12cb506d][fetch:2.bst ] SUCCESS test/2/12cb506d-fetch.8455.log [00:00:00][6a155b0f][fetch:5.bst ] SUCCESS test/5/6a155b0f-fetch.8450.log Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][6a155b0f][fetch:7.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [00:00:00][6a155b0f][fetch:7.bst ] SUCCESS test/7/6a155b0f-fetch.8454.log [00:00:00][????????][track:0.bst ] SUCCESS Tracking master from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_targets13/repo [--:--:--][????????][track:0.bst ] INFO Found new revision: ('2abde3f5dd1611de18c48ad51dc16457f5c47f55', []) [00:00:00][????????][track:0.bst ] SUCCESS test/0/????????-track.8456.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][6a155b0f][build:7.bst ] START test/7/6a155b0f-build.8551.log [--:--:--][6a155b0f][build:7.bst ] START Staging sources [00:00:00][6a155b0f][build:7.bst ] SUCCESS Staging sources [--:--:--][6a155b0f][build:7.bst ] START Caching artifact [00:00:00][6a155b0f][build:7.bst ] SUCCESS Caching artifact [00:00:00][6a155b0f][build:7.bst ] SUCCESS test/7/6a155b0f-build.8551.log [--:--:--][6a155b0f][build:5.bst ] START test/5/6a155b0f-build.8570.log [--:--:--][6a155b0f][build:5.bst ] START Staging sources [00:00:00][6a155b0f][build:5.bst ] SUCCESS Staging sources [--:--:--][6a155b0f][build:4.bst ] START test/4/6a155b0f-build.8577.log [--:--:--][6a155b0f][build:4.bst ] START Staging sources [--:--:--][6a155b0f][build:5.bst ] START Caching artifact [00:00:00][6a155b0f][build:5.bst ] SUCCESS Caching artifact [00:00:00][6a155b0f][build:5.bst ] SUCCESS test/5/6a155b0f-build.8570.log [00:00:00][6a155b0f][build:4.bst ] SUCCESS Staging sources Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][6a155b0f][build:4.bst ] START Caching artifact [00:00:00][6a155b0f][build:4.bst ] SUCCESS Caching artifact [00:00:00][6a155b0f][build:4.bst ] SUCCESS test/4/6a155b0f-build.8577.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][48f8618d][build:6.bst ] START test/6/48f8618d-build.8588.log [--:--:--][48f8618d][build:6.bst ] START Staging sources [00:00:00][48f8618d][build:6.bst ] SUCCESS Staging sources [--:--:--][48f8618d][build:6.bst ] START Caching artifact [00:00:00][48f8618d][build:6.bst ] SUCCESS Caching artifact [00:00:00][48f8618d][build:6.bst ] SUCCESS test/6/48f8618d-build.8588.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][eb35f451][build:3.bst ] START test/3/eb35f451-build.8595.log [--:--:--][eb35f451][build:3.bst ] START Staging sources [00:00:00][eb35f451][build:3.bst ] SUCCESS Staging sources [--:--:--][eb35f451][build:3.bst ] START Caching artifact [00:00:00][eb35f451][build:3.bst ] SUCCESS Caching artifact [00:00:00][eb35f451][build:3.bst ] SUCCESS test/3/eb35f451-build.8595.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][12cb506d][build:2.bst ] START test/2/12cb506d-build.8602.log [--:--:--][12cb506d][build:2.bst ] START Staging sources [00:00:00][12cb506d][build:2.bst ] SUCCESS Staging sources [--:--:--][12cb506d][build:2.bst ] START Caching artifact [00:00:00][12cb506d][build:2.bst ] SUCCESS Caching artifact [00:00:00][12cb506d][build:2.bst ] SUCCESS test/2/12cb506d-build.8602.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][dc2982f6][build:0.bst ] START test/0/dc2982f6-build.8609.log [--:--:--][dc2982f6][build:0.bst ] START Staging sources [00:00:00][dc2982f6][build:0.bst ] SUCCESS Staging sources [--:--:--][dc2982f6][build:0.bst ] START Caching artifact [00:00:00][dc2982f6][build:0.bst ] SUCCESS Caching artifact [00:00:00][dc2982f6][build:0.bst ] SUCCESS test/0/dc2982f6-build.8609.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:01][][] SUCCESS Build Resolved key Summary cached dc2982f6c943104de599a5865216a9689c97ddd4b7e3dcbd5ecfe01e4962e4e6 0.bst Pipeline Summary Total: 7 Session: 7 Track Queue: processed 1, skipped 0, failed 0 Fetch Queue: processed 6, skipped 1, failed 0 Build Queue: processed 7, skipped 0, failed 0 [31m[1m____________________ test_build_track_track_first[--strict] ____________________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70c68a5cf8> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0') strict = '--strict' [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("strict", ['--strict', '--no-strict'])[0m [1m def test_build_track_track_first(cli, datafiles, tmpdir, strict):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '1.bst'[0m [1m ],[0m [1m '1.bst': [],[0m [1m '2.bst': [[0m [1m '0.bst'[0m [1m ][0m [1m }[0m [1m for element, dependencies in create_elements.items():[0m [1m # We set a ref so that 0.bst can already be built even if[0m [1m # 1.bst has not been tracked yet.[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m repo.add_commit()[0m [1m [0m [1m # Build 1.bst and 2.bst first so we have an artifact for them[0m [1m args = [strict, 'build', '2.bst'][0m [1m result = cli.run(args=args, project=project, silent=True)[0m [1m result.assert_success()[0m [1m [0m [1m # Test building 0.bst while tracking 1.bst[0m [1m> cli.remove_artifact_from_cache(project, '0.bst')[0m [31m[1mtests/frontend/buildtrack.py[0m:291: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70c68a5cf8> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0' element_name = '0.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h [master e0d98f5] Additional commit [master 6b5ef79] Additional commit [master 2b92a7d] Additional commit BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0 --strict build 2.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:57:09 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0) Targets: 2.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/cache/artifacts Strict Build Plan: Yes Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline fetch needed e705efe0a5b19d6d62a768f394b09e5e860ff2250ab7339e775925ae41d4c8a1 1.bst fetch needed f9af5cdff3b6a11a48c8e748cefb934bb4dc1977bb242ec3c5509ebd4917daa3 0.bst fetch needed 5002283ce84f77d999fb93a0bf62ba2c60eeaa1c11703b05fed9fc5518585a1b 2.bst =============================================================================== [--:--:--][f9af5cdf][fetch:0.bst ] START test/0/f9af5cdf-fetch.11154.log [--:--:--][f9af5cdf][fetch:0.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo [--:--:--][e705efe0][fetch:1.bst ] START test/1/e705efe0-fetch.11153.log [--:--:--][e705efe0][fetch:1.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo [--:--:--][5002283c][fetch:2.bst ] START test/2/5002283c-fetch.11155.log [--:--:--][5002283c][fetch:2.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo [00:00:00][f9af5cdf][fetch:0.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo [00:00:00][e705efe0][fetch:1.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo [00:00:00][f9af5cdf][fetch:0.bst ] SUCCESS test/0/f9af5cdf-fetch.11154.log [00:00:00][e705efe0][fetch:1.bst ] SUCCESS test/1/e705efe0-fetch.11153.log [00:00:00][5002283c][fetch:2.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__0/repo Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][5002283c][fetch:2.bst ] SUCCESS test/2/5002283c-fetch.11155.log [--:--:--][e705efe0][build:1.bst ] START test/1/e705efe0-build.11202.log [--:--:--][e705efe0][build:1.bst ] START Staging sources [00:00:00][e705efe0][build:1.bst ] SUCCESS Staging sources [--:--:--][e705efe0][build:1.bst ] START Caching artifact [00:00:00][e705efe0][build:1.bst ] SUCCESS Caching artifact [00:00:00][e705efe0][build:1.bst ] SUCCESS test/1/e705efe0-build.11202.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][f9af5cdf][build:0.bst ] START test/0/f9af5cdf-build.11217.log [--:--:--][f9af5cdf][build:0.bst ] START Staging sources [00:00:00][f9af5cdf][build:0.bst ] SUCCESS Staging sources [--:--:--][f9af5cdf][build:0.bst ] START Caching artifact [00:00:00][f9af5cdf][build:0.bst ] SUCCESS Caching artifact [00:00:00][f9af5cdf][build:0.bst ] SUCCESS test/0/f9af5cdf-build.11217.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][5002283c][build:2.bst ] START test/2/5002283c-build.11224.log [--:--:--][5002283c][build:2.bst ] START Staging sources [00:00:00][5002283c][build:2.bst ] SUCCESS Staging sources [--:--:--][5002283c][build:2.bst ] START Caching artifact [00:00:00][5002283c][build:2.bst ] SUCCESS Caching artifact [00:00:00][5002283c][build:2.bst ] SUCCESS test/2/5002283c-build.11224.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][][] SUCCESS Build Pipeline Summary Total: 3 Session: 3 Fetch Queue: processed 3, skipped 0, failed 0 Build Queue: processed 3, skipped 0, failed 0 [31m[1m__________________ test_build_track_track_first[--no-strict] ___________________[0m cli = <tests.testutils.runcli.Cli object at 0x7f70ccb16dd8> datafiles = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1') tmpdir = local('/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1') strict = '--no-strict' [1m @pytest.mark.datafiles(os.path.join(DATA_DIR))[0m [1m @pytest.mark.parametrize("strict", ['--strict', '--no-strict'])[0m [1m def test_build_track_track_first(cli, datafiles, tmpdir, strict):[0m [1m project = os.path.join(datafiles.dirname, datafiles.basename)[0m [1m dev_files_path = os.path.join(project, 'files', 'dev-files')[0m [1m element_path = os.path.join(project, 'elements')[0m [1m [0m [1m repo = create_repo('git', str(tmpdir))[0m [1m ref = repo.create(dev_files_path)[0m [1m [0m [1m create_elements = {[0m [1m '0.bst': [[0m [1m '1.bst'[0m [1m ],[0m [1m '1.bst': [],[0m [1m '2.bst': [[0m [1m '0.bst'[0m [1m ][0m [1m }[0m [1m for element, dependencies in create_elements.items():[0m [1m # We set a ref so that 0.bst can already be built even if[0m [1m # 1.bst has not been tracked yet.[0m [1m create_element(repo, element, element_path, dependencies, ref=ref)[0m [1m repo.add_commit()[0m [1m [0m [1m # Build 1.bst and 2.bst first so we have an artifact for them[0m [1m args = [strict, 'build', '2.bst'][0m [1m result = cli.run(args=args, project=project, silent=True)[0m [1m result.assert_success()[0m [1m [0m [1m # Test building 0.bst while tracking 1.bst[0m [1m> cli.remove_artifact_from_cache(project, '0.bst')[0m [31m[1mtests/frontend/buildtrack.py[0m:291: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <tests.testutils.runcli.Cli object at 0x7f70ccb16dd8> project = '/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1' element_name = '0.bst' [1m def remove_artifact_from_cache(self, project, element_name,[0m [1m *, cache_dir=None):[0m [1m # Read configuration to figure out where artifacts are stored[0m [1m if not cache_dir:[0m [1m> cache_dir = self.config.get([0m [1m 'artifactdir',[0m [1m os.path.join(project, 'cache', 'artifacts')[0m [1m )[0m [31m[1mE AttributeError: 'NoneType' object has no attribute 'get'[0m [31m[1mtests/testutils/runcli.py[0m:250: AttributeError ----------------------------- Captured stdout call ----------------------------- Initialized empty Git repository in /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo/.git/ [master (root-commit) 2abde3f] Initial commit 1 file changed, 12 insertions(+) create mode 100644 usr/include/pony.h [master e0d98f5] Additional commit [master 6b5ef79] Additional commit [master 2b92a7d] Additional commit BuildStream exited with code 0 for invocation: bst --no-colors --no-verbose --config /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/buildstream.conf --directory /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1 --no-strict build 2.bst Program stderr was: [--:--:--][][] START Build [--:--:--][][] START Loading elements [00:00:00][][] SUCCESS Loading elements [--:--:--][][] START Resolving elements [00:00:00][][] SUCCESS Resolving elements [--:--:--][][] START Resolving cached state [00:00:00][][] SUCCESS Resolving cached state [--:--:--][][] START Checking sources [00:00:00][][] SUCCESS Checking sources BuildStream Version 1.3.0+1299.g745794d8 Session Start: Friday, 18-01-2019 at 16:57:10 Project: test (/builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1) Targets: 2.bst User Configuration Configuration File: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/buildstream.conf Log Files: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/logs Source Mirrors: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/sources Build Area: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/build Artifact Cache: /builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/cache/artifacts Strict Build Plan: No Maximum Fetch Tasks: 10 Maximum Build Tasks: 4 Maximum Push Tasks: 4 Maximum Network Retries: 2 Pipeline fetch needed dfa1e75b577becc672f90b117ec646c720eae87a02eb6eaf5f94f01c026b2bb6 1.bst fetch needed e569a5540fe1bf9f27b5c8408c5a61b33fb3e1c02a60bbea170a8b9d8f1adc18 0.bst fetch needed b74d8b8c0a5f5207e99ec928007262b50fd4388b395d5ee6f2b9fb5096de74d9 2.bst =============================================================================== [--:--:--][e569a554][fetch:0.bst ] START test/0/e569a554-fetch.11246.log [--:--:--][e569a554][fetch:0.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo [--:--:--][dfa1e75b][fetch:1.bst ] START test/1/dfa1e75b-fetch.11245.log [--:--:--][dfa1e75b][fetch:1.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo [--:--:--][b74d8b8c][fetch:2.bst ] START test/2/b74d8b8c-fetch.11247.log [--:--:--][b74d8b8c][fetch:2.bst ] START Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo [00:00:00][e569a554][fetch:0.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo [00:00:00][e569a554][fetch:0.bst ] SUCCESS test/0/e569a554-fetch.11246.log [00:00:00][b74d8b8c][fetch:2.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo [00:00:00][b74d8b8c][fetch:2.bst ] SUCCESS test/2/b74d8b8c-fetch.11247.log [00:00:00][dfa1e75b][fetch:1.bst ] SUCCESS Fetching from file:///builds/BuildStream/buildstream/.tox/py35/tmp/test_build_track_track_first__1/repo Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][dfa1e75b][fetch:1.bst ] SUCCESS test/1/dfa1e75b-fetch.11245.log [--:--:--][dfa1e75b][build:1.bst ] START test/1/dfa1e75b-build.11302.log [--:--:--][dfa1e75b][build:1.bst ] START Staging sources [00:00:00][dfa1e75b][build:1.bst ] SUCCESS Staging sources [--:--:--][dfa1e75b][build:1.bst ] START Caching artifact [00:00:00][dfa1e75b][build:1.bst ] SUCCESS Caching artifact [00:00:00][dfa1e75b][build:1.bst ] SUCCESS test/1/dfa1e75b-build.11302.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][e569a554][build:0.bst ] START test/0/e569a554-build.11309.log [--:--:--][e569a554][build:0.bst ] START Staging sources [00:00:00][e569a554][build:0.bst ] SUCCESS Staging sources [--:--:--][e569a554][build:0.bst ] START Caching artifact [00:00:00][e569a554][build:0.bst ] SUCCESS Caching artifact [00:00:00][e569a554][build:0.bst ] SUCCESS test/0/e569a554-build.11309.log Coverage.py warning: No data was collected. (no-data-collected) [--:--:--][b74d8b8c][build:2.bst ] START test/2/b74d8b8c-build.11316.log [--:--:--][b74d8b8c][build:2.bst ] START Staging sources [00:00:00][b74d8b8c][build:2.bst ] SUCCESS Staging sources [--:--:--][b74d8b8c][build:2.bst ] START Caching artifact [00:00:00][b74d8b8c][build:2.bst ] SUCCESS Caching artifact [00:00:00][b74d8b8c][build:2.bst ] SUCCESS test/2/b74d8b8c-build.11316.log Coverage.py warning: No data was collected. (no-data-collected) [00:00:00][][] SUCCESS Build Pipeline Summary Total: 3 Session: 3 Fetch Queue: processed 3, skipped 0, failed 0 Build Queue: processed 3, skipped 0, failed 0 ----------- coverage: platform linux, python 3.5.3-final-0 ----------- Name Stmts Miss Cover Missing ----------------------------------------------------------------------------------------- buildstream/__init__.py 14 0 100.00% buildstream/_artifactcache.py 315 21 93.33% 168-169, 380, 382, 401, 661-662, 684, 701, 704, 708, 729, 732, 764-765, 791, 828-829, 849, 853, 875 buildstream/_cachekey.py 7 0 100.00% buildstream/_cas/__init__.py 2 0 100.00% buildstream/_cas/cascache.py 468 30 93.59% 61, 128, 138-142, 224, 227-228, 247-251, 300, 313, 404-405, 512-513, 529, 550, 662-666, 674, 685, 721-724, 727-730 buildstream/_cas/casremote.py 239 51 78.66% 38-39, 46, 75-76, 100-126, 139-143, 151-153, 161-164, 186, 191-198, 209-211, 224-233, 335, 338, 341, 383 buildstream/_cas/casserver.py 335 88 73.73% 103-144, 158-159, 162-163, 168-169, 172, 183-184, 190-191, 199-200, 207-208, 212, 223-226, 231-232, 235-236, 242-243, 247-248, 272, 287-288, 296-297, 300-301, 309-310, 319-320, 327-328, 338-341, 392-393, 413, 416, 423-424, 432-434, 437, 442, 448-449, 491, 505-509, 517-518, 525 buildstream/_context.py 255 16 93.73% 177-180, 470, 475-476, 546-550, 556-557, 672, 695-696 buildstream/_elementfactory.py 12 0 100.00% buildstream/_exceptions.py 105 0 100.00% buildstream/_frontend/__init__.py 6 0 100.00% buildstream/_frontend/app.py 383 142 62.92% 97, 111, 113, 134, 194-195, 335-336, 342-343, 357-358, 383, 421, 431, 445-454, 472-509, 536-537, 552, 560-622, 699, 703-708, 719-720, 758-838 buildstream/_frontend/cli.py 491 73 85.13% 41, 56, 95-98, 125-126, 130-133, 185-187, 280-293, 348-350, 353, 520, 582, 604, 615-616, 649-650, 658-659, 672, 726-727, 817-818, 829, 897, 901-902, 914, 917-921, 923, 926-928, 958, 961, 964-966, 998, 1008-1012, 1054-1056, 1061-1062, 1110-1111, 1130-1131 buildstream/_frontend/complete.py 145 10 93.10% 98-101, 172, 176, 223, 263, 272, 306-309 buildstream/_frontend/linuxapp.py 18 12 33.33% 31-51, 63-64 buildstream/_frontend/profile.py 17 0 100.00% buildstream/_frontend/status.py 207 122 41.06% 136-139, 153-192, 216-244, 247-250, 253-263, 266-270, 273-294, 297-298, 305-315, 354-398, 404-419, 422-429, 483-495 buildstream/_frontend/widget.py 393 15 96.18% 74, 81, 262, 413, 423, 504, 521, 582, 605-607, 613, 623, 652, 665 buildstream/_fuse/__init__.py 1 0 100.00% buildstream/_fuse/fuse.py 415 167 59.76% 39-50, 70-71, 77, 82, 86-120, 166-273, 292-301, 405, 412, 422-424, 491-492, 499-500, 504, 522-524, 531, 548, 562, 566, 572, 576, 580-585, 588, 593, 602, 623, 631-637, 641, 649, 656-661, 665, 673-683, 686-701, 704, 722-727, 730, 741, 758, 768-773, 782-785, 792-797, 801-808, 811, 827, 831, 836, 839, 850, 858, 861, 864, 878-880, 897, 900, 905, 908, 921, 931, 939, 942, 945, 951, 954, 957, 960, 971, 976, 979, 982, 987, 990, 997-1006 buildstream/_fuse/hardlinks.py 112 21 81.25% 49, 106, 109-113, 116-120, 142, 147, 157-159, 167, 170, 177, 180, 207-209, 218 buildstream/_fuse/mount.py 48 2 95.83% 130, 166 buildstream/_gitsourcebase.py 341 16 95.31% 90-91, 236, 274, 393-394, 471, 474, 488, 495-500, 522, 601, 627 buildstream/_includes.py 58 1 98.28% 75 buildstream/_loader/__init__.py 3 0 100.00% buildstream/_loader/loadelement.py 66 4 93.94% 144, 157-158, 180 buildstream/_loader/loader.py 305 20 93.44% 63, 229, 246, 255-256, 407, 410-416, 530, 534, 544, 557, 590-597, 719 buildstream/_loader/metaelement.py 16 0 100.00% buildstream/_loader/metasource.py 9 0 100.00% buildstream/_loader/types.py 25 0 100.00% buildstream/_message.py 32 0 100.00% buildstream/_options/__init__.py 1 0 100.00% buildstream/_options/option.py 21 0 100.00% buildstream/_options/optionarch.py 27 0 100.00% buildstream/_options/optionbool.py 23 1 95.65% 41 buildstream/_options/optioneltmask.py 12 0 100.00% buildstream/_options/optionenum.py 35 0 100.00% buildstream/_options/optionflags.py 38 1 97.37% 55 buildstream/_options/optionos.py 10 0 100.00% buildstream/_options/optionpool.py 110 0 100.00% buildstream/_ostree.py 83 26 68.67% 114-115, 140, 192-211, 234, 266-267, 271-276 buildstream/_pipeline.py 176 1 99.43% 492 buildstream/_platform/__init__.py 1 0 100.00% buildstream/_platform/darwin.py 17 17 0.00% 18-48 buildstream/_platform/linux.py 78 13 83.33% 79-82, 89, 92-102, 113, 148-149 buildstream/_platform/platform.py 56 12 78.57% 44, 47-50, 54-59, 72, 144, 148 buildstream/_platform/unix.py 21 21 0.00% 20-56 buildstream/_plugincontext.py 99 25 74.75% 87, 91-129, 144-147, 178-179, 197 buildstream/_project.py 337 10 97.03% 70, 413, 479-480, 515, 517, 567, 726, 744, 779 buildstream/_projectrefs.py 62 2 96.77% 79, 159 buildstream/_scheduler/__init__.py 8 0 100.00% buildstream/_scheduler/jobs/__init__.py 4 0 100.00% buildstream/_scheduler/jobs/cachesizejob.py 16 0 100.00% buildstream/_scheduler/jobs/cleanupjob.py 14 0 100.00% buildstream/_scheduler/jobs/elementjob.py 30 0 100.00% buildstream/_scheduler/jobs/job.py 201 34 83.08% 175-185, 200-201, 209-211, 218-235, 242-248, 282, 295, 372, 377, 418-431, 558, 579, 598 buildstream/_scheduler/queues/__init__.py 1 0 100.00% buildstream/_scheduler/queues/buildqueue.py 48 1 97.92% 79 buildstream/_scheduler/queues/fetchqueue.py 30 1 96.67% 53 buildstream/_scheduler/queues/pullqueue.py 26 1 96.15% 61 buildstream/_scheduler/queues/pushqueue.py 14 0 100.00% buildstream/_scheduler/queues/queue.py 108 6 94.44% 104, 117, 250-253 buildstream/_scheduler/queues/trackqueue.py 22 0 100.00% buildstream/_scheduler/resources.py 38 1 97.37% 87 buildstream/_scheduler/scheduler.py 181 39 78.45% 204-210, 232, 297, 443-447, 454-459, 472-481, 488, 497-505, 524-536 buildstream/_signals.py 69 21 69.57% 37-54, 105-117, 172, 195-203 buildstream/_site.py 20 2 90.00% 64-65 buildstream/_sourcefactory.py 12 0 100.00% buildstream/_stream.py 479 60 87.47% 149, 314, 416-417, 478-479, 525-530, 535, 539, 568, 614-615, 636, 647, 649, 653, 661-664, 670-671, 705, 781, 829-830, 894, 1026-1030, 1091-1092, 1095, 1102, 1105, 1113-1114, 1141-1142, 1152, 1163-1164, 1170-1171, 1193-1194, 1221-1228, 1247-1248 buildstream/_variables.py 81 17 79.01% 70-74, 166-172, 182-186, 195 buildstream/_versions.py 2 0 100.00% buildstream/_workspaces.py 199 10 94.97% 322-323, 363-364, 383, 451, 491, 514, 554, 593 buildstream/_yaml.py 504 36 92.86% 370, 395, 471, 481, 558, 592-593, 746, 804, 866, 992, 997, 1004, 1009-1015, 1023, 1035-1039, 1045-1053, 1056-1058, 1088, 1118, 1120 buildstream/_yamlcache.py 149 12 91.95% 76-78, 102-103, 154-155, 353-358, 364 buildstream/buildelement.py 76 7 90.79% 252, 269-276 buildstream/element.py 1062 47 95.57% 270, 290, 307, 345, 367, 415, 456, 488-490, 514-516, 732, 754-758, 838, 881, 1024, 1253, 1258, 1328-1330, 1413, 1555, 1612-1613, 1774, 1802, 1827-1828, 1885, 2236-2247, 2251-2255, 2311, 2443, 2634, 2663, 2693, 2729-2730 buildstream/plugin.py 142 7 95.07% 236, 257, 279, 323-324, 530, 724 buildstream/plugins/elements/autotools.py 9 0 100.00% buildstream/plugins/elements/cmake.py 9 0 100.00% buildstream/plugins/elements/compose.py 79 3 96.20% 136, 140, 177 buildstream/plugins/elements/distutils.py 9 2 77.78% 44-45 buildstream/plugins/elements/filter.py 42 0 100.00% buildstream/plugins/elements/import.py 48 2 95.83% 56, 87 buildstream/plugins/elements/junction.py 24 4 83.33% 153, 156, 159, 162 buildstream/plugins/elements/make.py 9 0 100.00% buildstream/plugins/elements/makemaker.py 9 2 77.78% 44-45 buildstream/plugins/elements/manual.py 9 0 100.00% buildstream/plugins/elements/modulebuild.py 9 2 77.78% 44-45 buildstream/plugins/elements/pip.py 9 0 100.00% buildstream/plugins/elements/qmake.py 9 2 77.78% 44-45 buildstream/plugins/elements/script.py 17 0 100.00% buildstream/plugins/elements/stack.py 20 0 100.00% buildstream/plugins/sources/__init__.py 0 0 100.00% buildstream/plugins/sources/_downloadablefilesource.py 152 12 92.11% 58, 62, 66, 148-149, 154-155, 180, 213, 242-244 buildstream/plugins/sources/bzr.py 98 10 89.80% 111, 167-168, 175-176, 181-184, 209-210 buildstream/plugins/sources/deb.py 21 0 100.00% buildstream/plugins/sources/git.py 6 0 100.00% buildstream/plugins/sources/local.py 63 1 98.41% 81 buildstream/plugins/sources/ostree.py 94 9 90.43% 110, 147-148, 161-162, 191, 195-196, 200 buildstream/plugins/sources/patch.py 28 1 96.43% 72 buildstream/plugins/sources/pip.py 90 15 83.33% 137, 153, 181-201, 213, 247 buildstream/plugins/sources/remote.py 23 0 100.00% buildstream/plugins/sources/tar.py 83 4 95.18% 121-122, 188, 196 buildstream/plugins/sources/zip.py 76 5 93.42% 109, 115-116, 167, 175 buildstream/sandbox/__init__.py 3 0 100.00% buildstream/sandbox/_config.py 13 0 100.00% buildstream/sandbox/_mount.py 54 0 100.00% buildstream/sandbox/_mounter.py 51 36 29.41% 34-57, 62-71, 95-105, 132-147 buildstream/sandbox/_sandboxbwrap.py 185 61 67.03% 80, 168-170, 242-247, 250-264, 294-303, 306-309, 312-316, 319-323, 362-371, 377-378, 385, 395-397, 410-430 buildstream/sandbox/_sandboxchroot.py 135 135 0.00% 21-325 buildstream/sandbox/_sandboxdummy.py 10 1 90.00% 31 buildstream/sandbox/_sandboxremote.py 276 210 23.91% 56-100, 103, 137, 143, 160-176, 184-237, 241-255, 267-305, 309-379, 386-409, 413-416, 425-445, 448, 458-463, 466-472, 475, 478-508, 511 buildstream/sandbox/sandbox.py 202 10 95.05% 126, 170-174, 194, 203, 289, 372, 408 buildstream/scriptelement.py 99 7 92.93% 75, 90, 172, 180, 240, 260, 295 buildstream/source.py 326 16 95.09% 225, 329, 365, 383, 429, 446, 868, 879-880, 900, 902-904, 1071, 1097, 1144 buildstream/storage/__init__.py 2 0 100.00% buildstream/storage/_casbaseddirectory.py 413 78 81.11% 79, 125, 138-140, 154-155, 164-167, 181, 185-188, 214-222, 266, 274, 284-289, 315-320, 324-329, 356, 399, 411-415, 423-427, 467-469, 486-487, 492, 637-638, 657, 693, 696, 708, 716-717, 722, 727, 744-746, 754, 773, 777, 831-832, 835-842, 845, 850 buildstream/storage/_filebaseddirectory.py 101 3 97.03% 73, 176, 208 buildstream/storage/directory.py 30 12 60.00% 50, 70, 100, 115, 125, 131, 137, 142, 147, 158, 168, 178 buildstream/types.py 22 0 100.00% buildstream/utils.py 471 102 78.34% 243-244, 270, 276-287, 308, 314-318, 355, 392-393, 437, 494, 499-504, 588-591, 724-725, 730-731, 753, 846-851, 860, 866-867, 876-877, 883-890, 893, 901, 1043-1062, 1086, 1089-1091, 1095-1124, 1127-1129, 1132-1134, 1192, 1194-1210, 1238-1242 ----------------------------------------------------------------------------------------- TOTAL 13024 1987 84.74% ========================== slowest 20 test durations =========================== 120.02s call tests/examples/flatpak-autotools.py::test_autotools_build 36.57s call tests/integration/build-tree.py::test_buildtree_options 33.74s call tests/integration/build-tree.py::test_buildtree_pulled 32.90s call tests/integration/pullbuildtrees.py::test_pullbuildtrees 31.61s call tests/examples/autotools.py::test_autotools_build 26.02s call tests/integration/pip_source.py::test_pip_source_build 25.37s call tests/examples/developing.py::test_autotools_build 23.76s call tests/examples/integration-commands.py::test_integration_commands_build 21.64s call tests/examples/running-commands.py::test_running_commands_build 18.87s call tests/integration/build-uid.py::test_build_uid_overridden 18.69s call tests/integration/build-uid.py::test_build_uid_in_project 17.94s call tests/integration/artifact.py::test_artifact_log 16.31s call tests/integration/script.py::test_regression_tmpdir 15.38s call tests/integration/pip_element.py::test_pip_run 14.10s call tests/integration/pip_element.py::test_pip_build 12.73s call tests/integration/autotools.py::test_autotools_build 10.99s call tests/integration/workspace.py::test_workspace_update_dependency_failed 10.95s call tests/frontend/show.py::test_exceed_max_recursion_depth[500] 10.17s call tests/integration/autotools.py::test_autotools_confroot_build 9.56s call tests/sources/tar.py::test_netrc_already_specified_user[FTP] [31m[1m============= 14 failed, 1267 passed, 3 skipped in 1468.08 seconds =============[0m ERROR: InvocationError for command '/builds/BuildStream/buildstream/.tox/py35/bin/pytest --basetemp /builds/BuildStream/buildstream/.tox/py35/tmp --color=yes --integration' (exited with code 1) py36 create: /builds/BuildStream/buildstream/.tox/py36 SKIPPED: InterpreterNotFound: python3.6 py37 create: /builds/BuildStream/buildstream/.tox/py37 SKIPPED: InterpreterNotFound: python3.7 ___________________________________ summary ____________________________________ ERROR: py35: commands failed SKIPPED: py36: InterpreterNotFound: python3.6 SKIPPED: py37: InterpreterNotFound: python3.7 section_end:1547831680:build_script [0Ksection_start:1547831680:after_script [0Ksection_end:1547831682:after_script [0Ksection_start:1547831682:upload_artifacts_on_failure [0Ksection_end:1547831684:upload_artifacts_on_failure [0K[31;1mERROR: Job failed: exit code 1 [0;m