moby--moby/integration-cli
Aaron Lehmann 6d4b527699 Service update failure thresholds and rollback
This adds support for two enhancements to swarm service rolling updates:

- Failure thresholds: In Docker 1.12, a service update could be set up
  to either pause or continue after a single failure occurs. This adds
  an --update-max-failure-ratio flag that controls how many tasks need to
  fail to update for the update as a whole to be considered a failure. A
  counterpart flag, --update-monitor, controls how long to monitor each
  task for a failure after starting it during the update.

- Rollback flag: service update --rollback reverts the service to its
  previous version. If a service update encounters task failures, or
  fails to function properly for some other reason, the user can roll back
  the update.

SwarmKit also has the ability to roll back updates automatically after
hitting the failure thresholds, but we've decided not to expose this in
the Docker API/CLI for now, favoring a workflow where the decision to
roll back is always made by an admin. Depending on user feedback, we may
add a "rollback" option to --update-failure-action in the future.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-10-18 10:09:50 -07:00
..
fixtures Fix API incompatibilities between notary v0.3.0 and v0.4.2: 2016-10-14 17:53:34 -07:00
benchmark_test.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
check_test.go Merge pull request #26119 from cpuguy83/lazily_load_fixtures 2016-09-08 11:16:27 -07:00
daemon.go Move some test fixtures to go 2016-09-07 17:30:35 -04:00
daemon_swarm.go Service update failure thresholds and rollback 2016-10-18 10:09:50 -07:00
daemon_swarm_hack.go Remove unnecessary CmdWithArgs 2016-07-28 20:14:14 -04:00
daemon_unix.go Add support for docker run in swarm mode overlay 2016-09-07 21:20:41 -07:00
daemon_windows.go Add support for docker run in swarm mode overlay 2016-09-07 21:20:41 -07:00
docker_api_attach_test.go Swarm integration tests 2016-06-13 22:16:18 -07:00
docker_api_auth_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_build_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_containers_test.go Enabled more test on Windows, API and Build 2016-10-06 17:18:42 -07:00
docker_api_create_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_events_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_exec_resize_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_exec_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_images_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_info_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_inspect_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_inspect_unix_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_logs_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_network_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_resize_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_service_update_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_stats_test.go Merge pull request #27037 from Microsoft/jjh/apistatsdatarace 2016-10-05 13:06:40 -07:00
docker_api_stats_unix_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_swarm_test.go Service update failure thresholds and rollback 2016-10-18 10:09:50 -07:00
docker_api_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_update_unix_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_api_version_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
docker_api_volumes_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_cli_attach_test.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
docker_cli_attach_unix_test.go Improve TestAttachClosedOnContainerStop 2016-10-05 15:52:09 -07:00
docker_cli_authz_unix_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_cli_build_test.go [test] fix failure of TestBuildLabelsOverride on Windows 2016-10-16 11:05:31 +00:00
docker_cli_build_unix_test.go Create a unified RunCommand function with Assert() 2016-08-23 15:11:46 -04:00
docker_cli_by_digest_test.go Use opts.FilterOpt for filter flags. 2016-09-13 16:20:10 -04:00
docker_cli_commit_test.go Windows: Enable some commit tests 2016-08-30 09:48:18 -07:00
docker_cli_config_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_cli_cp_from_container_test.go Windows: Enable some cp integration tests 2016-08-30 14:32:10 -07:00
docker_cli_cp_test.go Windows: Enable some cp integration tests 2016-08-30 14:32:10 -07:00
docker_cli_cp_to_container_test.go Windows: Enable some cp integration tests 2016-08-30 14:32:10 -07:00
docker_cli_cp_to_container_unix_test.go
docker_cli_cp_utils.go
docker_cli_create_test.go Add config parameter to change per-container stop timeout during daemon shutdown 2016-10-17 12:28:46 -07:00
docker_cli_daemon_experimental_test.go Add requirements for tests that require network 2016-10-12 11:11:23 -07:00
docker_cli_daemon_test.go Merge pull request #26882 from runcom/proxy-path 2016-10-07 09:44:39 +02:00
docker_cli_diff_test.go Do not create /dev/fuse by default 2016-08-12 12:33:42 +01:00
docker_cli_events_test.go Limit conccurent container creates in TestEventsLimit to 8 2016-09-30 14:44:05 -07:00
docker_cli_events_unix_test.go Merge pull request #26020 from tonistiigi/fix-eventsbefore-test 2016-08-30 22:24:52 +02:00
docker_cli_exec_test.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
docker_cli_exec_unix_test.go Add TERM env var to exec 2016-09-12 09:20:27 -07:00
docker_cli_experimental_test.go
docker_cli_export_import_test.go
docker_cli_external_graphdriver_unix_test.go Ignore 'not a swarm error' when inspecting a task. 2016-08-03 12:22:07 -04:00
docker_cli_external_volume_driver_unix_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
docker_cli_health_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
docker_cli_help_test.go Deprecate "daemon" subcommand 2016-09-23 00:26:27 +02:00
docker_cli_history_test.go Windows: Enable docker_cli_history_test 2016-08-30 09:31:33 -07:00
docker_cli_images_test.go all: replace loop with single append 2016-10-13 13:31:52 -07:00
docker_cli_import_test.go Fix issue in `docker import -c` with quoted flags 2016-09-01 16:28:22 -07:00
docker_cli_info_test.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
docker_cli_info_unix_test.go Add security info to `docker info` 2016-06-14 12:23:45 -07:00
docker_cli_inspect_test.go Disable HTML escaping for JSON strings in `docker inspect` 2016-09-29 18:16:36 -07:00
docker_cli_kill_test.go
docker_cli_links_test.go Remove unnecessary json.Unmarshal wrapper. 2016-08-23 15:11:46 -04:00
docker_cli_links_unix_test.go
docker_cli_login_test.go
docker_cli_logout_test.go support legacy registries in exernal stores 2016-09-07 09:45:42 +02:00
docker_cli_logs_bench_test.go
docker_cli_logs_test.go
docker_cli_nat_test.go
docker_cli_netmode_test.go fix typos 2016-06-02 17:17:22 +08:00
docker_cli_network_unix_test.go all: replace loop with single append 2016-10-13 13:31:52 -07:00
docker_cli_oom_killed_test.go
docker_cli_pause_test.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
docker_cli_plugins_test.go Add requirements for tests that require network 2016-10-12 11:11:23 -07:00
docker_cli_port_test.go
docker_cli_proxy_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_cli_ps_test.go all: replace loop with single append 2016-10-13 13:31:52 -07:00
docker_cli_pull_local_test.go support legacy registries in exernal stores 2016-09-07 09:45:42 +02:00
docker_cli_pull_test.go Windows: Fix regression pulling linux images 2016-09-09 11:40:34 -07:00
docker_cli_pull_trusted_test.go Fix API incompatibilities between notary v0.3.0 and v0.4.2: 2016-10-14 17:53:34 -07:00
docker_cli_push_test.go Update token server error test to not fail on retries 2016-09-01 15:18:15 -07:00
docker_cli_registry_user_agent_test.go modify func namt from TestUserAgentPassThroughOnPull to TestUserAgentPassThrough 2016-08-08 11:40:20 +08:00
docker_cli_rename_test.go Refactor `docker inspect` to work on all types 2016-08-25 16:29:08 -07:00
docker_cli_restart_test.go Fix typo 2016-08-09 09:42:23 +08:00
docker_cli_rm_test.go
docker_cli_rmi_test.go Move some test fixtures to go 2016-09-07 17:30:35 -04:00
docker_cli_run_test.go Fix API incompatibilities between notary v0.3.0 and v0.4.2: 2016-10-14 17:53:34 -07:00
docker_cli_run_unix_test.go integration-cli: move Close() after error check 2016-10-13 16:07:08 -07:00
docker_cli_save_load_test.go add defer file.Close to avoid potential fd leak 2016-08-10 08:36:09 +08:00
docker_cli_save_load_unix_test.go add defer file.Close to avoid potential fd leak 2016-08-10 08:36:09 +08:00
docker_cli_search_test.go Use spf13/cobra for docker search 2016-06-03 19:50:01 +02:00
docker_cli_service_create_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
docker_cli_service_health_test.go integration: wait for task running in TestServiceHealthRun 2016-09-29 07:44:00 -07:00
docker_cli_service_scale_test.go validate service parameter in client side to avoid api call 2016-09-26 17:18:02 +08:00
docker_cli_service_update_test.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
docker_cli_sni_test.go
docker_cli_stack_test.go Allow `docker deploy` command accept filename with/without extension 2016-10-14 11:44:15 -07:00
docker_cli_start_test.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
docker_cli_stats_test.go
docker_cli_stop_test.go
docker_cli_swarm_test.go Service update failure thresholds and rollback 2016-10-18 10:09:50 -07:00
docker_cli_tag_test.go Remove deprecated -f flag on docker tag 2016-06-01 09:44:25 -07:00
docker_cli_top_test.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
docker_cli_update_test.go Forbid update restart policy of container with AutoRemove flag 2016-08-16 15:36:13 +08:00
docker_cli_update_unix_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
docker_cli_userns_test.go Add test for checking created directories on remapped root 2016-09-05 13:02:13 +03:00
docker_cli_v2_only_test.go
docker_cli_version_test.go
docker_cli_volume_test.go all: replace loop with single append 2016-10-13 13:31:52 -07:00
docker_cli_wait_test.go
docker_deprecated_api_v124_test.go [nit] integration-cli: obey Go's naming convention 2016-09-30 01:21:05 +00:00
docker_deprecated_api_v124_unix_test.go remove deprecated feature of passing HostConfig at API container start 2016-06-01 22:25:17 +08:00
docker_experimental_network_test.go Change to use c.Assert() instead of result.Assert() 2016-08-23 15:12:36 -04:00
docker_hub_pull_suite_test.go Remove unnecessary CmdWithArgs 2016-07-28 20:14:14 -04:00
docker_test_vars.go Add isolation to info 2016-09-23 12:13:29 -07:00
docker_utils.go Add isolation to info 2016-09-23 12:13:29 -07:00
events_utils.go test: fix trivial code convention noncompliance 2016-09-12 07:36:52 +00:00
fixtures.go Move some test fixtures to go 2016-09-07 17:30:35 -04:00
fixtures_linux_daemon.go Fix already loaded detection for frozen images 2016-09-12 12:55:26 -07:00
npipe.go
npipe_windows.go
registry.go add defer file.Close to avoid potential fd leak 2016-08-10 08:36:09 +08:00
registry_mock.go
requirements.go Implement Pause Resume support for Windows 2016-10-11 16:23:35 -07:00
requirements_unix.go Add support for ambient capabilities 2016-10-10 19:29:02 +01:00
test_vars.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
test_vars_exec.go
test_vars_noexec.go
test_vars_noseccomp.go
test_vars_seccomp.go
test_vars_unix.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
test_vars_windows.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
trust_server.go Fix govet for go1.7 2016-09-02 19:07:54 -07:00
utils.go Create a unified RunCommand function with Assert() 2016-08-23 15:11:46 -04:00