Commit graph

34862 commits

Author SHA1 Message Date
Vincent Demeester
30498c7c5f
Do not copy golang in itself
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-02-27 09:16:13 +01:00
Dennis Chen
0d31dee5ec Network testing with busybox:glibc
Using the `busybox:glibc` instead of `busybox:latest` to the
network related test cases (`ping` issue).

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-02-27 06:53:00 +00:00
Dennis Chen
3ae45c5f17 Add busybox:latest into the frozen images
Adding `busybox:latest` and `busybox:glibc` as the frozen images

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-02-27 06:28:29 +00:00
Yong Tang
d896f87c05 Migrate volumes tests in integration-cli to api tests
This fix migrates volumes tests in integration-cli to api tests
in integration/

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2018-02-27 05:18:31 +00:00
Daniel Nephin
c10e6a4d15 Remove unnecessary GetImageIDAndOS use GetImage
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-26 16:49:37 -05:00
Daniel Nephin
2b1a2b10af Move ImageService to new package
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-26 16:49:37 -05:00
Daniel Nephin
0dab53ff3c Move all daemon image methods into imageService
imageService provides the backend for the image API and handles the
imageStore, and referenceStore.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-26 16:48:29 -05:00
Vincent Demeester
600475715e
Merge pull request #36338 from tonistiigi/fix-copy-leak
builder: fix layer lifecycle leak
2018-02-26 22:36:40 +01:00
John Howard
83908836d3 Windows: Block pulling uplevel images
Signed-off-by: John Howard <jhoward@microsoft.com>
2018-02-26 12:33:54 -08:00
Vincent Demeester
4bb0f24716
Update e2e script
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-02-26 14:32:41 +01:00
Vincent Demeester
00c1c604d0
Merge pull request #35100 from cpuguy83/multistage_dockerfile
Updates the Dockerfile to use multi-stage
2018-02-26 14:05:21 +01:00
Brian Goff
d539038d97
Updates the Dockerfile to use multi-stage
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-02-26 09:10:17 +01:00
Yong Tang
99e2818850 Migrate some config secret tests to api test
This fix migrates some secret create tests to api tests,
and remove redundant TestConfigCreate.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2018-02-25 23:58:04 +00:00
Sebastiaan van Stijn
5a7bbd6dba
Merge pull request #36393 from yongtang/02222018-containerIsStopped
Move containerIsStopped/containerIsInState to integration/internal/container
2018-02-25 16:02:12 +01:00
Vincent Demeester
64eae3752b
Merge pull request #36384 from yongtang/02222018-docker-py
Update docker-py
2018-02-25 12:42:16 +01:00
Yong Tang
20c4efee7b
Merge pull request #36164 from emil2k/gzip-archive
Content encoding negotiation added to archive request.
2018-02-24 14:06:06 -08:00
Emil Davtyan
117cd7ff64 Content encoding negotiation added to archive request.
Signed-off-by: Emil Davtyan <emil2k@gmail.com>
2018-02-24 06:41:45 +01:00
Sebastiaan van Stijn
4d9beb4607
Merge pull request #36392 from yongtang/02232018-golint
Golint fix up
2018-02-24 00:50:04 +01:00
Yong Tang
66935a0f64 Update docker-py
This fix update docker-py so that containers from the tests run
could be cleaned up during teardown:
```diff
-ENV DOCKER_PY_COMMIT 5e28dcaace5f7b70cbe44c313b7a3b288fa38916
+ENV DOCKER_PY_COMMIT 8b246db271a85d6541dc458838627e89c683e42f
```

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2018-02-23 22:24:47 +00:00
Yong Tang
eda311c18f Move containerIsStopped/containerIsInState to integration/internal/container
This fix moves helper functions containerIsStopped and
containerIsInState to integration/internal/container,
so that they could be used outside of integration/container.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2018-02-23 21:23:05 +00:00
Yong Tang
742d4506bd Golint fix up
This fix fixes a golint issue.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2018-02-23 16:40:37 +00:00
Vincent Demeester
219582bba6
Merge pull request #36387 from arm64b/teardown-cleanup4network
Clean the teardown process of network test
2018-02-23 15:14:50 +01:00
Dennis Chen
57d85e7e54 Clean the teardown process of network test
We need to clean the resources created in some test cases, else
in some cases we'll get below error for other tests:

> FAIL: docker_experimental_network_test.go:37: DockerNetworkSuite.TestDockerNetworkMacvlanPersistance
>  docker_experimental_network_test.go:44:
> ...
> Command:  ip link add dm-dummy0 type dummy
> ExitCode: 2
> Error:    exit status 2
> Stdout:
> Stderr:   RTNETLINK answers: File exists
> ...

Logically, each test case should be independent, the failure of previous
test case should not have side-effect for the test cases followed.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-02-23 08:54:52 +00:00
Yong Tang
66e6beeb24
Merge pull request #35967 from Microsoft/jjh/32838-pass-container-shutdown-error-back
Windows: Pass back system errors on container exit
2018-02-22 19:12:10 -08:00
Brian Goff
8b8a0e2c52
Merge pull request #36376 from vdemeester/fix-e2e-dockerfile
Fix Dockerfile.e2e build
2018-02-22 13:17:22 -05:00
John Howard
8c52560ea4 Windows: Pass back system errors on container exit
Signed-off-by: John Howard <jhoward@microsoft.com>

While debugging #32838, it was found (https://github.com/moby/moby/issues/32838#issuecomment-356005845) that the utility VM in some circumstances was crashing. Unfortunately, this was silently thrown away, and as far as the build step (also applies to docker run) was concerned, the exit code was zero and the error was thrown away. Windows containers operate differently to containers on Linux, and there can be legitimate system errors during container shutdown after the init process exits. This PR handles this and passes the error all the way back to the client, and correctly causes a build step running a container which hits a system error to fail, rather than blindly trying to keep going, assuming all is good, and get a subsequent failure on a commit.

With this change, assuming an error occurs, here's an example of a failure which previous was reported as a commit error:

```
The command 'powershell -Command $ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue'; Install-WindowsFeature -Name Web-App-Dev ;   Install-WindowsFeature -Name ADLDS;   Install-WindowsFeature -Name Web-Mgmt-Compat;   Install-WindowsFeature -Name Web-Mgmt-Service;   Install-WindowsFeature -Name Web-Metabase;   Install-WindowsFeature -Name Web-Lgcy-Scripting;   Install-WindowsFeature -Name Web-WMI;   Install-WindowsFeature -Name Web-WHC;   Install-WindowsFeature -Name Web-Scripting-Tools;   Install-WindowsFeature -Name Web-Net-Ext45;   Install-WindowsFeature -Name Web-ASP;   Install-WindowsFeature -Name Web-ISAPI-Ext;   Install-WindowsFeature -Name Web-ISAPI-Filter;   Install-WindowsFeature -Name Web-Default-Doc;   Install-WindowsFeature -Name Web-Dir-Browsing;   Install-WindowsFeature -Name Web-Http-Errors;   Install-WindowsFeature -Name Web-Static-Content;   Install-WindowsFeature -Name Web-Http-Redirect;   Install-WindowsFeature -Name Web-DAV-Publishing;   Install-WindowsFeature -Name Web-Health;   Install-WindowsFeature -Name Web-Http-Logging;   Install-WindowsFeature -Name Web-Custom-Logging;   Install-WindowsFeature -Name Web-Log-Libraries;   Install-WindowsFeature -Name Web-Request-Monitor;   Install-WindowsFeature -Name Web-Http-Tracing;   Install-WindowsFeature -Name Web-Stat-Compression;   Install-WindowsFeature -Name Web-Dyn-Compression;   Install-WindowsFeature -Name Web-Security;   Install-WindowsFeature -Name Web-Windows-Auth;   Install-WindowsFeature -Name Web-Basic-Auth;   Install-WindowsFeature -Name Web-Url-Auth;   Install-WindowsFeature -Name Web-WebSockets;   Install-WindowsFeature -Name Web-AppInit;   Install-WindowsFeature -Name NET-WCF-HTTP-Activation45;   Install-WindowsFeature -Name NET-WCF-Pipe-Activation45;   Install-WindowsFeature -Name NET-WCF-TCP-Activation45;' returned a non-zero code: 4294967295: container shutdown failed: container ba9c65054d42d4830fb25ef55e4ab3287550345aa1a2bb265df4e5bfcd79c78a encountered an error during WaitTimeout: failure in a Windows system call: The compute system exited unexpectedly. (0xc0370106)
```

Without this change, it would be incorrectly reported such as in this comment: https://github.com/moby/moby/issues/32838#issuecomment-309621097

```
Step 3/8 : ADD buildtools C:/buildtools
re-exec error: exit status 1: output: time="2017-06-20T11:37:38+10:00" level=error msg="hcsshim::ImportLayer failed in Win32: The system cannot find the path specified. (0x3) layerId=\\\\?\\C:\\ProgramData\\docker\\windowsfilter\\b41d28c95f98368b73fc192cb9205700e21
6691495c1f9ac79b9b04ec4923ea2 flavour=1 folder=C:\\Windows\\TEMP\\hcs232661915"
hcsshim::ImportLayer failed in Win32: The system cannot find the path specified. (0x3) layerId=\\?\C:\ProgramData\docker\windowsfilter\b41d28c95f98368b73fc192cb9205700e216691495c1f9ac79b9b04ec4923ea2 flavour=1 folder=C:\Windows\TEMP\hcs232661915
```
2018-02-22 08:53:43 -08:00
Sebastiaan van Stijn
867a10aade
Merge pull request #36373 from dnephin/prepare-for-image-service
Move daemon image code in preparation for ImageService
2018-02-22 17:32:43 +01:00
Brian Goff
c6513bd051
Merge pull request #36363 from dnephin/fix-attach-detach-test
Fix TestAttachAfterDetach to work with latest client
2018-02-22 11:25:02 -05:00
Vincent Demeester
ffbb130873
Merge pull request #36371 from cpuguy83/bump_swarmkit
Bump swarmkit
2018-02-22 12:20:42 +01:00
Vincent Demeester
9c46b587ee
Fix Dockerfile.e2e build
This images is used to run integration and integration-cli tests on
anything that implements the docker api :). The image wasn't building
anywore :D

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-02-22 11:30:47 +01:00
Yong Tang
49ad3d69a7
Merge pull request #36336 from cpuguy83/split_installers
Split binary installers/commit scripts
2018-02-21 19:20:29 -08:00
Daniel Nephin
bad33bbd02 Image commit
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-21 18:26:16 -05:00
Daniel Nephin
0ac4ad0580 Image events
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-21 18:26:16 -05:00
Daniel Nephin
f6639cb46d GetLayerFolders
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-21 18:26:16 -05:00
Daniel Nephin
9c25df0fa2 Move ImagePrune
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-21 18:26:16 -05:00
Daniel Nephin
05c751b1be
Merge pull request #36209 from dnephin/fix-image-prune-mapping
Remove broken container check from image prune
2018-02-21 18:22:51 -05:00
Brian Goff
be713ec486 Bump swarmkit
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-02-21 16:08:32 -05:00
Brian Goff
b529d1b093 Split binary installers/commit scripts
Originally I worked on this for the multi-stage build Dockerfile
changes. Decided to split this out as we are still waiting for
multi-stage to be available on CI and rebasing these is pretty annoying.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-02-21 15:39:24 -05:00
Sebastiaan van Stijn
f0f41bae5f
Merge pull request #36370 from thaJeztah/update-authors
Update authors
2018-02-21 21:29:10 +01:00
Sebastiaan van Stijn
fb005971c2
Update authors
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-02-21 21:12:31 +01:00
Michael Crosby
8f6a40a3f1
Merge pull request #36368 from justincormack/maskkeys
Add /proc/keys to masked paths
2018-02-21 13:48:19 -05:00
Brian Goff
0ede01237c
Merge pull request #36366 from thaJeztah/update-api-version-check
Adjust minimum API version for templated configs/secrets
2018-02-21 11:44:50 -05:00
Justin Cormack
de23cb9398 Add /proc/keys to masked paths
This leaks information about keyrings on the host. Keyrings are
not namespaced.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2018-02-21 16:23:34 +00:00
Sebastiaan van Stijn
a3efeaad52
Adjust minimum API version for templated configs/secrets
Also adds a note to the API version history

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-02-21 15:23:00 +01:00
Sebastiaan van Stijn
453f2b8b40
Bump default API version to 1.37
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-02-21 15:22:40 +01:00
Sebastiaan van Stijn
0076343b29
Merge pull request #33702 from aaronlehmann/templated-secrets-and-configs
Templated secrets and configs
2018-02-21 13:39:10 +01:00
Sebastiaan van Stijn
466cc98143
Merge pull request #34899 from dnephin/fix-duplicate-new-client
[client] Remove duplicate NewClient functions
2018-02-21 12:59:42 +01:00
Sebastiaan van Stijn
20028325da
Merge pull request #35829 from cpuguy83/no_private_mount_for_plugins
Perform plugin mounts in the runtime
2018-02-21 12:28:13 +01:00
Sebastiaan van Stijn
9f68f20fae
Merge pull request #35898 from javabrett/docs-contributing-test
test.md improvements and corrections
2018-02-21 09:32:15 +01:00
junzhe and mnussbaum
20ca612a59 Fix empty LogPath with non-blocking logging mode
This fixes an issue where the container LogPath was empty when the
non-blocking logging mode was enabled. This change sets the LogPath on
the container as soon as the path is generated, instead of setting the
LogPath on a logger struct and then attempting to pull it off that
logger at a later point. That attempt to pull the LogPath off the logger
was error prone since it assumed that the logger would only ever be a
single type.

Prior to this change docker inspect returned an empty string for
LogPath. This caused issues with tools that rely on docker inspect
output to discover container logs, e.g. Kubernetes.

This commit also removes some LogPath methods that are now unnecessary
and are never invoked.

Signed-off-by: junzhe and mnussbaum <code@getbraintree.com>
2018-02-20 23:12:34 -08:00