Commit Graph

668 Commits

Author SHA1 Message Date
Aaron Lehmann 808ca15347 cli: Allow service's networks to be updated
Resolve networks IDs on the client side.

Avoid filling in deprecated Spec.Networks field.

Sort networks in the TaskSpec for update stability.

Add an integration test for changing service networks.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-07 16:46:25 -07:00
Sebastiaan van Stijn 1b132eb374 Merge pull request #32339 from aluzzardi/selinux
services: Add support for Credential Spec and SELinux
2017-04-08 01:37:17 +02:00
Brian Goff 5cf0c294d4 Merge pull request #32154 from dperny/refactor-logs
Refactor logs and support service logs with TTY
2017-04-07 18:06:50 -04:00
Andrea Luzzardi 032d4098fb services: Add support for Credential Spec and SELinux
- Defined "normalized" type for Credential Spec and SELinux
- Added --credential-spec to docker service create & update
- SELinux is API only at the time

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2017-04-07 11:30:54 -07:00
Vincent Demeester bac1c4a2dd Merge pull request #32289 from adshmh/add-unit-tests-for-cli-command-secret-package
add unit tests for package cli/command/secret
2017-04-07 15:26:40 +02:00
Drew Erny 938bf846e3 refactor logs and support service logs /w tty
Refactor container logs system to make communicating log messages
internally much simpler. Move responsibility for marshalling log
messages into the REST server. Support TTY logs. Pave the way for fixing
the ambiguous bytestream format. Pave the way for fixing details.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-06 17:54:11 -07:00
Aaron Lehmann 2805c2e929 Add support for update order
This parameter controls the order of operations when rolling out an
update task. Either the old task is stopped before starting the new one,
or the new task is started first, and the running tasks will briefly
overlap.

This commit adds Rollout to the API, and --update-order / --rollback-order
flags to the CLI.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-06 17:23:36 -07:00
Sebastiaan van Stijn cd315197e3 Merge pull request #28938 from elifa/master
Grace period option to health checks.
2017-04-06 19:23:56 +02:00
Vincent Demeester fbddea6cac Merge pull request #32364 from aaronlehmann/preserve-env-order
cli: Preserve order of environment variables
2017-04-06 14:25:29 +02:00
Elias Faxö a58f798fdf Added start period option to health check.
Signed-off-by: Elias Faxö <elias.faxo@gmail.com>
2017-04-06 12:35:34 +02:00
Vincent Demeester 738ac9e797 Merge pull request #32251 from AkihiroSuda/run-mount
cli: add `--mount` to `docker run`
2017-04-05 22:34:47 +02:00
Akihiro Suda 02b904588a cli: add `--mount` to `docker run`
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-04-05 04:52:08 +00:00
Aaron Lehmann 71d1b0507e cli: Preserve order of environment variables
Unless we are adding or removing environment variables, their order
shouldn't be changed. This makes it look like the service's TaskSpec has
changed relative to the old version of the service, and containers need
to be redeployed.

The existing code always rebuilds the list of environment variables by
converting them to a map and back, but there's no reason to do this if
no environment variables are being added.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-04 18:16:57 -07:00
Yong Tang b807d24e56 Add hidden placeholder of `.Self` for `docker node ls --format`
This commit adds a hidden placeholder of `.Self` for
`docker node ls --format` so that if the node is the same
as the current docker daemon, then a `*` is outputed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-04 12:46:44 -07:00
Arash Deshmeh d5dca7c687 added unit tests for package cli/command/secret
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-04 15:35:08 -04:00
Yong Tang 4fc1d6782c Add `--format` for `docker node ls`
This fix tries to address the comment https://github.com/docker/docker/pull/30376#discussion_r97465334
where it was not possible to specify `--format` for `docker node ls`. The `--format` flag
is a quite useful flag that could be used in many places such as completion.

This fix implements `--format` for `docker node ls` and add `nodesFormat` in config.json
so that it is possible to specify the output when `docker node ls` is invoked.

Related documentations have been updated.

A set of unit tests have been added.

This fix is related to #30376.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-04 11:26:35 -07:00
Sebastiaan van Stijn 9a5513b791 Merge pull request #30813 from yongtang/30232-service-ls-ports
Add `PORTS` field for `docker service ls` (`ingress`)
2017-04-04 17:04:27 +02:00
Victor Vieux 4284efd232 Merge pull request #32015 from dperny/service-logs-support-task-logs
Add Support for Service Task Logs
2017-04-04 00:15:13 -07:00
Drew Erny b4ca6ebb09 Add support for task and arbitrary combo logs
Refactored the API to more easily accept new endpoints. Added REST,
client, and CLI endpoints for getting logs from a specific task. All
that is needed after this commit to enable arbitrary service log
selectors is a REST endpoint and handler.

Task logs can be retrieved by putting in a task ID at the CLI instead of
a service ID.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-03 18:40:54 -07:00
Yong Tang e0d4e672a1 Add `PORTS` field for `docker service ls` (`ingress`)
This fix is related to 30232 wherw `docker service ls`
does not show `PORTS` information like `docker service ps`.

This fix adds `PORTS` fields for services that publish
ports in ingress mode.

Additional unit tests cases have been updated.

This fix is related to 30232.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-03 18:40:15 -07:00
Victor Vieux 1551ffaa38 Merge pull request #31144 from aaronlehmann/synchronous-service-commands
Synchronous service create and service update
2017-04-03 17:44:03 -07:00
Aaron Lehmann d8ab3840e0 Synchronous service create and service update
Change "service create" and "service update" to wait until the creation
or update finishes, when --detach=false is specified. Show progress bars
for the overall operation and for each individual task (when there are a
small enough number of tasks), unless "-q" / "--quiet" is specified.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-03 09:46:01 -07:00
Vincent Demeester d37d03c9dc Merge pull request #31989 from aaronlehmann/node-ps-outside-swarm-mode
cli: Wrong error message from "node ps" outside swarm mode
2017-04-03 16:15:24 +02:00
Sebastiaan van Stijn a090dc9653 Merge pull request #32282 from mstanleyjones/improve-attach-desc
Clarify meaning of docker attach
2017-04-01 20:52:26 +02:00
Victor Vieux e959064068 Merge pull request #31022 from jmzwcn/issue30994
docker version output is not consistent when there are downgrades or incompatibilities #30994
2017-03-31 15:55:03 -07:00
Victor Vieux 4666c3e589 Merge pull request #31800 from ripcurld0/checkpoint_ls
Use formatter in docker checkpoint ls
2017-03-31 15:54:22 -07:00
Misty Stanley-Jones 081ac522bd Clarify meaning of docker attach
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-03-31 13:22:21 -07:00
Kenfe-Mickaël Laventure e3596db1a2 Merge pull request #31599 from ripcurld0/diff_cmd_format
Use formatter in docker diff
2017-03-31 11:19:41 -07:00
Vincent Demeester f066943a05 Merge pull request #32124 from vdemeester/system-inspect-secret
Add support for `--type=secret` in `docker inspect`
2017-03-30 17:01:57 +02:00
Boaz Shuster 6fd69bd855 Use formatter in docker diff
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-30 10:33:40 +03:00
Daniel Zhang ce972716be Docker version output is not consistent when there are downgrades or incompatibilities.
Signed-off-by: Daniel Zhang <jmzwcn@gmail.com>
2017-03-29 21:53:19 +08:00
Sebastiaan van Stijn 9cfbcd4471 Merge pull request #31830 from dnephin/refactor-cli-state
Small cleanup now that we have multiple details about the server stored on the cli
2017-03-29 13:36:32 +02:00
Vincent Demeester 8356bd527c Merge pull request #32186 from aaronlehmann/cluster-omitempty
api: Omit Cluster, Nodes, and Managers from swarm info when unavailable
2017-03-29 10:38:52 +02:00
Aaron Lehmann e6445629d7 api: Omit Cluster, Nodes, and Managers from swarm info when unavailable
Currently these fields are included in the response JSON with zero
values. It's better not to include them if the information is
unavailable (for example, on a worker node).

This turns Cluster into a pointer so that it can be left out.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-28 14:20:25 -07:00
Daniel Nephin 951fdd11cd Add entrypoint flags to service cli.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-28 11:24:19 -07:00
Sebastiaan van Stijn d14a4d4231 Merge pull request #30810 from allencloud/make-secret-ls-support-filter
make secret ls support filters in CLI
2017-03-28 13:43:19 +02:00
Vincent Demeester ba785f32f8 Add support for `--type=secret` in `docker inspect`
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-28 10:48:48 +02:00
Vincent Demeester dc2e0149a8 Merge pull request #31709 from dnephin/better-errors
Replace fmt.Errorf() with errors.Errorf() in the cli
2017-03-28 10:17:46 +02:00
Vincent Demeester e2e4b0f9a8 Merge pull request #32128 from vdemeester/30836-set-alias-to-servicename
Set the alias to the service name instead of the network name
2017-03-28 09:46:05 +02:00
Tibor Vass d26a23ceb8 Manually reorganize import paths to segregate stdlib and 3rd-party packages
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-27 18:21:59 -07:00
Madhu Venugopal 24faf9edaf Merge pull request #31714 from aboch/cingr
Allow user to replace ingress network
2017-03-27 07:30:42 -07:00
Vincent Demeester aaf865edb5 Set the alias to the service name instead of the network name
This makes it work a little closer to compose part and it is more
correct 👼

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-27 11:42:15 +02:00
allencloud d6490e5de9 make secret ls support filters in CLI
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-27 10:16:45 +08:00
Alessandro Boch 0f6dd9c2e8 Allow user to modify ingress network
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-26 15:46:18 -07:00
Vincent Demeester ca1aca0afe Merge pull request #31976 from Microsoft/jjh/csbooboo
Windows: Remove --credentialspec flag
2017-03-26 12:44:27 +02:00
Daniel Nephin e9d6193dfd Replace fmt.Errorf() with errors.Errorf() in the cli
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 16:58:07 -04:00
John Howard (VM) c8f2ef1b1e Windows: Remove --credentialspec flag
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-23 10:01:04 -07:00
Sebastiaan van Stijn 8a16f32da7 Merge pull request #31986 from Microsoft/jjh/fix28267
Windows: Don't close client stdin handle to avoid hang
2017-03-23 16:35:54 +01:00
Tonis Tiigi 82b04969b7 Return proper exit code on builder panic
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-21 19:09:23 -07:00
Aaron Lehmann d59f6d0933 cli: Wrong error message from "node ps" outside swarm mode
"docker node ps" behaves strangely outside swarm mode:

    $ docker node ps
    ID                  NAME                IMAGE               NODE                DESIRED STATE       CURRENT STATE       ERROR               PORTS
    Error: No such node:

It should explain that the node is not a swarm manager.

The reason this happens is that the argument to "docker node ps" defaults
to "self". The first thing the command does is try to resolve "self" to
a node ID using the /info endpoint. If there is no node ID, it tries to
use the empty string as an ID, and tries to GET /nodes/, which is not a
valid endpoint.

Change the command to check if the node ID is present in the /info
response. If it isn't, a swarm API endpoint can supply a useful error
message.

Also, avoid printing the column headers if the only following text is an
error.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-21 17:01:07 -07:00