Commit Graph
33082 Commits
Author SHA1 Message Date
Victor Vieux b0ff0a2e4a Merge pull request #33888 from thaJeztah/enable-version-negotiation
Always perform version-negotiation
Upstream-commit: 75a034621d715bf01069cc3f7bab0cce85fa744c
Component: engine
2017-07-03 17:46:35 +02:00
Victor Vieux 955a71e569 Merge pull request #33926 from coolljt0725/fix_wrong_file_mode
Fix wrong filemode for rotate log files
Upstream-commit: d061ad4a1b3b029e4afa042c1eaf707037562e8c
Component: engine
2017-07-03 17:45:14 +02:00
Vincent Demeester bd2899d4b2 Merge pull request #33908 from thaJeztah/carry-33883-ignore-nonexistent-containers
[carry 33883] daemon: Ignore nonexistent containers when listing containers
Upstream-commit: cab50de4d682890187b48984e0c81b98cb69ed4f
Component: engine
2017-07-03 17:06:54 +02:00
Wentao Zhang f8f582f303 Set unpasued state when receiving 'stateExit' event
Description:
 1. start a container with restart=always.
    `docker run -d --restart=always ubuntu sleep 3`
 2. container init process exits.
 3. use `docker pause <id>` to pause this container.

if the pause action is before cgroup data is removed and after the init process died.
`Pause` operation will success to write cgroup data, but actually do not freeze any process.

And then docker received pause event and stateExit event from
containerd, the docker state will be Running(paused), but the container
is free running.

Then we can not remove it, stop it , pause it  and unpause it.

Signed-off-by: Wentao Zhang <zhangwentao234@huawei.com>
Upstream-commit: fe1b4cfba6320793373c5397641d743d9fe94cf8
Component: engine
2017-07-03 17:26:13 +08:00
Victor Vieux 0257839dba Merge pull request #33853 from vieux/report-2017-06-26
Moby Dev Report 2017 06 26
Upstream-commit: 714c226b431c73efa43373fb7a284408b709c80f
Component: engine
2017-07-03 11:18:11 +02:00
Lei Jitang 3a59ac4d9f Fix wrong filemode for rotate log files
the filemode should be 0640 but not 06400

Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: 96ea8eaa1592856e0829c3465e64f93911d3e389
Component: engine
2017-07-03 03:49:22 -04:00
Sebastiaan van Stijn 155031dfee Merge pull request #33920 from thaJeztah/remove-fork-message
Remove comment about forked golang.org/x/net
Upstream-commit: 7117d5ef25b54c3384fbaf5cf279e0dcc6701a52
Component: engine
2017-07-02 00:29:30 -07:00
Sebastiaan van Stijn 9787d41c94 Remove comment about forked golang.org/x/net
This dependency was temporarily forked, but
the fork was removed in db37a86d37431a1d82505cf6adc91a5d91dad146.

This patch removes the comment

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: fe877c2b959b60d953ad4b2d3eeda377add575a5
Component: engine
2017-07-02 00:19:15 -07:00
Aaron Lehmann c5ade3e304 daemon: Ignore nonexistent containers when listing containers
The name/ID relationships are maintained separately from the memdb and
can be out of sync from any particular memdb snapshot. If a container
does not exist in the memdb, we must accept this as normal and not fail
the listing. This is consistent with what the code used to do before
memdb was introduced.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: d257a63fb6a2ad0c2369981914544add389917bf
Component: engine
2017-06-30 15:19:47 -07:00
Aleksa Sarai 27d204d888 make: add dynbinary target
Recently, it's become necessary to build dynbinaries on certain
distributions, so make it easier for users to build dynbinaries. It
looks like this was just an oversight when we added dynbinary builds.

Signed-off-by: Aleksa Sarai <asarai@suse.de>
Upstream-commit: c81255c9c0314b81ab27f6afd7646cdd259e6495
Component: engine
2017-07-01 04:54:57 +10:00
Brian Goff 8e86b3a04f Merge pull request #33875 from tmp6154/master
Change order of arguments in assertion to be more logical
Upstream-commit: 87df0e533b619c088091fd1e2310e92bb9a24822
Component: engine
2017-06-30 14:46:11 -04:00
Brian Goff 6a2cd2eda7 Merge pull request #33890 from ripcurld0/nesting_fix
Refactor MountPoint Setup function in volume.go
Upstream-commit: 2b20737778ff27b6b08b30912378931271c14eb8
Component: engine
2017-06-30 14:40:50 -04:00
Brian Goff 96548baff2 Merge pull request #33882 from aaronlehmann/memdb-no-container
container: Handle failed memdb lookups
Upstream-commit: 18d874a20fccbd017e91cfaad31861b0953e22fa
Component: engine
2017-06-30 14:31:10 -04:00
Vivek Goyal 56378645d0 Wait for device removal if deferredRemoval=true and deferredDeletion=false
There have been some cases where umount, a device can be busy for a very
short duration. Maybe its udev rules, or maybe it is runc related races
or probably it is something else. We don't know yet.

If deferred removal is enabled but deferred deletion is not, then for the
case of "docker run -ti --rm fedora bash", a container will exit, device
will be deferred removed and then immediately a call will come to delete
the device. It is possible that deletion will fail if device was busy
at that time.

A device can't be deleted if it can't be removed/deactivated first. There
is only one exception and that is when deferred deletion is on. In that
case graph driver will keep track of deleted device and try to delete it
later and return success to caller.

Always make sure that device deactivation is synchronous when device is
being deleted (except the case when deferred deletion is enabled).

This should also take care of small races when device is busy for a short
duration and it is being deleted.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Upstream-commit: 36cb6efebc599900b691e206fb9e99d3aa2fb9a3
Component: engine
2017-06-30 14:27:26 -04:00
Victor Vieux cccb3a2108 add dev report 2017-06-26
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
Upstream-commit: 8b0384fd8918e82459aab037d50bca6394bbf781
Component: engine
2017-06-30 17:19:40 +02:00
Vincent Demeester ab5c937cf4 Merge pull request #33824 from ijc/build-iidfile-with-squash
builder: Emit a BuildResult after squashing.
Upstream-commit: b8766fe793c18149e167b8f9819352a3bfcb0514
Component: engine
2017-06-30 16:42:23 +02:00
Brian Goff 7e46ec7067 Make plugin removes more resilient to failure
Before this patch, if the plugin's `config.json` is successfully removed
but the main plugin state dir could not be removed for some reason (e.g.
leaked mount), it will prevent the daemon from being able to be
restarted.

This patches changes this to atomically remove the plugin such that on
daemon restart we can detect that there was an error and re-try. It also
changes the logic so that it only logs errors on restore rather than
erroring out the daemon.

This also removes some code which is now duplicated elsewhere.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 11cf394e5ea964636294a219872b188fe5bdf4dd
Component: engine
2017-06-30 09:58:19 -04:00
Boaz Shuster 8d232fdb68 Refactor MountPoint Setup function in volume.go
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: fb8b27cd41c92c9a739be70dee11f6e6ffffafdf
Component: engine
2017-06-30 11:09:49 +03:00
Sebastiaan van Stijn 1a311235ba Always perform version-negotiation
If a client is initialized without a specific
version set, version negotiation would not be
functional.

This patch changes the behavior to always
perform version negotation (if called), in
which case the "current" (maximum supported
API version) is used as a default.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 5975dc4b4b8a6fa2e0edd1f1b113e7f66dad732b
Component: engine
2017-06-29 22:24:49 -07:00
Sebastiaan van Stijn 5852d59e6d Fix NewVersionError() for clients using default version
The NewVersionError checks if the client is using the API version
required for using a specific feature.

If the client is initialized without setting a specific version, an
error would be generated because it was not possible to compare
versions. However, a client without explicit version set is running
the latest supported version.

This patch changes the behavior to only generate an error if a version
was set.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: ff2ed1853099a210245814b4263ce1c92b14c153
Component: engine
2017-06-29 22:22:32 -07:00
Aaron Lehmann 60185c5eb3 container: Handle failed memdb lookups
If a container doesn't exist in the memdb, First will return nil, not an
error. This should be checked for before using the result.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: c26b0cdfd1a026af88fcfbed9d3c3acdd6d171a0
Component: engine
2017-06-29 16:33:30 -07:00
Aaron Lehmann c71c867f51 middleware: Redact secret data on "secret create"
With debug logging turned on, we currently log the base64-encoded secret
payload.

Change the middleware code to redact this. Since the field is called
"Data", it requires some context-sensitivity. The URI path is examined
to see which route is being invoked.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 3fbc352cbbce06cd3001d6b14b2b1ebcb4d42cd5
Component: engine
2017-06-29 16:04:47 -07:00
Sebastiaan van Stijn 2f46157f44 Merge pull request #33873 from lixiaobing1/masterissue
update url for issue
Upstream-commit: 82390ebf32c3e48d80b862ffe46d4160aa65b728
Component: engine
2017-06-29 13:48:19 -07:00
Sebastiaan van Stijn e0679f41e0 Merge pull request #33827 from cpuguy83/return_ping_data_if_available
Set ping version even on error
Upstream-commit: 654bb6368b838bc619a5d612a39abb385fbd45c3
Component: engine
2017-06-29 12:27:23 -07:00
Brian Goff 85421deb82 Set ping version even on error
In some cases a server may return an error on the ping response but
still provide version details. The client should use these values when
available.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 27ef09a46ffeb8ba42548de937b68351009f30ea
Component: engine
2017-06-29 12:42:14 -04:00
Brian Goff 1296f00c8a Merge pull request #33860 from lixiaobing1/masterFclose
add f.Close()  after dockerignore.ReadAll(f) before return err
Upstream-commit: e066edcfcfec3b6c4ad61a6a769174453968d62d
Component: engine
2017-06-29 10:19:45 -04:00
Vincent Demeester 8ae901a8e8 Merge pull request #33647 from johnstep/improve-load-error
Stop trying to load images on an incompatible OS
Upstream-commit: 5fbc82128b42871734f35b468d410ba182ada917
Component: engine
2017-06-29 16:12:32 +02:00
Brian Goff 8e64767c1e Merge pull request #33831 from cpuguy83/ignore_enotsup_on_relabel
Do not error on relabel when relabel not supported
Upstream-commit: 1ca83a6595f1c44b8643714082d2ec0e597d788c
Component: engine
2017-06-29 10:08:47 -04:00
Brian Goff 89b4b291d7 Merge pull request #33867 from nishanttotla/fix-duplicate-platform-info
Do not add duplicate platform information to service spec
Upstream-commit: fcaa79b842b2e1e64784db8568334bb656a9b99e
Component: engine
2017-06-29 09:36:01 -04:00
Vitaly Ostrosablin 0b353a6204 Change order of arguments in assertion to be more logical
Because of argument order to assert, in case of fail, we'll get message
like:

... obtained string = "uid=100(test) gid=101(test)\n"
... expected string = "uid=100(test) gid=101(test) groups=101(test)\n"

But obtained string should be second one, not the first one. And
expected string should be first. Here's sample output from test above:

... Output: before restart 'uid=100(test) gid=101(test)
', after restart 'uid=100(test) gid=101(test) groups=101(test)

It's confusing, because expected order of strings in assertion is
reversed. What goes before restart - should be "expected string" and
what goes after - should be "obtained string".

Signed-off-by: Vitaly Ostrosablin <vostrosablin@virtuozzo.com>
Upstream-commit: 07cc701947533089fac5fea42e7d5a9a6ea1cfcc
Component: engine
2017-06-29 12:38:13 +03:00
lixiaobing10051267 53df97e881 update url for issue
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
Upstream-commit: 6fcae83036970dd2aad73127da6cbd0d2becb333
Component: engine
2017-06-29 17:10:02 +08:00
lixiaobing10051267 d76f67a9f8 add f.Close() after dockerignore.ReadAll(f) before return err
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 3072fce0671c5529a42b9e40a5344cce99318312
Component: engine
2017-06-29 00:51:31 -07:00
Sebastiaan van Stijn cc179a2f74 Merge pull request #33851 from tonistiigi/fix-add-remote
build: fix add from remote url
Upstream-commit: b7ac1571a35ce0df42cf96b0ed91f20c33678d31
Component: engine
2017-06-28 23:53:21 -07:00
Nishant Totla 30ba67aee0 Do not add duplicate platform information to service spec
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
Upstream-commit: da85b62001ec390bdc30b321c4a5cd23c17eeb81
Component: engine
2017-06-28 16:01:05 -07:00
Sebastiaan van Stijn 400dd10c7d Merge pull request #33809 from Microsoft/jjh/svmdedicatedscratch
LCOW: Dedicated scratch space for service VM utilities
Upstream-commit: 8b29ba59ccdd4de45fa25137ec5d5a3845f5f5cc
Component: engine
2017-06-28 11:06:46 -07:00
Tonis Tiigi 77cf31b37e add test for filesync path filtering and testutil helper
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 4141d8fe5da596e7ee1eec217378aeb684d0a99e
Component: engine
2017-06-28 09:12:36 -07:00
Tonis Tiigi 1c25f0d80a builder: enable path filtering for filesync session
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: ad46348d7c9f8a84d61e1ba5f08c8fd0727e4ebc
Component: engine
2017-06-28 09:12:30 -07:00
Sebastiaan van Stijn 6a011203cd Merge pull request #33857 from yongtang/33856-make-test-unit
Fix build error for `make test-unit`
Upstream-commit: 3d6ab220db348d82310487e3156d445f19dc0661
Component: engine
2017-06-28 00:31:42 -07:00
John Howard 08b4e324e5 Merge pull request #33826 from Microsoft/jjh/lcownits
LCOW: Fix nits from 33241
Upstream-commit: 950d472c9ce4180b80e28030f7de68ffc3254f97
Component: engine
2017-06-27 22:56:38 -07:00
Yong Tang 7a07cf4db4 Fix build error for make test-unit
This fix tries to address the issue raised by #33856 where
`make test-unit` will result in the failure:
```
...
...
dockerversion/useragent.go:20: undefined: Version
dockerversion/useragent.go:22: undefined: GitCommit
ok  	github.com/docker/docker/api	0.026s	coverage: 68.0% of statements
ok  	github.com/docker/docker/api/errors	0.003s	coverage: 100.0% of statements
FAIL	github.com/docker/docker/api/server [build failed]
make: *** [test-unit] Error 2
```

The issue is because in case of `make test-unit`, `source "${MAKEDIR}/.go-autogen"`
is missing.

This caused the `make test-unit` failure.

This fix adds `source "${MAKEDIR}/.go-autogen"` in `hack/make/test-unit`

This fix fixes #33856.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: fac486d0a02d6af2759f6d0e81bd8a23d82d432c
Component: engine
2017-06-28 03:18:55 +00:00
Sebastiaan van Stijn 674cb1c136 Merge pull request #32977 from imkin/30491-default-container-size
Add overlay2.size daemon storage-opt
Upstream-commit: acf855bf10e16b4282cb14f6cc34e378831a22c8
Component: engine
2017-06-27 20:00:02 -07:00
Sebastiaan van Stijn 8266f5c84f Merge pull request #33838 from lixiaobing1/masterRange
optimize for loop with rootfs.DiffIDs
Upstream-commit: 74a5b14c80022392c17100e1cde6727842eceb6f
Component: engine
2017-06-27 14:34:10 -07:00
John Howard 9a5747b3f9 LCOW: Fix nits from 33241
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 4ec9766a27ffb964cec6b8b2745725965b2644aa
Component: engine
2017-06-27 11:59:49 -07:00
John Howard 92d764e7fb LCOW: Dedicated scratch space for global service VM
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: d1d649c891c8b06567afba7542ea9bf518cdaa02
Component: engine
2017-06-27 10:55:16 -07:00
Tonis Tiigi 4c52cfc0fb build: fix add from remote url
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 2981667e11e24e9e1e61252a40ceb11fd7cb9811
Component: engine
2017-06-27 10:38:01 -07:00
Brian Goff 59255c95cd Merge pull request #33832 from glasser/glasser/msg-source
Fix stderr logging for journald and syslog
Upstream-commit: 7843bfde36d9ded6fada32f469fe1790316137ae
Component: engine
2017-06-27 13:30:41 -04:00
Victor Vieux 50b9ac741e Merge pull request #33690 from raja-sami-10p/pkg/authorization
Increase test Coverage of pkg/authorization
Upstream-commit: 48e625ccca176787d56a6e87a0e2cc779ce5b6d3
Component: engine
2017-06-27 10:09:13 -07:00
Vincent Demeester e3e93a641f Merge pull request #33696 from thaJeztah/fix-git-clone
Fix handling of remote "git@" notation
Upstream-commit: 151c5ea798c476128708a91fda8644a6889c2091
Component: engine
2017-06-27 16:56:11 +02:00
lixiaobing10051267 41493b0fad optimize for loop with rootfs.DiffIDs
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
Upstream-commit: 80b2c326de29552c6ee4072fca75ae00eb3be41a
Component: engine
2017-06-27 20:31:27 +08:00
Dhawal Yogesh Bhanushali 359031100e Add overlay2.size daemon storage-opt
This commit adds the overlay2.size option to the daemon daemon
storage opts.

The user can override this option by the "docker run --storage-opt"
options.

Signed-off-by: Dhawal Yogesh Bhanushali <dbhanushali@vmware.com>
Upstream-commit: a63d5bc03513755015827d0fe93563240429f1e0
Component: engine
2017-06-27 01:07:48 -07:00