moby/integration-cli
Aaron Lehmann f05d42ee03 Fix concurrent uploads that share layers
Concurrent uploads which share layers worked correctly as of #18353,
but unfortunately #18785 caused a regression. This PR removed the logic
that shares digests between different push sessions. This overlooked the
case where one session was waiting for another session to upload a
layer.

This commit adds back the ability to propagate this digest information,
using the distribution.Descriptor type because this is what is received
from stats and uploads, and also what is ultimately needed for building
the manifest.

Surprisingly, there was no test covering this case. This commit adds
one. It fails without the fix.

See recent comments on #9132.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit 5c99eebe81)
2016-03-07 16:30:52 -05:00
..
fixtures Fix for zero-sized layers 2015-11-25 18:02:03 -08:00
check_test.go integration-cli: check nil before Close'ing 2016-01-13 13:36:45 +01:00
docker_api_attach_test.go Fix typos found across repository 2015-12-13 18:04:12 +02:00
docker_api_build_test.go Use checker assert for docker_api_build_test.go 2015-10-17 14:28:13 +02:00
docker_api_containers_test.go Reject multiple networks on container creation 2016-01-26 12:58:58 -08:00
docker_api_create_test.go Fix error message in container creation 2016-01-26 12:58:58 -08:00
docker_api_events_test.go Add event types. 2015-12-30 17:39:33 -05:00
docker_api_exec_resize_test.go Remove exec-driver global daemon option. 2015-11-05 17:09:58 -05:00
docker_api_exec_test.go Fix exec start api with detach and AttachStdin at same time. fixes #20638 2016-03-07 14:46:48 -05:00
docker_api_images_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_api_info_test.go Added additional container information to "docker info". 2016-01-11 19:14:44 -05:00
docker_api_inspect_test.go Windows CI: Deal with failing tests for TP4 2016-01-08 13:49:43 -08:00
docker_api_inspect_unix_test.go Checkers on docker_api_inspect_unix_test.go 2015-11-23 22:03:14 -05:00
docker_api_logs_test.go Cleaned up integration-cli/docker_api_logs_test.go 2015-10-15 13:33:31 -04:00
docker_api_network_test.go Windows CI: Turn off network API tests 2016-01-08 12:58:54 -08:00
docker_api_resize_test.go Use checker on integration test when possible 2015-10-22 15:53:17 +08:00
docker_api_stats_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_api_test.go pkg/version.Version: use the new String() method 2015-12-18 15:29:32 -05:00
docker_api_update_unix_test.go Implemet docker update command 2015-12-28 19:19:26 +08:00
docker_api_version_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_api_volumes_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_cli_attach_test.go Windows CI: Deal with failing tests for TP4 2016-01-08 13:49:43 -08:00
docker_cli_attach_unix_test.go Fix typos found across repository 2015-12-13 18:04:12 +02:00
docker_cli_authz_unix_test.go Fix 19575: Docker events doesn't work with authorization plugin 2016-02-10 12:58:27 -05:00
docker_cli_build_test.go api: client: build: do not fall through if git isn't installed 2016-01-26 12:58:47 -08:00
docker_cli_build_unix_test.go Fix channel closing race in event tests. 2016-02-10 12:58:22 -05:00
docker_cli_by_digest_test.go Merge pull request #19170 from aaronlehmann/delete-prune-digests 2016-01-12 15:15:36 -08:00
docker_cli_commit_test.go Checkers on integration-cli/docker_cli_commit_test 2015-10-29 21:47:54 -05:00
docker_cli_config_test.go dockerversion placeholder for library import 2015-11-09 19:32:46 +01:00
docker_cli_cp_from_container_test.go Use checker assert for integration-cli/docker_cli_cp_* four files. 2015-10-26 10:22:28 +08:00
docker_cli_cp_test.go Windows CI: Deal with failing tests for TP4 2016-01-08 13:49:43 -08:00
docker_cli_cp_to_container_test.go Fix typos found across repository 2015-12-13 18:04:12 +02:00
docker_cli_cp_to_container_unix_test.go Fix copy chown settings to not default to real root 2016-02-19 19:46:56 -05:00
docker_cli_cp_utils.go Use checker assert for integration-cli/docker_cli_cp_* four files. 2015-10-26 10:22:28 +08:00
docker_cli_create_test.go Update integration tests with new error messages, and to use different repos per test. 2016-02-02 12:20:12 -05:00
docker_cli_daemon_test.go Add test to verify that response hijacking always works over TLS. 2016-01-13 20:18:06 -05:00
docker_cli_diff_test.go Remove LXC support. 2015-11-05 17:09:57 -05:00
docker_cli_events_test.go Add filter by event type and documentation. 2016-01-04 14:58:04 -05:00
docker_cli_events_unix_test.go Fix channel closing race in event tests. 2016-02-10 12:58:22 -05:00
docker_cli_exec_test.go Merge pull request #17373 from Microsoft/10662-volumetests 2015-10-27 19:52:11 -04:00
docker_cli_exec_unix_test.go Probably fix flaky test TestExecTTY 2015-12-10 04:13:58 -05:00
docker_cli_experimental_test.go Remove exec-driver global daemon option. 2015-11-05 17:09:58 -05:00
docker_cli_export_import_test.go Using checkers assert for integration-cli/docker_cli_export_import_test.go 2015-10-21 08:57:20 -04:00
docker_cli_external_graphdriver_unix_test.go Update daemon and docker core to use new content addressable storage 2015-11-24 09:40:25 -08:00
docker_cli_help_test.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
docker_cli_history_test.go Use of checkers on docker_cli_history_test.go 2015-10-23 22:32:56 -05:00
docker_cli_images_test.go Fix image filter 2016-01-14 08:17:40 +00:00
docker_cli_import_test.go Fix docker import on compressed data 2016-02-19 15:05:49 -05:00
docker_cli_info_test.go Added additional container information to "docker info". 2016-01-11 19:14:44 -05:00
docker_cli_inspect_experimental_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_cli_inspect_test.go Add network ID to container inspect 2016-01-14 22:33:41 +08:00
docker_cli_kill_test.go modified docker_cli_kill_test.go to use c.Asserts 2015-10-27 21:18:26 -07:00
docker_cli_links_test.go Don't error out when link name in use. 2016-01-26 12:58:49 -08:00
docker_cli_links_unix_test.go use of checkers on Integration test 2015-10-18 09:00:08 +08:00
docker_cli_login_test.go update docker_cli_login_test.go 2015-10-09 15:08:01 +08:00
docker_cli_logs_test.go Move timeutils functions to the only places where they are used. 2015-12-15 14:56:14 -05:00
docker_cli_nat_test.go Remove exec-driver global daemon option. 2015-11-05 17:09:58 -05:00
docker_cli_netmode_test.go update integration-cli/docker_cli_netmode_test.go 2015-10-12 13:34:43 +08:00
docker_cli_network_unix_test.go IT case for sending invalid query to embedded DNS server 2016-02-17 00:47:21 -08:00
docker_cli_oom_killed_test.go Increase integration cli test memory 2016-01-08 23:10:31 +00:00
docker_cli_pause_test.go Windows CI: Deal with failing tests for TP4 2016-01-08 13:49:43 -08:00
docker_cli_port_test.go Move port-mapping ownership closer to Sandbox (from Endpoint) 2016-01-26 12:59:00 -08:00
docker_cli_proxy_test.go update docker_cli_proxy_test.go 2015-10-09 14:53:56 +08:00
docker_cli_ps_test.go Fix the since and before filter behavior 2016-02-10 13:05:41 -05:00
docker_cli_pull_local_test.go Revert reporting of multiple pull errors 2016-01-26 12:58:49 -08:00
docker_cli_pull_test.go Revert reporting of multiple pull errors 2016-01-26 12:58:49 -08:00
docker_cli_pull_trusted_test.go Update integration tests with new error messages, and to use different repos per test. 2016-02-02 12:20:12 -05:00
docker_cli_push_test.go Fix concurrent uploads that share layers 2016-03-07 16:30:52 -05:00
docker_cli_rename_test.go integration-cli test for active container rename and reuse 2015-10-23 16:26:24 -07:00
docker_cli_restart_test.go IT for restart-policy and DNS based SD in user-defined networks 2016-01-14 11:03:26 -08:00
docker_cli_rm_test.go Remove redundant error messages 2015-12-29 22:03:39 +08:00
docker_cli_rmi_test.go Fix rmi by ID untagging image on error 2016-01-12 13:45:40 -08:00
docker_cli_run_test.go Disable TestRunMountshmmqueuefromhost when using userns 2016-02-10 12:58:27 -05:00
docker_cli_run_unix_test.go fix proc regex 2016-01-06 10:08:35 -08:00
docker_cli_save_load_test.go Windows CI: Deal with failing tests for TP4 2016-01-08 13:49:43 -08:00
docker_cli_save_load_unix_test.go Update daemon and docker core to use new content addressable storage 2015-11-24 09:40:25 -08:00
docker_cli_search_test.go Update test 2015-10-07 07:11:45 +08:00
docker_cli_start_test.go Increase timeouts to fix test on ARM 2015-11-20 23:12:12 +01:00
docker_cli_start_volume_driver_unix_test.go Fix panic when plugin responds with null volume 2016-03-07 14:49:37 -05:00
docker_cli_stats_test.go Fix flaky test TestStatsAllNewContainersAdded 2016-01-08 17:02:08 +08:00
docker_cli_tag_test.go Allow uppercase characters in image reference hostname 2016-02-09 17:18:33 -08:00
docker_cli_top_test.go Merge pull request #12648 from estesp/userns-impl 2015-10-10 11:38:07 -07:00
docker_cli_update_unix_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
docker_cli_v2_only_test.go integration-cli: add _test suffix to test file 2015-11-30 11:33:57 +01:00
docker_cli_version_test.go Build and test Docker on IBM Power and Z using gccgo. Enable CI on Power and Z. 2015-11-14 03:16:45 +00:00
docker_cli_volume_driver_compat_unix_test.go Fix volume driver API compatibility mode (a little) 2016-02-10 11:30:07 -05:00
docker_cli_volume_test.go Make volume dangling filter return only used volumes with dangling=false. 2016-01-27 10:29:56 -08:00
docker_cli_wait_test.go use of checkers on Integration test 2015-10-11 11:31:01 +08:00
docker_hub_pull_suite_test.go Use Assert statement to replace condition judgment 2015-10-09 17:45:28 +08:00
docker_test_vars.go Fix typos found across repository 2015-12-13 18:04:12 +02:00
docker_utils.go Fix copy chown settings to not default to real root 2016-02-19 19:46:56 -05:00
events_utils.go Fix channel closing race in event tests. 2016-02-10 12:58:22 -05:00
registry.go Build a pre-schema2 registry to test schema1 push/pull 2016-01-08 17:27:31 -08:00
registry_mock.go integration-cli: fix wrong formats 2016-01-09 11:44:15 +01:00
requirements.go Windows: Remove check for volume support 2015-11-13 13:02:30 -08:00
requirements_unix.go check seccomp is configured in the kernel 2016-01-12 09:45:21 -08:00
test_vars_exec.go integration-cli: add test requirement ExecSupport 2015-02-20 23:24:30 -08:00
test_vars_noexec.go integration-cli: add test requirement ExecSupport 2015-02-20 23:24:30 -08:00
test_vars_noseccomp.go Allow non-seccomp platforms to pass integration-cli tests 2015-12-07 20:14:52 -05:00
test_vars_seccomp.go Allow non-seccomp platforms to pass integration-cli tests 2015-12-07 20:14:52 -05:00
test_vars_unix.go Add runSleepingContainer in integration-cli 2016-02-10 13:05:40 -05:00
test_vars_windows.go Add runSleepingContainer in integration-cli 2016-02-10 13:05:40 -05:00
trust_server.go Add an integration test for docker being able to push to a repo with delegations. 2016-01-07 19:35:45 -08:00
utils.go Fixes 16556 CI failures 2015-09-24 11:19:00 -07:00