Commit graph

35471 commits

Author SHA1 Message Date
Tibor Vass
a2a1d04bca
Merge pull request from thaJeztah/refactor_system_info
Refactor daemon.info to reduce cyclomatic complexity
2018-07-13 16:47:28 -07:00
Yong Tang
126d038831
Merge pull request from fcrisciani/fix-internal
Fix flakyness in TestDockerNetworkInternalMode
2018-07-13 15:26:05 -07:00
Flavio Crisciani
a2bb2144b3
Fix flakyness in TestDockerNetworkInternalMode
Instead of waiting for the DNS to fail, try to access
a specific external IP and verify that 100% of the pakcets
are being lost.

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2018-07-13 11:43:38 -07:00
Sebastiaan van Stijn
c03d3a416b
Unexport daemon.FillPlatformInfo
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-13 13:16:34 +02:00
Sebastiaan van Stijn
50eaed4d0c
Refactor daemon.info to reduce cyclomatic complexity
Before this change;

    gocyclo daemon/info.go
    17 daemon (*Daemon).SystemInfo daemon/info.go:27:1
    2 daemon (*Daemon).SystemVersion daemon/info.go:150:1
    1 daemon (*Daemon).showPluginsInfo daemon/info.go:195:1

After this change;

    gocyclo daemon/info.go
    8 daemon (*Daemon).fillSecurityOptions daemon/info.go:150:1
    5 daemon operatingSystem daemon/info.go:201:1
    3 daemon (*Daemon).fillDriverInfo daemon/info.go:121:1
    2 daemon hostName daemon/info.go:172:1
    2 daemon memInfo daemon/info.go:192:1
    2 daemon kernelVersion daemon/info.go:182:1
    1 daemon (*Daemon).SystemVersion daemon/info.go:81:1
    1 daemon (*Daemon).SystemInfo daemon/info.go:27:1
    1 daemon (*Daemon).fillPluginsInfo daemon/info.go:138:1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-13 13:10:05 +02:00
Sebastiaan van Stijn
23f4a3d509
Merge pull request from kolyshkin/continuity
vendor: update continuity to 0377f7d767206
2018-07-13 12:12:09 +02:00
Sebastiaan van Stijn
bd0a4ac1c5
Merge pull request from kolyshkin/lcow
lcow: fix debug in startServiceVMIfNotRunning()
2018-07-13 12:10:26 +02:00
Kir Kolyshkin
c64a2448d1 vendor: update continuity to 0377f7d767206
This is to include the Go 1.11 fix
(https://github.com/containerd/continuity/pull/120).

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2018-07-12 16:38:05 -07:00
Sebastiaan van Stijn
f9470d8189
Merge pull request from thaJeztah/fix-linting-errors
Fix some golint and ineffassign issues
2018-07-13 00:25:46 +02:00
Kir Kolyshkin
b7a95a3ce4 lcow: fix debug in startServiceVMIfNotRunning()
When go-1.11beta1 is used for building, the following error is
reported:

> 14:56:20 daemon\graphdriver\lcow\lcow.go:236: Debugf format %s reads
> arg , but call has 1 arg

While fixing this, let's also fix a few other things in this
very function (startServiceVMIfNotRunning):

1. Do not use fmt.Printf when not required.
2. Use `title` whenever possible.
3. Don't add `id` to messages as `title` already has it.
4. Remove duplicated colons.
5. Try to unify style of messages.
6. s/startservicevmifnotrunning/startServiceVMIfNotRunning/
...

In general, logging/debugging here is a mess and requires much more
love than I can give it at the moment. Areas for improvement:

1. Add a global var logger = logrus.WithField("storage-driver", "lcow")
and use it everywhere else in the code.
2. Use logger.WithField("id", id) whenever possible (same for "context"
and other similar fields).
3. Revise all the errors returned to be uniform.
4. Make use of errors.Wrap[f] whenever possible.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2018-07-12 13:42:23 -07:00
Sebastiaan van Stijn
460297b5fb
Merge pull request from msabansal/errorfix
Fix error string in docker CLI test
2018-07-12 13:47:47 +02:00
Sandeep Bansal
76ace9bb5e Fix error string in docker CLI test
Signed-off-by: Sandeep Bansal <sabansal@microsoft.com>
2018-07-11 23:02:44 -07:00
Yong Tang
705774aa76
Merge pull request from thaJeztah/bump_metalinter
Bump gometalinter to v2.0.6
2018-07-11 15:44:45 -07:00
Sebastiaan van Stijn
5fc12449d8
Merge pull request from thaJeztah/format_fixes
Various formatting fixes / compilation issues caught by Go 1.11
2018-07-11 23:14:19 +02:00
Sebastiaan van Stijn
35f7e7c50a
Fix golint issues
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 22:19:03 +02:00
Sebastiaan van Stijn
ddd8a6572d
Fix ineffassign linting
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 22:18:45 +02:00
Sebastiaan van Stijn
f0585d04d0
Merge pull request from yui-knk/do_not_Healthcheck_RUN_command
Ensure RUN instruction to run without Healthcheck
2018-07-11 20:38:03 +02:00
Kir Kolyshkin
09ad434f10
loggerutils: build fixes, improve errors
There are two build errors when using go-1.11beta1:

> daemon/logger/loggerutils/logfile.go:367: Warningf format %q arg f.Name is a func value, not called
> daemon/logger/loggerutils/logfile.go:564: Debug call has possible formatting directive %v

In the first place, the file name is actually not required as error
message already includes it.

While at it, fix a couple of other places for more correct messages, and
make sure to not add a file name if an error already has it.

Fixes: f69f09f44c
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 15:52:25 +02:00
Kir Kolyshkin
2e30e9e6db
aufs: fix Wrapf args
Fix the following go-1.11beta1 build error:

> daemon/graphdriver/aufs/aufs.go:376: Wrapf format %s reads arg , but call has 0 args

While at it, change '%s' to %q.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 15:52:22 +02:00
Kir Kolyshkin
a9a136572d
Compile fix
Go 1.11beta1 (rightfully) complains:

> 15:38:37 daemon/cluster/controllers/plugin/controller.go:183:
> Entry.Debugf format %#T has unrecognized flag #

This debug print was added by commit 72c3bcf2a5.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 15:52:19 +02:00
Sebastiaan van Stijn
3737194b9f
daemon/*.go: fix some Wrap[f]/Warn[f] errors
In particular, these two:
> daemon/daemon_unix.go:1129: Wrapf format %v reads arg , but call has 0 args
> daemon/kill.go:111: Warn call has possible formatting directive %s

and a few more.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 15:51:51 +02:00
Kir Kolyshkin
bda793d1d4
Bump gometalinter to v2.0.6
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-11 15:41:15 +02:00
Justin Cormack
94a8f4d0d4
Merge pull request from thaJeztah/bump_libnetwork
Bump libnetwork to d00ceed44cc447c77f25cdf5d59e83163bdcb4c9
2018-07-11 12:04:41 +01:00
Yong Tang
e6aa71b190
Merge pull request from tonistiigi/mountable-fix
builder: fix duplicate calls to mountable
2018-07-10 18:26:57 -07:00
Tonis Tiigi
ffa7233d15 builder: fix duplicate calls to mountable
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-07-10 15:21:29 -07:00
Sebastiaan van Stijn
56b14b8c25
Merge pull request from cpuguy83/bump_containerd_1.1.1
Bump containerd daemon to v1.1.1
2018-07-10 13:02:22 +02:00
Brian Goff
c083eb7595 Bump containerd daemon to v1.1.1
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-07-09 16:00:20 -07:00
Tianon Gravi
c04f9ae9d7
Merge pull request from mykeul/master
mkimage-alpine.sh: Removed the "-i -t" arguments from the smoke test calling printf (the…
2018-07-09 14:50:53 -06:00
Sebastiaan van Stijn
42bd8e1b10
Merge pull request from thaJeztah/pass_loglevel_to_containerd
Pass log-level to containerd
2018-07-09 21:59:47 +02:00
Sebastiaan van Stijn
d58c4cbe6c
Bump libnetwork to d00ceed44cc447c77f25cdf5d59e83163bdcb4c9
The absence of the file /proc/sys/net/ipv6/conf/all/disable_ipv6
doesn't appear to affect functionality, at least at this time.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-09 21:03:50 +02:00
Sebastiaan van Stijn
328c089b5b
Merge pull request from ctelfer/scalable-lb
Improve scalability of the Linux load balancing
2018-07-09 20:06:37 +02:00
Sebastiaan van Stijn
aaa1392279
Pass log-level to containerd
dockerd allows the `--log-level` to be specified, but this log-level
was not forwarded to the containerd process.

This patch sets containerd's log-level to the same as dockerd if a
custom level is provided.

Now that `--log-level` is also passed to containerd, the default "info"
is removed, so that containerd's default (or the level configured in containerd.toml)
is still used if no log-level is set.

Before this change:

containerd would always be started without a log-level set (only the level that's configured in `containerd.toml`);

```
root      1014  2.5  2.1 496484 43468 pts/0    Sl+  12:23   0:00 dockerd
root      1023  1.2  1.1 681768 23832 ?        Ssl  12:23   0:00  \_ docker-containerd --config /var/run/docker/containerd/containerd.toml
```

After this change:

when running `dockerd` without options (same as current);

```
root      1014  2.5  2.1 496484 43468 pts/0    Sl+  12:23   0:00 dockerd
root      1023  1.2  1.1 681768 23832 ?        Ssl  12:23   0:00  \_ docker-containerd --config /var/run/docker/containerd/containerd.toml
```

when running `dockerd --debug`:

```
root       600  0.8  2.1 512876 43180 pts/0    Sl+  12:20   0:00 dockerd --debug
root       608  0.6  1.1 624428 23672 ?        Ssl  12:20   0:00  \_ docker-containerd --config /var/run/docker/containerd/containerd.toml --log-level debug
```

when running `dockerd --log-level=panic`

```
root       747  0.6  2.1 496548 43996 pts/0    Sl+  12:21   0:00 dockerd --log-level=panic
root       755  0.7  1.1 550696 24100 ?        Ssl  12:21   0:00  \_ docker-containerd --config /var/run/docker/containerd/containerd.toml --log-level panic
```

combining `--debug` and `--log-level` (`--debug` takes precedence):

```
root       880  2.7  2.1 634692 43336 pts/0    Sl+  12:23   0:00 dockerd --debug --log-level=panic
root       888  1.0  1.1 616232 23652 ?        Ssl  12:23   0:00  \_ docker-containerd --config /var/run/docker/containerd/containerd.toml --log-level debug
```

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-09 15:38:08 +02:00
Vincent Demeester
c8bda42d16
Merge pull request from thaJeztah/update_cfssl_for_swarmkit
Update cloudflare/cfssl to 1.3.2
2018-07-09 09:10:25 +02:00
Sebastiaan van Stijn
905811f366
Merge pull request from ctelfer/rm-libnet-error-wrapping
Fix faulty error type checking in removeNetwork()
2018-07-08 20:18:40 +02:00
Sebastiaan van Stijn
d4bbd7938a
Merge pull request from storykim/test-md-typo
Fix typo on test.md
2018-07-08 17:13:21 +02:00
Donghwa Kim
3048c3a768 Fix typo on test.md
It said `TESTFLAGS='-test.run ^TestValidateIPAddress$' make test-unit`
runs `TestBuild` test, but actually runs `TestValidateIPAddress` test.

Signed-off-by: Donghwa Kim <shanytt@gmail.com>
2018-07-08 18:22:21 +09:00
Yuichiro Kaneko
44e08d8a7d Ensure RUN instruction to run without Healthcheck
Before this commit Healthcheck run if HEALTHCHECK
instruction appears before RUN instruction.
By passing `withoutHealthcheck` to `copyRunConfig`,
always RUN instruction run without Healthcheck.

Fix: https://github.com/moby/moby/issues/37362

Signed-off-by: Yuichiro Kaneko <spiketeika@gmail.com>
2018-07-08 16:49:04 +09:00
Chris Telfer
6225d1f15c Get err type in removeNetworks() w/ errors.Cause()
Commit c0bc14e8 wrapped the return value of nw.Delete() with some extra
information.  However, this breaks the code in
containerAdaptor.removeNetworks() which ignores certain specific
libnetwork error return codes.  Said codes actually don't represent
errors, but just regular conditions to be expected in normal operation.
The removeNetworks() call checked for these errors by type assertions
which the errors.Wrap(err...) breaks.

This has a cascading effect, because controller.Remove() invokes
containerAdaptor.removeNetworks() and if the latter returns an error,
then Remove() fails to remove the container itself.  This is not
necessarily catastrophic since the container reaper apparently will
purge the container later, but it is clearly not the behavior we want.

Signed-off-by: Chris Telfer <ctelfer@docker.com>
2018-07-07 18:18:53 -04:00
Brian Goff
ae1160b8d8
Merge pull request from tonistiigi/vendor-containerd
vendor: update containerd to b41633746
2018-07-06 18:37:31 -07:00
Tonis Tiigi
f0e6158266 vendor: update containerd to b41633746
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-07-06 14:43:49 -07:00
Sebastiaan van Stijn
86a41e4ef7
Merge pull request from runcom/no-acpi
Add /proc/acpi to masked paths
2018-07-06 22:40:08 +02:00
Chris Telfer
0e162d9923 Bump libnetwork to 3ac297bc
Bump libnetwork to 3ac297bc7fd0afec9051bbb47024c9bc1d75bf5b in order to
get fix 0c3d9f00 which addresses a flaw that the scalable load balancing
code revealed.  Attempting to print sandbox IDs where the sandbox name
was too short results in a goroutine panic.  This can occur with
sandboxes with names of 1 or 2 characters in the previous code. But due
to naming updates in the scalable load balancing code, it could now
occur for networks whose name was 3 characters and at least one of the
integration tests employed such networks (named 'foo', 'bar' and 'baz').

This update also brings in several changes as well:
 * 6c7c6017 - Fix error handling about bridgeSetup
 * 5ed38221 - Optimize networkDB queue
 * cfa9afdb - ndots: produce error on negative numbers
 * 5586e226 - improve error message for invalid ndots number
 * 449672e5 - Allows to set generic knobs on the Sandbox
 * 6b4c4af7 - do not ignore user-provided "ndots:0" option
 * 843a0e42 - Adjust corner case for reconnect logic

Signed-off-by: Chris Telfer <ctelfer@docker.com>
2018-07-06 13:58:09 -04:00
Vincent Demeester
aba2735e3f
Merge pull request from yongtang/07052018-ipcmode
Migrate some ipcmode tests to integration
2018-07-06 10:00:03 +02:00
Sebastiaan van Stijn
13f9a25a42
Merge pull request from cyli/bump-swarmkit
Bump swarmkit to include task reaper fixes and more metrics.
2018-07-06 09:30:40 +02:00
Ying Li
b322705750 Bump swarmkit to include task reaper fixes and more metrics.
This includes the following behavior-modifying PRs:

- 
- 
- 
- 

Signed-off-by: Ying Li <ying.li@docker.com>
2018-07-05 15:24:10 -07:00
Sebastiaan van Stijn
656036ce2c
Merge pull request from debayande/even-more-names
Adds a few more names to the name generator.
2018-07-05 21:06:12 +02:00
Sebastiaan van Stijn
cfc75f91ab
Merge pull request from cpuguy83/fix_bindmount_src_create_race
Fix bindmount autocreate race
2018-07-05 20:36:49 +02:00
Brian Goff
e9c0435178
Merge pull request from thaJeztah/bump_fsnotify
update fsnotify to v1.4.7
2018-07-05 10:50:25 -07:00
Antonio Murdaca
569b9702a5
Add /proc/acpi to masked paths
The deafult OCI linux spec in oci/defaults{_linux}.go in Docker/Moby
from 1.11 to current upstream master does not block /proc/acpi pathnames
allowing attackers to modify host's hardware like enabling/disabling
bluetooth or turning up/down keyboard brightness. SELinux prevents all
of this if enabled.

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2018-07-05 17:39:52 +02:00
Mickaël Remars
2137e866b9 Removed the "-i -t" arguments from the smoke test calling printf (these flags seem not really needed, and break jenkins builds with error "the input device is not a TTY")
Signed-off-by: Mickaël Remars <github@remars.com>
2018-07-05 17:29:17 +02:00