Skipping 635 KB..
Full LogTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTestTest
18:23:05 tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 77%]
18:23:05 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 77%]
18:23:05 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 77%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 77%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 77%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 77%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 78%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_image PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED [ 79%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_start PASSED [ 80%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_status PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_update PASSED [ 81%]
18:23:05 tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED [ 81%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 81%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 81%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 81%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 82%]
18:23:05 tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 83%]
18:23:05 tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 83%]
18:23:05 tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 83%]
18:23:05 tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 83%]
18:23:05 tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 83%]
18:23:05 tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 84%]
18:23:05 tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 84%]
18:23:05 tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 84%]
18:23:05 tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 84%]
18:23:05 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 85%]
18:23:05 tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED [ 85%]
18:23:05 tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 85%]
18:23:05 tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 85%]
18:23:05 tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 85%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 86%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 87%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 88%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 89%]
18:23:05 tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 90%]
18:23:05 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 90%]
18:23:05 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 91%]
18:23:05 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 91%]
18:23:05 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 91%]
18:23:05 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 92%]
18:23:05 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 92%]
18:23:05 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED [ 92%]
18:23:05 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 92%]
18:23:05 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 93%]
18:23:05 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 94%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 95%]
18:23:05 tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_bytes SKIPPED [ 96%]
18:23:05 tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 96%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED [ 97%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED [ 98%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 98%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED [ 98%]
18:23:05 tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [ 99%]
18:23:06 tests/unit/utils_test.py::FormatEnvironmentTest::test_gh_action_output FAILED [100%]
18:23:06
18:23:06 =================================== FAILURES ===================================
18:23:06 _________________ FormatEnvironmentTest.test_gh_action_output __________________
18:23:06 tests/unit/utils_test.py:633: in test_gh_action_output
18:23:06 assert False
18:23:06 E AssertionError: assert False
18:23:06 =============================== warnings summary ===============================
18:23:06 /usr/local/lib/python3.7/site-packages/paramiko/hostkeys.py:23
18:23:06 /usr/local/lib/python3.7/site-packages/paramiko/hostkeys.py:23: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
18:23:06 from collections import MutableMapping
18:23:06
18:23:06 -- Docs: https://docs.pytest.org/en/latest/warnings.html
18:23:06
18:23:06 ----------- coverage: platform linux, python 3.7.9-final-0 -----------
18:23:06 Name Stmts Miss Branch BrPart Cover
18:23:06 -----------------------------------------------------------------------
18:23:06 docker/__init__.py 8 0 0 0 100%
18:23:06 docker/api/__init__.py 1 0 0 0 100%
18:23:06 docker/api/build.py 126 19 93 17 82%
18:23:06 docker/api/client.py 263 46 98 13 82%
18:23:06 docker/api/config.py 31 0 6 2 95%
18:23:06 docker/api/container.py 266 17 104 19 90%
18:23:06 docker/api/daemon.py 39 2 14 4 89%
18:23:06 docker/api/exec_api.py 46 4 22 4 88%
18:23:06 docker/api/image.py 157 21 58 12 84%
18:23:06 docker/api/network.py 90 13 48 12 80%
18:23:06 docker/api/plugin.py 90 13 14 4 82%
18:23:06 docker/api/secret.py 36 3 10 3 83%
18:23:06 docker/api/service.py 200 60 149 32 61%
18:23:06 docker/api/swarm.py 106 14 38 10 82%
18:23:06 docker/api/volume.py 38 3 14 3 88%
18:23:06 docker/auth.py 198 17 74 17 88%
18:23:06 docker/client.py 69 4 2 0 94%
18:23:06 docker/constants.py 21 0 0 0 100%
18:23:06 docker/context/__init__.py 2 0 0 0 100%
18:23:06 docker/context/api.py 78 16 38 8 76%
18:23:06 docker/context/config.py 61 24 16 2 56%
18:23:06 docker/context/context.py 151 21 62 15 81%
18:23:06 docker/credentials/__init__.py 3 0 0 0 100%
18:23:06 docker/credentials/constants.py 4 0 0 0 100%
18:23:06 docker/credentials/errors.py 11 1 2 1 85%
18:23:06 docker/credentials/store.py 50 9 16 5 73%
18:23:06 docker/credentials/utils.py 23 13 12 1 31%
18:23:06 docker/errors.py 110 12 20 6 86%
18:23:06 docker/models/__init__.py 0 0 0 0 100%
18:23:06 docker/models/configs.py 21 8 2 0 57%
18:23:06 docker/models/containers.py 183 6 70 5 95%
18:23:06 docker/models/images.py 137 29 56 3 76%
18:23:06 docker/models/networks.py 37 1 12 0 98%
18:23:06 docker/models/nodes.py 15 1 2 0 94%
18:23:06 docker/models/plugins.py 49 30 10 0 32%
18:23:06 docker/models/resource.py 41 9 6 2 77%
18:23:06 docker/models/secrets.py 21 8 2 0 57%
18:23:06 docker/models/services.py 87 3 36 3 95%
18:23:06 docker/models/swarm.py 39 3 6 3 87%
18:23:06 docker/models/volumes.py 23 1 4 0 96%
18:23:06 docker/tls.py 37 6 14 6 76%
18:23:06 docker/transport/__init__.py 11 3 0 0 73%
18:23:06 docker/transport/basehttpadapter.py 6 0 2 1 88%
18:23:06 docker/transport/npipeconn.py 59 54 10 0 7%
18:23:06 docker/transport/npipesocket.py 137 132 22 0 3%
18:23:06 docker/transport/sshconn.py 160 121 56 1 19%
18:23:06 docker/transport/ssladapter.py 36 10 10 4 65%
18:23:06 docker/transport/unixconn.py 66 6 12 4 87%
18:23:06 docker/types/__init__.py 6 0 0 0 100%
18:23:06 docker/types/base.py 5 0 2 0 100%
18:23:06 docker/types/containers.py 420 66 326 43 84%
18:23:06 docker/types/daemon.py 36 8 14 4 72%
18:23:06 docker/types/healthcheck.py 34 12 4 1 61%
18:23:06 docker/types/networks.py 41 6 28 5 81%
18:23:06 docker/types/services.py 312 45 206 33 83%
18:23:06 docker/types/swarm.py 51 24 40 10 52%
18:23:06 docker/utils/__init__.py 3 0 0 0 100%
18:23:06 docker/utils/build.py 155 18 76 7 87%
18:23:06 docker/utils/config.py 36 2 10 2 91%
18:23:06 docker/utils/decorators.py 32 1 12 1 95%
18:23:06 docker/utils/fnmatch.py 55 18 28 2 61%
18:23:06 docker/utils/json_stream.py 43 8 14 2 79%
18:23:06 docker/utils/ports.py 50 3 32 2 91%
18:23:06 docker/utils/proxy.py 32 1 12 0 98%
18:23:06 docker/utils/socket.py 86 9 40 7 86%
18:23:06 docker/utils/utils.py 285 19 177 13 92%
18:23:06 docker/version.py 2 0 2 0 100%
18:23:06 -----------------------------------------------------------------------
18:23:06 TOTAL 5127 1003 2265 354 78%
18:23:06
18:23:06 =========================== short test summary info ============================
18:23:06 XFAIL tests/integration/api_container_test.py::CreateContainerTest::test_create_with_cpu_rt_options
18:23:06 CONFIG_RT_GROUP_SCHED isn't enabled
18:23:06 XFAIL tests/integration/api_container_test.py::CreateContainerTest::test_create_with_storage_opt
18:23:06 Not supported on most drivers
18:23:06 XFAIL tests/integration/api_container_test.py::ContainerTopTest::test_top_with_psargs
18:23:06 Output of docker top depends on host distro, and is not formalized.
18:23:06 XFAIL tests/integration/api_swarm_test.py::SwarmTest::test_init_swarm_with_log_driver
18:23:06 This doesn't seem to be taken into account by the engine
18:23:06 XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows
18:23:06 SKIPPED [3] /src/tests/helpers.py:71: Feature requires Docker Engine experimental mode
18:23:06 SKIPPED [1] tests/integration/api_image_test.py:292: Doesn't work inside a container - FIXME
18:23:06 SKIPPED [1] /src/tests/integration/api_swarm_test.py:31: Test stalls the engine on 1.12.0
18:23:06 SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax
18:23:06 SKIPPED [1] tests/unit/client_test.py:103: Npipe Connection Pool only on Windows
18:23:06 SKIPPED [1] tests/unit/client_test.py:142: Npipe Connection Pool only on Windows
18:23:06 SKIPPED [1] tests/unit/client_test.py:216: Npipe Connection Pool only on Windows
18:23:06 SKIPPED [1] tests/unit/client_test.py:253: Npipe Connection Pool only on Windows
18:23:06 SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check
18:23:06 SKIPPED [1] tests/unit/utils_build_test.py:232: Backslash patterns only on Windows
18:23:06 SKIPPED [1] tests/unit/utils_build_test.py:254: Backslash patterns only on Windows
18:23:06 SKIPPED [1] tests/unit/utils_build_test.py:402: root user always has access ; no chmod on Windows
18:23:06 SKIPPED [1] tests/unit/utils_config_test.py:58: condition: sys.platform != 'win32'
18:23:06 SKIPPED [1] tests/unit/utils_test.py:478: shlex doesn't support bytes in py3
18:23:06 = 1 failed, 928 passed, 16 skipped, 5 xfailed, 4 xpassed, 1 warnings in 286.16 seconds =
[Pipeline] sh
18:23:07 + docker stop dpy-dind-3-0-py3.7-19.03.13
18:23:19 dpy-dind-3-0-py3.7-19.03.13
18:23:19 + docker network rm dpy-testnet-3-0-py3.7-19.03.13
18:23:19 dpy-testnet-3-0-py3.7-19.03.13
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
Failed in branch py3.7_19.03.13
[Pipeline] // parallel
[Pipeline] End of Pipeline
GitHub has been notified of this commit’s build result
Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to EC2 (managed-agents) - ubuntu-1804-overlay2 (i-01b63740e28c4d963)
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:1001)
at hudson.FilePath.act(FilePath.java:1157)
at hudson.FilePath.act(FilePath.java:1146)
at hudson.FilePath.readToString(FilePath.java:2278)
at org.jenkinsci.plugins.docker.commons.impl.RegistryKeyMaterialFactory.materialize(RegistryKeyMaterialFactory.java:81)
at org.jenkinsci.plugins.docker.workflow.AbstractEndpointStepExecution2.doStart(AbstractEndpointStepExecution2.java:53)
at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Also: Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to EC2 (managed-agents) - ubuntu-1804-overlay2 (i-02b0b81a031602712)
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:1001)
at hudson.FilePath.act(FilePath.java:1157)
at hudson.FilePath.act(FilePath.java:1146)
at hudson.FilePath.readToString(FilePath.java:2278)
at org.jenkinsci.plugins.docker.commons.impl.RegistryKeyMaterialFactory.materialize(RegistryKeyMaterialFactory.java:81)
at org.jenkinsci.plugins.docker.workflow.AbstractEndpointStepExecution2.doStart(AbstractEndpointStepExecution2.java:53)
at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
java.io.IOException: Is a directory
Also: Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to EC2 (managed-agents) - ubuntu-1804-overlay2 (i-0097b7f17f00a5776)
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:1001)
at hudson.FilePath.act(FilePath.java:1157)
at hudson.FilePath.act(FilePath.java:1146)
at hudson.FilePath.readToString(FilePath.java:2278)
at org.jenkinsci.plugins.docker.commons.impl.RegistryKeyMaterialFactory.materialize(RegistryKeyMaterialFactory.java:81)
at org.jenkinsci.plugins.docker.workflow.AbstractEndpointStepExecution2.doStart(AbstractEndpointStepExecution2.java:53)
at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
java.io.IOException: Is a directory
Also: Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to EC2 (managed-agents) - ubuntu-1804-overlay2 (i-01e6d02704b4dad6c)
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:1001)
at hudson.FilePath.act(FilePath.java:1157)
at hudson.FilePath.act(FilePath.java:1146)
at hudson.FilePath.readToString(FilePath.java:2278)
at org.jenkinsci.plugins.docker.commons.impl.RegistryKeyMaterialFactory.materialize(RegistryKeyMaterialFactory.java:81)
at org.jenkinsci.plugins.docker.workflow.AbstractEndpointStepExecution2.doStart(AbstractEndpointStepExecution2.java:53)
at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
java.io.IOException: Is a directory
Also: Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to EC2 (managed-agents) - ubuntu-1804-overlay2 (i-04ddd21384c2bf6c8)
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:1001)
at hudson.FilePath.act(FilePath.java:1157)
at hudson.FilePath.act(FilePath.java:1146)
at hudson.FilePath.readToString(FilePath.java:2278)
at org.jenkinsci.plugins.docker.commons.impl.RegistryKeyMaterialFactory.materialize(RegistryKeyMaterialFactory.java:81)
at org.jenkinsci.plugins.docker.workflow.AbstractEndpointStepExecution2.doStart(AbstractEndpointStepExecution2.java:53)
at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
java.io.IOException: Is a directory
Also: hudson.AbortException: script returned exit code 1
at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.handleExit(DurableTaskStep.java:659)
at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.check(DurableTaskStep.java:605)
at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.run(DurableTaskStep.java:549)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
java.io.IOException: Is a directory
at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
at sun.nio.ch.FileDispatcherImpl.read(FileDispatcherImpl.java:48)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:276)
at sun.nio.ch.IOUtil.read(IOUtil.java:245)
at sun.nio.ch.FileChannelImpl.read(FileChannelImpl.java:223)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:65)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:109)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.nio.file.Files.read(Files.java:3158)
at java.nio.file.Files.readAllBytes(Files.java:3212)
at hudson.FilePath$ReadToString.invoke(FilePath.java:2284)
at hudson.FilePath$ReadToString.invoke(FilePath.java:2280)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3313)
at hudson.remoting.UserRequest.perform(UserRequest.java:211)
at hudson.remoting.UserRequest.perform(UserRequest.java:54)
at hudson.remoting.Request$2.run(Request.java:375)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:73)
at java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.lang.Thread.run(Thread.java:834)
Finished: FAILURE