Commit graph

100 commits

Author SHA1 Message Date
allencloud
7bdd1a4f9c not export errors and forbid leave when unlocked
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-07 13:25:34 +08:00
Tõnis Tiigi
eefbf1ddd3 Merge pull request #28907 from tonistiigi/cluster-refactor
Switch cluster locking strategy
2016-12-06 10:02:23 -08:00
Tonis Tiigi
b7ea1bdb02 Switch cluster locking strategy
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-30 14:59:12 -08:00
Vincent Demeester
768f4ce02b Merge pull request #28899 from aaronlehmann/dont-pull-image-id
Don't resolve or pull images referenced by ID
2016-11-30 10:08:43 +01:00
Aaron Lehmann
9dba9e3248 cluster: Refuse swarm spec not named "default"
If, using the API, a user submits an init request with a spec that has a
name other than "default", the engine will rename the "default" cluster
object. Some parts of swarmkit depend on having a cluster object named
"default". Reject any specs that use other names.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-28 17:19:29 -08:00
Aaron Lehmann
089842c4b4 Don't resolve or pull images referenced by ID
If a swarm service is created using an image ID, it's useless to try to
pull this reference or resolve it to a manifest digest. Avoid doing this
when a fully qualified image ID is given.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-28 13:53:52 -08:00
Ben Firshman
70acb89fa2
Improve error when connecting service to network
The error didn't hint at how to resolve it. Google auto-suggest
also implies that people have been Googling this error.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-24 14:43:24 +00:00
Andrea Luzzardi
c2d435e4f0 service logs: Support no-follow mode
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-21 18:02:13 -08:00
allencloud
89100c162b judge manager if locked before parsing key
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-21 16:39:09 +08:00
Victor Vieux
9c559e6d0b fix a few golint errors
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-18 18:32:02 -08:00
Aaron Lehmann
30d0c3899e Merge pull request #28421 from aaronlehmann/digest-pinning-warnings
Return warnings from service create/update when digest pinning fails
2016-11-18 11:33:17 -08:00
Aaron Lehmann
948e60691e Return warnings from service create and service update when digest pinning fails
Modify the service update and create APIs to return optional warning
messages as part of the response. Populate these messages with an
informative reason when digest resolution fails.

This is a small API change, but significantly improves the UX. The user
can now get immediate feedback when they've specified a nonexistent
image or unreachable registry.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-18 09:31:31 -08:00
allencloud
972a246c67 judge manager before unlocking
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-18 23:49:40 +08:00
Alexander Morozov
8a6c5358af Merge pull request #28536 from allencloud/remove-unused-err-ErrPendingSwarmExists
remove unused error ErrPendingSwarmExists
2016-11-17 10:17:47 -08:00
yupeng
9551dd03cf Fix the typo
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-17 14:13:38 +08:00
allencloud
7777557a3a remove unused error ErrPendingSwarmExists
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-17 14:06:08 +08:00
Vincent Demeester
673c5ee559 Merge pull request #27631 from allencloud/get-node-brefore-update
allow node update API to receive node name and id prefix
2016-11-16 17:47:31 +01:00
Tõnis Tiigi
6697fa8a68 Merge pull request #28447 from nishanttotla/use-distribution-reference-pkg
Using distribution reference pkg (pin image by digest)
2016-11-15 20:05:26 -08:00
allencloud
d075b83dd6 allow node update api receive node name and id prefix
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-16 10:18:19 +08:00
Nishant Totla
dc1b6341b9
Refactoring code for pinning image by digest
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2016-11-15 13:54:47 -08:00
allencloud
729b49e9c5 move func getNetwork into helper.go to keep consistent
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-16 00:28:56 +08:00
John Howard
1e592349f1 Merge pull request #28228 from tonistiigi/swarm-cert-expired
Start daemon if certificates have been expired
2016-11-10 15:50:36 -08:00
Aaron Lehmann
5d1feb561f Merge pull request #28221 from aboch/ala
Add local address autodetection on swarm init
2016-11-10 15:45:59 -08:00
Tonis Tiigi
439de7694d Start daemon if certificates have been expired
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-10 14:11:53 -08:00
Andrea Luzzardi
819d0159bb api: Service Logs support
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-10 13:46:02 -08:00
Alessandro Boch
c8d0cb9e71 Add local address autodetection on swarm init
- when advertise-addr is not local and listen-addr is
  not specified

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-11-10 13:45:32 -08:00
Andrea Luzzardi
c13bf5ba51 Merge pull request #28173 from nishanttotla/pin-images-by-digest
Pin images by digest
2016-11-10 10:59:28 -08:00
Nishant Totla
764a9ed357
Pin image by digest on service create and update
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2016-11-09 23:31:26 -08:00
Aaron Lehmann
c3c70c4bcd Lock/unlock integration tests
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-09 16:09:01 -08:00
Aaron Lehmann
a6030a50c9 Add unlock key rotation
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-09 16:09:01 -08:00
Aaron Lehmann
0f9fc54df9 Revise swarm init/update flags, add unlocking capability
- Neither swarm init or swarm update should take an unlock key
- Add an autolock flag to turn on autolock
- Make the necessary docker api changes
- Add SwarmGetUnlockKey API call and use it when turning on autolock
- Add swarm unlock-key subcommand

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-09 16:09:00 -08:00
Tonis Tiigi
b4a667c8c4 Add support for swarm init lock and swarm unlock
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-09 16:09:00 -08:00
Aaron Lehmann
0ccbae0437 Merge pull request #27123 from tonistiigi/fix-join-reconnect
Don’t attempt to reconnect swarm on failed join after timeout
2016-11-08 14:53:44 -08:00
Drew Erny
5b6c565f74 use named pipe on windows
Signed-off-by: Drew Erny <drew.erny@docker.com>
2016-11-02 13:47:35 -07:00
Sebastiaan van Stijn
f96d45dc8a Merge pull request #27948 from WeiZhang555/consistent-filters
Replace all "Filter" field with "Filters" for consistency
2016-11-02 00:53:15 -07:00
Zhang Wei
89a6966726 Replace all "Filter" field with "Filters" for consistency
In file `api/types/client.go`, some of the "*Options{}" structs own a
`Filters` field while some else have the name of `Filter`, this commit
will rename all `Filter` to `Filters` for consistency. Also `Filters`
is consistent with API with format `/xxx?filters=xxx`, that's why
`Filters` is the right name.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2016-11-01 23:09:30 +08:00
Daehyeok Mun
fa710e504b Fix logrus formatting
This fix tries to fix logrus formatting by removing `f` from
`logrus.[Error|Warn|Debug|Fatal|Panic|Info]f` when formatting string
is not present.

Fixed issue #23459

Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2016-10-31 22:05:01 -06:00
Alexander Morozov
844a3166e5 Merge pull request #27698 from tonistiigi/cluster-config-refactor
Refactor swarm node config to struct
2016-10-25 13:29:55 -07:00
Tonis Tiigi
b1014428c1 Refactor swarm node config to struct
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-10-24 16:36:50 -07:00
Evelynhsu
75c51ad76b remove duplicated error judgement in cluster.go
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-10-21 14:28:10 +08:00
Aaron Lehmann
12a4ed0317 Vendor swarmkit in master
Also, update libnetwork and grpc.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-10-20 13:49:22 -07:00
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
Tonis Tiigi
7381c84bfb Don’t attempt to reconnect swarm on failed join after timeout
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-10-03 13:38:01 -07:00
Yong Tang
eb19c2f080 Let swarmkit handle cluster defaults in swarm init if not specified
This fix tries to address the issue raised in 24958 where previously
`docker swarm init` will automatically fill in all the default value
(instead of letting swarmkit to handle the default).

This fix update the `swarm init` so that initial value are passed only
when a flag change has been detected.

This fix fixes 24958.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-09-27 04:19:38 -07:00
Jana Radhakrishnan
fbcdca7ebc Add GetListenAddress in ClusterProvider
Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-22 21:00:32 -07:00
Daniel Nephin
c452e1bfe6 Move errors/ to api/errors
Using:
        gomvpkg -from github.com/docker/docker/errors
                -to github.com/docker/docker/api/errors
                -vcs_mv_cmd "git mv {{.Src}} {{.Dst}}"

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-09-16 12:27:13 -04:00
Jana Radhakrishnan
3ae023cd22 Merge pull request #26551 from cpuguy83/26548_fix_tasks
Do not look at `Attachment` tasks in /tasks
2016-09-13 21:27:15 -07:00
Brian Goff
15eee038c0 Do not look at Attachment tasks in /tasks
Fixes #26548

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-09-13 20:44:06 -04:00
Jana Radhakrishnan
c9fb551d60 Fix autostart for swarm scope connected containers
The swarm scope network connected containers with autostart enabled
there was a dependency problem with the cluster to be initialized before
we can autostart them. With the current container restart code happening
before cluster init, these containers were not getting autostarted
properly. Added a fix to delay the container start of those containers
which has atleast one swarm scope endpoint to until after the cluster is
initialized.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-13 14:21:58 -07:00
Jana Radhakrishnan
99a98ccc14 Add support for docker run in swarm mode overlay
This PR adds support for running regular containers to be connected to
swarm mode multi-host network so that:
    - containers connected to the same network across the cluster can
      discover and connect to each other.
    - Get access to services(and their associated loadbalancers)
      connected to the same network

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-07 21:20:41 -07:00