Commit Graph

2166 Commits

Author SHA1 Message Date
Madhu Venugopal 0f351ce364 Docker side changes for the newly introduced IPAM driver
* Made use of IPAM driver primitives for legacy IP configurations
* Replaced custom Generics with backend labels

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-13 10:52:59 -07:00
Tibor Vass 0bc748bba3 Merge pull request #16956 from runcom/16665-fix-inspect-Config-api120
Return old Config fields for API < v1.20
2015-10-13 09:08:26 -07:00
Shijiang Wei a1d4b7dd0d refactor integration test to use checkers
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-10-13 20:21:38 +08:00
Antonio Murdaca 8c63ce4f6b Fix Config.Cpuset from API < 1.20
Signed-off-by: Antonio Murdaca <amurdaca@redhat.com>
2015-10-13 09:09:05 +02:00
Tibor Vass 9a13c2dc79 Merge pull request #16958 from tonistiigi/digest-collision
Make sure tags and digests don’t collide
2015-10-12 15:45:34 -07:00
Jess Frazelle df79536769 Merge pull request #16009 from azurezk/vol-create-conflict-option
volume create error on conflict option
2015-10-12 15:27:36 -07:00
Tonis Tiigi d08ca5c2b6 Make sure tags and digests don’t collide
Tags and digests are kept in the same storage. We want to make sure that they are completely separated - tags are something users set and digests can only be set by pull-by-digest code path.

Reverts #14664

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-10-12 14:20:11 -07:00
Tonis Tiigi 504e67b867 Calculate hash based image IDs on pull
Generate a hash chain involving the image configuration, layer digests,
and parent image hashes. Use the digests to compute IDs for each image
in a manifest, instead of using the remotely specified IDs.

To avoid breaking users' caches, check for images already in the graph
under old IDs, and avoid repulling an image if the version on disk under
the legacy ID ends up with the same digest that was computed from the
manifest for that image.

When a calculated ID already exists in the graph but can't be verified,
continue trying SHA256(digest) until a suitable ID is found.

"save" and "load" are not changed to use a similar scheme. "load" will
preserve the IDs present in the tar file.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2015-10-12 10:51:28 -07:00
Arnaud Porterie b0cbc02283 Merge pull request #15503 from ibuildthecloud/revert-label
Revert "Container don't inherit from image labels"
2015-10-12 10:03:18 -07:00
Alexander Morozov 2d1414e8b0 Merge pull request #16945 from estesp/ocd-on-nonmatching-func-names
Correct mismatched function names (UID() and Gid())
2015-10-12 09:15:51 -07:00
Antonio Murdaca d7177c1224 Merge pull request #16900 from ZJU-SEL/16756-update-pull-local
update pull-local#16756
2015-10-12 17:49:10 +02:00
Antonio Murdaca 08c5f52d70 Merge pull request #16928 from coolljt0725/fix_16927
Fix docker daemon exit immediately after starting without -H option closes #16927
2015-10-12 17:24:42 +02:00
Phil Estes 79240b9eaf Correct mismatched function names (UID() and Gid())
All the go-lint work forced any existing "Uid" -> "UID", but seems to
not have the same rules for Gid, so stat package has calls UID() and
Gid().

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
2015-10-12 10:58:33 -04:00
Hao Zhang d5830d66e0 update test using c.Assert replace c.Fatal
Signed-off-by: Hao Zhang <21521210@zju.edu.cn>
2015-10-12 06:32:21 -04:00
Lei Jitang e38767e197 Fix docker daemon exit immediately after starting without -H option closes #16927
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-12 04:49:25 -04:00
Mageee d4d0718ebf update docker_cli_version_test.go
fix spelling mistake again

Signed-off-by: Mageee <fangpuyi@foxmail.com>
2015-10-12 15:13:31 +08:00
Kun Zhang 0ff3123eba volume create error on conflict option
Signed-off-by: Kun Zhang <zkazure@gmail.com>
2015-10-12 11:16:39 +08:00
Xiaoxu Chen 19c30447b5 use of checkers on Integration test
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>

update integration-cli/docker_cli_wait_test.go
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>

update integration-cli/docker_cli_wait_test.go
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>

update docker_cli_wait_test.go
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-11 11:31:01 +08:00
Zhang Wei c6b02ad73b Update integration test with Assert
Part of #16756

Update integration-cli/docker_cli_rmi_test.go:
Use Assert instead of condition judgement in test.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2015-10-11 10:56:02 +08:00
heartlock dc9dd188cf update pull-local#16756
Signed-off-by: heartlock <21521209@zju.edu.cn>
2015-10-11 09:57:25 +08:00
Arnaud Porterie ed9434c5bb Merge pull request #12648 from estesp/userns-impl
Phase 1 implementation of user namespaces as a remapped container root
2015-10-10 11:38:07 -07:00
Hu Keping 72269acf29 Use checkers on Integration test when possible
Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-10 21:51:15 +08:00
Vincent Demeester faa448e801 Merge pull request #16838 from ZJU-SEL/update-save-load-unix-test
update save-load-unix-test
2015-10-10 14:51:18 +02:00
Zhang Kun b4d6b23838 add size to inspect
Signed-off-by: Zhang Kun <zkazure@gmail.com>
2015-10-10 20:44:29 +08:00
xlgao-zju 8d98b37031 update save-load-unix-test
Signed-off-by: xlgao-zju <xlgao@zju.edu.cn>
2015-10-10 15:16:42 +08:00
Phil Estes bf80adeee4 Merge pull request #16894 from diogomonica/renaming-trust-keys
Renaming trust keys
2015-10-09 23:20:54 -04:00
Jessica Frazelle 930b27a86b fix logic because jess is the worst
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
Docker-DCO-1.1-Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-10-09 22:21:24 -04:00
Phil Estes a85e6a4d4a Update integration test userns support with flag name change
`--root` is now `--userns-remap`

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
2015-10-09 20:52:45 -04:00
Jessica Frazelle ea3afdad61 add test-integration-cli specifics for userns
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
Docker-DCO-1.1-Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-10-09 20:50:27 -04:00
Phil Estes 44e1023a93 Add user namespace enable flag `--userns-remap` in experimental build
This adds the capability to turn on user namespace support when using an
experimental build Docker daemon binary using the `--userns-remap` flag.

Also documentation is added to the experimental docs.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
2015-10-09 20:50:05 -04:00
Diogo Monica d9a2fadb5e Changing docs to reflect new names
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-09 15:13:37 -07:00
Vincent Demeester 1e5165275f Merge pull request #16858 from cxxly/16756-refactor-docker_cli_login_test
refactor integration-cli/docker_cli_login_test.go with Assert
2015-10-09 23:56:24 +02:00
Phil Estes 442b45628e Add user namespace (mapping) support to the Docker engine
Adds support for the daemon to handle user namespace maps as a
per-daemon setting.

Support for handling uid/gid mapping is added to the builder,
archive/unarchive packages and functions, all graphdrivers (except
Windows), and the test suite is updated to handle user namespace daemon
rootgraph changes.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
2015-10-09 17:47:37 -04:00
Diogo Monica 63f8db83aa Adding tests for backwards compatibility
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-09 12:20:19 -07:00
Alexander Morozov 2491f6c95a Merge pull request #16877 from cxxly/16756-refactor-docker_hub_pull_suite_test
Use Assert statement to replace condition judgment
2015-10-09 09:57:14 -07:00
Alexander Morozov a77d80d9d1 Merge pull request #16881 from cxxly/16756-refactor-docker_cli_stats_test
update integration-cli/docker_cli_stats_test.go use Assert statement
2015-10-09 09:55:41 -07:00
Phil Estes c2df663851 Merge pull request #16843 from ZJU-SEL/16756-fix-rename-test
#16756 update rename test
2015-10-09 11:23:46 -04:00
Vincent Demeester 19ff8e09ba Merge pull request #16870 from cxxly/16756-refactor-docker_cli_proxy_test
refactor docker_cli_proxy_test.go
2015-10-09 15:43:39 +02:00
Hao Zhang 22d0be5797 use gocheck asserts instead of fatal
Signed-off-by: Hao Zhang <21521210@zju.edu.cn>
2015-10-09 08:34:02 -04:00
Xiaoxu Chen 90a81f6af2 update integration-cli/docker_cli_stats_test.go use Assert statement
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-09 18:24:32 +08:00
Xiaoxu Chen ee7fdbe8b9 Use Assert statement to replace condition judgment
part of #16756
Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-09 17:45:28 +08:00
Xiaoxu Chen 75bc0c064b update docker_cli_login_test.go
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-09 15:08:01 +08:00
Xiaoxu Chen 1db161768c update docker_cli_proxy_test.go
Part of #16756
Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-09 14:53:56 +08:00
Xiaoxu Chen 14f43406a3 refactor docker_cli_proxy_test.go
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-09 11:11:05 +08:00
Arnaud Porterie e7ef8633d5 Merge pull request #16862 from cpuguy83/bump_runc
Bump runc
2015-10-08 19:09:47 -07:00
Jess Frazelle a1d432301d Merge pull request #16859 from diogomonica/changing-trust-server-checks
Changing trustServer allowed URL validation
2015-10-08 18:33:35 -07:00
Diogo Monica a2f9fb7777 Changing trustServer allowed URL behavior
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-08 17:47:25 -07:00
Brian Goff a705ca0173 Fix exp tests cast protodriver to naivediffdriver
A recent change made `graphdriver.NaiveDiffDriver` from a function to a
struct. New function is `graphdriver.NewNaiveDiffDriver.

The graphdriver plugin PR was created (and tests run) before this change
was introduced causing the failure to not be seen until after merge.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-08 19:44:50 -04:00
Brian Goff d9f5f1954c Bump runc
Fixes a race when starting a container when there is an error, the stdio
streams are not always written.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-08 17:07:00 -04:00
Jess Frazelle 01cd67e752 Merge pull request #16366 from MHBauer/logs-refactor
refactor logs to not use internal data structures
2015-10-08 14:05:02 -07:00
Jess Frazelle 4c55464dd3 Merge pull request #13777 from cpuguy83/graphdriver_extpoints
Create extpoint for graphdrivers
2015-10-08 13:46:42 -07:00
Jess Frazelle 9123f77a78 Merge pull request #16817 from cpuguy83/explicit_volume_ls
Make `docker volume` behave like `docker network`
2015-10-08 11:36:51 -07:00
Jess Frazelle 41c99cc621 Merge pull request #15693 from vdemeester/15659-image-label-filter
Fix #15659 : filter by label for docker images commited
2015-10-08 11:14:51 -07:00
Vincent Demeester 683ee20562 Merge pull request #16669 from sunyuan3/TestRunInValidCPUShares
add TestRunInValidCPUShares
2015-10-08 19:38:21 +02:00
Xiaoxu Chen 79498b1c61 refactor integration-cli/docker_cli_login_test.go with Assert
part of #16756

Signed-off-by: Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
2015-10-08 12:43:03 -04:00
Jess Frazelle 2b6af905fa Merge pull request #16815 from duglin/fixHelp
Fix help test comment to align with the code
2015-10-08 09:29:32 -07:00
Alexander Morozov 4a9d039721 Merge pull request #16783 from Microsoft/10662-cliwait
Windows CI: cli_wait_test
2015-10-07 19:39:32 -07:00
Yuan Sun 042d08a2a8 add TestRunInValidCPUShares
Signed-off-by: Yuan Sun <sunyuan3@huawei.com>
2015-10-08 10:04:51 +08:00
Morgan Bauer 1eecc1e7e5
refactor logs to not use internal data structures
- refactor to make it easier to split the api in the future
 - additional tests for non existent container case

Signed-off-by: Morgan Bauer <mbauer@us.ibm.com>
2015-10-07 15:44:16 -07:00
John Howard e666dfff9b Windows CI: Fix cli_wait_test
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-10-07 12:57:41 -07:00
Arnaud Porterie 8e31036816 Merge pull request #16645 from mavenugo/ux
Docker Network UX & remote API changes
2015-10-07 10:44:58 -07:00
Jess Frazelle a1c373197f Merge pull request #16807 from jfrazelle/rename-flag
change flag name to better follow the other flags that start with disable
2015-10-07 10:40:32 -07:00
Brian Goff 2feebd95d3 Make `docker volume` behave like `docker network`
Before, typing `docker volume` with no args would forward to the handler
for `docker volume ls`, except the flags for the `ls` subcommand were
not supported.
Instead just print the cmd usage.

This makes the behavior of the `docker volume` subcommand behave exactly
like the `docker network` subcommand.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-07 13:36:46 -04:00
Jessica Frazelle c559d8ebf7
change flag name to better follow the other flags that start with disable;
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-10-07 10:16:37 -07:00
Doug Davis 73a6ac00ce Fix help test comment to align with the code
I disagree with #14546 that pushed the help text past 80 chars.
Aside from it now making the help text look ugly on 80 char displays,
which I use, one thing I like about the previous limitation is that it
forced us to keep our options down to more reasonable phrases/words.
For example, I think
`    --disable-content-trust=true`
could have been:
`    --disable-trust=true`
or even:
`    --disable-ctrust=true`

But regardless, let's at least make the comments match what the code does.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-10-07 05:09:46 -07:00
Madhu Venugopal 22a9ba090e Network UX and integration tests
* Exiting experimental network UX
* removed experimental service UX
* integrated with the new network remote API

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-07 03:54:27 -07:00
Madhu Venugopal 2ab94e11a2 Network remote APIs using new router, --net=<user-defined-network> changes
* Moving Network Remote APIs out of experimental
* --net can now accept user created networks using network drivers/plugins
* Removed the experimental services concept and --default-network option
* Neccessary backend changes to accomodate multiple networks per container
* Integration Tests

Signed-off-by: David Calavera <david.calavera@gmail.com>
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-07 03:54:19 -07:00
Vincent Demeester 0137e3eda2 Merge pull request #16758 from HuKeping/update-test
Update test
2015-10-07 07:09:13 +02:00
Brian Goff 2606a2e4d3 Merge pull request #16147 from tiborvass/refactor-builder
Refactor builder with new Go interfaces
2015-10-06 20:36:07 -04:00
HuKeping 28cff8bd03 Update test
Use of checkers on Integration test.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-07 07:11:45 +08:00
Tibor Vass e0ef11a4c2 Abstract builder and implement server-side dockerfile builder
This patch creates interfaces in builder/ for building Docker images.
It is a first step in a series of patches to remove the daemon
dependency on builder and later allow a client-side Dockerfile builder
as well as potential builder plugins.

It is needed because we cannot remove the /build API endpoint, so we
need to keep the server-side Dockerfile builder, but we also want to
reuse the same Dockerfile parser and evaluator for both server-side and
client-side.

builder/dockerfile/ and api/server/builder.go contain implementations
of those interfaces as a refactoring of the current code.

Signed-off-by: Tibor Vass <tibor@docker.com>
2015-10-06 19:10:19 -04:00
Jess Frazelle 7c19f660b3 Merge pull request #16752 from vdemeester/skip-TestExecStartFails-on-windows
Skip TestExecStartFails on windows
2015-10-06 13:52:51 -07:00
John Howard b7009a4b3a No error shadow pullImageIfNotExist
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-10-06 11:38:23 -07:00
Tibor Vass f41230b93a Move builder files to builder/dockerfile
Signed-off-by: Tibor Vass <tibor@docker.com>
2015-10-05 18:26:47 -04:00
Antonio Murdaca aac5c44c10 Merge pull request #16776 from shishir-a412ed/docker_tag_error_msg
Make docker tag error message more user friendly
2015-10-05 22:06:29 +02:00
Shishir Mahajan 582a24e937 Make docker tag error message more user friendly
Signed-off-by: Shishir Mahajan <shishir.mahajan@redhat.com>
2015-10-05 15:19:34 -04:00
Vincent Demeester 80f2e3f0c6 Merge pull request #16769 from LK4D4/fix_volume_socket
Allocate resources for server API before daemon creation
2015-10-05 20:48:41 +02:00
Alexander Morozov 5eda566f93 Allocate resources for server API before daemon creation
It prevents occupying of those resources (ports, unix-sockets) by
containers.
Also fixed false-positive test for that case.

Fix #15912

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-10-05 09:32:08 -07:00
Antonio Murdaca e86291edd8 Merge pull request #16530 from dnephin/filter_events_by_label
Filter events by labels
2015-10-04 20:36:42 +02:00
Vincent Demeester dc204b8786 While #16738 is "fixed", skip TestExecStartFails
… on windows

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-04 18:38:21 +02:00
Vincent Demeester b78f66c472 Merge pull request #16509 from HuKeping/search-problem
Fix docker search problem
2015-10-04 18:21:32 +02:00
Hu Keping f04e8fdb9b Fix docker search problem
Search terms shouldn't be restricted to only full valid repository
names. It should be perfectly valid to search using a part of a name,
even if it ends with a period, dash or underscore.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-04 23:23:43 +08:00
Daniel Nephin 08b117517d Resolves #16458 - filter events by labels.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-02 16:33:20 -04:00
Jess Frazelle 5a43beda91 Merge pull request #16250 from cpuguy83/15487_exec_error_codes
Make exec start return proper error codes
2015-10-02 12:55:17 -07:00
Brian Goff 662f55d11d Merge pull request #16708 from jfrazelle/fix-shm-mqueue-when-mounted-from-host
do not mount /dev/shm or /dev/mqueue if we are mounting from the host
2015-10-02 15:13:59 -04:00
Brian Goff 2d43d93410 Make exec start return proper error codes
Exec start was sending HTTP 500 for every error.

Fixed an error where pausing a container and then calling exec start
caused the daemon to freeze.

Updated API docs which incorrectly showed that a successful exec start
was an HTTP 201, in reality it is HTTP 200.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-02 14:40:22 -04:00
Jess Frazelle 698e14902a Merge pull request #16159 from runcom/validate-cpuset-cpus
Validate --cpuset-cpus, --cpuset-mems
2015-10-02 11:30:46 -07:00
Jessica Frazelle 934d9d6323
add regression test for mounting /dev/shm from host
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-10-02 11:14:08 -07:00
Vincent Demeester 77da5d8feb Merge pull request #16076 from vbatts/export_image_times
graph: exported images times matching creation
2015-10-01 21:50:43 +01:00
Vincent Batts e4478caddf save: integration test for timestamp matching
The `docker save`ed output ought to have matching timestamp to the layer
creation.

Signed-off-by: Vincent Batts <vbatts@redhat.com>
2015-10-01 14:38:55 -04:00
Arnaud Porterie 85244f80e3 Merge pull request #16385 from RichardScothern/v1-deprecation
Add a daemon flag to prevent contact with v1 registries.
2015-09-30 10:10:06 -07:00
Brian Goff 729c9a9782 Merge pull request #16580 from coolljt0725/unpause_all_container_on_exit
Make sure the container will always be unpaused on test exit
2015-09-29 21:44:23 -04:00
David Calavera ae03e544e7 Merge pull request #16650 from cpuguy83/no_named_volumes_for_builder
Do not parse config.Volumes for named volumes
2015-09-29 17:04:29 -07:00
Tibor Vass b08f071e18 Revert "Merge pull request #16228 from duglin/ContextualizeEvents"
Although having a request ID available throughout the codebase is very
valuable, the impact of requiring a Context as an argument to every
function in the codepath of an API request, is too significant and was
not properly understood at the time of the review.

Furthermore, mixing API-layer code with non-API-layer code makes the
latter usable only by API-layer code (one that has a notion of Context).

This reverts commit de41640435, reversing
changes made to 7daeecd42d.

Signed-off-by: Tibor Vass <tibor@docker.com>

Conflicts:
	api/server/container.go
	builder/internals.go
	daemon/container_unix.go
	daemon/create.go
2015-09-29 14:26:51 -04:00
Brian Goff 4e0eb91c55 Merge pull request #16649 from mtrmac/16648-test-text-fixups
Fix text not matching the actual tests
2015-09-29 12:01:19 -04:00
Doug Davis 992e464a80 Merge pull request #16611 from vdemeester/fix-TestAttachClosedOnContainerStop-racy-test
Fix TestAttachClosedOnContainerStop racey test
2015-09-29 11:49:24 -04:00
Doug Davis 499b76d2ec Merge pull request #16641 from cpuguy83/16598_fix_TestExecStartFails
Make sure test container is running before exec
2015-09-29 11:25:14 -04:00
Vincent Demeester 50852f3be3 Fix TestAttachClosedOnContainerStop racey test
This test is failing once in a while on the CI, because the docker
attach command might be called after the container ends.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-09-29 16:57:58 +02:00
Brian Goff 9077c89689 Make sure test container is running before exec
Fixes race in TestExecStartFails

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-09-29 10:06:51 -04:00
Brian Goff 8e5bb8fdd3 Do not parse config.Volumes for named volumes
Fixes an issue where `VOLUME some_name:/foo` would be parsed as a named
volume, allowing access from the builder to any volume on the host.

This makes sure that named volumes must always be passed in as a bind.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-09-29 10:01:57 -04:00
Miloslav Trmač 8781367c77 Fix text not matching the actual tests
Also fixes a typo in image name.

Fixes #16648

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2015-09-29 15:26:04 +02:00
Alexander Morozov d6e7350b96 Merge pull request #16635 from Microsoft/10662-fixtestrununknowncommand
TestRunUnknownCommand 30s, not 30ns
2015-09-28 14:31:48 -07:00
John Howard 4d301f0059 Windows: Fix TestRunStdinBlockedAfterContainerExit
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-28 14:08:26 -07:00
John Howard 74aeb0350e TestRunUnknownCommand 30s, not 30ns
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-28 13:40:17 -07:00
Yuan Sun 3571814dc5 Update TestRunWithSwappinessInvalid.
Signed-off-by: Yuan Sun <sunyuan3@huawei.com>
2015-09-28 18:13:21 +08:00
Antonio Murdaca 94464e3a5e Validate --cpuset-cpus, --cpuset-mems
Before this patch libcontainer badly errored out with `invalid
argument` or `numerical result out of range` while trying to write
to cpuset.cpus or cpuset.mems with an invalid value provided.
This patch adds validation to --cpuset-cpus and --cpuset-mems flag along with
validation based on system's available cpus/mems before starting a container.

Signed-off-by: Antonio Murdaca <runcom@linux.com>
2015-09-27 16:38:58 +02:00
Richard Scothern 39f2f15a35 Prevent push and pull to v1 registries by filtering the available endpoints.
Add a daemon flag to control this behaviour.  Add a warning message when pulling
an image from a v1 registry.  The default order of pull is slightly altered
with this changset.

Previously it was:
https v2, https v1, http v2, http v1

now it is:
https v2, http v2, https v1, http v1

Prevent login to v1 registries by explicitly setting the version before ping to
prevent fallback to v1.

Add unit tests for v2 only mode.  Create a mock server that can register
handlers for various endpoints.  Assert no v1 endpoints are hit with legacy
registries disabled for the following commands:  pull, push, build, run and
login.  Assert the opposite when legacy registries are not disabled.

Signed-off-by: Richard Scothern <richard.scothern@gmail.com>
2015-09-25 15:59:42 -07:00
Arnaud Porterie 7d193ef1f3 Add builtin nodes discovery
Use `pkg/discovery` to provide nodes discovery between daemon instances.

The functionality is driven by two different command-line flags: the
experimental `--cluster-store` (previously `--kv-store`) and
`--cluster-advertise`. It can be used in two ways by interested
components:

1. Externally by calling the `/info` API and examining the cluster store
   field. The `pkg/discovery` package can then be used to hit the same
   endpoint and watch for appearing or disappearing nodes. That is the
   method that will for example be used by Swarm.
2. Internally by using the `Daemon.discoveryWatcher` instance. That is
   the method that will for example be used by libnetwork.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2015-09-25 14:52:09 -07:00
Lei Jitang 5106532601 Make sure the container will always be unpaused on test exit
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-09-25 05:15:16 -04:00
David Calavera de41640435 Merge pull request #16228 from duglin/ContextualizeEvents
Add context.RequestID to event stream
2015-09-24 14:16:22 -07:00
Jess Frazelle 7daeecd42d Merge pull request #16559 from Microsoft/10662-fix16556
Fixes 16556 CI failures
2015-09-24 12:31:36 -07:00
Jess Frazelle 84b53c8d87 Merge pull request #14579 from hqhq/hq_add_softlimit
Add support for memory reservation
2015-09-24 12:11:36 -07:00
Doug Davis 26b1064967 Add context.RequestID to event stream
This PR adds a "request ID" to each event generated, the 'docker events'
stream now looks like this:

```
2015-09-10T15:02:50.000000000-07:00 [reqid: c01e3534ddca] de7c5d4ca927253cf4e978ee9c4545161e406e9b5a14617efb52c658b249174a: (from ubuntu) create
```
Note the `[reqID: c01e3534ddca]` part, that's new.

Each HTTP request will generate its own unique ID. So, if you do a
`docker build` you'll see a series of events all with the same reqID.
This allow for log processing tools to determine which events are all related
to the same http request.

I didn't propigate the context to all possible funcs in the daemon,
I decided to just do the ones that needed it in order to get the reqID
into the events. I'd like to have people review this direction first, and
if we're ok with it then I'll make sure we're consistent about when
we pass around the context - IOW, make sure that all funcs at the same level
have a context passed in even if they don't call the log funcs - this will
ensure we're consistent w/o passing it around for all calls unnecessarily.

ping @icecrime @calavera @crosbymichael

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-09-24 11:56:37 -07:00
Jess Frazelle 23750fb802 Merge pull request #15862 from calavera/share_shm_and_mqueue
Share shm and mqueue between containers.
2015-09-24 11:23:59 -07:00
John Howard e65a7dabb9 Fixes 16556 CI failures
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-24 11:19:00 -07:00
David Calavera c8bc02ea35 Merge pull request #16538 from Microsoft/10662-escapeargs
Windows: Fixed escaping of command line arguments
2015-09-24 11:18:29 -07:00
Jess Frazelle ccba7c3e14 Merge pull request #16507 from azurezk/testcase_nit
TestInspectInt64 to be neat
2015-09-24 11:12:43 -07:00
Jess Frazelle f2db5028cd Merge pull request #16480 from sunyuan3/TestRunWithKernelMemory
update TestRunWithKernelMemory
2015-09-24 11:10:51 -07:00
Arnaud Porterie de8b5c46cc Merge pull request #16556 from Microsoft/10662-randomunix
Make 'TestRandomUnixTmpDirPath' platform agnostic
2015-09-24 10:35:27 -07:00
John Howard 5d630abbab TestRandomUnixTmpDirPath platform agnostic
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-24 09:37:07 -07:00
Hu Keping 5505bcdd62 Fix test for container events
Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-24 19:04:54 +08:00
Kun Zhang 029c6eacd6 test neat
Signed-off-by: Kun Zhang <zkazure@gmail.com>
2015-09-24 10:55:47 +08:00
Yuan Sun b89fdc120e update TestRunWithKernelMemory
Signed-off-by: Yuan Sun <sunyuan3@huawei.com>
2015-09-24 08:41:35 +08:00
Darren Stahl ca5cc770b9 Windows: Fixed escaping of command line arguments
This fixes some tests that were failing on windows

Signed-off-by: Darren Stahl <darst@microsoft.com>
2015-09-23 16:35:44 -07:00
Jess Frazelle c0c941627a Merge pull request #16289 from cpuguy83/11957_fix_stdin_block_after_container_exit
Ensure stdin does not block after container stop
2015-09-23 15:29:48 -07:00
Arnaud Porterie 04e1015aa0 Skip TestAppArmorDeniesChmodProc
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2015-09-23 13:23:15 -07:00
Arnaud Porterie 03dce24137 Skip TestRunUnshareProc
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2015-09-23 13:23:08 -07:00
David Calavera b1d2f52bb2 Improvements to the original sharing implementation.
- Print the mount table as in /proc/self/mountinfo
- Do not exit prematurely when one of the ipc mounts doesn't exist.
- Do not exit prematurely when one of the ipc mounts cannot be unmounted.
- Add a unit test to see if the cleanup really works.
- Use syscall.MNT_DETACH to cleanup mounts after a crash.
- Unmount IPC mounts when the daemon unregisters an old running container.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-09-23 12:07:24 -04:00
qhuang aa1780997f Add support for memory reservation
Signed-off-by: qhuang <qhuang@10.0.2.15>
2015-09-23 14:02:45 +08:00
Brian Goff 04d76d898a Merge pull request #16312 from Microsoft/10662-startwindowscli
Windows: First part of CI tests (docker run)
2015-09-22 15:37:33 -04:00
David Calavera 114612305c Merge pull request #16235 from HuKeping/oom-event
Events for OOM needs to be shift to an earlier time
2015-09-22 11:50:30 -07:00
John Howard 8a5ab83df8 Windows: First part of CI tests (docker run)
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-22 10:24:03 -07:00
David Calavera a7e23cab8d Merge pull request #15864 from dmcgowan/notary-offline
Support content trust offline
2015-09-21 21:11:36 -07:00
Brian Goff 5c73f14c62 Merge pull request #16457 from Microsoft/10662-blockarg
Windows: Nice error on ARG (builder)
2015-09-21 19:43:48 -04:00
John Howard b69c13b1a6 Windows: Nice error on ARG (builder)
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-21 14:54:15 -07:00
Evan Hazlett 0c71c19239 Merge pull request #16404 from duglin/FixRenameError
Fix 'rename' error msg and error checking
2015-09-21 15:51:02 -04:00
Evan Hazlett 732676fad5 Merge pull request #16413 from sunyuan3/TestRunSwapMoreThanMemoryLimit
Add the TestRunSwapMoreThanMemoryLimit case.
2015-09-21 15:43:20 -04:00
Tibor Vass d572bab4a0 Merge pull request #16437 from runcom/invalid-logger-address
daemon: logger: error out on daemon start if invalid logger address
2015-09-21 14:53:47 -04:00
Alexandre Beslic 40edb5f97c Merge pull request #15029 from azurezk/add-version-info
Add docker version info in /info request
2015-09-21 11:44:11 -07:00
Yuan Sun ab39a4c981 Add the TestRunSwapLessThanMemoryLimit case.
Signed-off-by: Yuan Sun <sunyuan3@huawei.com>
2015-09-21 22:12:19 +08:00
Zhang Kun 7cf343d106 add docker server version to /info
Signed-off-by: Zhang Kun <zkazure@gmail.com>
2015-09-21 21:15:32 +08:00
Hu Keping f05bacbe50 Events for OOM needs to be shift to an earlier time
It's worth to warn user as soon as possilbe when OOM happend.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-21 10:18:08 +08:00
Antonio Murdaca b616b8a17a integration-cli: check err on tmp dir creation
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2015-09-21 00:00:55 +02:00
Antonio Murdaca e3c472426f daemon: logger: error out on daemon start if invalid logger address
If an invalid logger address is provided on daemon start it will
silently fail. As syslog driver is doing, this check should be done on
daemon start and prevent it from starting even in other drivers.
This patch also adds integration tests for this behavior.

Signed-off-by: Antonio Murdaca <runcom@linux.com>
2015-09-20 16:20:25 +02:00
Brian Goff 7d5603e7cb Merge pull request #16363 from coolljt0725/fix_net_none_test
Fix --net none test closes #16356
2015-09-19 09:25:12 -04:00
Lei Jitang 0b2091132a Fix --net none test closes #16356
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-09-18 20:49:36 -04:00
Antonio Murdaca 0b8b8ed9e9 integration-cli: fix tests with memory limit
If you don't have cgroup swap memory support, `dockerCmd`'s output in
these tests will be polluted by a warning from the daemon and will fail
the tests.
No need to have memory swap support for these tests to run as it will
be reset to -1 and everything will continue correctly.

Signed-off-by: Antonio Murdaca <runcom@linux.com>
2015-09-19 00:07:40 +02:00
Alexandre Beslic 96f9efc063 Merge pull request #16403 from runcom/fix-containers-json-emtpy-response
Fix GET /containers/json emtpy response regression
2015-09-18 11:47:42 -07:00
Doug Davis 848792c42e Fix 'rename' error msg and error checking
`docker rename foo ''` would result in:
```
usage: docker rename OLD_NAME NEW_NAME
```
which is the old engine's way of return errors - yes that's in the
daemon code.  So I fixed that error msg to just be normal.

While doing that I noticed that using an empty string for the
source container name failed but didn't print any error message at all.
This is because we would generate a URL like: ../containers//rename/..
which would cause a 301 redirect to ../containers/rename/..
however the CLI code doesn't actually deal with 301's - it just ignores
them and returns back to the CLI code/caller.

Rather than changing the CLI to deal with 3xx error codes, which would
probably be a good thing to do in a follow-on PR, for this immediate
issue I just added a cli-side check for empty strings for both old and
new names. This way we catch it even before we hit the daemon.

API callers will get a 404, assuming they follow the 301, for the
case of the src being empty, and the new error msg when the destination
is empty - so we should be good now.

Add tests for both cases too.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-09-18 11:12:22 -07:00
Brian Goff 3dbfb3d38c Ensure stdin does not block after container stop
Fixes #11957
Fixes #12319

Also removes check for Darwin when the stdin reader is closed as it
doesn't appear to block any more.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-09-18 13:48:07 -04:00