Ilya Skriblovsky
f933381a12
Dependency-ordered start/stop/up
...
Signed-off-by: Ilya Skriblovsky <IlyaSkriblovsky@gmail.com>
2016-03-14 22:55:42 +03:00
Aanand Prasad
e5cd869c61
Merge pull request #3095 from dnephin/refactor_command_dispatch
...
Refactor command dispatch and fix api version mismatch error
2016-03-14 16:18:29 +00:00
Matt Daue
ee136446a2
Fix #2804 : Add ipv4 and ipv6 static addressing
...
- Added ipv4_network and ipv6_network to the networks section in the
service section for each configured network
- Added feature documentation
- Added unit tests
Signed-off-by: Matt Daue <mattdaue@gmail.com>
2016-03-09 18:37:52 -05:00
Joffrey F
7033042656
Merge pull request #3039 from dbonev/3020-build-arguments-object-syntax
...
Allowing null for build args
2016-03-09 10:55:05 -08:00
Daniel Nephin
0a091055d2
Improve handling of connection errors and error messages.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-08 15:39:11 -05:00
Daniel Nephin
9f9dcc098a
Make TopLevelCommand use the project field.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-08 14:36:53 -05:00
Daniel Nephin
53bea8a720
Refactor command dispatch to improve unit testing and support better error messages.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-08 14:23:27 -05:00
Joffrey F
d2b065e615
Don't raise ConfigurationError for volume driver mismatch
...
when driver is unspecified
Add testcase
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-07 18:07:41 -08:00
Joffrey F
698998c410
Don't call create on existing volumes
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-07 18:00:27 -08:00
Dimitar Bonev
81b7fba33e
Allowing null for build args
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-03-05 15:57:06 +02:00
Aanand Prasad
9e242cdc75
Merge pull request #3032 from dnephin/multiple_files_from_env_var
...
Support multiple files in COMPOSE_FILE env var
2016-03-03 17:23:22 +00:00
Aanand Prasad
4ae71f41dd
Merge pull request #2832 from aanand/refactor-cli-unit-tests
...
Refactor CLI initialization and unit tests
2016-03-02 16:10:44 -08:00
Daniel Nephin
53a3d14046
Support multiple files in COMPOSE_FILE env var.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-02 18:47:58 -05:00
Aanand Prasad
575b48749d
Remove unused global_options arg from dispatch()
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-03-02 15:09:48 -08:00
Aanand Prasad
f75408923e
Merge pull request #3053 from dnephin/handle_booleans_in_mappings
...
Don't allow booleans for mapping types
2016-03-02 15:04:20 -08:00
Aanand Prasad
3f98c0716e
Merge pull request #3052 from dnephin/merge_v1_logging
...
Fix merging of logging options in v1 config
2016-03-02 15:03:36 -08:00
Daniel Nephin
e1b87d7be0
Update reference docs for the new flag.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-02 15:32:51 -05:00
Daniel Nephin
b7fb3a6d9b
Add --build flag for up and create
...
Also adds a warning when up builds an image without the --build flag
so that users know it wont happen on the next up.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-02 15:32:51 -05:00
Aanand Prasad
0b3561a7d5
Merge pull request #2720 from seguins/2227-improvements-logs
...
Add flags on logs
2016-03-01 17:41:31 -08:00
Daniel Nephin
ed4473c849
Fix signal handling with pyinstaller.
...
Raise a ShutdownException instead of a KeyboardInterupt when a thread.error
is caught. This thread.error is only raised when run from a pyinstaller
binary (for reasons unknown).
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-01 16:39:43 -05:00
Stéphane Seguin
038da4eea3
Logs args of LogPrinter as a dictionary
...
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2016-03-01 20:24:15 +01:00
Stéphane Seguin
9b36dc5c54
Add --tail flag as option on logs.
...
Closes #265
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2016-03-01 20:23:46 +01:00
Stéphane Seguin
d9b4286f91
Add -t, --timestamps flag as option on logs.
...
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2016-03-01 20:23:46 +01:00
Stéphane Seguin
82632098a3
Add -f, --follow flag as option on logs.
...
Closes #2187
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2016-03-01 20:23:43 +01:00
Daniel Nephin
18510b4024
Don't allow booleans for mapping types.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-01 11:57:35 -05:00
Daniel Nephin
b726f508a6
Fix merging of logging options in v1 config.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-03-01 11:43:26 -05:00
Aanand Prasad
210856179d
Merge pull request #3036 from JesusTinoco/master
...
Display in the log output the name of those containers created using …
2016-02-29 15:17:14 -08:00
Jesus
6bfb23baaa
Display containers name when scale a container
...
Display in the log output the name of those containers created using the scale command and
change the test_scale_with_api_error test to support the containers name when scale
Signed-off-by: Jesus Rodriguez Tinoco <jesus.rodriguez.tinoco@gmail.com>
2016-02-29 20:19:03 +01:00
Tomas Tomecek
d28c5dda92
implement exec
...
Resolves #593
Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2016-02-29 10:50:09 +01:00
Aanand Prasad
adb8de367e
Merge pull request #2388 from dnephin/fix_long_lines
...
Wrap long lines
2016-02-25 16:52:33 -08:00
Aanand Prasad
42f4d814d7
Merge pull request #2880 from dnephin/merge_jsonschemas
...
Merge jsonschemas to a single schema file per version
2016-02-25 16:51:56 -08:00
Daniel Nephin
dc3a5ce624
Refactor config validation to support constraints in the same jsonschema
...
Reworked the two schema validation functions to read from the same schema but
use different parts of it. Error handling is now split as well by the
schema that is being used to validate.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 16:20:17 -08:00
Daniel Nephin
43ecf8793a
Address old TODO, and small refactor of container name logic in service.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 16:19:38 -08:00
Daniel Nephin
cdda616d6b
Reduce complexity of sort_service_dicts.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 16:19:38 -08:00
Daniel Nephin
84a1822e40
Reduce complexity of _get_container_create_options
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 16:19:38 -08:00
Daniel Nephin
be554c3a74
Merge v1 config jsonschemas into a single file.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 15:59:10 -08:00
Daniel Nephin
adb64ef8d5
Merge v2 config jsonschemas into a single file.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-24 15:59:10 -08:00
Daniel Nephin
d451578152
Make environment variables without a value the same as docker-cli.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-23 11:14:59 -08:00
Daniel Nephin
4b04280db8
Revert "Change special case from '_', None to ()"
...
This reverts commit 677c50650c
.
Revert "Modify service_test.py::ServiceTest::test_resolve_env to reflect new behavior"
This reverts commit 0019037712
.
Revert "Mangle the tests. They pass for better or worse!"
This reverts commit 7ab9509ce6
.
Revert "If an env var is passthrough but not defined on the host don't set it."
This reverts commit 6540efb3d3
.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-23 11:13:57 -08:00
Daniel Nephin
1d67e6f0f0
Merge pull request #2995 from dnephin/fix_warning_about_bools
...
Fix warning about boolean values
2016-02-23 11:11:54 -08:00
Daniel Nephin
ba799d2e86
Merge pull request #2996 from dnephin/fix_abort_on_container_exit
...
Fix abort on container exit
2016-02-23 10:52:12 -08:00
Daniel Nephin
15b2094bad
Stop other containers if the flag is set.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-22 16:48:46 -08:00
Richard Bann
bf2bf21720
Add failing test for --abort-on-container-exit
...
Handle --abort-on-container-exit. Fixes #2940
Signed-off-by: Richard Bann <richardbann@gmail.com>
2016-02-22 16:39:40 -08:00
Daniel Nephin
0a06d827fa
Fix warning about boolean values.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-22 14:56:01 -08:00
Daniel Nephin
d5514965d5
Merge pull request #2975 from dnephin/fix_crash_on_none_in_config
...
Fix validation message when there are multiple nested oneOf validations.
2016-02-19 15:53:26 -05:00
Daniel Nephin
02535f0cf1
Fix validation message when there are multiple ested oneOf validations.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-19 14:22:55 -05:00
Daniel Nephin
0d218c34c7
Make config validation error messages more consistent.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-19 13:12:57 -05:00
Daniel Nephin
4b2a666231
Validate that each section of the config is a mapping before running interpolation.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-19 12:38:52 -05:00
Joffrey F
0cb8ba3775
Use modern set notation in _get_aliases
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:28:12 -08:00
Joffrey F
7152f7ea76
Handle mismatched network formats in config files
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:24:41 -08:00
Joffrey F
825a0941f0
Network aliases are now part of the network dictionary
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:23:47 -08:00
Joffrey F
41e399be98
Fix network list serialization in py3
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:23:47 -08:00
Joffrey F
633e349ab9
Test network_aliases feature
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:23:46 -08:00
Joffrey F
2b5d3f51cb
Allow user to specify custom network aliases
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 15:23:46 -08:00
Joffrey F
d3a95c2892
Merge pull request #2938 from shin-/2927-buildargs-types
...
Constraint build argument types. Numbers are cast into strings.
2016-02-18 15:07:09 -08:00
Joffrey F
93a02e497d
Apply driver_opts processing to network configs
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-18 10:53:40 -08:00
Daniel Nephin
4f7530c480
Only set a container affinity if there are volumes to copy over.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-17 22:35:14 -05:00
Joffrey F
1952b52392
Constraint build argument types. Numbers are cast into strings
...
Numerical driver_opts are also valid and typecast into strings.
Additional config tests.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-17 11:53:29 -08:00
Daniel Nephin
4a09da43ea
Fix copying of volumes by using the name of the volume instead of the host path.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-17 13:34:14 -05:00
Daniel Nephin
74dc1b1411
Merge pull request #2893 from shin-/2833-run-dependencies
...
Bring up all dependencies when running a single service.
2016-02-12 16:33:01 -05:00
Joffrey F
a8fda480e3
driver_opts can only be of type string
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-12 10:51:11 -08:00
Joffrey F
367fabdbfa
Bring up all dependencies when running a single service.
...
Added test for running a depends_on service
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-12 09:46:10 -08:00
Joffrey F
e1d67ad68a
Merge pull request #2882 from shin-/2715-old-server-error
...
Detailed error message when daemon version is too old.
2016-02-11 16:03:20 -08:00
Daniel Nephin
b6812b8600
Merge pull request #2877 from dnephin/fix_merging_build
...
Fix build section without context
2016-02-11 18:53:23 -05:00
Joffrey F
79f993f52c
Detailed error message when daemon version is too old.
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-11 15:20:32 -08:00
Joffrey F
e225f12551
Add logging when initializing a volume.
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-11 11:40:22 -08:00
Daniel Nephin
532dffd688
Fix build section without context.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-11 14:12:02 -05:00
Aanand Prasad
23ab2c7e44
Merge pull request #2878 from dnephin/merge_build_args
...
Merge build.args when merging services
2016-02-11 17:41:41 +00:00
Spencer Rinehart
ab40d389d0
Fix sorting of DOCKER_START_KEYS.
...
Make sure it's sorted!
Signed-off-by: Spencer Rinehart <anubis@overthemonkey.com>
2016-02-10 15:25:18 -06:00
Spencer Rinehart
5e6dc3521c
Add support for shm_size. Fixes #2823 .
...
shm_size controls the size of /dev/shm in the container and requires
Docker 1.10 or newer (API version 1.22). This requires docker-py 1.8.0
(docker/docker-py#923 ).
Similar to fields like `mem_limit`, `shm_size` may be specified as
either an integer or a string (e.g., `64M`).
Updating docker-py to the master branch in order to get the unreleased
dependency on `shm_size` there in place.
Signed-off-by: Spencer Rinehart <anubis@overthemonkey.com>
2016-02-10 15:25:18 -06:00
Daniel Nephin
37564a73c3
Merge build.args when merging services.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-10 13:54:40 -05:00
Aanand Prasad
7b5bad6050
Merge pull request #2851 from cr7pt0gr4ph7/2839-fix-networks-merging
...
Fix merge behavior for 'networks' and 'network_mode'.
2016-02-10 17:51:01 +00:00
Daniel Nephin
6f06b3bd30
Merge pull request #2853 from dnephin/fix_short_id_alias
...
Use 12 characters for the short id
2016-02-09 14:56:24 -05:00
Joffrey F
fdf4a2e89e
Merge pull request #2734 from jrabbit/empty-env-var-2359
...
Empty env var #2359
2016-02-08 11:17:54 -08:00
Daniel Nephin
421981e7d2
Use 12 characters for the short id to match docker and fix backwards compatibility.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-08 12:18:48 -05:00
Lukas Waslowski
5bd88f634f
Handle the 'network_mode' key when merging multiple compose files.
...
Fixes docker/compose#2840 .
Signed-off-by: Lukas Waslowski <cr7pt0gr4ph7@gmail.com>
2016-02-08 15:33:26 +01:00
Lukas Waslowski
5a3a10d43b
Correctly merge the 'services/<service>/networks' key in the case of multiple compose files.
...
Fixes docker/compose#2839 .
Signed-off-by: Lukas Waslowski <cr7pt0gr4ph7@gmail.com>
2016-02-08 15:17:21 +01:00
jrabbit
677c50650c
Change special case from '_', None to ()
...
Signed-off-by: jrabbit <jackjrabbit@gmail.com>
2016-02-06 02:54:06 -05:00
Daniel Nephin
57fc85b457
Wrap long lines and restrict lines to 105 characters.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-04 19:05:39 -05:00
Aanand Prasad
869e815213
Bump 1.7.0dev
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-04 23:46:41 +00:00
Aanand Prasad
be236d8801
Update docker-py and dockerpty
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-04 19:16:01 +00:00
Daniel Nephin
80d02e84e2
Merge pull request #2808 from aanand/connect-before-start
...
Connect container to networks before starting it
2016-02-03 23:49:56 -05:00
Daniel Nephin
89c5b800e6
Merge pull request #2782 from dbonev/2772-compose-project-name-empty
...
Falling back to default project name on empty COMPOSE_PROJECT_NAME
2016-02-02 20:37:38 -05:00
Aanand Prasad
2651c00f0c
Connect container to networks before starting it
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 19:31:49 +00:00
Daniel Nephin
4c4e94bc19
Merge pull request #2785 from dnephin/depends_on_with_extends
...
Fix list options when used with extends and multiple files
2016-02-02 13:36:46 -05:00
Daniel Nephin
3d3388d59b
Extract volume init and removal from project.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:53:04 -05:00
Daniel Nephin
e551988616
Include networks in the config_hash.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:52:03 -05:00
Daniel Nephin
0810eeba10
Don't initialize networks that aren't used by any services.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:52:03 -05:00
Daniel Nephin
8e838968fe
Refactor project network initlization.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:51:31 -05:00
Daniel Nephin
e32863f89e
Make links unique-by-alias when merging
...
Factor out MergeDict from merge_service_dicts to reduce complexity below limit.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:48:47 -05:00
Daniel Nephin
bf6a5d3e49
Fix merging of lists with multiple files.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-02-02 10:48:18 -05:00
Ryan Taylor Long
c70c72f49a
Add depends_on to ALLOWED_KEYS
...
This ensures and already existing `depends_on` is not deleted when the service on which it is defined also employs `extends`.
Signed-off-by: Ryan Taylor Long <ryan@rtlong.com>
2016-02-02 10:48:18 -05:00
Aanand Prasad
1152c5b25b
Tweak and test warning shown when version is a dict
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:58:34 +00:00
Aanand Prasad
ef8db3650a
Improve error messages for invalid versions
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:58:34 +00:00
Aanand Prasad
aeef61fcd8
Make 'version' a string
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:58:34 +00:00
Aanand Prasad
a8de582425
Remove redundant check - self.config should never be None
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:47:44 +00:00
Aanand Prasad
4ac004059a
Normalise/fix config field designators in validation messages
...
- Instead of "Service 'web' configuration key 'image'", just say
"web.image"
- Fix the "Service 'services'" bug in the v2 file format
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:47:43 +00:00
Dimitar Bonev
34ccb90d7e
Falling back to default project name when COMPOSE_PROJECT_NAME is set to empty
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-01-30 10:14:45 +02:00
Daniel Nephin
b4868d0259
Fix race condition with up and setting signal handlers.
...
Also print stdout on wait_for_container().
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-29 13:04:04 -05:00
Daniel Nephin
883e45626f
Merge pull request #2706 from dnephin/dont_copy_host_volumes
...
Don't copy host volumes on recreate
2016-01-28 15:02:53 -05:00
Aanand Prasad
ca81672b82
Merge pull request #2761 from aanand/fix-bridge-plus-host
...
Remove ability to join bridge network + user-defined networks
2016-01-27 01:41:07 +00:00
Aanand Prasad
650b0cec38
Remove ability to join bridge network + user-defined networks
...
Containers connected to the bridge network can't have aliases, so it's
simpler to rule that they can *either* be connected to the bridge
network (via `network_mode: bridge`) *or* be connected to user-defined
networks (via `networks` or the default network).
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-27 00:42:09 +00:00
Aanand Prasad
0ba02b4a18
Add back external links in v2
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-26 18:48:43 +00:00
Aanand Prasad
ed1b204804
Rename 'net' to 'network mode' in various classes/methods
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-25 23:55:20 +00:00
Aanand Prasad
e566a4dc1c
Implement network_mode in v2
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-25 23:24:55 +00:00
Aanand Prasad
a267d8fe3c
Merge pull request #2728 from shin-/2709_service_volumes
...
Match named volumes in service definitions with declared volumes
2016-01-25 23:24:09 +00:00
Joffrey F
af6b18cad8
Merge pull request #2746 from aanand/alias-containers-by-short-id
...
Alias containers by short id
2016-01-25 13:55:30 -08:00
Aanand Prasad
313c584185
Alias containers by short id
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-25 16:14:21 +00:00
jrabbit
6540efb3d3
If an env var is passthrough but not defined on the host don't set it.
...
This doesn't change too much code and keeps the generators.
Signed-off-by: jrabbit <jackjrabbit@gmail.com>
2016-01-23 15:58:06 -05:00
Joffrey F
139c7f7830
Move named volumes matching to config validation phase
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-22 17:42:24 -08:00
Joffrey F
48377a354f
is_named_volume also tests for home paths ~
...
Fix bug with VolumeSpec not being updated
Fix integration test
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-22 16:05:21 -08:00
Dimitar Bonev
3a72edb906
Network fields schema validation
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-01-22 16:42:10 +02:00
Joffrey F
9e67eae311
Match named volumes in service definitions with declared volumes
...
Raise ConfigurationError for undeclared named volumes
Test new behavior
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-21 18:10:53 -08:00
Alf Lervag
6e73fb38ea
Fixes #2448
...
Signed-off-by: Alf Lervag <alf.lervag@bouvet.no>
Conflicts:
compose/cli/main.py
requirements.txt
2016-01-21 19:19:37 +00:00
Aanand Prasad
f3e55568d1
Fix interactive run with networking
...
Make sure we connect the container to all required networks *after*
starting the container and *before* hijacking the terminal.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 18:42:59 +00:00
Aanand Prasad
09dbc7b4cb
Stop connecting to all networks on container creation
...
This relies on an Engine behaviour which is a bug, not an intentional
feature - we have to connect to networks one at a time
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 18:04:50 +00:00
Aanand Prasad
a14906fd35
Fix 'run' behaviour with networks
...
- Test that one-off containers join all networks
- Don't set any aliases
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 17:28:55 +00:00
Aanand Prasad
1e51b7e88b
Merge pull request #2722 from aanand/fix-scale-race-condition
...
Fix scale race condition
2016-01-21 17:08:15 +00:00
Aanand Prasad
013c5ea3f9
Merge pull request #2713 from aanand/links-v2
...
Support links in v2 files
2016-01-21 17:08:05 +00:00
Aanand Prasad
7a4fdfd034
Merge pull request #2712 from jzvelc/fix_v2_service_extend
...
Fix `extends` when using v2 config format
2016-01-21 17:06:21 +00:00
Aanand Prasad
642e71b4c7
Stop and remove containers in parallel when scaling down
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 15:28:40 +00:00
Aanand Prasad
755c49b500
Fix scale when containers exit immediately
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 15:19:55 +00:00
Aanand Prasad
ee63075a34
Support links in v2 files
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-21 14:34:26 +00:00
Jure Žvelc
907c3ce42b
Fix for extending services written in v2 format.
...
Signed-off-by: Jure Žvelc <jzvelc@gmail.com>
2016-01-20 18:46:16 +01:00
Daniel Nephin
146587643c
Move ulimits validation to validation.py and improve the error message.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-19 15:47:57 -05:00
Daniel Nephin
0bce467782
Implement depends_on to define an order for services in the v2 format.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-19 15:41:45 -05:00
Daniel Nephin
c39489f540
Don't copy over volumes that were previously host volumes, and are now container volumes.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-19 14:41:21 -05:00
Daniel Nephin
c47aea9c12
Merge pull request #2698 from aanand/fix-name-is-reserved
...
Fix "name is reserved" with Engine 1.10 RC1
2016-01-19 10:15:06 -05:00
Aanand Prasad
2106481c23
Fix "name is reserved" with Engine 1.10 RC1
...
Ensure link aliases are unique (this deduping was previously performed
on the server).
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-19 11:27:27 +00:00
Aanand Prasad
5b2b4cbb07
Merge pull request #2692 from aanand/fix-tls-paramater-error
...
Catch TLSParameterErrors from docker-py
2016-01-19 11:25:21 +00:00
Aanand Prasad
9ccef1ea91
Catch TLSParameterErrors from docker-py
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-18 21:48:12 +00:00
Aanand Prasad
afae365050
Allow custom ipam config
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-18 18:56:18 +00:00
Aanand Prasad
e7673bf920
Allow overriding of config for the default network
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-18 16:17:39 +00:00
Aanand Prasad
53d56ea245
Quote network names in error messages
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-18 16:15:52 +00:00
Daniel Nephin
cce3b29688
Merge pull request #2665 from dnephin/check_extends_use_same_version
...
Validate that an extended config file has the same version as the base
2016-01-15 18:07:56 -05:00
Daniel Nephin
dc1104649f
Validate that an extended config file has the same version as the base.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 22:28:20 -05:00
Aanand Prasad
cba75627e1
Fix error when joining host/bridge network
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-15 02:46:24 +00:00
Aanand Prasad
abd031cb3d
Containers join each network aliased to their service's name
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-15 02:08:20 +00:00
Daniel Nephin
2a2eb81215
Merge pull request #2662 from dnephin/fix_config_printing_unicode
...
Fix config printing unicode objects
2016-01-14 19:26:39 -05:00
Daniel Nephin
1bfbba36b2
Ensure that the config output by config command never contains python objects.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 18:33:58 -05:00
Daniel Nephin
3021ee12fe
Fix `config` command to print the new sections of the config
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 18:28:17 -05:00
Daniel Nephin
0f234154c2
Remove all non-external networks on down.
...
Also moves the shutdown test fixtures to be a more general v2-full fixture.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 18:28:17 -05:00
Daniel Nephin
b98e2169e6
Error when the project name is invalid for the image name.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 18:25:23 -05:00
Daniel Nephin
b689c4a218
Move service validation to validate_service().
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 18:25:22 -05:00
Joffrey F
796d97e394
Merge pull request #2617 from gutweiler/extra-hosts-ipv6
...
Extra hosts ipv6
2016-01-14 15:19:12 -08:00
Aanand Prasad
47e53b49c2
Merge pull request #2653 from shin-/Runscope-build-args
...
Support for build arguments
2016-01-14 23:13:54 +00:00
Joffrey F
1ae57d92d4
Remove duplicate functions
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-14 14:39:06 -08:00
Clemens Gutweiler
ce9f2681a2
Fixes #1422 : ipv6 addr contains colons, so we split only by the first char.
...
Signed-off-by: Clemens Gutweiler <cg@vioma.de>
2016-01-14 22:26:35 +01:00
Joffrey F
13063a96cb
Fix handling of service.dockerfile key
...
Made invalid in v2 format
Doesn't break build config anymore
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-14 12:15:37 -08:00
Garrett Heel
9cfa71ceee
Add support for build arguments
...
Allows 'build' configuration option to be specified as an
object and adds support for build args.
Signed-off-by: Garrett Heel <garrettheel@gmail.com>
2016-01-14 12:14:56 -08:00
Daniel Nephin
79df2ebe1b
Support variable interpolation for volumes and networks sections.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 14:04:57 -05:00
Aanand Prasad
d98b64f6e7
Remove duplicated logic from initialize_networks()
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:09:45 +00:00
Aanand Prasad
4e61377c6d
Move get_networks() out of Project class
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:01:44 +00:00
Aanand Prasad
73fbd01cfe
Support the 'external' option for networks
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:00:39 +00:00
Aanand Prasad
ca68c9faa4
Services can join 'bridge' or 'host'
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:00:39 +00:00
Aanand Prasad
e75629392d
Don't join the bridge network by default in v2
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:00:39 +00:00
Aanand Prasad
3eafdbb01b
Connect services to networks with the 'networks' key
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 17:59:37 +00:00
Aanand Prasad
35e347cf92
Disable the use of 'net' in v2
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 17:59:37 +00:00
Aanand Prasad
69ed5f9c48
Specify networks in Compose file
...
There's not yet a proper way for services to join networks
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 17:59:36 +00:00
Aanand Prasad
8fca4f1628
Merge pull request #2649 from dnephin/make_volumes_from_more_explicit
...
Make volumes from more explicit in V2 config format
2016-01-14 17:15:27 +00:00
Daniel Nephin
172b955d79
Merge pull request #2646 from dnephin/docker_compose_down
...
docker-compose down
2016-01-14 11:59:02 -05:00
Daniel Nephin
b76dc1e05e
Require volumes_from a container to be explicit in V2 config.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 11:45:16 -05:00
Daniel Nephin
c3968a439f
Refactor config loading to move version check into ConfigFile.
...
Adds the cached_property package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 11:45:15 -05:00
Daniel Nephin
de949284f5
Refactor config loading for handling volumes_from in v2.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 11:43:47 -05:00
Aanand Prasad
dbe04a70f0
Merge pull request #2655 from shin-/updated_volume_definition
...
Properly validate volume definition
2016-01-14 16:37:39 +00:00
Daniel Nephin
c64af0a459
Add an acceptance test and docs for the down subcommand
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 11:11:08 -05:00
Daniel Nephin
c8ed156806
Adding docker-compose down
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-14 10:59:53 -05:00
Aanand Prasad
18df1e170d
Merge pull request #2625 from kojiromike/allow-list-entrypoints
...
Allow Entrypoints to be Lists
2016-01-14 12:48:13 +00:00
Aanand Prasad
7733600262
Merge pull request #2508 from jstewmon/stop_signal
...
add support for stop_signal to compose file
2016-01-14 12:46:04 +00:00
Joffrey F
e41e6c1241
Properly validate volume definition
...
Test valid empty volume definitions
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-13 18:22:29 -08:00
Joffrey F
153185eadb
Merge pull request #2647 from shin-/preexisting_volume_detection_rb1
...
Support for external volumes
2016-01-13 17:02:36 -08:00
Michael A. Smith
59a4ab9634
Allow Entrypoints to be Lists
...
Signed-off-by: Michael A. Smith <msmith3@ebay.com>
2016-01-13 17:45:56 -05:00
Joffrey F
e76b2679eb
external volume disallows other config keys
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-13 14:12:03 -08:00
Joffrey F
c260eb910b
Merge pull request #2629 from dbonev/2611-support-port-range-in-compose
...
Port range in exposed ports
2016-01-13 13:09:22 -08:00
Aanand Prasad
3aba5bb67e
Merge pull request #2620 from dbonev/2607-ulimits-not-merged-in-extended-services
...
Ulimits are now merged into extended services
2016-01-13 21:05:38 +00:00
Joffrey F
d601199eb5
Normalize external_name
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-13 12:07:08 -08:00
Joffrey F
8616b2de51
Update error message when external volume is missing
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-13 11:23:06 -08:00
Evgeniy Dobrohvalov
bf48a781db
Add flag for stops all containers if any container was stopped.
...
Signed-off-by: Evgeniy Dobrohvalov <scipetr@gmail.com>
2016-01-13 13:12:09 +03:00
Joffrey F
9cb58b796e
Implement ability to specify external volumes
...
External volumes are created and managed by the user.
They are not namespaced.
They are expected to exist at the beginning of the up phase.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-12 16:53:49 -08:00
Joffrey F
05935b5e54
Don't recreate pre-existing volumes.
...
During the initialize_volumes phase, if a volume using the
non-namespaced name already exists, don't create the namespaced
equivalent.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-12 15:42:42 -08:00
Jonathan Stewmon
5d8c2d3cec
add support for stop_signal to compose file
...
Signed-off-by: Jonathan Stewmon <jstewmon@rmn.com>
2016-01-12 17:21:49 -06:00
Dimitar Bonev
3a46abd17f
Allowed port range in exposed ports
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-01-13 00:13:04 +02:00
Dimitar Bonev
2f07e2ac36
Ulimits are now merged into extended services
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-01-12 23:59:23 +02:00
Aanand Prasad
70cce961a8
Don't allow links or external_links in v2 files
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-12 21:29:45 +00:00
Aanand Prasad
9e17cff0ef
Refactor API version switching logic
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-12 21:29:45 +00:00
Aanand Prasad
a027a0079c
Use networking for version 2 Compose files
...
- Remove --x-networking and --x-network-driver
- There's now no way to set a network driver - this will be added back
with the 'networks' key
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-12 21:29:40 +00:00
Aanand Prasad
1a66543461
Make the default network name '{project name}_default'
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-12 21:08:28 +00:00
Daniel Nephin
e98ab0e534
Allow both image and build together.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-12 14:10:00 -05:00
Daniel Nephin
ed4db542d6
Fix pep8 errors from the new pep8 release.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-12 14:02:30 -05:00
Daniel Nephin
12b5405420
Fix pre-commit on master.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-12 13:27:18 -05:00
Daniel Nephin
304a44aeab
Merge pull request #2585 from dnephin/short_signal_handlers
...
Fix signal handlers by moving shutdown logic out of handler
2016-01-12 12:55:53 -05:00
Aanand Prasad
52e50a9d9a
Merge pull request #2626 from shin-/dbonev-2503-move-logging-config-under-separate-key
...
Move logging config under separate key in v2 compose files
2016-01-12 15:21:10 +00:00
Aanand Prasad
063a25ae7d
Merge pull request #2392 from dnephin/docker_compose_events
...
docker-compose events
2016-01-12 11:45:27 +00:00
Joffrey F
46a474ecd9
Move v1-v2 config normalization to separate function.
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-11 15:53:28 -08:00
Joffrey F
c32991a8d4
Remove superfluous service code
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-11 15:39:59 -08:00
Daniel Nephin
d3cd038b84
Update event field names to match the new API fields.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-11 11:51:17 -05:00
Joffrey F
46585fb8e1
Support legacy logging options format
...
Additional test for legacy compose file.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-08 14:37:07 -08:00
Daniel Nephin
fc57fc1dc1
Merge pull request #2609 from dnephin/dont_warn_on_container_volume
...
Don't warn when the container volume is a compose option
2016-01-08 17:18:02 -05:00
Daniel Nephin
ab98c70dd1
Merge pull request #2612 from dnephin/merge_extends_from_multiple_files
...
Fix extends with multiple files
2016-01-08 17:17:41 -05:00
Joffrey F
21aae13e77
Move logging config changes to v2 spec
...
Reorganize JSON schemas
Update fixtures
Update service validation function
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-08 13:21:45 -08:00
Daniel Nephin
d1d3969661
Add docker-compose event
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-08 13:43:30 -05:00
Dimitar Bonev
ed5f7bd394
log_driver and log_opt moved to logging key.
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2016-01-08 01:54:45 +02:00
Daniel Nephin
bf1552da79
Use json to encode invalid values in configuration errors so that the user sees a proper repr of the value.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-07 13:09:24 -05:00
Daniel Nephin
475a091768
Update pre-commit config to enforace that future imports exist in all files.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-07 13:09:03 -05:00
Daniel Nephin
c7b71422c0
Fix extends with multiple files.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-06 13:30:40 -05:00
Joffrey F
a7689f3da8
Handle volume driver change error in config.
...
Assume version=1 if file is empty in get_config_version
Empty files are invalid anyway, so this simplifies the algorithm
somewhat.
https://github.com/docker/compose/pull/2421#discussion_r47223144
Don't leak version considerations in interpolation/service validation
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:22:13 -08:00
Joffrey F
f3a9533dc0
version no longer optional arg for process_config_file
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:21:54 -08:00
Joffrey F
ec5111f1c2
Volumes are now prefixed with the project name
...
When created through the compose file, volumes are prefixed
with the name of the project they belong to + underscore,
similarly to how containers are currently handled.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:21:53 -08:00
Joffrey F
ecef5d37a7
Add v2 configuration tests
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:21:53 -08:00
Joffrey F
abe145bbe7
Update config resolution to always use explicit version numbers
...
Also includes several bugfixes for resolution and validation.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:09:39 -08:00
Joffrey F
b4be7b870f
Add support for declaring named volumes in compose files
...
* Bump default API version to 1.21 (required for named volume management)
* Introduce new, versioned compose file format while maintaining support
for current (legacy) format
* Test updates to reflect changes made to the internal API
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
4bf2f8c4f9
Fix lookup of linked containers for API version 1.20
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
97fe2ee40c
Don't preserve host volumes on container recreate.
...
Fixes a regression after the API changed to use Mounts.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
73de81b51c
Upgrade tests to use new Mounts in container inspect.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
ad9011ed96
Don't warn when the container volume is specified as a compose option.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 17:30:27 -05:00
Aanand Prasad
4017ea99fe
Merge pull request #2599 from dnephin/inject_project_name
...
Remove support for fig.yaml, FIG_FILE, and FIG_PROJECT_NAME
2016-01-05 12:29:38 +00:00
Daniel Nephin
2acc29cf1c
Remove support for fig.yaml, FIG_FILE, and FIG_PROJECT_NAME.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-04 15:37:21 -05:00
Daniel Nephin
778c213dfc
Fix signal handlers by moving shutdown logic out of handler.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-12-30 11:21:20 -05:00
Tomas Tomecek
adde805829
allow running compose from git
...
with:
```
$ git clone docker/compose && cd compose
$ export PYTHONPATH="$PWD:$PYTHONPATH"
$ python -m compose --help
```
Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2015-12-26 11:03:58 +01:00
Daniel Nephin
ea8cc1c3dc
Merge pull request #2562 from thaJeztah/update-links
...
Update links
2015-12-21 08:31:39 -08:00
Aanand Prasad
a2d2915a64
Merge pull request #2547 from seguins/1125-docker-compose-create
...
Add docker-compose create command.
2015-12-21 14:20:56 +00:00
Sebastiaan van Stijn
5ed559fa0e
Update links
...
Updates some links to their new locations, and
replaces some http:// with https:// links.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2015-12-21 01:52:54 +01:00
Aanand Prasad
12a08255b5
Merge pull request #2554 from aanand/clarify-rm-behaviour
...
Clarify behaviour of 'rm'
2015-12-18 16:42:05 +00:00
Stéphane Seguin
3c76d5a467
Add docker-compose create command.
...
Closes #1125
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2015-12-18 08:53:26 +01:00
Aanand Prasad
2e9a49b4eb
Clarify behaviour of 'rm'
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-12-17 17:50:45 +00:00
Dimitar Bonev
a542041264
Added support for cpu_quota flag
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2015-12-16 21:25:30 +02:00
Dimitar Bonev
bc843d6758
Start, restart, pause and unpause exit with non-zero if nothing to do
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2015-12-15 23:11:11 +02:00
Jean Praloran
c8f266b637
add restarting status for human_readable_state
...
Signed-off-by: Jean Praloran <jeanpralo@gmail.com>
2015-12-16 08:19:28 +13:00
Dimitar Bonev
6d709caaa5
Fixes incorrect network name shown in the log when no driver is specified
...
Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
2015-12-11 10:14:01 +02:00
Daniel Nephin
fa3528ea25
Fix dns and dns_search when used strings and without extends.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-12-09 16:32:39 -08:00
Stéphane Seguin
999d15b225
Remove unused functions in service
...
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2015-12-08 21:11:05 +01:00
Daniel Nephin
437f3f8adb
Add docker-compose config subcommand.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-12-07 18:51:01 -08:00
Aanand Prasad
ecf2dd11f9
Merge pull request #2467 from dnephin/remove_migrate_to_labels
...
Remove migrate-to-labels.
2015-12-07 14:31:23 +00:00
Aanand Prasad
9f4e83e456
Merge pull request #2466 from dnephin/remove_insecure_ssl_warning
...
Removes the deprecated --allow-insecure-ssl flag
2015-12-07 14:29:33 +00:00
jake-low
e760c42ae0
Stop warning about ".yaml" extension
...
".yaml" is the preferred extension according to http://www.yaml.org/faq.html
Signed-off-by: jake-low <jakelow42@gmail.com>
2015-12-02 21:45:36 -08:00
Daniel Nephin
a21f9993b3
Remove migrate-to-labels.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-27 12:04:45 -05:00
Daniel Nephin
2f568984f7
Fixes #2368 , removes the deprecated --allow-insecure-ssl flag.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-27 11:52:25 -05:00
Aanand Prasad
defcf5a21f
Merge pull request #2464 from aanand/validate-expose
...
Validate `expose`
2015-11-27 14:44:55 +00:00
Aanand Prasad
ccf548b98c
Validate the 'expose' option
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-11-26 19:27:32 +00:00
Aanand Prasad
374b16843f
Fix ports validation message
...
- The `raises` kwarg to the `cls_check` decorator was being used
incorrectly (it should be an exception class, not an object).
- We need to check for `error.cause` and get the message out of the
exception object.
NB: The particular case where validation fails in the case of `ports` is
only when ranges don't match in length - no further validation is
currently performed client-side.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-11-26 18:54:30 +00:00
Aanand Prasad
d52508e2b1
Refactor ports section of fields schema
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-11-26 18:52:14 +00:00
Daniel Nephin
2ab3cb212a
Add integration test and docs for build with a git url.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-26 11:32:39 -05:00
Jonas Eckerström
f7239f41ef
Added support for url buid paths
...
Signed-off-by: Jonas Eckerström <jonaseck@gmail.com>
2015-11-26 11:29:07 -05:00
Daniel Nephin
e67bc2569c
Properly resolve environment from all sources.
...
Split env resolving into two phases. The first phase is to expand the paths
of env_files, which is done before merging extends. Once all files are merged
together, the final phase is to read the env_files and use them as the base
for environment variables.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-25 11:02:20 -05:00
Daniel Nephin
533f33271a
Move service sorting to config package.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:33:00 -05:00
Daniel Nephin
effa9834a5
Remove unnecessary intermediate variables in get_container_host_config.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:33:00 -05:00
Daniel Nephin
dac75b07dc
Move volume parsing to config.types module
...
This removes the last of the old service.ConfigError
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:33:00 -05:00
Daniel Nephin
efec2aae6c
Fixes #2008 - re-use list_or_dict schema for all the types
...
At the same time, moves extra_hosts validation to the config module.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:31:58 -05:00
Daniel Nephin
12b82a20ff
Move restart spec to the config.types module.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:31:58 -05:00
Daniel Nephin
068edfa313
Move parsing of volumes_from to the last step of config parsing.
...
Includes creating a new compose.config.types module for all the domain objects.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:31:58 -05:00
Daniel Nephin
c9ca5e86b0
Remove project name validation
...
project name is already normalized to a valid name before creating a service.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:30:54 -05:00
Aanand Prasad
665de9a494
Merge pull request #2436 from dnephin/reduce_cyclomatic_complexity
...
Reduce cyclomatic complexity
2015-11-23 17:51:54 +00:00
Daniel Nephin
b4edf0c454
Move parallel_execute to a new module.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 11:34:48 -05:00
Aanand Prasad
aafacd3495
Merge pull request #2418 from dnephin/fix_env_with_extends
...
Fix env_file and environment when used with extends
2015-11-23 14:48:04 +00:00
Daniel Nephin
64447879d2
Reduce complexity of merge_service_dicts
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-20 17:09:55 -05:00
Daniel Nephin
d1adbb9b25
Refactor parallel_execute.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-20 17:09:51 -05:00
Daniel Nephin
c4096525c2
Merge pull request #2364 from dnephin/handle_signals_properly
...
Handle SIGTERM/SIGINT properly for up and run
2015-11-20 11:58:04 -05:00
Daniel Nephin
8bc84c74e7
Merge pull request #2417 from dnephin/inlude_git_sha_in_version
...
Add the git sha to version output
2015-11-20 11:39:38 -05:00
Daniel Nephin
331450dace
Merge pull request #2390 from dnephin/fix_extra_warnings_on_masked_volumes
...
Fix extra warnings on masked volumes
2015-11-20 11:37:54 -05:00
Daniel Nephin
91fb6156c6
Merge pull request #2393 from seguins/1814-restart-stopped-containers
...
Fix restart with stopped containers.
2015-11-20 11:35:24 -05:00
Daniel Nephin
1e8f76767f
Fix env_file and environment when used with extends.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-18 16:07:11 -05:00
Daniel Nephin
c78c32c2e8
Fixes #2398 - the build progress stream can contain empty json objects.
...
Previously these empty objects would hit a bug in splitting objects causing it crash.
With this fix the empty objects are returned properly.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-18 16:04:41 -05:00
Daniel Nephin
d4b9845201
Add the git sha to version output
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-18 13:21:14 -05:00
Stéphane Seguin
61f91ebff7
Fix restart with stopped containers.
...
Fixes #1814
Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2015-11-14 12:23:23 +01:00
Daniel Nephin
e1308a8329
Fix extra warnings on masked volumes.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-13 10:49:17 -05:00
Daniel Nephin
6236bb0019
Handle both SIGINT and SIGTERM for docker-compose run.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 17:41:44 -05:00
Daniel Nephin
ea4230e7a2
Handle both SIGINT and SIGTERM for docker-compose up.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 17:41:44 -05:00
Daniel Nephin
9f6a5a964a
Merge pull request #2355 from dnephin/refactor_handle_error
...
Refactor process_error and include a filename as part of the validation error messages
2015-11-12 15:01:32 -05:00
Daniel Nephin
9c305ac10f
Remove name field from the list of ALLOWED_KEYS
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 13:26:13 -05:00
Daniel Nephin
589755d034
Inclide the filename in validation errors.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 12:44:45 -05:00
Daniel Nephin
fa96484d28
Refactor process_errors into smaller functions
...
So that it passed new max-complexity requirement
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 12:44:24 -05:00
Daniel Nephin
f7d8087694
Add ids to config schemas
...
Also enforce a max complexity for functions and add some new tests for config.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-12 12:40:36 -05:00
Joffrey F
0a35fd93cd
Merge pull request #2373 from shin-/2370-env_vars_with_dashes
...
Allow dashes in environment variable names
2015-11-11 13:20:22 -08:00
Joffrey F
513dfda218
Allow dashes in environment variable names
...
See http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html
Environment variable names used by the utilities in the Shell and
Utilities volume of POSIX.1-2008 consist solely of uppercase letters,
digits, and the <underscore> ( '_' ) from the characters defined in
Portable Character Set and do not begin with a digit. Other characters may
be permitted by an implementation; applications shall tolerate the
presence of such names.
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-11 12:45:02 -08:00
Daniel Nephin
a746d673b1
Merge pull request #2350 from dnephin/remove_name_from_schema
...
Remove name field from the config schema
2015-11-11 15:43:03 -05:00
Daniel Nephin
76f3c9c739
Merge pull request #2349 from dnephin/validate_all_files
...
Validate all files before merging them
2015-11-11 15:27:47 -05:00
Joffrey F
c573fcc70a
Reorganize conditional branches to improve readability
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-11 11:21:24 -08:00
Yves Peter
b8b4c84573
Fixes #1490
...
progress_stream would print a lot of new lines on "docker-compose pull" if there's no tty.
Signed-off-by: Yves Peter <ypdraw@gmail.com>
2015-11-11 11:20:59 -08:00
Aanand Prasad
2063b39868
Merge pull request #2336 from dnephin/warn_on_volume_masking
...
Add a warning when the host volume in the compose file is masked by a data volume
2015-11-11 17:21:29 +00:00
Daniel Nephin
1f7faadc77
Remove name from config schema.
...
Refactors config validation of a service to use a ServiceConfig data object.
Instead of passing around a bunch of related scalars, we can use the
ServiceConfig object as a parameter to most of the service validation functions.
This allows for a fix to the config schema, where the name is a field in the
schema, but not actually in the configuration. My passing the name around as
part of the ServiceConfig object, we don't need to add it to the config options.
Fixes #2299
validate_against_service_schema() is moved from a conditional branch in
ServiceExtendsResolver() to happen as one of the last steps after all
configuration is merged. This schema only contains constraints which only need
to be true at the very end of merging.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 11:00:11 -05:00
Daniel Nephin
5e97b806d5
Fix a bug in ExtendsResolver where the service name of the extended service was wrong.
...
This bug can be seen by the change to the test case. When the extended service
uses a different name, the error was reported incorrectly.
By fixing this bug we can simplify self.signature and self.detect_cycles to
always use self.service_name.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 10:58:07 -05:00
Daniel Nephin
a92d86308f
Rename ServiceLoader to ServiceExtendsResolver
...
ServiceLoader has evolved to be not really all that related to "loading" a
service. It's responsibility is more to do with handling the `extends`
field, which is only part of loading. The class and its primary method
(make_service_dict()) were renamed to better reflect their responsibility.
As part of that change process_container_options() was removed from
make_service_dict() and renamed to process_service(). It contains logic for
handling the non-extends options.
This change allows us to remove the hacks from testcase.py and only call
the functions we need to format a service dict correctly for integration tests.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 10:58:07 -05:00
Daniel Nephin
98ad5a05e4
Validate additional files before merging them.
...
Consolidates all the top level config handling into `process_config_file` which
is now used for both files and merge sources.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 10:56:15 -05:00
Aanand Prasad
7466d14826
Merge pull request #2363 from dnephin/pr-2261
...
Rebase of PR 2261
2015-11-11 15:48:28 +00:00
Daniel Nephin
c006c6ea09
Merge pull request #2341 from dnephin/dont_create_default_network_sometimes
...
Only create the default network if at least one service needs it
2015-11-11 10:48:08 -05:00
Kevin Greene
22d90d2180
Added ulimits functionality to docker compose
...
Signed-off-by: Kevin Greene <kevin@spantree.net>
2015-11-10 14:07:04 -05:00
Daniel Nephin
a8ac6e6f93
Add a warning when the host volume config is being ignored.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-10 13:48:53 -05:00
Daniel Nephin
7d6c63d1b7
Merge pull request #2361 from dnephin/pr-2262
...
Rebase of PR 2262
2015-11-10 13:42:08 -05:00
Daniel Nephin
338bbb5063
Re-order flags in bash completion
...
and remove unnecessary variables from build command.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-10 13:11:59 -05:00
Joffrey F
133d213e78
Use exit code 1 when encountering a ReadTimeout
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-10 10:11:20 -08:00
Adrian Budau
c5c36d8b00
Added --force-rm to compose build.
...
It's a flag passed to docker build that removes the intermediate
containers left behind on fail builds.
Signed-off-by: Adrian Budau <budau.adi@gmail.com>
2015-11-10 13:05:04 -05:00
Daniel Nephin
45724fc667
Only create the default network if at least one service needs it.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-10 12:43:55 -05:00
Aanand Prasad
0017f43d7f
Merge pull request #2339 from dnephin/recreate_deps_on_create
...
Recreate dependents when a dependency is created
2015-11-10 17:36:23 +00:00
Daniel Nephin
c8fa0a902a
Merge pull request #2331 from dnephin/flush_log_buffer_when_printing_logs
...
Flush the log stream after writing each line
2015-11-10 12:34:42 -05:00
Aanand Prasad
917b885a44
Merge pull request #2334 from dnephin/dont_set_hostname
...
Don't set the hostname to the service name with networking.
2015-11-10 17:34:02 +00:00
Daniel Nephin
b09cf86dd6
Merge pull request #2326 from dnephin/unicode_decode_error
...
Unicode decode error
2015-11-10 12:29:52 -05:00
Joffrey F
774d852f93
Merge pull request #2335 from dnephin/volumes_refactoring
...
Some small refactoring around volumes
2015-11-09 14:05:52 -08:00
Joffrey F
a1e140f5a3
Update service config_dict computation to include volumes_from mode
...
Ensure config_hash is updated when volumes_from mode is changed, and
service is recreated on next up as a result.
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-09 13:07:26 -08:00
Aanand Prasad
1bfb710326
Fix parallel output
...
We were outputting an extra line, which in *some* cases, on *some*
terminals, was causing the output of parallel actions to get messed up.
In particular, it would happen when the terminal had just been cleared
or hadn't yet filled up with a screen's worth of text.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-11-09 17:24:21 +00:00
Daniel Nephin
7c2a16234f
Recreate dependents when a dependency is created (not just when it's recreated).
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-06 12:29:52 -05:00
Daniel Nephin
ec22d98377
Use VolumeSpec instead of re-parsing the volume string.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 18:11:56 -05:00
Daniel Nephin
0e19c92e82
Make working_dir consistent in the config package.
...
- make it a positional arg, since it's required
- make it the first argument for all functions that require it
- remove an unnecessary one-line function that was only called in one place
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 18:11:56 -05:00
Daniel Nephin
3456002aef
Don't set the hostname to the service name with networking.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 17:50:32 -05:00
Daniel Nephin
d32bb8efee
Fix #1549 - flush after each line of logs.
...
Includes some refactoring of log_printer_test to support checking for flush(), and so that each test calls the unit-under-test directly, instead of through a helper function.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 15:33:42 -05:00
Daniel Nephin
26c7dd3712
Handle non-utf8 unicode without raising an error.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 12:56:36 -05:00
Aanand Prasad
67dc90ec0e
Merge pull request #2314 from dnephin/fix_up_require_build_error
...
Fix `up` "requires build" error
2015-11-05 15:52:56 +00:00
Daniel Nephin
8ff960afd1
Fix service recreate when image changes to build.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 10:27:11 -05:00
Daniel Nephin
6b002fb922
Cherry-pick release notes froim 1.5.0
...
And bump version to 1.6.0dev
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-05 10:25:46 -05:00
Daniel Nephin
3d9e3d0877
Remove service.start_container()
...
It has been an unnecessary wrapper around container.start() for a little while now, so we can call it directly.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-03 10:17:09 -05:00
Daniel Nephin
491d052088
Don't set a default network driver, let the server decide.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-30 11:53:36 -04:00
Daniel Nephin
c439e056a0
Merge pull request #2288 from dnephin/warning_about_vars
...
Add console color to warnings and errors so they are more obvious
2015-10-30 10:58:00 -04:00
Daniel Nephin
04a76dc284
Merge pull request #2287 from shin-/2284-ensure-network-exists-run
...
Ensure network exists when calling run before up
2015-10-30 10:41:55 -04:00
Daniel Nephin
841ed4ed21
Remove the duplicate 'Warning' prefix now that the logger adds the prefix.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-29 14:18:28 -04:00
Daniel Nephin
d836973a04
Use colors when logging warnings or errors, so they are more obvious.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-29 14:06:50 -04:00
Joffrey F
596261e759
Ensure network exists when calling run before up
...
Otherwise the daemon will error out because the network doesn't exist
yet.
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-29 17:56:01 +01:00
Daniel Nephin
eab9d86a3d
Logs are available for all log drivers except for none.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-29 11:28:17 -04:00
Mazz Mosley
5dc14f3925
Handle non-ascii chars in volume directories
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-29 12:05:51 +00:00
Daniel Nephin
b6b9b002e5
Merge pull request #2254 from mnowster/1756-dont-display-output-from-previous-runs
...
1756 dont display output from previous runs
2015-10-27 18:45:47 -04:00
Mazz Mosley
76d52b1c5f
Remove redundant try/except
...
Code cleanup. We no longer need this as the api returns a 304 for any
stopped containers, which doesn't raise an error.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-27 17:12:18 +00:00
Mazz Mosley
30a84f1be6
Move rename functionality into Container
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-27 17:12:18 +00:00
Mazz Mosley
7603ebea9b
Attach to a container's log_stream before they're started
...
So we're not displaying output of all previous logs for a container, we attach,
if possible, to a container before the container is started.
LogPrinter checks if a container has a log_stream already attached and
print from that rather than always attempting to attach one itself.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-27 17:12:18 +00:00
Daniel Nephin
7878d38dee
Fix running one-off containers with --x-networking by disabling linking to self.
...
docker create fails if networking and links are used together.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-27 11:11:15 -04:00
mnowster
5d60fbe31e
Merge pull request #1659 from viranch/hostip-random-port
...
Allow scaling services that have port binding of the form `host_ip::container_port`
2015-10-23 17:11:28 +01:00
Daniel Nephin
ae47435425
Fix unicode in environment variables for python2.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-22 12:12:43 -04:00
Daniel Nephin
0fed5e6864
Use inspect network to query for an existing network.
...
And more tests for get_network()
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-21 13:05:14 -04:00
Daniel Nephin
b500fa2351
Refactor ServiceLoader to be immutable.
...
Mutable objects are harder to debug and harder to reason about. ServiceLoader was almost immutable. There was just a single function which set fields for a second function. Instead of mutating the object, we can pass those values as parameters to the next function.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-21 11:14:35 -04:00
Daniel Nephin
4505632274
Some minor style cleanup
...
- fixed a docstring to make it PEP257 compliant
- wrapped some long lines
- used a more specific error
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-21 11:13:00 -04:00
mnowster
fb69391889
Merge pull request #2233 from dnephin/some_unit_test_cleanup
...
Cleanup some unit tests and whitespace
2015-10-21 10:39:28 +01:00
Daniel Nephin
b1f8ed84a3
Cleanup some unit tests and whitespace.
...
Remove some unnecessary newlines.
Remove a unittest that was attempting to test behaviour that was removed a while ago, so isn't testing anything.
Updated some unit tests to use mocks instead of a custom fake.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-20 14:23:56 -04:00
Daniel Nephin
5523c3d745
Minor refactor to use guard and replace instead of split+join
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-20 12:09:01 -04:00
Daniel Nephin
3f0e083585
Force windows drives to be lowercase.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-20 11:39:06 -04:00
mnowster
5ed9f9bdf7
Merge pull request #2206 from dnephin/fix_extends_from_second_file
...
extends must be copied from override file
2015-10-20 10:22:58 +01:00
Daniel Nephin
3725c3ab7e
Merge pull request #2225 from mnowster/2221-blank-env-vars
...
2221 allow empty environment keys
2015-10-19 14:06:31 -04:00
Daniel Nephin
938d49cbdc
Fixes #2205 - extends must be copied from override file.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-19 13:41:58 -04:00
Daniel Nephin
937e087c6c
Fixes #2203 - properly validate files when multiple files are used.
...
Remove the single-use decorators so the functionality can be used directly as a function.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-19 12:39:45 -04:00
Mazz Mosley
08add665e9
Environment keys can contain empty values
...
Environment keys that contain no value, get populated with values taken
from the environment not from the build phase but from running the command `up`.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-19 16:32:12 +01:00
Mazz Mosley
ff83c459d0
Improve error message for type constraints
...
It was missing a space between the different types, when there
were 3 possible type values.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-19 14:36:56 +01:00
Viranch Mehta
258c8bc54d
Fix specifies_host_port() to handle port binding with host IP but no host port
...
Signed-off-by: Viranch Mehta <viranch.mehta@gmail.com>
2015-10-18 00:40:51 +05:30
Daniel Nephin
26dc0b785b
Give the user a better error message (without a stack trace) when there is a yaml error.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-16 15:05:06 -04:00
Cameron Eagans
53fc6d06f6
docker-compose pull SERVICE should not pull SERVICE's dependencies
...
Signed-off-by: Cameron Eagans <me@cweagans.net>
2015-10-15 17:33:32 -06:00
Daniel Nephin
0409b287ad
Merge pull request #2191 from dnephin/networking
...
Networking
2015-10-14 12:31:26 -04:00
mnowster
6b68a84b9b
Merge pull request #2019 from mrfuxi/less-verbose-extends
...
Allow to extend service using shorthand notation. Closes #1989
2015-10-14 17:13:09 +01:00
Daniel Nephin
e2f792c4f4
If -x-networking is used, set the correct API version.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-14 12:09:50 -04:00
Aanand Prasad
d5f5eb1924
Enable use of Docker networking with the --x-networking flag
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-10-14 11:19:43 -04:00
Daniel Nephin
b9c76dfabd
Merge pull request #2181 from mnowster/2128-split-drive-not-handling-relative-paths
...
2128 split drive not handling relative paths
2015-10-14 11:04:42 -04:00
Mohit Soni
f4efa29377
Added support for cgroup_parent
...
This change adds cgroup-parent support to compose project. It allows
each service to specify a 'cgroup_parent' option.
Signed-off-by: Mohit Soni <mosoni@paypal.com>
2015-10-14 15:02:42 +01:00
Karol Duleba
c7ffbf97c8
Extend oneOf error handling. Issue #1989
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-10-14 14:31:35 +01:00
Mazz Mosley
c1d5ecaafe
Workaround splitdrive limitations
...
splitdrive doesn't handle relative paths, so if volume_path contains
a relative path, we handle that differently and manually set drive to ''.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-13 17:27:25 +01:00
Mazz Mosley
bc6b3f970b
container paths don't need to be expanded
...
They should not ever be relative.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-13 17:03:09 +01:00
Mazz Mosley
8efc39e616
Improve boolean warning message.
...
Including examples of more boolean types, eg yes/N as it's not
always immediately clear that they are treated as booleans.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-07 14:59:08 +01:00
Aanand Prasad
627f1acdc4
Merge pull request #2126 from mnowster/1188-support-ro-options-in-volumes-from
...
1188 support ro options in volumes from
2015-10-07 11:57:14 +01:00
Mazz Mosley
f9028703f4
Pick the first container
...
Rather than inefficiently looping through all the containers that a
service has and overriding each volumes_from value, pick the first
one and return that.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-07 11:27:13 +01:00
Mazz Mosley
0ff84a78c6
Use multiple returns rather than overriding.
...
Also added a doc string for clarity.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-07 11:27:13 +01:00
Mazz Mosley
467c731869
address PR feedback
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-07 11:27:13 +01:00
Aanand Prasad
fda615008c
Merge pull request #2142 from dnephin/fix_error_cant_connect
...
Fix error when compose can't connect to docker
2015-10-07 11:22:32 +01:00
Daniel Nephin
15d0c60a73
Fix split buffer with inconsistently delimited json objects.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-06 10:43:07 -04:00
Daniel Nephin
3661e8bc74
Fix build against the swarm cluster by joining buffered output before parsing json.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-06 10:37:05 -04:00
Daniel Nephin
fe65c0258d
Remove unused attach_socket function from Container.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-06 10:37:05 -04:00
Vincent Demeester
5b55a08846
Add support for ro option in volumes_from
...
Fixes #1188
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-06 13:12:55 +01:00
Daniel Nephin
fbaea58fc1
Fix #2133 - fix call to get_client()
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-05 15:57:49 -04:00
Daniel Nephin
aefb7a44b2
Refactor command class hierarchy to remove an unnecessary intermediate base class Command.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-05 15:49:35 -04:00
Mazz Mosley
2276326d7e
volume path compatibility with engine
...
An expanded windows path of c:\shiny\thing:\shiny:rw
needs to be changed to be linux style path, including the drive,
like /c/shiny/thing /shiny
to be mounted successfully by the engine.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-02 12:01:56 +01:00
Mazz Mosley
58270d8859
Remove duplicate and re-order alphabetically
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-01 16:06:57 +01:00
Mazz Mosley
f4cd5b1d45
Handle windows volume paths
...
When a relative path is expanded and we're on a windows platform,
it expands to include the drive, eg C:\ , which was causing a ConfigError
as we split on ":" in parse_volume_spec and that was giving too many parts.
Use os.path.splitdrive instead of manually calculating the drive.
This should help us deal with windows drives as part of the volume
path better than us doing it manually.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-10-01 16:06:57 +01:00
Aanand Prasad
e38334efbd
Don't expand volume names
...
Only expand volume host paths if they begin with a dot.
This is a breaking change. The deprecation warning preparing users for
this change has been removed.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-10-01 14:48:38 +01:00
Karol Duleba
91b227d133
Allow to extend service using shorthand notation. Closes #1989
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-09-24 18:01:47 +01:00
Daniel Nephin
78c0734cbd
Disable some tests in windows for now.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-23 10:42:57 -04:00
mnowster
6f12224ec9
Merge pull request #2005 from lnmunhoz/master
...
Fix error message and class name from Boot2Docker to DockerMachine
2015-09-21 17:05:03 +01:00
mnowster
aa70209ade
Merge pull request #1957 from aanand/stub-run-on-windows
...
WIP: Build Windows binary
2015-09-21 16:21:12 +01:00
Aanand Prasad
e5eaf68490
Remove custom docker client initialization logic
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-21 15:27:42 +01:00
mnowster
b9252aa48e
Merge pull request #2032 from villlem/master
...
Flag to skip all pull errors when pulling images
2015-09-21 13:41:08 +01:00
Aanand Prasad
18dbe1b1c0
Merge pull request #2051 from dnephin/extend_compose_files
...
Extend compose files by allowing multiple files
2015-09-21 12:34:22 +02:00
Vojta Orgon
c9083e21c8
Flag to skip all pull errors when pulling images.
...
Signed-off-by: Vojta Orgon <villlem@gmail.com>
2015-09-21 11:59:23 +02:00
Daniel Nephin
22bc174650
Refactor config.load() to remove reduce() and document some types.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-18 17:11:16 -04:00
Aanand Prasad
fb30498153
Catch WindowsError in call_silently
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-18 18:10:29 +01:00
Aanand Prasad
3e4182a480
Stub 'run' on Windows
...
Adapted from @dopry's work in https://github.com/docker/compose/pull/1900
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-18 18:10:17 +01:00
Aanand Prasad
bbc8b74c17
Merge pull request #2068 from mnowster/2037-jsonschema-resolver-windows-path-fix
...
Ensure RefResolver works across operating systems
2015-09-18 18:09:58 +01:00
Mazz Mosley
5509990a71
Ensure RefResolver works across operating systems
...
Slashes, paths and a tale of woe. Validation now works on windows \o/
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-18 17:51:26 +01:00
Aanand Prasad
3e58003bd3
Merge pull request #2041 from ggtools/master
...
Add new --pull option in build.
2015-09-18 16:49:05 +01:00
Daniel Nephin
577439ea7f
Add a debug log message for config filenames.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:28:16 -04:00
Daniel Nephin
39ae85db8a
Support a default docker-compose.override.yml for overrides
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
fe5daf860d
Move find_candidates_in_parent_dirs() into a config module so that config doesn't import from cli.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
89be7f1fa7
Unit tests for multiple files
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
c0c9a7c1e4
Update integration tests for multiple file support
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
10b3188214
Support multiple config files
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
258d0fa0c6
Remove some functions from Command class
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
2121f5117e
Add docopt support for multiple files
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-17 14:13:50 -04:00
Daniel Nephin
aab688d27e
Merge pull request #1886 from mnowster/create-host-config-needs-version
...
Stop using deprecated `create_host_config` from utils
2015-09-17 12:37:22 -04:00
mnowster
1c823597bb
Merge pull request #1995 from predakanga/master
...
Added support for IPC namespaces, fixes GH-1689
2015-09-17 17:14:44 +01:00
Mazz Mosley
42c890796b
Use docker.client.create_host_config
...
create_host_config from docker.utils will be deprecated so that
the new create_host_config has access to the _version so
we can ensure that network_mode only gets set to 'default' by
default if the version is high enough and won't explode.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-17 17:11:00 +01:00
Daniel Nephin
bdfb21f017
Fixes #189 - stacktrace when ctrl-c stops logs
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-15 20:46:22 -04:00
Christophe Labouisse
39786d4da7
Add new --pull option in build.
...
Signed-off-by: Christophe Labouisse <christophe@labouisse.org>
2015-09-15 20:19:17 +02:00
Aanand Prasad
1dabf1c366
Merge pull request #1878 from mnowster/change-default-log-driver-value
...
Change default `log_driver` value
2015-09-15 17:23:00 +01:00
Mazz Mosley
fb96ed113a
Stop sending json-file by default
...
By doing this we were over-riding any of the daemon's defaults.
Instead we can send an empty string which docker-py sends on
and the daemon interprets as, 'json-file' as a default if it
hasn't got any other daemon level config options.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 15:47:39 +01:00
Mazz Mosley
4b2fd7699b
Relax constraints on key naming for environment
...
One of the use cases is swarm requires at least : character, so going
from conservative to relaxed.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 15:33:30 +01:00
Mazz Mosley
8caeffe27e
Log a warning when boolean is found in `environment`
...
We're going to warn people that allowing a boolean in the environment is
being deprecated, so in a future release we can disallow it. This is to
ensure boolean variables are quoted in strings to ensure they don't get
mis-parsed by YML.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 15:33:30 +01:00
Mazz Mosley
a594a2ccc2
Disallow booleans in environment
...
When users were putting true/false/yes/no in the environment key,
the YML parser was converting them into True/False, rather than leaving
them as a string.
This change will force people to put them in quotes, thus ensuring
that the value gets passed through as intended.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 15:33:30 +01:00
Mazz Mosley
1007ad0f86
Refactor to simplify _parse_valid_types
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 14:29:00 +01:00
Mazz Mosley
cf7b595385
Improve error messages from oneOf schema errors
...
oneOf schema ValidationError takes a little more work to parse and
pull out more detail so we can give a better error message back to
the user.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-15 14:29:00 +01:00
Mazz Mosley
418ec5336b
Improved messaging for simple type validator
...
English language is a tricky old thing and I've pulled out the validator type
parsing so that we can prefix our validator types with the correct article,
'an' or 'a'.
Doing a bit of extra hard work to ensure the error message is clear and
well constructed english.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-14 17:23:58 +01:00
Mazz Mosley
32cd404c8c
Remove redundant oneOf definitions
...
For simple definitions where a field can be multiple types, we can
specify the allowed types in an array. It's simpler and clearer.
This is only applicable to *simple* definitions, like number, string, list,
object without any other constraints.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-14 17:23:58 +01:00
Aanand Prasad
dbc68ca747
Merge pull request #2018 from dnephin/fix_scale_test
...
Handle unexpected errors, but don't ignore background threads
2015-09-11 15:42:01 -07:00
Daniel Nephin
61415cd8bc
Fixes #1955 - Handle unexpected errors, but don't ignore background threads.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-11 17:41:10 -04:00
Aanand Prasad
e9871b084e
Merge pull request #2020 from dnephin/fix_compose_with_logs_none
...
Fix compose up with other log drivers
2015-09-11 11:22:12 -07:00
Aanand Prasad
60701a71dc
Merge pull request #2026 from ggtools/validation
...
Fix type for `tty` & `stdin_open`
2015-09-11 11:14:47 -07:00
Daniel Nephin
7d8ae9aa6d
Refactor LogPrinter to make it immutable and remove logic from the constructor.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-11 12:56:56 -04:00
Daniel Nephin
413b76e228
Fix warning message when a container uses a non-json log driver
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-11 12:54:27 -04:00
Aanand Prasad
87a50317ad
Merge pull request #1954 from nhumrich/master
...
Allow for user relative paths on EXTEND
2015-09-10 16:35:40 -07:00
Christophe Labouisse
e80f0bdf86
Fix type for `tty` & `stdin_open`
...
Signed-off-by: Christophe Labouisse <christophe@labouisse.org>
2015-09-10 23:49:07 +02:00
Nick H
a372275c6e
Allow for user relative paths
...
'~/' in a path currently doesnt work, you get the following error:
[Errno 2] No such file or directory: u'/home/USER/folder/~/some/path/.yml'
Signed-off-by: Nick H <nick.humrich@gmail.com>
2015-09-09 14:54:08 -06:00
Aanand Prasad
9ce30e75df
Merge pull request #2016 from mnowster/remove-unique-constraint-for-command
...
Remove uniqueness constraint for command
2015-09-09 10:05:41 -07:00
Mazz Mosley
4bed5de291
Remove item unique constraint for command
...
The command value can be a list, which would be a Unix command-line
invocation broken up into individual values, thus needing the ability to
have non unique values.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-09 16:39:06 +01:00
Mazz Mosley
7223d5cee0
Remove mistaken field
...
detach is a run param, not a config param. Oops, sorry!
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-09 16:23:54 +01:00
Aanand Prasad
85709d85d2
Merge pull request #1862 from mrfuxi/costom-container-name-in-logs
...
Use custom container name in logs
2015-09-08 14:36:28 -07:00
Aanand Prasad
f7d86d3194
Merge pull request #1944 from funkyfuture/issue-1921
...
Adds pause- and unpause-command to docopt's TLC
2015-09-08 14:05:27 -07:00
Aanand Prasad
1c73ff33fe
Merge pull request #1990 from shin-/1975-fix
...
Remove or space out suspension dots after service name
2015-09-08 12:27:39 -07:00
Lucas N. Munhoz
b33dd3bc01
Fix error message and class name from Boot2Docker to DockerMachine
...
Signed-off-by: Lucas N. Munhoz <ln.munhoz@gmail.com>
2015-09-08 10:08:38 -03:00
Mazz Mosley
866979c57b
Allow entrypoint to be a list or string
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-07 17:26:38 +01:00
Karol Duleba
d83d6306c9
Use custom container name in logs. Fixes #1851
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-09-07 14:03:00 +01:00
Lachlan Pease
67957318ed
Added IPC spec to fields_schema.json
...
Signed-off-by: Lachlan Pease <predatory.kangaroo@gmail.com>
2015-09-06 12:16:12 +10:00
Lachlan Pease
2468235472
Added support for IPC namespaces, fixes GH-1689
...
Signed-off-by: Lachlan Pease <predatory.kangaroo@gmail.com>
2015-09-06 12:09:24 +10:00
Joffrey F
6da7a9194c
Remove or space out suspension dots after service name for easier copy-pasting
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-04 17:43:12 -07:00
Aanand Prasad
10cb0c921a
Merge pull request #1963 from shin-/1923-catch-timeout
...
Exit gracefully when requests encounter a ReadTimeout exception.
2015-09-04 16:14:32 -07:00
Daniel Nephin
0484e22a84
Add enum34 and use it to create a ConvergenceStrategy enum.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-04 10:45:53 -04:00
Aanand Prasad
6a47fa066e
Merge pull request #1960 from dnephin/fix_smart_recreate_when_service_is_removed
...
Fix config_hash context to properly represent the service
2015-09-03 11:41:30 -07:00
Daniel Nephin
db9f577ad6
Extract link names into a function.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-03 14:08:44 -04:00
Daniel Nephin
187ad4ce26
Refactor network_mode logic out of Service.
...
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-03 13:02:46 -04:00
Daniel Nephin
c183e52502
Fixes #1757 - include all service properties in the config_dict()
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-03 12:04:38 -04:00
Daniel Nephin
08ba857807
Cleanup some project logic.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-03 12:04:38 -04:00
Daniel Nephin
e801981fed
Sort config keys
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-03 12:04:38 -04:00
Daniel Nephin
ef56523883
Make external_links a regular service.option so that it's part of the config hash
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-03 12:04:38 -04:00
Mazz Mosley
7326608369
expose array can contain either strings or numbers
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-03 16:44:01 +01:00
Aanand Prasad
6baed6c354
Merge pull request #1965 from dnephin/fix_compose_up_attach
...
Attach to all containers when no service names are specified
2015-09-02 17:37:43 -07:00
Joffrey F
f9c7346380
HTTP_TIMEOUT as importable constant for consistency
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-02 16:29:19 -07:00
Joffrey F
b110bbe9e3
Refined error message when timeout is encountered.
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-02 14:31:30 -07:00
Joffrey F
e634fe3fd6
Deprecation warning when DOCKER_CLIENT_TIMEOUT is used
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-02 14:28:57 -07:00
Daniel Nephin
48466d7d82
Fix #1961 - docker-compose up should attach to all containers with no service names are specified, and add tests.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-09-02 16:08:18 -04:00
Joffrey F
b54b932b54
Exit gracefully when requests encounter a ReadTimeout exception.
...
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-02 11:54:20 -07:00
Mazz Mosley
9b8e404d13
Pass service_name to process_errors
...
Previously on Buffy... The process_errors was parsing a load of
ValidationErrors that we get back from jsonschema which included
assumptions about the state of the instance we're validating.
Now it's split in two and we're doing field separate to service,
those assumptions don't hold and we can't logically retrieve the
service_name from the error parsing when we're doing service schema
validation, have to explicitly pass this in.
process_errors is high on my list for some future re-factoring to help
make it a bit clearer, smaller state of doing things.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
f51a5431ec
Correct some schema field definitions
...
Now validation is split in two, the integration tests helped
highlight some places where the schema definition was incorrect.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
9979880c9f
Add in volume_driver
...
I'd missed out this field by accident previously.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
4b487e3957
Refactor extends back out of __init__
...
If make_service_dict is our factory function then we'll give it the
responsibility of validation/construction and resolving.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
9fa6e42f55
process_errors handle both schemas
...
Now the schema has been split into two, we need to modify the
process_errors function to accomodate.
Previously if an error.path was empty then it meant they were root
errors. Now that service_schema checks after the service has been
resolved, our service name is a key within the dictionary and
so our root error logic check is no longer true.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
950577d60f
Split validation into fields and service
...
We want to give feedback to the user as soon as possible about the
validity of the config supplied for the services.
When extending a service, we can validate that the fields are
correct against our schema but we must wait until the *end* of
the extends cycle once all of the extended dicts have been merged
into the service dict, to perform the final validation check on the
config to ensure it is a complete valid service.
Doing this before that had happened resulted in false reports of
invalid config, as common config when split out, by itself, is not
a valid service but *is* valid config to be included.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
4a8b2947ca
Interpolate extended config
...
This refactoring is now really coming together. Construction is
happening in the __init__, which is a constructor and helps
clean up the design and clarity of intent of the code. We can now
see (nearly) everything that is being constructed when a ServiceLoader
is created. It needs all of these data constructs to perform the
domain logic and actions. Which are now clearer to see and moving
more towards the principle of functions doing (mostly)one thing and
function names being more descriptive.
resolve_extends is now concerned with the resolving of extends, rather
than the construction, validation, pre processing and *then* resolving
of extends.
Happy days :)
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
36757cde1c
Validate extended service against our schema
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
37bf8235b7
Get extended config path
...
Refactored out into it's own function.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
538a501eec
Refactor validating extends file path
...
Separating out the steps we need to resolve extends, so that it
will be clear to insert pre-processing of interpolation and
validation.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
02c52ae673
Move resolve_environment within __init__
...
resolve_environment is specific to ServiceLoader, the function
does not need to be on the global scope, it is a part of the
ServiceLoader object. The environment needs to be resolved
before we can make any service dicts, it belongs in the
constructor.
This is cleaning up the design a little and being clearer
about intent and scope of functions.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
8a6061bfb9
__init__ takes service name and dict
...
Moving service name and dict out of the function make_service_dict
and into __init__. We always call make_service_dict with those so
let's put them in the initialiser. Slightly cleaner design intent.
The whole purpose of the ServiceLoader is to take a
service name&service dictionary then validate, process and return
service dictionaries ready to be created.
This is also another step towards cleaning the code up so we can
interpolate and validate an extended dictionary.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
1344533b24
filename is not optional
...
While it can be set to ultimately a value of None, when a
config file is read in from stdin, it is not optional.
We kinda make use of it's ability to be set to None in our
tests but functionally and design wise, it is required.
If filename is not set, extends does not work.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Mazz Mosley
c907f35e74
Raise if working_dir is None
...
Check for this in the init so we can remove the duplication of
raising in further functions.
A ServiceLoader isn't valid without one.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-09-02 15:42:38 +01:00
Aanand Prasad
83c514f838
Merge pull request #1933 from dnephin/fix_scale_test_flakes
...
Fix flaky test
2015-08-31 13:52:33 -07:00
Frank Sachsenheim
a4bab13aee
Adds pause- and unpause-command to docopt's TLC
...
solves # 1921
Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-08-28 19:05:19 +02:00
mnowster
f5d73fee57
Merge pull request #1932 from mrfuxi/image-dockerfile-validation
...
Do not allow to specify both image and dockerfile in configuration.
2015-08-28 10:12:54 +01:00
Daniel Nephin
d264c2e33a
Resolves #1804
...
Fix mutation of service.options when a label or environment variable is specified in the config.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-27 18:05:21 -04:00
Karol Duleba
477d4f491d
Do not allow to specify both image and dockerfile in configuration. Closes #1908
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-08-27 19:36:39 +01:00
Aanand Prasad
e777d08854
Merge pull request #1924 from dnephin/python3_fix_for_logs
...
Fix `docker-compose logs` on python3
2015-08-27 14:19:42 +01:00
Daniel Nephin
3a0153859a
Resolves #1856 , fix regression in #1645 . Includes some refactoring to make testing easier.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-26 16:21:31 -04:00
Aanand Prasad
ecd1cc31dc
Merge pull request #1930 from dnephin/name_one_off_containers
...
Allow setting a one-off container name
2015-08-26 19:03:00 +01:00
Daniel Nephin
d2718bed99
Allow setting a one-off container name
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-26 13:33:03 -04:00
Daniel Nephin
54973e8200
Remove flake8 ignores and wrap the longest lines to 140 char.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-26 12:53:11 -04:00
Daniel Nephin
9d9550c5b6
Fix log printing for python3 by converting everything to unicode.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-26 11:24:48 -04:00
Daniel Nephin
a348993d2c
Remove two unused functions from cli/utils.py
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 16:55:29 -04:00
Daniel Nephin
bd7c032a00
Fix service integration tests.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:48:48 -04:00
Daniel Nephin
71ff872e8e
Update unit tests for stream_output to match the behaviour of a docker-py response.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:48:48 -04:00
Daniel Nephin
7e4c3142d7
Have log_printer use utf8 stream.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:47:06 -04:00
Daniel Nephin
feaa4a5f1a
Unit tests passing again.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:47:06 -04:00
Daniel Nephin
2943ac6812
Cleanup requirements.txt so we don't have to maintain separate copies for py2 and py3.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:46:08 -04:00
funkyfuture
9aa61e596e
Run tests against Python 2.6, 2.7, 3.3, 3.4 and PyPy2
...
In particular it includes:
- some extension of CONTRIBUTING.md
- one fix for Python 2.6 in tests/integration/cli_test.py
- one fix for Python 3.3 in tests/integration/service_test.py
- removal of unused imports
Make stream_output Python 3-compatible
Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-08-25 10:41:09 -04:00
Daniel Nephin
809443d6d0
Support python 3
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-25 10:37:29 -04:00
Daniel Nephin
59d4f304ee
Run pre-commit on all files
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-08-24 17:04:50 -04:00
Aanand Prasad
60ff4549c9
Merge pull request #1766 from funkyfuture/pause_unpause
...
Adds pause and unpause-commands
2015-08-24 16:10:22 +01:00
Daniel Nephin
1212193c02
Merge pull request #1898 from aanand/verbose-debug
...
Set log level to DEBUG when `--verbose` is passed
2015-08-24 07:55:10 -07:00
Frank Sachsenheim
dd738b380b
Makes Service.config_hash a property
...
Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-08-21 12:43:13 +02:00
Frank Sachsenheim
227584b864
Adds pause and unpause-commands
...
Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-08-21 12:43:13 +02:00
Joel Hansson
8caaee9eac
schema.json: remove specific log_opt properties
...
Signed-off-by: Joel Hansson <joel.hansson@ecraft.com>
2015-08-21 08:41:45 +02:00
Aanand Prasad
c699876617
Set log level to DEBUG when `--verbose` is passed
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-20 16:09:28 +01:00
Joel Hansson
61936f6b88
log_opt: change address to syslog-address
...
Signed-off-by: Joel Hansson <joel.hansson@ecraft.com>
2015-08-20 16:46:06 +02:00
Aanand Prasad
a806d9e77b
Merge pull request #1855 from mnowster/number-is-a-valid-service-name
...
A number is a valid service name
2015-08-20 12:02:58 +01:00
mnowster
340eaf44fa
Merge pull request #1889 from mrfuxi/1670-images-digest
...
Allow to specify image by digest. Fixes #1670
2015-08-20 10:55:00 +01:00
Karol Duleba
56f03bc20a
Allow to specify image by digest. Fixes #1670
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-08-19 21:13:34 +01:00
mnowster
30b64e65cd
Merge pull request #1859 from mrfuxi/extend-unexisting-service
...
Raise configuration error when trying to extend service that does not exist
2015-08-19 14:23:28 +01:00
mnowster
71ffa89890
Merge pull request #1870 from aanand/fix-volume-path-warning
...
Fix volume path warning
2015-08-19 14:21:19 +01:00
Mazz Mosley
f4a8fda283
Handle all exceptions
...
If we get back an error that wasn't an APIError, it was causing the
thread to hang. This catch all, while I appreciate feels risky to
have a catch all, is better than not catching and silently failing,
with a never ending thread.
If something worse than an APIError has gone wrong, we want to stop
the incredible journey of what we're doing.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-17 16:31:57 +01:00
Aanand Prasad
530d20db6d
Fix volume path warning
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-14 11:15:22 +01:00
Mazz Mosley
67995ab9e3
Pre-process validation steps
...
In order to validate a service name that has been specified as an
integer we need to run that as a pre-process validation step
*before* we pass the config to be validated against the schema.
It is not possible to validate it *in* the schema, it causes a
type error. Even though a number is a valid service name, it
must be a cast as a string within the yaml to avoid type error.
Taken this opportunity to move the code design in a direction
towards:
1. pre-process
2. validate
3. construct
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-13 16:32:20 +01:00
Daniel Nephin
b87c09b9fc
Merge pull request #1824 from mrfuxi/run-with-ports
...
Allow manual port mapping when using "run" command
2015-08-13 08:29:25 -07:00
Karol Duleba
2e7f08c2ef
Raise configuration error when trying to extend service that does not exist. Fixes #1826
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-08-12 22:34:25 +01:00
Karol Duleba
ff87ceabbd
Allow manual port mapping when using "run" command. Fixes #1709
...
Signed-off-by: Karol Duleba <mr.fuxi@gmail.com>
2015-08-12 18:54:42 +01:00
Mazz Mosley
440099754d
memory values can be strings or numbers
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-12 17:29:33 +01:00
mnowster
c443e95f07
Merge pull request #1825 from aanand/dedupe-unset-env-warnings
...
Avoid duplicate warnings if an unset env variable is used multiple times
2015-08-12 15:57:04 +01:00
Aanand Prasad
4c65891db1
Avoid duplicate warnings if an unset env variable is used multiple times
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-12 15:39:33 +01:00
Mazz Mosley
5e2ecff8a1
Fix ports validation
...
I had misunderstood the valid formats allowed for ports. They must
always be in a list.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-12 15:19:28 +01:00
Aanand Prasad
eea3b1cd6f
Merge pull request #1850 from aanand/bump-1.5.0dev
...
Bump 1.5.0dev
2015-08-12 11:18:37 +01:00
Aanand Prasad
ed31673069
Merge pull request #1827 from mnowster/port-ranges
...
Port ranges
2015-08-12 11:17:22 +01:00
Aanand Prasad
fb4c9fbb8b
Merge pull request #1808 from mnowster/129-validate-compose-yml
...
129 validate compose yml
2015-08-12 11:15:47 +01:00
Aanand Prasad
192dda4140
Bump 1.5.0dev
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-11 18:41:21 +01:00
Aanand Prasad
982a845635
Fix mem_limit and memswap_limit regression
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-11 14:17:30 +01:00
Mazz Mosley
f8efb54c80
Handle $ref defined types errors
...
We use $ref in the schema to allow us to specify multiple type, eg
command, it can be a string or a list of strings.
It required some extra parsing to retrieve a helpful type to display
in our error message rather than 'string or string'. Which while
correct, is not helpful. We value helpful.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 13:08:12 +01:00
Mazz Mosley
68de84a0bf
Clean up error.path handling
...
Tiny bit of refactoring to make it clearer and only pop service_name
once.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 12:01:27 +01:00
Mazz Mosley
df14a4384d
Catch non-unique errors
...
When a schema type is set as unique, we should display the validation
error to indicate that non-unique values have been provided for a key.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 12:01:27 +01:00
Mazz Mosley
e0675b50c0
Retrieve sub property keys
...
The validation message was confusing by displaying only 1 level of
property of the service, even if the error was another level down.
Eg. if the 'files' property of 'extends' was the incorrect format,
it was displaying 'an invalid value for 'extends'', rather than
correctly retrieving 'files'.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 12:01:27 +01:00
Mazz Mosley
ece6a72712
Clean error.message
...
Unfortunately the way that jsonschema is calling %r on its property
and then encoding the complete message means I've had to do this
manual way of removing the literal string prefix, u'.
eg:
key = 'extends'
message = "Invalid value for %r" % key
error.message = message.encode("utf-8")"
results in:
"Invalid value for u'extends'"
Performing a replace to strip out the extra "u'", does not change the
encoding of the string, it is at this point the character u followed
by a '.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 12:01:27 +01:00
Mazz Mosley
b4872de213
Allow integer value for ports
...
While it was intended as a positive to be stricter in validation
it would in fact break backwards compatibility, which we do not
want to be doing.
Consider re-visiting this later and include a deprecation warning if
we want to be stricter.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-11 12:01:27 +01:00
Mazz Mosley
52733f6996
Merge pull request #1833 from aanand/deprecate-relative-volumes-without-dot
...
Show a warning when a relative path is specified without "./"
2015-08-11 11:21:17 +01:00
Aanand Prasad
46e8e4322a
Show a warning when a relative path is specified without "./"
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-10 19:56:36 +01:00
Aanand Prasad
dfa4bf4452
Ignore containers that don't have a name
...
If a container is in the process of being removed, or removal has
failed, it can sometimes appear in the output of GET /containers/json
but not have a 'Name' key. In that case, rather than crashing, we can
ignore it.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-10 16:29:12 +01:00
Yuval Kohavi
297941e460
rebasing port range changes
...
Signed-off-by: Yuval Kohavi <yuval.kohavi@gmail.com>
2015-08-07 16:22:39 +01:00
Mazz Mosley
df74b131ff
Use split_port for ports format check
...
Rather than implement the logic a second time, use docker-py
split_port function to test if the ports is valid.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 15:27:30 +01:00
Mazz Mosley
2e428f94ca
Refactor validation out
...
Move validation out into its own file without causing circular
import errors.
Fix some of the tests to import from the right place.
Also fix tests that were not using valid test data, as the validation
schema is now firing telling you that you couldn't "just" have this
dict without a build/image config key.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
0557b5dce6
Remove dead code
...
These functions weren't being called by anything.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
d8aee782c8
Error handling
...
jsonschema provides a rich error tree of info, by parsing each error
we can pull out relevant info and re-write the error messages.
This covers current error handling behaviour.
This includes new error handling behaviour for types and formatting of
the ports field.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
8d6694085d
Include remaining valid config properties
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
98c7a7da61
Order properties alphabetically
...
Improves readability.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
6c7c598546
Format validation of ports
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Mazz Mosley
da36ee7cbc
Perform schema validation
...
Define a schema that we can pass to jsonschema to validate against the
config a user has supplied. This will help catch a wide variety of common
errors that occur.
If the config does not pass schema validation then it raises an exception
and prints out human readable reasons.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-07 12:06:34 +01:00
Aanand Prasad
ee6ff294a2
Show a warning when a variable is unset
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-06 14:24:11 +01:00
Aanand Prasad
8b5bd945d0
Interpolate environment variables
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-06 11:18:57 +01:00
Aanand Prasad
31ac3ce22a
Split out compose.config.errors
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-05 15:50:22 +01:00
Aanand Prasad
92ef1f5702
Make compose.config a proper module
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-05 15:50:22 +01:00
Luke Marsden
a68ee0d9c2
Support volume_driver in compose
...
* Add support for volume_driver parameter in compose yml
* Don't expand volume host paths if a volume_driver is specified
(i.e., disable compose feature "relative to absolute path
transformation" when volume drivers are in use, since volume drivers
can use name where host path is normally specified; this is a
heuristic)
Signed-off-by: Luke Marsden <luke@clusterhq.com>
2015-07-31 15:23:15 +01:00
Aanand Prasad
dc7bdd10d4
Merge pull request #1787 from aanand/fix-duplicate-volume-bind
...
Fix "Duplicate volume mount" error when config has trailing slashes
2015-07-30 09:59:08 +01:00
Aanand Prasad
80d90a745a
Make sure an exception in any iterator gets raised in the main thread
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
Conflicts:
compose/cli/multiplexer.py
2015-07-29 19:42:33 +01:00
Aanand Prasad
a9942b512a
Wait for all containers to exit when running 'up' interactively
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-29 19:42:33 +01:00
Aanand Prasad
27378704df
Isolate STOP logic in multiplexer module
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-29 19:42:33 +01:00
Aanand Prasad
03c3d4c768
generator -> iterator
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-29 19:42:33 +01:00
Aanand Prasad
9768872507
Fix "Duplicate volume mount" error when config has trailing slashes
...
When an image declares a volume such as `/var/lib/mysql`, and a Compose
file has a line like `./data:/var/lib/mysql/` (note the trailing slash),
Compose creates duplicate volume binds when *recreating* the container.
(The first container is created without a hitch, but contains multiple
entries in its "Volumes" config.)
Fixed by normalizing all paths in volumes config.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-29 18:42:08 +01:00
Aanand Prasad
118a389646
Update API version to 1.19
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-29 15:44:21 +01:00
Reilly Herrewig-Pope
fc203d643a
Allow API version specification via env var
...
Hard-coding the API version to '1.18' with the docker-py constructor will
cause the docker-py logic at
https://github.com/docker/docker-py/blob/master/docker/client.py#L143-L146
to always fail, which will cause authentication issues if you're using a
remote daemon using API version 1.19 - regardless of the API version of
the registry.
Allow the user to set the API version via an environment variable. If
the variable is not present, it will still default to '1.18' like it
does today.
Signed-off-by: Reilly Herrewig-Pope <reilly.herrewigpope@mandiant.com>
2015-07-29 08:44:47 -04:00
Mazz Mosley
65cc84140a
Merge pull request #1736 from aanand/deprecate-allow-insecure-ssl
...
Deprecate --allow-insecure-ssl
2015-07-23 14:09:17 +01:00
Aanand Prasad
70c7d27c4e
Merge pull request #1758 from mnowster/improve-scale-test-coverage
...
Improve scale test coverage
2015-07-23 11:07:48 +01:00
Aanand Prasad
04a773f1c8
Deprecate --allow-insecure-ssl
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-23 10:56:21 +01:00
Mazz Mosley
2c8aade13e
Space for errors
...
It was harder to see when there are errors if they came straight after
the other output. Putting a newline in there gives it a bit of visual
room.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-23 10:55:57 +01:00
Aanand Prasad
1739448402
Don't use custom name for one-off containers
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-22 15:39:56 +01:00
Aanand Prasad
dc62279d02
Merge pull request #1734 from mnowster/1653-scale-in-parallel
...
Parallelise scale
2015-07-21 16:02:04 +01:00
Mazz Mosley
e1c1a4c0aa
Scale restarts stopped containers
...
This is existing behaviour and should be kept.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-21 15:41:22 +01:00
Mazz Mosley
cc0bfea8a1
Merge pull request #1711 from aanand/custom-names
...
Add container_name option for specifying a custom container name
2015-07-21 14:28:16 +01:00
Mazz Mosley
da650e9cfd
Refactor parallel execute
...
Refactored parallel execute and execute create into a single function
parallel_execute that can now handle both cases. This helps untangle it
from being so tightly coupled to the container.
Updated all the relevant operations to use the refactored function.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-21 11:56:59 +01:00
Aanand Prasad
38a6209acd
Stop printing a stack trace when there's an error when pulling
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-21 11:07:20 +01:00
Mazz Mosley
5c29ded6ac
Parallelise scale
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-20 16:33:04 +01:00
Aanand Prasad
4ba9d9dac2
Make parallel tasks interruptible with Ctrl-C
...
The concurrent.futures backport doesn't play well with
KeyboardInterrupt, so I'm using Thread and Queue instead.
Since thread pooling would likely be a pain to implement, I've just
removed `COMPOSE_MAX_WORKERS` for now. We'll implement it later if we
decide we need it.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-20 14:13:25 +01:00
Aanand Prasad
05d8daa8e0
Merge pull request #1710 from mnowster/improve-output-for-parallel-executions
...
Improve output for parallel command
2015-07-20 11:49:37 +01:00
Mazz Mosley
9d9b865796
Add in error handling
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-20 10:21:49 +01:00
Mazz Mosley
61787fecea
Resolve race condition
...
Sometimes, some messages were being executed at the same time, meaning
that the status wasn't being overwritten, it was displaying on a
separate line for both doing and done messages.
Rather than trying to have both sets of statuses being written out
concurrently, we write out all of the doing messages first. Then
the done messages are written out/updated, as they are completed.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-20 10:21:49 +01:00
Aanand Prasad
89f6caf871
Allow any volume mode to be specified
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-17 16:14:09 +01:00
Aanand Prasad
a3191ab90f
Add container_name option
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-17 15:50:09 +01:00
Aanand Prasad
445fe89fce
Tweak wording of scale warning
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-17 15:24:17 +01:00
Aanand Prasad
9ffe69a572
Refactor can_be_scaled for clarity
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-17 15:24:17 +01:00
Aanand Prasad
ced94a3504
Make smart recreate the default
...
Add --force-recreate flag to enable the old default behaviour of
recreating everything.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-17 11:28:02 +01:00
Aanand Prasad
9d0bbdf8dd
Make scale timeout configurable, default to 10
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-16 16:39:38 +01:00
Mazz Mosley
29f51f8216
Increase max-workers
...
There's significant speed improvement by having more workers. This
value still shouldn't cause anyone's machines to melt/explode.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-16 16:17:26 +01:00
Mazz Mosley
da6cbd4535
Improve output for parallel command
...
This approach takes the style of replacing the output message, in
place, when the command has finished executing. Bringing it a bit
more inline with what `docker pull` does.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-16 11:51:45 +01:00
Mazz Mosley
c7dccccd1f
Merge pull request #1704 from aanand/fix-timeout-type
...
Make sure up/restart/stop timeout is an int
2015-07-16 10:50:06 +01:00
Aanand Prasad
0c5c8d1f00
Handle case where /containers/json returns "Labels": null
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-15 17:13:33 +01:00
Aanand Prasad
ec8bf066ba
Make sure up/restart/stop timeout is an int
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-15 16:56:39 +01:00
Aanand Prasad
f03dec766d
Rename max workers env var and fix docs
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-15 16:43:43 +01:00
Aanand Prasad
35aef1aee0
Merge pull request #1687 from mnowster/1651-parallelise-stopping-containers
...
1651 parallelise stopping containers
2015-07-15 16:29:54 +01:00
Mazz Mosley
a68ca199a2
Execute container commands in parallel
...
Commands able to use this parallelisation are `stop`, `kill` and `rm`.
We're using a backported function from python 3, to allow us to make
the most of a pool of threads without having to write the low level
code for managing this ourselves.
A default value for number of threads is a low enough number so it
shouldn't cause performance problems but if someone knows the
capability of their system and wants to increase it, they can via
an environment variable DEFAULT_MAX_WORKERS
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-15 11:02:50 +01:00
Erik Kristensen
7937611366
change 80 to 0
...
Signed-off-by: Erik Kristensen <erik@erikkristensen.com>
2015-07-14 12:31:00 -06:00
Erik Kristensen
b7edb3ca9d
do not wrap table cells
...
Signed-off-by: Erik Kristensen <erik@erikkristensen.com>
2015-07-14 12:30:42 -06:00
Aanand Prasad
81707ef1ad
Merge pull request #1643 from aanand/warn-about-legacy-one-off-containers
...
Show an error on 'run' when there are legacy one-off containers
2015-07-08 14:48:03 +01:00
Aanand Prasad
8b033d3946
Merge pull request #1665 from mnowster/1648-support-log-opt
...
1648 support log opt
2015-07-07 17:08:04 +01:00
Mazz Mosley
6f31e8ebe9
Add support for log_opt
...
When specifying a log_driver you want to specify some options for
the logger as per the docker run --log-opt option. The logger
options are key value pairs.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-07 16:26:43 +01:00
Aanand Prasad
531265bc84
Fix smart recreate when 'image' is changed to something nonexistent
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-07 16:01:44 +01:00
Mazz Mosley
c1223bfd3a
Keep config keys in alphabetised order
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-07 12:02:05 +01:00
Mazz Mosley
fc26982132
Add in memswap_limit run option
...
By allowing the memswap_limit option to be defined we also need to
check that mem_limit is set, you can't have swap without a limit.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-06 17:08:57 +01:00
Aanand Prasad
e98caf5cf9
Show an error on 'run' when there are legacy one-off containers
...
Also warn the user about the one-off containers in the standard error
message about legacy containers.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-06 14:45:17 +01:00
Aanand Prasad
fc8f564558
Merge pull request #1632 from mnowster/extends_file_default_behaviour
...
Extends file default behaviour and fixes circular reference bug
2015-07-06 13:28:54 +01:00
Aanand Prasad
d90202399a
Merge pull request #1645 from dnephin/fix_up_race
...
Fix race condition in docker-compose up
2015-07-03 16:28:22 +01:00
Aanand Prasad
f42fd6a3ad
Merge pull request #1642 from aanand/fix-1573
...
Fix bug where duplicate container is leftover after 'up' fails
2015-07-03 16:25:53 +01:00
Daniel Nephin
bd554a6fea
Fix race condition in docker-compose up.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-07-03 10:29:46 -04:00
Mazz Mosley
317bbec98c
Move make_service_dict out of config
...
This top level function is a test helper, so I've moved it into the
config_test file and updated accordingly.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 15:06:53 +01:00
Mazz Mosley
6e6dbdad95
working_dir is no longer optional
...
When building test data using make_service_dict, we need to include
working_dir as it is core to some of the functionality of
ServiceLoader.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 14:56:18 +01:00
Aanand Prasad
0b887b841f
Stop 'rm' and 'ps' listing services not defined in the current file
...
If you have an alternate YAML file with different services defined,
containers for those services will be shown in `docker-compose ps` even
if you don't pass that file in.
Furthermore, `docker-compose rm` will claim that it's going to remove
them, but actually won't.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-03 14:34:27 +01:00
Mazz Mosley
6a6e7934bd
Refactor circular-reference check
...
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 14:05:35 +01:00
Mazz Mosley
c51d53afba
Fix off by one error
...
In our circular reference check the stack was previously off by one,
by not including the current service name that was calling another.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 12:24:33 +01:00
Mazz Mosley
bd7fcd1123
Use absolute paths
...
A circular reference bug occurs when there is a difference in the paths
of the file specified in the extends. So one time it is relative, second
time is absolute thus allowing a further circular reference to occur.
By using absolute paths we can be sure that the service filename check
is correct.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 12:21:12 +01:00
Mazz Mosley
254bc4908c
Move extends validation into ServiceLoader class
...
This refactoring allows us to raise an error when there is no
'file' key specified in the .yml and no self.filename set. This
error was specific to the tests, as the tests are
the only place that constructs service dicts without sometimes
setting a filename.
Moving the function within the class as well as it is code that
is exclusively for the use of validating properties for the
ServiceLoader class.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 11:26:31 +01:00
Mazz Mosley
5e2d43843c
Reduce path manipulation
...
If we're using self.filename, then it's already a full path and we
don't need to splice off the filename.yml just so we can .join it
back together again.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 11:26:31 +01:00
Mazz Mosley
6e4a954dbd
'file' key can be omitted from extends
...
If the 'file' key is not set in the extends_options dict then we
look for the 'service' from within the same file.
Fixes this issue: https://github.com/docker/compose/issues/1237
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 11:26:30 +01:00
Mazz Mosley
31dedd8bdd
Rename function process to validate
...
The process function contained purely validation checks, so re-named
the function to aid intent clarity.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-03 11:26:30 +01:00
Aanand Prasad
62b47224f0
Fix bug where duplicate container is leftover after 'up' fails
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-03 10:46:07 +01:00
Aanand Prasad
db7e5124f3
Merge pull request #1488 from dnephin/config_from_stdin
...
Support reading config from stdin
2015-07-03 09:03:40 +01:00
Aanand Prasad
a6b9982a1e
Merge pull request #1633 from jeffk/parse_env_vars_in_all_volumes
...
Added env var parsing to volume container paths
2015-07-03 08:55:48 +01:00
Daniel Nephin
ae96fc0071
Support reading config from stdin.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-07-02 22:16:22 -04:00
Jeff Kramer
8709dc3c24
Added env var parsing to volume container paths
...
This commit adds environment variable parsing to the container side
of the volume mapping in configs. The common use case for this is
mounting SSH agent sockets in a container, using code like:
volumes:
- $SSH_AUTH_SOCK:$SSH_AUTH_SOCK
environment:
- SSH_AUTH_SOCK
Signed-off-by: Jeff Kramer <jeff.kramer@voxmedia.com>
2015-07-02 13:13:38 -05:00
Mazz Mosley
f33f673b49
Allow _.- chars in service names
...
As VALID_CHARS is shared with project names, these chars are also
now allowed within project names.
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-07-01 17:57:50 +01:00
Aanand Prasad
c8751980f9
Merge pull request #1578 from aanand/fix-migrate-help
...
Fix 'docker-compose help migrate-to-labels'
2015-06-21 17:25:52 -07:00
Aanand Prasad
4f83a18912
Merge pull request #1570 from aanand/fix-build-pull
...
Explicitly set pull=False when building
2015-06-21 17:25:46 -07:00
Aanand Prasad
93372dd665
Fix 'docker-compose help migrate-to-labels'
...
- Fix "No such command" error
- Add text from migration section of install docs
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-19 15:43:53 -07:00
Aanand Prasad
c22cc02df5
Don't set network mode when none is specified
...
Setting a value overrides the new default network option.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-19 15:22:13 -07:00
Aanand Prasad
bef0926c58
Explicitly set pull=False when building
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-18 17:43:16 -07:00
Aanand Prasad
5aa82a5519
Bump 1.4.0dev
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-18 11:56:43 -07:00
Aanand Prasad
77c939b256
Merge pull request #1142 from calou/master
...
Added support of option mac-address
2015-06-17 14:39:00 -07:00
Sébastien Gruchet
b76ac6e633
Added support to option mac-address
...
Signed-off-by: Sébastien Gruchet <gruchet@gmail.com>
Updated doc
Signed-off-by: Sébastien Gruchet <gruchet@gmail.com>
Fixed LINT errors
Signed-off-by: Sébastien Gruchet <gruchet@gmail.com>
Changed mac-address entry order in config keys
Signed-off-by: Sébastien Gruchet <gruchet@gmail.com>
Changed attributes order in docs/yml.md
Signed-off-by: Sébastien Gruchet <gruchet@gmail.com>
2015-06-17 21:28:17 +02:00
Aanand Prasad
bc14c473c9
Merge pull request #1521 from dano/validate-service-names
...
Validate that service names passed to Project.containers aren't bogus.
2015-06-16 10:45:49 -07:00
Dan O'Reilly
464ab3d727
Add a method specifically for service name validation.
...
Signed-off-by: Dan O'Reilly <oreilldf@gmail.com>
2015-06-15 23:06:06 -04:00
Aanand Prasad
5b2a0cc73d
Merge pull request #1406 from vdemeester/667-compose-port-scale
...
Fixing docker-compose port with scale (#667 )
2015-06-15 10:58:44 -07:00
Daniel Nephin
06db577105
Move converge() to a test module, and use a short timeout for tests.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-06-14 17:18:27 -04:00
Travis Thieman
c24d5380e6
Extend up -t to pass timeout to stop running containers
...
Signed-off-by: Travis Thieman <travis.thieman@gmail.com>
2015-06-14 16:45:28 -04:00
Aanand Prasad
08bc4b830b
Fix volume binds de-duplication
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-12 16:57:22 -04:00
Ben Firshman
e3525d64b5
Merge pull request #1537 from aanand/reorder-service-utils
...
Reorder service.py utility methods
2015-06-11 21:55:33 +01:00
Travis Thieman
f31d4c8a93
Correct misspelling of "Service" in an error message
...
Signed-off-by: Travis Thieman <travis.thieman@gmail.com>
2015-06-11 14:03:08 -04:00
Aanand Prasad
7995fc2ed2
Reorder service.py utility methods
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-11 11:44:13 -04:00
Vincent Demeester
a5fd91c705
Fixing docker-compose port with scale ( #667 )
...
Fixes #667 and Closes #735 (taking over it)
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-06-10 23:26:33 +02:00
Aanand Prasad
66af37b135
Merge pull request #1474 from aanand/fix-ssl
...
Fix SSL "CERTIFICATE_VERIFY_FAILED" error
2015-06-09 11:56:27 -04:00
Daniel Nephin
5578ccbb01
Merge pull request #1527 from aanand/remove-logging-on-run-rm
...
Remove logging on run --rm
2015-06-08 16:21:02 -04:00
Daniel Nephin
38a11c4c28
Merge pull request #1526 from aanand/remove-start-or-create-containers
...
Remove Service.start_or_create_containers()
2015-06-08 12:49:32 -04:00
Aanand Prasad
b6a7db787f
Remove logging on run --rm
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-08 11:16:00 -04:00
Aanand Prasad
db2d02dc0b
Remove Service.start_or_create_containers()
...
It's only used in a single test method.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-08 10:59:03 -04:00
Aanand Prasad
f59b43ac27
Fix duplicate logging on up/run
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-08 10:52:15 -04:00
dano
2527ef8055
Validate that service names passed to Project.containers aren't bogus.
...
Signed-off-by: Dan O'Reilly <oreilldf@gmail.com>
2015-06-06 15:47:16 -04:00
Aanand Prasad
7d2a89427c
Merge pull request #1466 from noironetworks/changing-scale-to-warning
...
Modified scale awareness from exception to warning
2015-06-04 16:21:01 +01:00
Aanand Prasad
c571bb485d
Report Python and OpenSSL versions in --version output
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-06-01 17:55:31 +01:00
funkyfuture
ae9d619d86
Add command for Docker-style version information
...
This adds a command 'version' to show software versions information
like Docker does. In addition it includes:
- version of the docker-py-package
- Python-implementation and -version
Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2015-05-28 00:51:10 +02:00
André Martins
ae63d35660
Modified scale awareness from exception to warning
...
Signed-off-by: André Martins <martins@noironetworks.com>
2015-05-26 23:59:45 +01:00
Todd Whiteman
b9c502531d
Possible division by zero error when pulling an image - fixes #1463
...
Signed-off-by: Todd Whiteman <todd.whiteman@joyent.com>
2015-05-26 15:34:34 -07:00
Aanand Prasad
1344099e29
Merge pull request #1444 from aanand/migrate-in-dependency-order
...
Migrate containers in dependency order
2015-05-26 17:30:14 +01:00
Aanand Prasad
7da8e6be3b
Migrate containers in dependency order
...
This fixes a bug where migration would fail with an error if a
downstream container was migrated before its upstream dependencies, due
to `check_for_legacy_containers()` being implicitly called when we fetch
`links`, `volumes_from` or `net` dependencies.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-26 16:03:06 +01:00
Aanand Prasad
4795fd874f
Fix regression in `docker-compose up`
...
When an upstream dependency (e.g. a db) has a container but a downstream
service (e.g. a web app) doesn't, a web container is not created on
`docker-compose up`.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-26 16:01:05 +01:00
Aanand Prasad
276fee105b
Merge pull request #1459 from bfirsh/update-description
...
Update description of Compose
2015-05-26 15:57:26 +01:00
Ben Firshman
91ceb33d5a
Update description of Compose
...
"Define and run multi-container applications with Docker"
Not just development environments, and "complex" is not clear and
not really true.
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2015-05-26 15:42:55 +01:00
Aanand Prasad
0b4d9401ee
Bail out immediately if there are legacy containers
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-26 11:53:51 +01:00
Daniel Nephin
889d3636f4
Merge pull request #1440 from aanand/legacy-fixes
...
Legacy fixes
2015-05-24 12:42:14 -05:00
Aanand Prasad
30c9e7323a
Fix missing logging on container creation
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-21 20:06:25 +01:00
Aanand Prasad
051f56a1e6
Fix bugs with one-off legacy containers
...
- One-off containers were included in the warning log messages, which can
make for unreadable output when there are lots (as there often are).
- Compose was attempting to recreate one-off containers as normal
containers when migrating.
Fixed by implementing the exact naming logic from before we used labels.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-21 18:21:49 +01:00
Aanand Prasad
b5ce23885b
Split out fetching of legacy names so we can test it
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-21 18:21:49 +01:00
Aanand Prasad
0fdb8bf814
Refactor migration logic
...
- Rename `migration` module to `legacy` to make its legacy-ness explicit
- Move `check_for_legacy_containers` into `legacy` module
- Fix migration test so it can be run in isolation
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-21 18:21:09 +01:00
Aanand Prasad
3080244c0b
Rename migrate_to_labels -> migrate-to-labels
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-21 14:54:41 +01:00
Daniel Nephin
022f81711e
Fixes #1434 , Project.containers with service_names.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-05-20 20:47:34 -04:00
Ben Firshman
f5ac1fa073
Remove whitespace from json hash
...
Reasoning:
e5d8447f06 (commitcomment-11243708)
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2015-05-20 16:02:08 +01:00
Ben Firshman
f79eb7b9ad
Merge pull request #1382 from lsowen/security_opt
...
Add security_opt as a docker-compose.yml option
2015-05-20 13:40:42 +01:00
lsowen
ea7ee301c0
Add security_opt as a docker-compose.yml option
...
Signed-off-by: Logan Owen <lsowen@s1network.com>
2015-05-19 13:47:41 -04:00
Harald Albers
41315b32cb
Fix #1426 - migrate_to_labels not found
...
Signed-off-by: Harald Albers <github@albersweb.de>
2015-05-19 16:37:50 +02:00
Aanand Prasad
ef4eb66723
Implement smart recreate behind an experimental CLI flag
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-18 18:39:18 +01:00
Aanand Prasad
82bc7cd5ba
Remove override_options arg from recreate_container(s)
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-18 17:42:09 +01:00
Aanand Prasad
3304c68891
Only set AttachStdin/out/err for one-off containers
...
If we're just streaming logs from `docker-compose up`, we don't need
to set AttachStdin/out/err, and doing so results in containers with
different configuration depending on whether `up` or `run` were invoked
with `-d` or not.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-18 17:41:04 +01:00
Aanand Prasad
1e6d912fbc
Merge pull request #1356 from dnephin/use_labels_instead_of_names
...
Use labels instead of names to identify containers
2015-05-18 17:38:46 +01:00
Daniel Nephin
62059d55e6
Add migration warning and option to migrate to labels.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-05-18 10:55:12 -04:00
Daniel Nephin
ed50a0a3a0
Resolves #1066 , use labels to identify containers
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-05-18 10:47:26 -04:00
Aanand Prasad
862971cffa
Fix race condition in `docker-compose run`
...
We shouldn't start the container before handing it off to dockerpty -
dockerpty will start it after attaching, which is the correct order.
Otherwise the container might exit before we attach to it, which can
lead to weird bugs.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-05-15 12:16:24 +01:00
Daniel Nephin
417d9c2d51
Use individual volumes for recreate instead of volumes_from
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-05-11 13:01:43 -04:00
delbert@umn.edu
df87bd91c8
Added devices configuration option
...
Signed-off-by: Dan Elbert <dan.elbert@gmail.com>
2015-05-11 10:50:58 -05:00
Daniel Nephin
6829efd4d3
Resolves #874 , Rename instead of use an intermediate.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-05-07 21:53:41 -04:00
Daniel Nephin
0f2f9db6d8
Merge pull request #1388 from vdemeester/1303-log-driver-support
...
Add support for log-driver as a docker-compose.yml option
2015-05-07 12:00:42 -04:00
Vincent Demeester
f626fc5ce8
Add support for log-driver in docker-compose.yml
...
Closes #1303
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-05-06 13:18:58 +02:00
Daniel Nephin
7fb9ec29c4
Merge pull request #1335 from chernjie/pid_readonly
...
docker-compose create --readonly
2015-05-05 20:50:01 -04:00
CJ
b06294399a
See #1335 : Added --read-only
...
Signed-off-by: CJ <lim@chernjie.com>
2015-05-02 23:39:39 +08:00
Simon Herter
b8e0aed21c
Show proper command in help text of build subcommand
...
The help text of the build subcommand suggested to use 'compose build' (instead of 'docker-compose build') to rebuild images.
Signed-off-by: Simon Herter <sim.herter@gmail.com>
2015-05-01 18:58:55 -04:00
Daniel Nephin
4bce388b51
Merge pull request #1376 from aanand/fix-build-non-ascii-filename
...
Make sure the build path we pass to docker-py is a binary string
2015-04-30 20:54:21 -04:00
Daniel Nephin
6c95eed781
Merge pull request #1269 from aanand/labels
...
Implement 'labels' option
2015-04-30 20:49:11 -04:00
Aanand Prasad
4f366d8355
Make sure the build path we pass to docker-py is a binary string
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-30 11:57:46 +01:00
Aanand Prasad
1a77feea3f
Close connection before attaching on 'up' and 'run'
...
This ensures that the connection is not recycled, which can cause the
Docker daemon to complain if we've already performed another streaming
call such as doing a build.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-29 18:42:03 +01:00
Aanand Prasad
7e0ab0714f
Merge pull request #1344 from dnephin/fix_pull_with_sha
...
Support image with ids instead of names
2015-04-29 16:46:34 +01:00
Aanand Prasad
2e6bc078fb
Implement 'labels' option
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-29 16:45:18 +01:00
Daniel Nephin
3dd860f0ba
Fix #923 , support image with ids instead of names.
...
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-04-29 10:13:18 -04:00
Aanand Prasad
fed4377ef6
Merge pull request #1351 from mchasal/1301-alphabetize_usage
...
Fix for #1301 , Alphabetize Commands
2015-04-29 14:21:46 +01:00
Daniel Nephin
a89bc304f6
Merge pull request #1075 from KyleJamesWalker/master
...
Support alternate Dockerfile name.
2015-04-27 10:06:43 -04:00
Aanand Prasad
16f8106149
Merge pull request #1158 from chernjie/addhosts
...
Add extra_hosts to yml configuration --add-hosts
2015-04-27 12:26:29 +01:00
CJ
86a08c00f2
See https://github.com/docker/compose/pull/1158#discussion_r29063218
...
Signed-off-by: CJ <lim@chernjie.com>
2015-04-27 14:07:21 +08:00
xuxinkun
688f82c1cf
Add cpuset config.
...
Signed-off-by: xuxinkun <xuxinkun@gmail.com>
2015-04-26 00:14:52 +08:00
Daniel Nephin
a631c1eddb
Merge pull request #1357 from turtlemonvh/1350-extends_parent_build_directory_dne_error
...
Fix for #1350 , nonexisting build path in parent section causes extending section to fail
2015-04-27 13:49:01 -04:00
Timothy Van Heest
855855a0e6
Fix for #1350 , nonexisting build path in parent section causes extending section to fail
...
Signed-off-by: Timothy Van Heest <timothy.vanheest@gmail.com>
2015-04-27 10:55:30 -04:00
Michael Chase-Salerno
9a44708081
Fix for #1301 , Alphabetize Commands
...
Signed-off-by: Michael Chase-Salerno <bratac@linux.vnet.ibm.com>
2015-04-24 20:45:18 +00:00
Daniel Nephin
89789c54ad
Merge pull request #1232 from aleksandr-vin/add-parent-directories-search-for-default-compose-files
...
Add parent directories search for default compose-files
2015-04-24 13:12:24 -04:00
Kyle Walker
d17c4d27fa
Support alternate Dockerfile name.
...
Signed-off-by: Kyle James Walker <KyleJamesWalker@gmail.com>
2015-04-24 08:30:36 -07:00
CJ
25ee3f0033
Remove extra s from --add-host
...
linting...
six.string_types
list-of-strings in examples
disallow extra_hosts support for list-of-dicts
A more thorough sets of tests for extra_hosts
Provide better examples
As per @aanand's [comment](https://github.com/docker/compose/pull/1158/files#r28326312 )
I think it'd be better to check `if not isinstance(extra_hosts_line,
six.string_types)` and raise an error saying `extra_hosts_config must be
either a list of strings or a string->string mapping`. We shouldn't need
to do anything special with the list-of-dicts case.
order result to work with assert
use set() instead of sort()
Signed-off-by: CJ <lim@chernjie.com>
2015-04-24 09:21:29 +08:00
Thomas Desvenain
8098b65576
Fix when pyyaml has interpreted line as a dictionary
...
Added unit tests in build_extra_hosts + fix
Signed-off-by: CJ <lim@chernjie.com>
2015-04-24 09:21:21 +08:00
Sam Wing
fb81c37ca6
added the extra_hosts option to the yml configuration which exposes the --add-host flag from the docker client
...
Signed-off-by: Sam Wing <sampwing@gmail.com>
2015-04-23 21:54:59 +08:00
Daniel Nephin
e6ec76161d
Merge pull request #1293 from mchasal/1224
...
1224: Check that image or build is specified.
2015-04-21 15:19:11 -04:00
Aanand Prasad
b317071cf3
Merge pull request #1205 from josephpage/run-rm-restart
...
[cli] run --rm overrides restart: always
2015-04-21 15:48:43 +01:00
Aanand Prasad
2291fa2d45
Fix --timeout flag on restart, add tests for stop and restart
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-21 11:59:33 +01:00
Aanand Prasad
310c7623f9
Bump 1.3.0dev
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-16 17:54:18 +01:00
Aanand Prasad
8b5015c10f
Bump 1.2.0
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-16 17:48:28 +01:00
Michael Chase-Salerno
15b763acdb
Fix for #1224 , check that image or build is specified
...
Signed-off-by: Michael Chase-Salerno <bratac@linux.vnet.ibm.com>
2015-04-15 02:03:02 +00:00
Aleksandr Vinokurov
ceff5cb9ca
Add parent directories search for default compose-files
...
Does not change directory to the parent with the compose-file found.
Works like passing '--file' or setting 'COMPOSE_FILE' with absolute path.
Resolves issue #946 .
Signed-off-by: Aleksandr Vinokurov <aleksandr.vin@gmail.com>
2015-04-09 22:36:47 +00:00
Ben Firshman
4926f8aef6
Merge pull request #1261 from aanand/fix-vars-in-volume-paths
...
Fix vars in volume paths
2015-04-09 14:44:07 +01:00
Aanand Prasad
fd568b389d
Fix home directory and env expansion in volume paths
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-04-07 16:23:45 +01:00
Steven Dake
94277a3eb0
Add --pid=host support
...
Allow docker-compsoe to use the docker --pid=host API available in 1.17
Signed-off-by: Steven Dake <stdake@cisco.com>
2015-04-06 12:44:35 -07:00
Moysés Borges
8584525e8d
Interpret 'build:' as relative to the yml file
...
* This fix introduces one side-effect: the build parameter is now
validated early, when the service dicionary is first constructed.
That leads to less scary stack traces when the path is not valid.
* The tests for the changes introduced here alter the fixtures
of those (otherwise unrelated) tests that make use of the 'build:'
parameter)
Signed-off-by: Moysés Borges Furtado <moyses.furtado@wplex.com.br>
2015-03-31 18:47:26 -03:00
Aanand Prasad
907918b492
Merge multi-value options when extending
...
Closes #1143 .
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-31 15:30:59 -04:00
Aanand Prasad
2a415ede08
When extending, `build` replaces `image` and vice versa
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-30 17:14:19 -04:00
Joseph Page
0b89ae6f20
[cli] run --rm overrides restart: always
...
docker/compose#1013
Signed-off-by: Joseph Page <joseph.page@rednet.io>
2015-03-30 14:45:24 +02:00
akoskaaa
f9ea5ecf40
[pep8] make test files and config files pep8 valid
...
Signed-off-by: akoskaaa <akos.hochrein@prezi.com>
2015-03-25 20:20:38 -07:00
Aanand Prasad
83dcceacaf
Fix regression in Dns and DnsSearch settings
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-24 16:17:05 -07:00
Aanand Prasad
35c6e0314c
Fix volume merging when there's no explicit host path
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-24 13:26:36 -07:00
Aanand Prasad
276e43ca6b
Fix service dict merging when only one dict has a volumes key
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-24 13:26:36 -07:00
Aanand Prasad
965426e39b
Revert "Add 'labels:' config option"
...
This reverts commit 721327110d
.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-23 15:04:04 -07:00
Aanand Prasad
721327110d
Add 'labels:' config option
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 18:12:04 -07:00
Aanand Prasad
37efdb1f8b
Make volume host paths relative to file, merge volumes when extending
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 15:45:16 -07:00
Aanand Prasad
4c582e4352
Implement `extends`
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 15:45:16 -07:00
Aanand Prasad
eef4bc3917
Specify all HostConfig at create time
...
This is required for Swarm integration: the cluster needs to know
about config like `links` and `volumes_from` at create time so that it
can co-schedule containers.
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 15:14:07 -07:00
Ben Firshman
8b5a882459
Merge pull request #867 from knutwalker/feature/timeout-flag
...
Add timeout flag to stop, restart, and up
2015-03-13 17:41:16 +00:00
Aanand Prasad
528bed9ef6
Fix environment resolution
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-13 14:22:28 +00:00
Aanand Prasad
4ecf5e01ff
Extract YAML loading and parsing into config module
...
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-13 14:21:58 +00:00
Aanand Prasad
25c70c2af4
Merge pull request #1076 from gilclark/master
...
Make volumes_from and net containers first class dependencies
2015-03-13 11:46:13 +00:00
Ian VanSchooten
86b723e227
Provide user override option on command line
...
Allows overriding a user on the command line from the one specified in
the docker-compose.yml
The added tests verify that a specified user overrides a default
user in the docker-compose.yml file.
Based on commit f2f01e207b491866349db7168e3d48082d7abdda by @chmouel
Signed-off-by: Ian VanSchooten <ian@badgelabsllc.com>
2015-03-11 00:11:31 -04:00
Paul Horn
2534a0964f
Add timeout flag to stop, restart, and up
...
The commands `stop`, `restart`, and `up` now support a flag `--timeout`.
It represents the number of seconds to give the services to comply to
the command. In case of `up`, this is only relevant if running in
attached mode.
Signed-off-by: Paul Horn <knutwalker@gmail.com>
2015-03-10 12:21:58 +01:00
Gil Clark
95f4e2c7c3
Make volumes_from and net containers first class dependencies and
...
assure that starting order is correct. Added supporting unit and
integration tests as well.
Signed-off-by: Gil Clark <gilclark1@gmail.com>
2015-03-06 13:30:56 -08:00