Commit Graph

23 Commits

Author SHA1 Message Date
c0eebabe70 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>
Upstream-commit: 6d4b527699b3e95d21d79f6b327252a6cdaca5b0
Component: engine
2016-10-18 10:09:50 -07:00
06d71bc71f Always check err before http status
A test failed expecting 200, but received -1, which is an err rc,
not an HTTP status code, so move these checks up.

Also log the output an not just check for a nil err.

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
Upstream-commit: 3dea5dbb9acb2699569c5aaf3737d58793152b3c
Component: engine
2016-09-12 12:45:08 -05:00
45ddc4bfcb Add engine-api types to docker
This moves the types for the `engine-api` repo to the existing types
package.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Upstream-commit: 91e197d614547f0202e6ae9b8a24d88ee131d950
Component: engine
2016-09-07 11:05:58 -07:00
449509c833 Fix retry logic for out of sequence errors
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 157561e95ccaef883fe106a38741acb3d493879f
Component: engine
2016-08-16 18:57:01 -07:00
918ec07087 Add retry checks to TestSwarmPublishAdd
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 7bd1c1195998c10c732ccfa67c568e634d58166e
Component: engine
2016-08-16 10:39:05 -07:00
15ac980cd0 Merge pull request #25159 from diogomonica/adding-force-to-node-remove
Adding force to node rm
Upstream-commit: 10ae908bfa88bf128ce416067391ed125ad0f1be
Component: engine
2016-08-02 22:49:15 +02:00
0e5400a423 Add --force to node removal
Signed-off-by: Diogo Monica <diogo.monica@gmail.com>
Upstream-commit: a327c231b5c68c13b7dcde2fdc83b8e4cec59c43
Component: engine
2016-08-01 18:55:58 -07:00
48cfcaddd4 Merge pull request #24878 from dongluochen/swarmConstraintTest
Add integration test for constraints
Upstream-commit: f35c4343f32aff4fb4f261e1dedb4200410d53b4
Component: engine
2016-08-01 17:45:23 -06:00
025360735d fix race in TestApiSwarmRaftQuorum
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 4a856d7a87c65dd8c537a45443c72698f056cf13
Component: engine
2016-07-26 21:32:56 -04:00
eb900df556 Remove swarm inspect and use info instead
Remove the swarm inspect command and use docker info instead to display
swarm information if the current node is a manager.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: e6923f6d75c2bd1b22cc1229214ffceca3251cc6
Component: engine
2016-07-25 20:31:10 -07:00
d2f3f931f0 fix panic on --label-add
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 85bc3194aa12c19a5bd755666d1e9617dc1bb322
Component: engine
2016-07-25 19:20:44 -04:00
411f901924 Change "rotate_worker_token" to "rotateWorkerToken"
This renames the `rotate_xxx` flags to camelBack, for
consistency with other API query-params, such as
`detachKeys`, `noOverwriteDirNonDir`, and `fromImage`.

Also makes this flag accept a wider range of boolean
values ("0", "1", "true", "false"), and throw an error
if an invalid value is passed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: bd81df12780b0765e55582574eaa2a125adf65fa
Component: engine
2016-07-23 01:04:12 +02:00
21e679771f Add integration test for constraints.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
Upstream-commit: 1b1a7f29e5d54a1c9ff892ccc8cf627c08f47ec9
Component: engine
2016-07-21 18:08:49 -07:00
b141a44de0 Replace secrets with join tokens
Implement the proposal from
https://github.com/docker/docker/issues/24430#issuecomment-233100121

Removes acceptance policy and secret in favor of an automatically
generated join token that combines the secret, CA hash, and
manager/worker role into a single opaque string.

Adds a docker swarm join-token subcommand to inspect and rotate the
tokens.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 2cc5bd33eef038bf5721582e2410ba459bb656e9
Component: engine
2016-07-21 15:23:03 -07:00
6c22592de6 Test rolling update.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
Upstream-commit: d327765a62a99dc63e9a8c16ac291861cee066f3
Component: engine
2016-07-19 12:09:30 -07:00
944503693f Add API test for empty services list
Signed-off-by: Ralf Sippl <ralf.sippl@gmail.com>
Upstream-commit: 65e72133a11ea3e6873f62039956bbd70548a5a7
Component: engine
2016-07-12 17:31:44 +02:00
113ca78a6b Use waitAndAssert to test node state changes
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: f02ec39e99bfd36f34a965f78d853e19234e513b
Component: engine
2016-07-11 10:01:14 -07:00
4b7a3b82ea Implement service integration tests
This is done in a hacky way as currently there is no better way.
Uses known implementation details about how tasks are scheduled to be
able to operate on the underlying container.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: e5ec575b32d6979914dce576f1b8bb71f3057cea
Component: engine
2016-07-05 21:39:42 -04:00
76181c2413 Switch node management tests to api types
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 22b34d64496c9b6ebae5e2b4a98ecd9a172cc557
Component: engine
2016-06-24 11:51:43 -07:00
10f6f936be Return membership status on join without timeout
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 1973cee0cd86da3c7b7002a3fed7af2557df538c
Component: engine
2016-06-16 15:27:08 -07:00
f2801c549b Add api tests for secret update
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: aed7667bee243b0e0d1aa480e3bb52bae894cfe5
Component: engine
2016-06-16 13:21:55 -07:00
9bd6973edb fix docker swarm init/update --secret
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: 085895342c7f797f0eef7ec956438e33489f211f
Component: engine
2016-06-15 17:05:10 -07:00
7a33d63cb2 Swarm integration tests
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: 0d88d5b64b69a451d374e322b2abe64140a6cd1c
Component: engine
2016-06-13 22:16:18 -07:00