Commit Graph

759 Commits

Author SHA1 Message Date
Joffrey F 8356576a9a Make sure error messages are unicode strings before combining
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-04-09 11:46:33 -07:00
Joffrey F 7aa51a18ff Fix port serialization with external IP
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-30 18:02:06 -07:00
Joffrey F 520f5d0fde Add 2.4 file format with platform support. Also reads DOCKER_DEFAULT_PLATFORM env
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-30 12:39:10 -07:00
Joffrey F 070474acae Fix unit tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-29 17:21:47 -07:00
Joffrey F 2e100353d3 Add support for build isolation parameter
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-29 16:57:07 -07:00
Joffrey F 8d96980ba4
Merge pull request #5833 from docker/5826-load_retry_utf8
On load error, retry reading the file with UTF-8 encoding
2018-03-28 11:45:04 -07:00
Joffrey F 90c57f99e8 On load error, retry reading the file with UTF-8 encoding
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-27 12:37:21 -07:00
Joffrey F 71d40c2a9b Avoid fallthrough with empty defaults
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-27 11:10:30 -07:00
Joffrey F 7e787a8c15
Merge pull request #5822 from brainlock/fix-gh-5179
fix race condition in Service.create_container()
2018-03-27 09:24:40 -07:00
Alberto Piai 394c8efe98 fix race condition in Service.create_container()
The Service.create_container() method fetches a list of the current
containers in order to determine the next container number. In doing so,
it makes several API calls: one to fetch the list of containers, then
one per container in order to inspect it.

In some situations it can happen that a container is removed after
having been listed: in that case, the call to inspect will get a 404 and
raise a NotFound.

One situation in which this has been observed is when trying to
concurrently create multiple one-off containers for the same service
(using `docker-compose run` and a unique `--name`), as described in
more detail in gh-5179.

This patch adds a unit test that simulates the race between the
calls to list and to inspect, and changes Service._next_container_number
to skip removed containers instead of blowing up.

Fixes gh-5179

Signed-off-by: Alberto Piai <apiai@sensational.ch>
2018-03-27 10:21:15 +02:00
Joffrey F 771a1382bd
Merge pull request #5819 from docker/5433-build-zip
Add --compress option to build command
2018-03-27 00:52:06 +02:00
Joffrey F cbb9bff924 Support -H=host notation for interactive run/execs
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-26 14:25:31 -07:00
Joffrey F 255d16d7fa Add --compress option to build command
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-23 17:05:15 +01:00
Joffrey F 6c7c7902f1
Merge pull request #5788 from mnottale/dash-underscore-in-project-name
Allow dash and underscore in project name.
2018-03-19 05:33:21 -07:00
Joffrey F b1ade31c67 Manage encoding errors in progress_stream
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-15 17:10:36 -07:00
Matthieu Nottale 5fe3aff1c3 Allow dash and underscore in project name.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-03-15 15:44:43 +01:00
Joffrey F 867ad1550b
Merge pull request #5769 from docker/5766-fix-secopt-extend
Preserve security_opt values in extends
2018-03-08 18:20:56 -08:00
Joffrey F 7e3bbef436 Preserve security_opt values in extends
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-08 18:03:54 -08:00
Matthieu Nottale 31dcfcff2a Revamp ParallelStreamWriter to fix display issues.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-03-07 15:22:38 +01:00
Thomas Scholtes 5b6e02d13a 'run' command can use network aliases for service
It is now possible for the 'run' command to use the network aliases
defined for the service.

Fixes #3492

Signed-off-by: Thomas Scholtes <thomas-scholtes@gmx.de>
2018-02-27 13:13:50 -08:00
Joffrey F 9b2efd50f5
Merge pull request #5722 from docker/5700-call-docker-with-args
Re-use TLS and host options when shelling out to docker CLI
2018-02-27 12:27:49 -08:00
Joffrey F 7ce5766f6a Re-use TLS and host options when shelling out to docker CLI
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-27 11:14:28 -08:00
Joffrey F 2578813147
Merge pull request #5706 from docker/5601-config-proxy
Use config file-provided proxy values to populate buildargs and env
2018-02-27 10:13:37 -08:00
Joffrey F a35335a75c Add support for device_cgroup_rules in v2.3 files
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-26 14:43:44 -08:00
Joffrey F a6c31b80fe Add support for seccomp files
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-26 10:46:10 -08:00
Joffrey F ec0de7eb68
Merge pull request #5684 from docker/compat_mode
Compatibility mode
2018-02-26 10:42:59 -08:00
Joffrey F 5e4700b176 Add proxy_config tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-23 14:32:43 -08:00
Joffrey F d4106679a6 Use configfile-provided proxy values to populate buildargs and env values
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-22 16:19:50 -08:00
Joffrey F c6fe564ed5 Add --detach tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-21 16:42:49 -08:00
Joffrey F cd7ccad81e Retrieve certs from default path if not provided explicitly
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-21 13:33:27 -08:00
Joffrey F 51076b5e12 Tests for compatibility mode
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-16 16:37:20 -08:00
Sorawis Nilparuk bb16d9e951 Add health string generator to match `docker ps` output 2018-02-12 12:10:05 -08:00
Joffrey F 3a0ed8cbba Modified options dict leads to a mismatched config hash for API < 1.30
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-06 16:58:15 -08:00
Joffrey F 9dde4fff0e Add support for 3.6 schema and tmpfs mount size
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-02 12:01:41 -08:00
Joffrey F a0f78539b6 Test and build on 3.6 (replaces 3.4) ; dist 3.6-compiled binaries
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-01 16:05:32 -08:00
Joffrey F 8725385813
Merge pull request #5631 from docker/bump_sdk
Bump python SDK to 3.0.0
2018-02-01 14:51:05 -08:00
Joffrey F 4d4e066fbc Fix DOCKER_TLS_VERIFY bug
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-01 12:16:32 -08:00
Joffrey F d8d484e0e1 Bump python SDK to 3.0.0
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-31 18:54:58 -08:00
Joffrey F f679f77555
Merge pull request #5598 from carlwgeorge/mock-import-fix
Use mock compatibility import
2018-01-23 09:55:13 -08:00
Carl George 8b5d32373e Use mock compatibility import
`tests/__init__.py` already has a try/except statement to use mock from
the standard library when possible.  Take advantage of it like other
tests already do.

Signed-off-by: Carl George <carl@george.computer>
2018-01-22 23:10:50 -06:00
Joffrey F b968d34227 Advanced merge for deploy dict in v3 files
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-22 15:05:53 -08:00
Joffrey F fd1e8024f7
Merge pull request #5593 from docker/4651-tls-env-and-flags
Support mixed use of TLS flags and TLS environment variables
2018-01-22 11:01:44 -08:00
Joffrey F 593a675d2b Support mixed use of TLS flags and TLS environment variables
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-19 15:48:30 -08:00
Joffrey F 9ba9016cbc Improve ImageNotFound handling in convergence
- Improved CLI prompt
- Attempt volume preservation with new image config
- Fix container.rename_to_tmp_name()
- Integration test replicates behavior ; remove obsolete unit test

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-19 14:16:57 -08:00
Ian Glen Neal 4042121f6e The updated unit test simulates the error in the bug. What's happening
is that the container has an image sha (represented by
    'shaDOES_NOT_EXIST') which causes an error when client.inspect_image
is called on it, because the image has actually been removed.

Signed-off-by: Ian Glen Neal <ian.gl.neal@gmail.com>
2018-01-19 14:16:56 -08:00
Joffrey F 2d986dff79 Remove rebuild parameter ; set do_build instead
Reduce repetition in main.py

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-19 14:16:56 -08:00
Ian Glen Neal 7591639c72 Fix #5465 by catching a no-image exception in
get_container_data_volumes. The ImageNotFound exception is now bubbled
up to the client, which prompts the user on the desired course of action
(rebuild or abort). Added a case to the unit test to check that
an empty existing image doesn't result in an exception.

Closed old pull request #5466 because I did a rebase and it showed over
300 commits to merge, which I thought was messy.

Signed-off-by: Ian Glen Neal <ian.gl.neal@gmail.com>
2018-01-19 14:16:56 -08:00
Joffrey F 5d4ccafd35
Merge pull request #5580 from docker/5578-use_cli_exec
Use CLI for interactive exec on all platforms by default
2018-01-19 14:15:07 -08:00
Joffrey F a5d8c68d42 Also use docker CLI for interactive one-off runs.
COMPOSE_EXEC_NO_CLI -> COMPOSE_INTERACTIVE_NO_CLI

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-18 13:28:11 -08:00
Joffrey F 7f30a88bd6 Add type conversion (number, bool) -> float for label values
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-17 18:50:27 -08:00