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>
Upstream-commit: d330dc3223df7e6c2b066373718709e34e19efca
Component: engine
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>
Upstream-commit: c877c7b2bf0ed20ff9054dcbec98362d9e88c145
Component: engine
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>
Upstream-commit: 330a0035334871d92207b583c1c36d52a244753f
Component: engine
docker version output is not consistent when there are downgrades or incompatibilities #30994
Upstream-commit: 3dfce9fbb813511a0dbfea1fa3bc80a37e7072c4
Component: engine
Small cleanup now that we have multiple details about the server stored on the cli
Upstream-commit: bce494f7a2ce0e1a2c6563b2e32e5a8bacb128ba
Component: engine
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>
Upstream-commit: 3894254dddc56bf283d7361dc88953a167a3be1f
Component: engine
This makes it work a little closer to compose part and it is more
correct 👼
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: ee08c8542aed078e06f1d9c559d62560e97f371d
Component: engine
[compose/interpolation] Make sure we error out instead of panic during interpolation
Upstream-commit: 8d2a82853c3401bdffbcc91b12399ef6589d26d0
Component: engine
Use type assertion to error out if the type isn't the right one
instead of panic as before this change.
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: c165a8bfa1419724eb504f3cb7fdf3ca1b97483b
Component: engine
It is just an alias type and make the code a little bit more complex
and hard to use from outside `compose` package.
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: d3dc27d145a36b3c81fd5999f2c525af95d9596a
Component: engine
"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>
Upstream-commit: ad1c96c6a72a503df956b220b3f8752683bc0896
Component: engine
Use either a system pool or custom CA pool when connecting from client->daemon (+go-connections version bump)
Upstream-commit: afe1c5c2ebbe2d5448668761f722b0f5d2def9a5
Component: engine