Commit graph

348 commits

Author SHA1 Message Date
chouseknecht
1670d9b030 Add pull option to pull images prior to evaluating service state. 2016-12-08 11:24:47 -05:00
Julien Vey
7ba3ba2da9 Fix Typo in docker_image_facts module 2016-12-08 11:24:46 -05:00
Chris Houseknecht
c91de38322 Entrypoint fails with 'command not found' error. 2016-12-08 11:24:43 -05:00
Chris Houseknecht
7ffa6a43c5 Add push parameter. Let API handle registry authentication check. 2016-12-08 11:24:43 -05:00
Chris Houseknecht
4002caf60e Fix module failing when no ports are exposed 2016-12-08 11:24:43 -05:00
jjshoe
d8b752b3cf Fixed a typo (#4168) 2016-12-08 11:24:43 -05:00
Chris Houseknecht
030dcccad4 Fix multi-interface port binding. 2016-12-08 11:24:43 -05:00
Chris Houseknecht
bd3e1c77fe Add cleanup parameter. (#4144) 2016-12-08 11:24:43 -05:00
Chris Houseknecht
7515b2d563 Fix 'all' option for published_ports parameter. 2016-12-08 11:24:43 -05:00
Chris Houseknecht
dc496ffeb4 Fix purge_networks 2016-12-08 11:24:43 -05:00
Qi Luo
b86a229b61 Fix getting actual_stdin_open 2016-12-08 11:24:42 -05:00
Rodríguez, Jorge
82c26ad2d7 Do not forcibly push when building, either. 2016-12-08 11:24:39 -05:00
Rodríguez, Jorge
89e8787d65 Don't forcibly push loaded images to registry. Fixes #3763 2016-12-08 11:24:39 -05:00
chouseknecht
3d5f84c528 Fix compose_version error. Check has compose before checking version. 2016-12-08 11:24:38 -05:00
chouseknecht
1e9590ab65 Fix index 2016-12-08 11:24:38 -05:00
chouseknecht
cc053c45ce Fix ulimit comparison 2016-12-08 11:24:38 -05:00
Hagen Kuehn
320aea77c6 fixed unknown type <type 'list'> error (#3959) 2016-12-08 11:24:37 -05:00
chouseknecht
16e7dc4e2e Remove dns from container create parameters. 2016-12-08 11:24:37 -05:00
chouseknecht
4d51a51ac3 Fix #3945 docker_container detach not waiting on container to execute. 2016-12-08 11:24:37 -05:00
chouseknecht
82436d5519 Fix #3941 2016-12-08 11:24:37 -05:00
Stefan Hajnoczi
7c4a469174 docker_service: make PyYAML requirement explicit
The "Developing Modules" documentation states:

  Include a minimum of dependencies if possible. If there are
  dependencies, document them at the top of the module file, and have
  the module raise JSON error messages when the import fails.

When docker_service runs on a remote host without PyYAML it crashes with
ImportError.

This patch raises a JSON error message when import fails, but only if
the PyYAML module is actually used.  It's only needed when the
"definition" parameter is given.

Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
2016-12-08 11:24:37 -05:00
chouseknecht
617c230b62 Fix #16211 - only stop/kill running containers 2016-12-08 11:24:36 -05:00
Chris Houseknecht
b5820c7398 Fix #3906 - Enforce required minimum compose version. (#3925)
* Fix #3906 - Require minimum compose version.

* Fix typo in message text.
2016-12-08 11:24:36 -05:00
Stefan Hajnoczi
38013de366 Stream image data in load_image() to avoid out-of-memory
Reading the entire tar file into memory can result in out-of-memory
conditions such as this traceback:

Traceback (most recent call last):
  File "/tmp/ansible_YELTSu/ansible_module_docker_image.py", line 486, in load_image
    self.client.load_image(image_data)
  File "/usr/local/lib/python2.7/dist-packages/docker/api/image.py", line 147, in load_image
    res = self._post(self._url("/images/load"), data=data)
  ...
  File "/usr/lib/python2.7/httplib.py", line 997, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 848, in _send_output
    msg += message_body
MemoryError

Luckily docker-py's load_image(), which calls requests post(), accepts a
file-like object instead of a string.  Pass in the file object to avoid
reading the full file into memory.  This allows larger tar files to load
succesfully.

Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
2016-12-08 11:24:36 -05:00
Vince v. Oosten
42a38f9141 move environment variable gathering to end of __init__() (#3890)
* This moves the lines in the code that parse the `env` and `env_file` options for docker to the end of the `__init__()` function.
This is needed because the `_check_capabilites` function needs both a working `self.client` and a proper `self.docker_py_versioninfo`.
`_check_capabilities` is used by `ensure_capabilities` which is, in turn, used by `get_environment`

This means that before this commit, the environment variables could not be loaded because both `self.client` and `self.docker_py_versioninfo` were not set at that time.

This commit fixes that by putting the environment variable parsing after those two.

* This moves the lines in the code that parse the `env` and `env_file` options for docker to the end of the `__init__()` function.
This is needed because the `_check_capabilites` function needs both a working `self.client` and a proper `self.docker_py_versioninfo`.
`_check_capabilities` is used by `ensure_capabilities` which is, in turn, used by `get_environment`

This means that before this commit, the environment variables could not be loaded because both `self.client` and `self.docker_py_versioninfo` were not set at that time.

This commit fixes that by putting the environment variable parsing after those two.
2016-12-08 11:24:36 -05:00
chouseknecht
fc486824b8 Fix issue #3866 2016-12-08 11:24:35 -05:00
pic
8494b0af4b fix #3528 : dns type 2016-12-08 11:24:34 -05:00
chouseknecht
9549c66a56 Fix #147 automatically expose published ports 2016-12-08 11:24:34 -05:00
chouseknecht
17fc0f11db Remove unused method in ContainerManager 2016-12-08 11:24:34 -05:00
Mike Mars
e2dbd0f445 Fixing Docker compile time errors irt exception handling for Python 3 2016-12-08 11:24:34 -05:00
chouseknecht
ec9f56d8e0 Fix #3822 stop container 2016-12-08 11:24:33 -05:00
chouseknecht
c9e4955d38 Remove registery option per #3824. 2016-12-08 11:24:33 -05:00
chouseknecht
be2d32f04d Fix upate typo and expected volume compare. 2016-12-08 11:24:33 -05:00
chouseknecht
9dd95efe76 Fixed binds and volumes. Now recognizes bound vs unbound as well as named volumes. 2016-12-08 11:24:33 -05:00
Jirayut 'Dear' Nimsaeng
d373e0a7c4 Fix volume to support not binding volumes to host 2016-12-08 11:24:33 -05:00
chouseknecht
96192ead02 Remove debug/register from examples. 2016-12-08 11:24:33 -05:00
chouseknecht
3d0d14c5ff Fix network comparison. Fix handling of links. Updated doc strings. Added more examples. 2016-12-08 11:24:33 -05:00
chouseknecht
a4bd558240 Set version added to 2.2 so that tests pass 2016-12-08 11:24:32 -05:00
chouseknecht
e398efb04f For new options move vesion_added to 2.1.1 2016-12-08 11:24:32 -05:00
chouseknecht
c8f63e867a Fixed bug in _get_network_id 2016-12-08 11:24:32 -05:00
chouseknecht
a9ddb5023d Fix doc strings. 2016-12-08 11:24:32 -05:00
chouseknecht
1d327a23cd Fixed issues post testing. 2016-12-08 11:24:32 -05:00
chouseknecht
39bfb136a7 First pass at implementing networks parameter. Also added purge_networks option to remove container from networks not included in networks param. 2016-12-08 11:24:32 -05:00
chouseknecht
f3c33ee35f Fix for 3768 - adding support for env_file 2016-12-08 11:24:32 -05:00
chouseknecht
2016911e64 Check self.parameters.env exists. 2016-12-08 11:24:32 -05:00
chouseknecht
bc665fca9c Fix for issue #3775 - env config comparison 2016-12-08 11:24:32 -05:00
chouseknecht
65e71d8960 Update restart_policy doc strings. 2016-12-08 11:24:32 -05:00
chouseknecht
b5666c0f1c Fix restart_poicy 2016-12-08 11:24:32 -05:00
chouseknecht
8f9ef1213d Fix for #3783 - command returns not found or does not exist. 2016-12-08 11:24:32 -05:00
Dan Schmidt
c8ec843ac2 Fix "ansbile_facts" typo in docker_container module 2016-12-08 11:24:32 -05:00