Commit Graph

1347 Commits

Author SHA1 Message Date
Joffrey F c956785cdc Add progress messages to parallel pull
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-07-25 14:39:18 -07:00
Joffrey F bb00352c34 Fix up_with_networks test
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-07-18 11:09:25 -07:00
Joffrey F e6d18b1881 Fix --exit-code-from to reflect exit code after termination by Compose
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-07-10 15:28:55 -04:00
Joffrey F 9c2ffe6384 Avoid overriding external = False in serializer
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-07-09 15:28:32 -04:00
Nicholas Higgins 28085ebee2 Attach logger to containers after crashing.
Fixes #6060

Signed-off-by: Nicholas Higgins <nickhiggins42@gmail.com>
2018-07-09 08:47:20 +10:00
Joffrey F b00db08aa9 Prevent attempts to create image names starting with - or _
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-06-22 15:56:53 -07:00
Joffrey F c15c79ed2f
Merge pull request #5940 from docker/5929-underscore-projname
Don't attempt to create resources with name starting with illegal chars
2018-05-04 16:44:22 -07:00
Joffrey F d5ebc73482 Don't attempt to create resources with name starting with illegal characters
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-05-04 16:15:52 -07:00
Joffrey F f368b4846f Ignore attachable property on networks in compatibility mode
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-05-04 15:16:43 -07:00
Joffrey F c3bb958865 Ignore default platform if API version doesn't support platform param
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-05-04 14:51:53 -07:00
Joffrey F 5aafa54667 iprange -> ip_range
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-05-01 17:11:14 -07:00
Joffrey F aecc0de28f Prevent duplicate binds in generated container config
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-04-26 15:20:45 -07:00
Joffrey F faa532c315
Merge pull request #5896 from docker/5874-legacy-proj-name
Retrieve objects using legacy (< 1.21) project names
2018-04-24 16:41:42 -07:00
Joffrey F 3b2ce82fa1 Use true_name for remove operation
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-04-24 16:19:38 -07:00
Joffrey F fa3acbeb8d
Merge pull request #5897 from docker/5882-ipam_options_check
Incorrect key name for IPAM options check
2018-04-24 13:33:42 -07:00
Joffrey F fa6d837b49 Clearly define IPAM config schema for validation
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-04-23 19:08:55 -07:00
Joffrey F 299ce6ad00 Incorrect key name for IPAM options check
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-04-23 18:16:58 -07:00
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 344003a2f9 Ignore NotFound for external overlay networks
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-28 16:49:00 -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 876e1ba8d5
Merge pull request #5798 from mnottale/cpu-rt
Add support for cpu_rt_period and cpu_rt_runtime.
2018-03-19 06:51:25 -07: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 4a75fc7bbc
Merge pull request #5787 from mnottale/pull-parallel-by-default
Pull parallel by default
2018-03-19 05:19:32 -07:00
Matthieu Nottale 16ea49ac8c Add support for cpu_rt_period and cpu_rt_runtime.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-03-19 13:18:35 +01: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 8336407830 pull: Deprecate '--parallel' and enable it by default.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-03-15 15:47:29 +01: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 0112c740ad Check volume config against remote and error out if diverged
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-03-12 17:19:03 -07: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 85670e208b
Merge pull request #5751 from mnottale/cpu_period
Add support for 'cpu_period' for compose v2.1-v2.3.
2018-03-08 18:12:59 -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 b9f9643d24 Add support for 'cpu_period' for compose v2.1-v2.3.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-03-07 15:23:24 +01: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
Joffrey F 38f7fdfe89
Merge pull request #5709 from mnottale/exec-workdir
Add '--workdir' option to 'exec'.
2018-03-02 15:28:07 -08:00
Joffrey F 4ceeaad089
Merge pull request #5725 from docker/geigerzaehler-run-with-network-alias
Add --use-aliases flag to run command
2018-02-27 14:01:09 -08:00
Joffrey F 1096a903be unset entrypoint test
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-27 13:25:52 -08:00
Jim Dalton e78c0bf533 Add acceptance test for use-aliases feature
Signed-off-by: Jim Dalton <jim.dalton@gmail.com>
2018-02-27 13:13:50 -08: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
Matthieu Nottale 2fed399881 Add '--workdir' option to 'exec'.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-02-23 16:57:23 +01:00
Matthieu Nottale 59b08c7d1d New --log-level option.
Signed-off-by: Matthieu Nottale <matthieu.nottale@docker.com>
2018-02-23 13:14:26 +01: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 2fa201660c
Merge pull request #5699 from docker/pantuza-cli-add-detach-option
Add long-form --detach CLI flag
2018-02-22 12:52:28 -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 8e268afc93 Add version guard for multi-service buildarg
Add buildarg tests

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-21 15:56:02 -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
kcboschert 64b466c0bc Add optional argument to pull dependencies on docker-compose pull.
Signed-off-by: Kevin Boschert <kcboschert@gmail.com>
2018-02-14 13:11:01 -08:00
Sorawis Nilparuk bb16d9e951 Add health string generator to match `docker ps` output 2018-02-12 12:10:05 -08:00
Joffrey F a6459efcad Merge branch '4909-terminate-containers-on-sighup' of https://github.com/garribas/compose into garribas-4909-terminate-containers-on-sighup
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-07 13:59:22 -08:00
Joffrey F c223c3fde9
Merge pull request #5625 from albers/option-consistency
Add missing `-q|--quiet` options to increase consistency
2018-02-07 13:54: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 8c297f267e Implement compatibility mode,
translating deploy keys to equivalent v2 config if available

Enabled using `--compatibility` CLI flag

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-02-05 17:31:17 -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
Harald Albers 6cfbb7ed8a Add missing `-q|--quiet` options to increase consistency
Signed-off-by: Harald Albers <github@albersweb.de>
2018-01-30 01:28:15 +01:00
Joffrey F c5154d6b2b Don't break during recreate when a mount target is updated
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-23 15:25:25 -08:00
Joffrey F b64cfd1982
Merge pull request #5596 from docker/4337-recreate-anon-volumes
Add up flag `--renew-anon-volumes` (shorthand -V)
2018-01-23 10:07:33 -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 b07091ac5f Add up flag `--renew-anon-volumes` (shorthand -V)
to avoid reusing the previous container's data

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-22 16:08:33 -08: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
Joffrey F c387d05a40 Merge branch '4904-label-config-validation' of https://github.com/nginth/compose into nginth-4904-label-config-validation
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-17 18:00:11 -08:00
Joffrey F 7f22744658
Merge pull request #5566 from docker/mhank-5042-network-priorities
Add support for network priority
2018-01-12 14:40:17 -08:00
Joffrey F 97da2cc6bb Add test for NoSuchService with unicode characters
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-12 13:57:40 -08:00
Joffrey F d63500a191 Move priority option to service network reference
Add ordering to networks.get_networks
Fix priority test

Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-11 18:48:56 -08:00
Zal Daroga 4839baf877 Fixed python34 comparison issue
Signed-off-by: Zal Daroga <zaldaroga@yahoo.com>
2018-01-11 17:29:29 -08:00
Zal Daroga 55ee95b6d0 Fixed network priorities. Resolves #5042
Signed-off-by: Zal Daroga <zaldaroga@yahoo.com>
2018-01-11 17:29:29 -08:00
Zal Daroga f50e1a8c2d Added prioritization of networks
Signed-off-by: Zal Daroga <zaldaroga@yahoo.com>
2018-01-11 17:29:29 -08:00
Joffrey F 9aa9758819
Merge pull request #5565 from docker/5310-revert-5435
Revert -d/--timeout exclusion
2018-01-11 13:57:04 -08:00
Joffrey F b2d4d9f2bc
Merge pull request #5558 from docker/5554-tmpfs-mount-3.2
Support legacy tmpfs mounts
2018-01-11 12:38:38 -08:00