docker conncetion plugin: accept 'dev' as 'newest version' (#56947)

* Accept 'dev' as 'newest version'.

* Add changelog.

* Fix YAML.

(cherry picked from commit 2f523ad08e)
This commit is contained in:
Felix Fontein 2019-05-26 14:15:25 +02:00 committed by Toshio Kuratomi
parent 4ef102ae79
commit 4388886d48
2 changed files with 6 additions and 2 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- "docker connection plugin - accept version ``dev`` as 'newest version' and print warning."

View file

@ -84,7 +84,9 @@ class Connection(ConnectionBase):
raise AnsibleError("docker command not found in PATH")
docker_version = self._get_docker_version()
if LooseVersion(docker_version) < LooseVersion(u'1.3'):
if docker_version == u'dev':
display.warning(u'Docker version number is "dev". Will assume latest version.')
if docker_version != u'dev' and LooseVersion(docker_version) < LooseVersion(u'1.3'):
raise AnsibleError('docker connection type requires docker 1.3 or higher')
# The remote user we will request from docker (if supported)
@ -93,7 +95,7 @@ class Connection(ConnectionBase):
self.actual_user = None
if self._play_context.remote_user is not None:
if LooseVersion(docker_version) >= LooseVersion(u'1.7'):
if docker_version == u'dev' or LooseVersion(docker_version) >= LooseVersion(u'1.7'):
# Support for specifying the exec user was added in docker 1.7
self.remote_user = self._play_context.remote_user
self.actual_user = self.remote_user