Commit graph

32923 commits

Author SHA1 Message Date
Victor Vieux
48e625ccca Merge pull request #33690 from raja-sami-10p/pkg/authorization
Increase test Coverage of pkg/authorization
2017-06-27 10:09:13 -07:00
Vincent Demeester
151c5ea798 Merge pull request #33696 from thaJeztah/fix-git-clone
Fix handling of remote "git@" notation
2017-06-27 16:56:11 +02:00
Vincent Demeester
359ed99352 Merge pull request #33835 from Microsoft/jjh/changedir
LCOW: Change directory from lcow to "Linux Containers"
2017-06-27 09:33:38 +02:00
John Stephens
bcc8b2bc47 Merge pull request #33815 from jstarks/lcow_command_args
LCOW: pass command arguments without extra quoting
2017-06-26 21:46:29 -07:00
John Howard
2c43cbe0d5 LCOW: Change to c:\Program Files\Linux Containers
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-06-26 21:26:18 -07:00
John Howard
3f14e25a7f Vendor github.com/jhowardmsft/opengcs v0.0.7
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-06-26 21:24:39 -07:00
Sebastiaan van Stijn
8f3c526e78 Merge pull request #31497 from dnephin/engine-local-image-data
Add a LastTagTime for images
2017-06-26 18:51:09 -07:00
Aaron Lehmann
da28210a15 Merge pull request #33781 from mlaventure/fix-healhcheck-goroutine-leak
Prevent a goroutine leak when healthcheck gets stopped
2017-06-26 15:34:43 -07:00
Daniel Nephin
016eea004b
Set a LastUpdated time in image metadata when an image tag is updated.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-26 12:16:26 -07:00
Sebastiaan van Stijn
d3d1aabcc6
Move IsGitTransport() to gitutils
This function was only used inside gitutils,
and is written specifically for the requirements
there.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-26 10:07:04 -07:00
Sebastiaan van Stijn
913eb99fdc Fix handling of remote "git@" notation
`docker build` accepts remote repositories
using either the `git://` notation, or `git@`.

Docker attempted to parse both as an URL, however,
`git@` is not an URL, but an argument to `git clone`.

Go 1.7 silently ignored this, and managed to
extract the needed information from these
remotes, however, Go 1.8 does a more strict
validation, and invalidated these.

This patch adds a different path for `git@` remotes,
to prevent them from being handled as URL (and
invalidated).

A test is also added, because there were no
tests for handling of `git@` remotes.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-26 10:02:12 -07:00
Brian Goff
33fd3817b0 Merge pull request #33814 from vdemeester/update-go-connections
Update go-connections dependency
2017-06-26 10:24:04 -04:00
John Starks
19645521a9 LCOW: pass command arguments without extra quoting
Signed-off-by: John Starks <jostarks@microsoft.com>
2017-06-24 10:23:17 -07:00
Vincent Demeester
d311a3a681 Merge pull request #33798 from vdemeester/move-some-api-code-away
Move some `api` package functions away
2017-06-24 14:30:25 +02:00
Vincent Demeester
497e6e0caa
Update go-connections dependency
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-06-24 12:40:49 +02:00
Sebastiaan van Stijn
5e2004c1b9 Merge pull request #33812 from thaJeztah/cleanup-gitignore
Cleanup gitignore
2017-06-24 01:34:40 -07:00
Sebastiaan van Stijn
4964b09238 Merge pull request #33674 from raja-sami-10p/pkg/templates
Increase test Coverage of pkg/templates
2017-06-24 01:04:24 -07:00
Sebastiaan van Stijn
5564fad406 Merge pull request #33467 from bschwind/copy-documentation
Add note to CopyToContainer documentation
2017-06-24 00:19:51 -07:00
Sebastiaan van Stijn
a7b24296c8
Cleanup gitignore
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-23 23:04:39 -07:00
Sebastiaan van Stijn
94e9cb13f4 Merge pull request #33801 from albers/completion-dev-environment
Add bash completion to the development container
2017-06-23 22:52:14 -07:00
Sebastiaan van Stijn
8d1ae76dcb Merge pull request #33719 from dnephin/warn-on-empty-continuation-carry
[Builder] Warn on empty continuation lines
2017-06-23 22:52:02 -07:00
Tibor Vass
d75eb735ee Merge pull request #33707 from Syntaxide/s3fix
Fix authorization header handling in downloader script.
2017-06-23 20:27:54 -07:00
Sebastiaan van Stijn
5b54e78947 Merge pull request #33698 from cpuguy83/dm_deferred_delete_default
Enable dm deferred_* with version check
2017-06-23 19:30:05 -07:00
Aaron Lehmann
56ad9bb1b4 Merge pull request #31273 from fabiokung/consistent-ro-view
No container locks on `docker ps`
2017-06-23 15:28:55 -07:00
Aaron Lehmann
6e96eec565 Merge pull request #33804 from clnperez/fix-cli-test-autogen
Fix autogen vars
2017-06-23 15:28:29 -07:00
John Howard
25a65a185b Merge pull request #33785 from Microsoft/jjh/hcsschemaupdate
LCOW: Updates necessary due to platform schema change
2017-06-23 13:08:13 -07:00
Christy Perez
091e07c87d Fix autogen vars
commit ea2e4d73c4 removed the autogen
script, but if you happen to clone the dir fresh from git, you can't
build the integration test binaries.

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2017-06-23 14:40:09 -05:00
Vincent Demeester
565aa41392
Move some api package functions away
- DisplayablePorts is a `cli` function, moving to `docker/cli`
- Move MatchesContentType to the only package using it,
  `api/server/httputils` (and remove the deps on logrus for `api` package)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-06-23 19:37:26 +02:00
Daniel Nephin
b47b375cb8 Add a test for warning on empty continuation lines.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-06-23 13:15:04 -04:00
Yong Tang
7815c8f875 Warn/deprecate continuing on empty lines in Dockerfile
This fix is related to 29005 and 24693. Currently in `Dockerfile`
empty lines will continue as long as there is line escape before.
This may cause some issues. The issue in 24693 is an example.
A non-empty line after an empty line might be considered to be a
separate instruction by many users. However, it is actually part
of the last instruction under the current `Dockerfile` parsing
rule.

This fix is an effort to reduce the confusion around the parsing
of `Dockerfile`. Even though this fix does not change the behavior
of the `Dockerfile` parsing, it tries to deprecate the empty line
continuation and present a warning for the user. In this case,
at least it prompt users to check for the Dockerfile and avoid
the confusion if possible.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-06-23 13:04:40 -04:00
Harald Albers
0e2c424a7f Add bash completion to the development container
Adds an environment variable `DOCKER_BASH_COMPLETION_PATH` that allows to
include a bash completion script into the development container.

This is needid for development of bash completion.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-06-23 18:11:55 +02:00
Kenfe-Mickael Laventure
67297ba005
Prevent a goroutine leak when healthcheck gets stopped
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-06-23 08:06:49 -07:00
Fabio Kung
37addf0a50 Net operations already hold locks to containers
Fix a deadlock caused by re-entrant locks on container objects.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:35 -07:00
Fabio Kung
76d96418b1 avoid saving container state to disk before daemon.Register
Migrate legacy volumes (Daemon.verifyVolumesInfo) before containers are
registered on the Daemon, so state on disk is not overwritten and legacy
fields lost during registration.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:34 -07:00
Fabio Kung
66b231d598 delete unused code (daemon.Start)
Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:34 -07:00
Fabio Kung
04bd768a88 ensure heath monitor status updates are propagated
initHealthMonitor and updateHealthMonitor can cause container state to
be changed (State.Health).

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:34 -07:00
Fabio Kung
a43be3431e avoid re-reading json files when copying containers
Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:34 -07:00
Fabio Kung
9134e87afc only Daemon.load needs to call label.ReserveLabel
Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:33 -07:00
Fabio Kung
edad52707c save deep copies of Container in the replica store
Reuse existing structures and rely on json serialization to deep copy
Container objects.

Also consolidate all "save" operations on container.CheckpointTo, which
now both saves a serialized json to disk, and replicates state to the
ACID in-memory store.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:33 -07:00
Fabio Kung
f668af4475 no need to save container state here
it is already being saved (with a lock held) on the subsequent
operations.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:33 -07:00
Fabio Kung
201a37f7a1 verifyVolumesInfo needs a container lock
It operates on containers that have already been registered on the
daemon, and are visible to other goroutines.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:33 -07:00
Fabio Kung
03aa24721c no need to save state to disk here
State will be saved on the following operation once the container is
properly registered on the daemon.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:32 -07:00
Fabio Kung
2ed6f9257a how to maintain the container snapshot struct
Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:32 -07:00
Fabio Kung
fcb6d37a8d Make tests a bit less flaky
Prevent tests failing when teardown tries to delete a container that is
already being removed.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:32 -07:00
Fabio Kung
aacddda89d Move checkpointing to the Container object
Also hide ViewDB behind an inteface.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:32 -07:00
Fabio Kung
8e425ebc42 stop grabbing container locks during ps
Container queries are now served from the consistent in-memory db, and
don't need to grab a lock on every container being listed.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:31 -07:00
Fabio Kung
eed4c7b73f keep a consistent view of containers rendered
Replicate relevant mutations to the in-memory ACID store. Readers will
then be able to query container state without locking.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:52:31 -07:00
Fabio Kung
054728b1f5 in-memory ACID store for containers
This can be used by readers/queries so they don't need locks.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:24:11 -07:00
Fabio Kung
cfc404a375 Move platform specific mount data to Container
The Solaris version (previously daemon/inspect_solaris.go) was
apparently missing some fields that should be available on that
platform.

Signed-off-by: Fabio Kung <fabio.kung@gmail.com>
2017-06-23 07:22:47 -07:00
Raja Sami
27e771b714 Increase test Coverage of pkg/templates
Signed-off-by: Raja Sami <raja.sami@tenpearls.com>
2017-06-23 12:38:33 +05:00