Commit Graph

84 Commits

Author SHA1 Message Date
7acf8456de Merge pull request #27631 from allencloud/get-node-brefore-update
allow node update API to receive node name and id prefix
Upstream-commit: 673c5ee559b05adb9ef6e0e1d6135ff83522e38d
Component: engine
2016-11-16 17:47:31 +01:00
d6be8a084e Merge pull request #28447 from nishanttotla/use-distribution-reference-pkg
Using distribution reference pkg (pin image by digest)
Upstream-commit: 6697fa8a68db41162063df90f54f8b039d4ca4a1
Component: engine
2016-11-15 20:05:26 -08:00
0d115ba911 allow node update api receive node name and id prefix
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: d075b83dd6e5bbd4470400d44889ca71cf9dbd59
Component: engine
2016-11-16 10:18:19 +08:00
f5355b9dd8 Refactoring code for pinning image by digest
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
Upstream-commit: dc1b6341b98c3d009342a878119f683bfe14b471
Component: engine
2016-11-15 13:54:47 -08:00
68648e07db move func getNetwork into helper.go to keep consistent
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: 729b49e9c546c035788e60ea137b0958d10aadde
Component: engine
2016-11-16 00:28:56 +08:00
87b507f694 Merge pull request #28228 from tonistiigi/swarm-cert-expired
Start daemon if certificates have been expired
Upstream-commit: 1e592349f192d020b14372f4d3c21cd3a7c8bd9a
Component: engine
2016-11-10 15:50:36 -08:00
4cf2d87976 Merge pull request #28221 from aboch/ala
Add local address autodetection on swarm init
Upstream-commit: 5d1feb561f1f8b402b5c77b2f27f3d571bd2b226
Component: engine
2016-11-10 15:45:59 -08:00
b55a4aaec7 Start daemon if certificates have been expired
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 439de7694d67eede9867aae12f304772962bffcd
Component: engine
2016-11-10 14:11:53 -08:00
4d22d82151 api: Service Logs support
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
Upstream-commit: 819d0159bbda1b3ae53bdaa9a3e62ac98497e24c
Component: engine
2016-11-10 13:46:02 -08:00
2e628cd947 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>
Upstream-commit: c8d0cb9e716585f33dc730911332adbbc458513a
Component: engine
2016-11-10 13:45:32 -08:00
a2106ea21e Merge pull request #28173 from nishanttotla/pin-images-by-digest
Pin images by digest
Upstream-commit: c13bf5ba51c4f6a1ba5e5c0da0d4f85d2d5b9116
Component: engine
2016-11-10 10:59:28 -08:00
58e0e2f371 Pin image by digest on service create and update
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
Upstream-commit: 764a9ed357bca8fdccf1a794278463453f83f6ff
Component: engine
2016-11-09 23:31:26 -08:00
f3d621f988 Lock/unlock integration tests
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: c3c70c4bcd775d20e2d4a4989733f7ad6b2b90b2
Component: engine
2016-11-09 16:09:01 -08:00
2394a196a1 Add unlock key rotation
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: a6030a50c95cd4e8b39b5f4d5705bb23ebdb28c5
Component: engine
2016-11-09 16:09:01 -08:00
0827ead1b6 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>
Upstream-commit: 0f9fc54df9274327ed22f4e07f0981a648e0278a
Component: engine
2016-11-09 16:09:00 -08:00
2874df7efa Add support for swarm init lock and swarm unlock
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: b4a667c8c4f536445d35e8914a58e8c749f16ea6
Component: engine
2016-11-09 16:09:00 -08:00
db11fea742 Merge pull request #27123 from tonistiigi/fix-join-reconnect
Don’t attempt to reconnect swarm on failed join after timeout
Upstream-commit: 0ccbae04370f8c48a6ae0ff2fc4181347f89e11d
Component: engine
2016-11-08 14:53:44 -08:00
4399a05e84 use named pipe on windows
Signed-off-by: Drew Erny <drew.erny@docker.com>
Upstream-commit: 5b6c565f74731201f7a03163516048f454e9e9d5
Component: engine
2016-11-02 13:47:35 -07:00
50046511ff Merge pull request #27948 from WeiZhang555/consistent-filters
Replace all "Filter" field with "Filters" for consistency
Upstream-commit: f96d45dc8ac21db1f082230e2f828a86e15cad46
Component: engine
2016-11-02 00:53:15 -07:00
9cb45952e0 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>
Upstream-commit: 89a6966726941b4b7f0431ab214013cf9c655c25
Component: engine
2016-11-01 23:09:30 +08:00
07a831dfc2 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>
Upstream-commit: fa710e504b0e3e51d4031790c18621b02dcd2600
Component: engine
2016-10-31 22:05:01 -06:00
5572f883e7 Merge pull request #27698 from tonistiigi/cluster-config-refactor
Refactor swarm node config to struct
Upstream-commit: 844a3166e5c8ea5037a658f1e8f0628f5abc8dce
Component: engine
2016-10-25 13:29:55 -07:00
179ef095e3 Refactor swarm node config to struct
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: b1014428c11a5495e713f2ab6df5aae45e8a46a6
Component: engine
2016-10-24 16:36:50 -07:00
a9bf94a379 remove duplicated error judgement in cluster.go
Signed-off-by: erxian <evelynhsu21@gmail.com>
Upstream-commit: 75c51ad76b0b5995e9349cb369c9e8664f40855c
Component: engine
2016-10-21 14:28:10 +08:00
0ce7aa426e Vendor swarmkit in master
Also, update libnetwork and grpc.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 12a4ed03178982fec44b75479c3e63a316503d90
Component: engine
2016-10-20 13:49:22 -07:00
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
bcbed9fbcc Don’t attempt to reconnect swarm on failed join after timeout
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 7381c84bfb9d586a5a7b87a9d6bcaf3ee15a4256
Component: engine
2016-10-03 13:38:01 -07:00
562ec15f92 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>
Upstream-commit: eb19c2f080f624d8b0186f8037cdc1f7d8ada402
Component: engine
2016-09-27 04:19:38 -07:00
c42acbfe8e Add GetListenAddress in ClusterProvider
Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
Upstream-commit: fbcdca7ebcd45d74c40fbccbb07f2d3decfb8628
Component: engine
2016-09-22 21:00:32 -07:00
d47b1c8a71 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>
Upstream-commit: c452e1bfe6b19d44bf2ed2a1eb8aef7e23d6bafb
Component: engine
2016-09-16 12:27:13 -04:00
e77039e819 Merge pull request #26551 from cpuguy83/26548_fix_tasks
Do not look at `Attachment` tasks in /tasks
Upstream-commit: 3ae023cd2286188158f7a7ed356b63df63f00d09
Component: engine
2016-09-13 21:27:15 -07:00
58f4fbdb5f Do not look at Attachment tasks in /tasks
Fixes #26548

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 15eee038c0b06b4f0ae1bf12bebbb9a1f5deec78
Component: engine
2016-09-13 20:44:06 -04:00
293cb24e33 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>
Upstream-commit: c9fb551d60584ac4ad01561e2f56b7b7cc9483b9
Component: engine
2016-09-13 14:21:58 -07:00
f0d30a4b26 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>
Upstream-commit: 99a98ccc14a9427be47c8006e130750710db0a16
Component: engine
2016-09-07 21:20:41 -07: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
a03ebc79ee Merge pull request #26200 from runcom/engine-api-vendor
vendor docker/engine-api@f9cef59044
Upstream-commit: 8ccac1ad4de898583113d036810da3a35a9be906
Component: engine
2016-09-01 10:51:34 +01:00
1965814a4e vendor docker/engine-api@f9cef59044
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 8f7a8c75ae251f1260299892c5de7c83224b110e
Component: engine
2016-08-31 22:39:13 +02:00
b88197c265 cluster: Do not autodetect advertise address on join
On join, remote addresses are supposed to be detected by the manager
that receives the join request. However, the daemon is interfering with
this by automatically detecting an advertise address and specifying that
to the remote manager. Fix this so that an advertise address is only
specified while joining a cluster if one was given by the user.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: b1d2b088533187954d3b98ed5951ec2dbbb422e9
Component: engine
2016-08-31 11:44:32 -07:00
3034e8ce29 Print stacktrace on failing to leave cluster
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 166d24e464a746dfb3359ee18be90fbd8563515c
Component: engine
2016-08-30 14:17:32 -07:00
6e19944380 Merge pull request #25890 from cpuguy83/fix_swarm_control_sock_path
Use daemon exec root for swarm control socket
Upstream-commit: edafc642b2b12d7428e72f922a2b44c3b62ffc31
Component: engine
2016-08-30 08:51:52 -04:00
6b838755f5 Fix issue in API POST /services/(id or name)/update
This fix tries to address the issue raised in 26090 where
remote API `POST /services/(id or name)/update` cannot
use `name` to update. This is not consistent with the
documentation of the remote API.

This fix fixes this issue by performing a lookup with `getService`
in case `name` instead of `id` is used in API.

This fix adds an integration test to cover the changes.

This fix fixes 26090.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 80e3975117161ae4ce00cc34c7e2b70e45ee43c5
Component: engine
2016-08-29 21:13:53 -07:00
f0bf8347ee Merge pull request #25888 from vdemeester/listcontainerfornode-refactoring
Move ListContainersForNode into cluster package
Upstream-commit: 29232a5d8e621ad2503b205cb5068cc14b2ee42b
Component: engine
2016-08-25 19:10:18 +02:00
86337f007e Move ListContainersForNode into cluster package
It makes little sense to have swarm related code into the daemon
package. This refactor the `daemon` and `cluster` package to remove
`ListContainersForNode` from the daemon.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 4833b3c961f84555c67418440405e470123919c6
Component: engine
2016-08-20 14:14:26 +02:00
3ab26843b3 Make reachable/unreachable condition more readable
Introducing methods to make the intent of the condition clearer to the
eyes of the reader 👼.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 82a451bc94729b0dc2cc0ca94be60de70154f1c2
Component: engine
2016-08-19 22:49:58 +02:00
6a8e5f14f6 Use daemon exec root for swarm control socket
Right now docker puts swarm's control socket into the docker root dir
(e.g. /var/lib/docker).
This can cause some nasty issues with path length being > 108
characters, especially in our CI environment.

Since we already have some other state going in the daemon's exec root
(libcontainerd and libnetwork), I think it makes sense to move the
control socket to this location, especially since there are other unix
sockets being created here by docker so it must always be at a path that
works.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 4d95ea319c4905827fb66fc8da09a6a8ac558004
Component: engine
2016-08-19 16:43:57 -04: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
bced48a04a Merge pull request #25034 from thaJeztah/update-swarm-usage
Update usage of "Swarm" for consistency
Upstream-commit: c388a5bdfa922d85373cc8a77a08612ca4b67861
Component: engine
2016-07-29 01:01:00 +01:00
555a24da1d Remove join-tokens from the /info API
join-tokens are not needed for this endpoint, and should not be as part
of /info

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit d8f3b3f006629c5c1368eca96bcd5bda2a54acd7)
Upstream-commit: 96b2a6e548bc3abf0f0a505ee020d2fe1e8997de
Component: engine
2016-07-27 18:11:51 -07:00
aa7e6b8845 Update usage of "Swarm" for consistency
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: f0230049f0afd318217c60ebe486aab3b54538fd
Component: engine
2016-07-27 23:31:55 +02:00
154089229d Merge pull request #25042 from tiborvass/carry-24492
Carry 24492: Remove swarm inspect and use info instead
Upstream-commit: 9ee430fcf5bd8e2afc6896bb2e0d12c1226c56c2
Component: engine
2016-07-26 01:11:37 -07:00