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.
This commit is contained in:
Vince v. Oosten 2016-06-08 15:39:34 +02:00 committed by Matt Clay
parent 81e7720f62
commit 42a38f9141

View file

@ -749,10 +749,6 @@ class DockerManager(object):
if self.module.params.get('links'):
self.links = self.get_links(self.module.params.get('links'))
env = self.module.params.get('env', None)
env_file = self.module.params.get('env_file', None)
self.environment = self.get_environment(env, env_file)
self.ulimits = None
if self.module.params.get('ulimits'):
self.ulimits = []
@ -851,7 +847,11 @@ class DockerManager(object):
self.docker_py_versioninfo = get_docker_py_versioninfo()
def _check_capabilties(self):
env = self.module.params.get('env', None)
env_file = self.module.params.get('env_file', None)
self.environment = self.get_environment(env, env_file)
def _check_capabilities(self):
"""
Create a list of available capabilities
"""