summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorEric Miller <emiller@cleo.com>2018-12-17 05:58:26 -0600
committerJohn R Barker <john@johnrbarker.com>2018-12-17 11:58:26 +0000
commit4d0f2e632c8277a4bfac4f6862316811a05a2b45 (patch)
tree5c58e716e33aab62cb175576f5f36822897ad306 /contrib
parent87ee59b8d72c391cf667ac1c3e1d8a33357a6b01 (diff)
downloadansible-4d0f2e632c8277a4bfac4f6862316811a05a2b45.tar.gz
Docker inventory service/stack groups for docker swarm (#48021)
* Adding service and stack grouping to docker inventory * Updating documentation * Adding changelog fragment for docker.py inventory script
Diffstat (limited to 'contrib')
-rwxr-xr-xcontrib/inventory/docker.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/contrib/inventory/docker.py b/contrib/inventory/docker.py
index ba221ff434..1b92b4c527 100755
--- a/contrib/inventory/docker.py
+++ b/contrib/inventory/docker.py
@@ -196,6 +196,8 @@ When run in --list mode (the default), container instances are grouped by:
- container name
- container short id
- image_name (image_<image name>)
+ - stack_name (stack_<stack name>)
+ - service_name (service_<service name>)
- docker_host
- running
- stopped
@@ -622,6 +624,14 @@ class DockerInventory(object):
if image_name:
self.groups["image_%s" % (image_name)].append(name)
+ stack_name = inspect.get('Config', dict()).get('Labels', dict()).get('com.docker.stack.namespace')
+ if stack_name:
+ self.groups["stack_%s" % stack_name].append(name)
+
+ service_name = inspect.get('Config', dict()).get('Labels', dict()).get('com.docker.swarm.service.name')
+ if service_name:
+ self.groups["service_%s" % service_name].append(name)
+
self.groups[id].append(name)
self.groups[name].append(name)
if short_id not in self.groups: