Skipping 5,199 KB..
Full LogTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTest
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_configs [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_time [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_escaped_interpolation [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_invalid_interpolation [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_with_value [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path [32mPASSED[0m[36m [ 91%][0m
02:59:25 tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path [32mPASSED[0m[36m [ 91%][0m
02:59:25 tests/unit/config/config_test.py::BuildPathTest::test_relative_path [32mPASSED[0m[36m [ 91%][0m
02:59:25 tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path [32mPASSED[0m[36m [ 91%][0m
02:59:25 tests/unit/config/config_test.py::HealthcheckTest::test_disable [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest [32mPASSED[0m[36m [ 92%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_configs [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_time [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom [32mPASSED[0m[36m [ 93%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types [32mPASSED[0m[36m [ 94%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_escaped_interpolation [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_invalid_interpolation [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_with_value [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_unbraced_separators [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_unicode_values [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::test_parse_extra_hosts_list [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::test_parse_extra_hosts_dict [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_dict [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_unbraced_separators [32mPASSED[0m[36m [ 95%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_unicode_values [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 [32mPASSED[0m[36m [ 96%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::test_parse_extra_hosts_list [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::test_parse_extra_hosts_dict [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_dict [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_port_range [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_port_range [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range [32mPASSED[0m[36m [ 97%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized [32mPASSED[0m[36m [ 98%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode [32mPASSED[0m[36m [ 99%][0m
02:59:25 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type [32mPASSED[0m[36m [ 99%][0m
02:59:29 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid [32mPASSED[0m[36m [100%][0m
02:59:29
02:59:29 ---------- coverage: platform linux2, python 2.7.16-final-0 ----------
02:59:29 Name Stmts Miss Branch BrPart Cover Missing
02:59:29 -----------------------------------------------------------------------------
02:59:29 compose/__init__.py 3 0 0 0 100%
02:59:29 compose/__main__.py 4 4 0 0 0% 1-6
02:59:29 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149
02:59:29 compose/cli/__init__.py 0 0 0 0 100%
02:59:29 compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit
02:59:29 compose/cli/command.py 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166
02:59:29 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123
02:59:29 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35
02:59:29 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127
02:59:29 compose/cli/formatter.py 34 2 8 1 93% 17-18, 15->17
02:59:29 compose/cli/log_printer.py 144 14 50 6 89% 76, 103, 110-115, 162-164, 173, 226-229, 233-234, 253, 43->exit, 75->76, 98->103, 171->173, 225->226, 232->233
02:59:29 compose/cli/main.py 691 90 290 40 84% 83-84, 86-87, 168, 322, 354-356, 439, 499, 503, 508-509, 519-548, 560, 578-580, 651-652, 690-691, 709, 730-731, 743, 766, 784, 831, 1063, 1072, 1098-1107, 1147-1150, 1158-1162, 1164-1169, 1192, 1214-1243, 1250-1251, 1253-1255, 1270, 1276, 1460, 1478, 1494, 1498-1499, 1510, 1515, 1518, 1544, 1563-1565, 1575, 1586, 60->63, 82->83, 85->86, 167->168, 321->322, 353->354, 438->439, 498->499, 502->503, 513->519, 557->560, 577->578, 649->651, 708->709, 729->730, 742->743, 765->766, 821->831, 823->exit, 1062->1063, 1071->1072, 1157->1158, 1163->1164, 1191->1192, 1249->1250, 1252->1253, 1269->1270, 1275->1276, 1459->1460, 1477->1478, 1493->1494, 1509->1510, 1514->1515, 1517->1518, 1536->exit, 1543->1544, 1557->1565, 1559->1563, 1574->1575, 1584->1586
02:59:29 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit
02:59:29 compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151
02:59:29 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60
02:59:29 compose/config/__init__.py 13 0 0 0 100%
02:59:29 compose/config/config.py 826 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412
02:59:29 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121
02:59:29 compose/config/errors.py 25 2 0 0 92% 36-40
02:59:29 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222
02:59:29 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85
02:59:29 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57
02:59:29 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502
02:59:29 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525
02:59:29 compose/const.py 36 0 0 0 100%
02:59:29 compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320
02:59:29 compose/errors.py 17 1 0 0 94% 12
02:59:29 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226
02:59:29 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326
02:59:29 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116
02:59:29 compose/project.py 424 29 170 16 92% 60, 156, 212-213, 254-255, 364-365, 378-381, 434, 485, 489, 615, 621, 624-627, 752-753, 759-762, 777, 782-785, 788, 809, 57->60, 152->156, 331->333, 362->364, 377->378, 433->434, 484->485, 488->489, 614->615, 620->621, 623->624, 671->exit, 755->762, 776->777, 781->782, 787->788
02:59:29 compose/service.py 854 48 380 24 94% 271-272, 293, 366-369, 417-422, 428-430, 470-471, 485, 488, 506, 573, 618-619, 727, 946-947, 967-968, 1069, 1115, 1176, 1218, 1240-1255, 1295, 1334-1338, 1526, 1530, 1686, 216->exit, 269->271, 292->293, 427->428, 469->470, 484->485, 487->488, 505->506, 563->573, 722->727, 945->946, 966->967, 1068->1069, 1114->1115, 1175->1176, 1217->1218, 1294->1295, 1331->1334, 1525->1526, 1529->1530, 1578->exit, 1586->1585, 1623->1620, 1685->1686
02:59:29 compose/state.py 0 0 0 0 100%
02:59:29 compose/timeparse.py 22 0 4 0 100%
02:59:29 compose/utils.py 117 8 42 5 92% 26, 75-79, 125, 135, 161, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171
02:59:29 compose/version.py 6 0 0 0 100%
02:59:29 compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211
02:59:29 -----------------------------------------------------------------------------
02:59:29 TOTAL 5539 432 2218 201 91%
02:59:29 Coverage HTML written to dir coverage-html
02:59:29
02:59:29 =========================== short test summary info ============================
02:59:29 XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt
02:59:29 not supported by kernel
02:59:29 XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt
02:59:29 Not supported on most drivers
02:59:29 SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime
02:59:29 SKIP [1] tests/integration/service_test.py:148: cpu_percent is not supported for Linux
02:59:29 SKIP [1] tests/unit/config/config_test.py:3777: windows paths
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs
02:59:29 SKIP [1] tests/integration/service_test.py:1635: Broken on 1.11.0 - 17.03.0
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2424: race condition between up and logs
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32
02:59:29 SKIP [1] tests/unit/cli/command_test.py:39: windows separator
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2403: race condition between up and logs
02:59:29
02:59:29 [1m[32m======= 1121 passed, 11 skipped, 2 xfailed, 3 xpassed in 984.17 seconds ========[0m
02:59:29 ___________________________________ summary ____________________________________
02:59:29 [32m py27: commands succeeded[0m
02:59:29 [32m congratulations :)[0m
02:59:29 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid [32mPASSED[0m[36m [100%][0m
02:59:29
02:59:29 ---------- coverage: platform linux2, python 2.7.16-final-0 ----------
02:59:29 Name Stmts Miss Branch BrPart Cover Missing
02:59:29 -----------------------------------------------------------------------------
02:59:29 compose/__init__.py 3 0 0 0 100%
02:59:29 compose/__main__.py 4 4 0 0 0% 1-6
02:59:29 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149
02:59:29 compose/cli/__init__.py 0 0 0 0 100%
02:59:29 compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit
02:59:29 compose/cli/command.py 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166
02:59:29 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123
02:59:29 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35
02:59:29 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127
02:59:29 compose/cli/formatter.py 34 2 8 1 93% 17-18, 15->17
02:59:29 compose/cli/log_printer.py 144 14 50 6 89% 76, 103, 110-115, 162-164, 173, 226-229, 233-234, 253, 43->exit, 75->76, 98->103, 171->173, 225->226, 232->233
02:59:29 compose/cli/main.py 691 90 290 40 84% 83-84, 86-87, 168, 322, 354-356, 439, 499, 503, 508-509, 519-548, 560, 578-580, 651-652, 690-691, 709, 730-731, 743, 766, 784, 831, 1063, 1072, 1098-1107, 1147-1150, 1158-1162, 1164-1169, 1192, 1214-1243, 1250-1251, 1253-1255, 1270, 1276, 1460, 1478, 1494, 1498-1499, 1510, 1515, 1518, 1544, 1563-1565, 1575, 1586, 60->63, 82->83, 85->86, 167->168, 321->322, 353->354, 438->439, 498->499, 502->503, 513->519, 557->560, 577->578, 649->651, 708->709, 729->730, 742->743, 765->766, 821->831, 823->exit, 1062->1063, 1071->1072, 1157->1158, 1163->1164, 1191->1192, 1249->1250, 1252->1253, 1269->1270, 1275->1276, 1459->1460, 1477->1478, 1493->1494, 1509->1510, 1514->1515, 1517->1518, 1536->exit, 1543->1544, 1557->1565, 1559->1563, 1574->1575, 1584->1586
02:59:29 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit
02:59:29 compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151
02:59:29 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60
02:59:29 compose/config/__init__.py 13 0 0 0 100%
02:59:29 compose/config/config.py 826 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412
02:59:29 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121
02:59:29 compose/config/errors.py 25 2 0 0 92% 36-40
02:59:29 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222
02:59:29 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85
02:59:29 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57
02:59:29 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502
02:59:29 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525
02:59:29 compose/const.py 36 0 0 0 100%
02:59:29 compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320
02:59:29 compose/errors.py 17 1 0 0 94% 12
02:59:29 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226
02:59:29 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326
02:59:29 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116
02:59:29 compose/project.py 424 29 170 16 92% 60, 156, 212-213, 254-255, 364-365, 378-381, 434, 485, 489, 615, 621, 624-627, 752-753, 759-762, 777, 782-785, 788, 809, 57->60, 152->156, 331->333, 362->364, 377->378, 433->434, 484->485, 488->489, 614->615, 620->621, 623->624, 671->exit, 755->762, 776->777, 781->782, 787->788
02:59:29 compose/service.py 854 48 380 24 94% 271-272, 293, 366-369, 417-422, 428-430, 470-471, 485, 488, 506, 573, 618-619, 727, 946-947, 967-968, 1069, 1115, 1176, 1218, 1240-1255, 1295, 1334-1338, 1526, 1530, 1686, 216->exit, 269->271, 292->293, 427->428, 469->470, 484->485, 487->488, 505->506, 563->573, 722->727, 945->946, 966->967, 1068->1069, 1114->1115, 1175->1176, 1217->1218, 1294->1295, 1331->1334, 1525->1526, 1529->1530, 1578->exit, 1586->1585, 1623->1620, 1685->1686
02:59:29 compose/state.py 0 0 0 0 100%
02:59:29 compose/timeparse.py 22 0 4 0 100%
02:59:29 compose/utils.py 117 8 42 5 92% 26, 75-79, 125, 135, 161, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171
02:59:29 compose/version.py 6 0 0 0 100%
02:59:29 compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211
02:59:29 -----------------------------------------------------------------------------
02:59:29 TOTAL 5539 432 2218 201 91%
02:59:29 Coverage HTML written to dir coverage-html
02:59:29
02:59:29 =========================== short test summary info ============================
02:59:29 XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt
02:59:29 not supported by kernel
02:59:29 XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt
02:59:29 Not supported on most drivers
02:59:29 SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime
02:59:29 SKIP [1] tests/integration/service_test.py:148: cpu_percent is not supported for Linux
02:59:29 SKIP [1] tests/integration/service_test.py:1635: Broken on 1.11.0 - 17.03.0
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2424: race condition between up and logs
02:59:29 SKIP [1] tests/unit/cli/command_test.py:39: windows separator
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2403: race condition between up and logs
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32
02:59:29 SKIP [1] tests/unit/config/config_test.py:3777: windows paths
02:59:29 SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32
02:59:29 SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32
02:59:29
02:59:29 [1m[32m======= 1121 passed, 11 skipped, 2 xfailed, 3 xpassed in 962.20 seconds ========[0m
02:59:29 ___________________________________ summary ____________________________________
02:59:29 [32m py27: commands succeeded[0m
02:59:29 [32m congratulations :)[0m
02:59:29 + on_exit
02:59:29 + [[ 0 != \0 ]]
02:59:29 + docker rm -vf compose-dind-18.09.9-rc1-jenkins-compose-bump-1.25.0-rc2-2
02:59:29 + on_exit
02:59:29 + [[ 0 != \0 ]]
02:59:29 + docker rm -vf compose-dind-19.03.2-rc1-jenkins-compose-bump-1.25.0-rc2-2
02:59:30 compose-dind-18.09.9-rc1-jenkins-compose-bump-1.25.0-rc2-2
02:59:30 compose-dind-19.03.2-rc1-jenkins-compose-bump-1.25.0-rc2-2
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // parallel
[Pipeline] End of Pipeline
GitHub has been notified of this commit’s build result
Finished: SUCCESS