Commit Graph
15 Commits
Author SHA1 Message Date
Boaz Shuster abc5bcad87 Fix the create API when fromSrc has a bad URL
When sending a bad URL in the fromSrc parameter using cURL
the response will have status code 200 while it should have 404
or 500 (depends on the error).

This commit addresses this problem in the following ways:
 * Before, `src` was parsed using url.Parse and if the
   returned `url.Scheme` was empty it was set to 'http'
   and `url.Host` was set to `src`.
   This is bad because if `src` was 'web.com/tars/image1.tar'
   The `url.String()` returns 'web.com%2Ftars%2Fimage1.tar`
   which will cause the daemon to fail downloading the file
 * Before writing the "Downloading" message, the image
   is attempted to be downloaded and if there is no error
   the "Downloading" message is sent.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: e050f1760dd8a3d48d95bb3d2de503fc4177ff5f
Component: engine
2017-03-26 15:21:13 +03:00
Boaz Shuster 6d6cf437f8 Add format to secret ls
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: e281fe9c3a0034e119e7718a142133e86f38a4f2
Component: engine
2017-03-19 09:22:30 +02:00
Boaz Shuster da38e7fbf1 Hide command options that are related to Windows
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 7199522ea2e77c77bf931474eca92aa502ce0031
Component: engine
2017-03-12 08:47:17 +02:00
Boaz Shuster 9298102f46 Fix the rm error message when a container is restarting/paused
Running the rm command on a paused/restarting container
will give an error message saying the container is running
which is incorrect.

To fix that, the error message will have the correct
container state and a procedure to remove it accordingly.

Notice: docker-py was bumped to:
        4a08d04aef0595322e1b5ac7c52f28a931da85a5

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 0ec8f56a3d7f1413cdb3ae7711d518e99f9282e9
Component: engine
2017-03-10 00:39:16 +02:00
Boaz Shuster a1c6880e0b Specify in which line the Dockerfile parser failed
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 8f282cdea5186896923da02f420e929c8ded61cb
Component: engine
2017-01-12 17:45:45 +02:00
Boaz Shuster 8f27f74ad0 Update docs and code to use application/x-tar in the build API
At the "Build image from Dockerfile" section in the API docs
the Content-Type header is missing.
In addition, some parts in the code are still setting the
Content-Type header to application/tar while it was changed
to application/x-tar since 16th September 2015.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: b1996728aaeaa147c2045c8be79373d59ce7117a
Component: engine
2017-01-10 06:40:06 +02:00
Boaz Shuster af870551d0 Change the docker-tag usage text to be clearer
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 039aca05c2eae8a06dc16ff97110539feb44d13b
Component: engine
2016-11-18 10:34:02 +02:00
Boaz Shuster 928dd535e8 Return an empty stats if the container is restarting
In case, a container is restarting indefinitely running
"docker stats --no-stream <restarting_container>" is suspended.

To fix this, the daemon makes sure the container is either not
running or restarting if `--no-stream` is set to true and if so
returns an empty stats.

Should fix #27772.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 786a95493d54d74fa3eef020c1ec03baa4fe91c4
Component: engine
2016-11-03 13:26:24 +02:00
Boaz Shuster 5209994e39 Validate docker-load receives a tar file
To load an image from a tar file, you can specify
the tar file in the -i/--input option:
docker load -i image_1.tar

or using stdin:

docker load < image_1.tar
cat image_1.tat | docker load

If the image file isn't given the `docker load`
command gets stuck.

To avoid that, the load makes sure the CLI input is
not a terminal or the `--input` option was set.
If not then an error message is shown.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 4426189b35aee4a64bedfb48604ad342a3a5b946
Component: engine
2016-10-31 15:30:55 +02:00
Boaz Shuster 75f125a77f Add unit tests to cli/command/formatter/stats.go
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 51fb35f0b0aa9f9d2fcc00dd08cafc588ee864d2
Component: engine
2016-10-27 18:00:38 +03:00
Boaz Shuster 3cabe08abe Hide the mutex in formatter.ContainerStats
The formatter.ContainerStats struct exposes its Mutex.
This is a bad design and should be fixed.

To fix that, I separated the statistics
attributes from ContainerStats to StatsEntry and
hid the mutex. Notice that the mutex protects both
the `err` field and the statistics attributes.

Then, implemented SetStatistics, SetError, GetStatistics
and GetError to avoid races.

Moreover, to make this less granular, I decided to
replace the read-write mutex with the regular mutex and
to pass a StatsEntry slice to formatter.ContainerStatsWrite

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 929a77b814dfe9ab7a11bffc2d16eebd27bd903a
Component: engine
2016-10-10 21:52:53 +03:00
Boaz Shuster f2acf43e07 Add documentation for docker stats --format
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 9c7b3040cc97dae0a4fc20f999ca51adce353944
Component: engine
2016-09-26 09:26:48 +03:00
Boaz Shuster 0fb374bbbf Add the format switch to the stats command
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 96622b2a7d58d74883bc1777d3be171c2b8f2165
Component: engine
2016-09-18 14:16:13 +03:00
Boaz Shuster 1c5df6581b Change the quiet flag behavior in the build command
Right now, the quiet (-q, --quiet) flag ignores the output
generated from within the container.

However, it ought to be quiet in a way that all kind
of diagnostic output should be ignored, unless the build
process fails.

This patch makes the quiet flag behave in the following way:
 1. If the build process succeeds, stdout contains the image ID
    and stderr is empty.
 2. If the build process fails, stdout is empty and stderr
    has the error message and the diagnostic output of that process.

If the quiet flag is not set, then everything goes to stdout
and error messages, if there are any, go to stderr.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 60b4db7eb17f4eb509be4a4968364ada2075d60c
Component: engine
2015-12-21 16:38:50 +02:00
ripcurld00d 94c05d87ae Update fedora doc
`service` is deprecated from Fedora v21.
It's important to enable and start the `docker` daemon using `systemctl`.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 6a648659915ad2be4b1e5841594279020821bec1
Component: engine
2015-10-18 23:00:23 +03:00