From 8bbd2c7aaa926ff504e8a737900c2bcf3a003e72 Mon Sep 17 00:00:00 2001 From: AlanCoding Date: Thu, 23 Apr 2020 10:52:17 -0400 Subject: [PATCH] bump collection requirements, vmware patches New VMWare and azure were released, pick those up Enable using of VMWare inventory plugin for Ansible 2.9 Few fixes from manual testing with VMWare Remove invalid properties which resulted in no hosts imported Add some defaults to be more consistent with script --- awx/main/models/inventory.py | 17 ++++++++++++----- .../vmware/files/vmware_vm_inventory.yml | 3 --- requirements/collections_requirements.yml | 4 ++-- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/awx/main/models/inventory.py b/awx/main/models/inventory.py index b0e5e6700f..7c596547e7 100644 --- a/awx/main/models/inventory.py +++ b/awx/main/models/inventory.py @@ -2251,7 +2251,7 @@ class gce(PluginFileInjector): class vmware(PluginFileInjector): plugin_name = 'vmware_vm_inventory' - # initial_version = '2.9' # Ready 4/22/2020, waiting for release + initial_version = '2.9' ini_env_reference = 'VMWARE_INI_PATH' base_injector = 'managed' namespace = 'community' @@ -2268,9 +2268,6 @@ class vmware(PluginFileInjector): # Documentation of props, see # https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/scenario_guides/vmware_scenarios/vmware_inventory_vm_attributes.rst UPPERCASE_PROPS = [ - "ansible_ssh_host", - "ansible_host", - "ansible_uuid", "availableField", "configIssue", "configStatus", @@ -2343,16 +2340,26 @@ class vmware(PluginFileInjector): if not striped_hf: continue ret['filters'].append(striped_hf) + else: + # default behavior filters by power state + ret['filters'] = ['runtime.powerState == "poweredOn"'] groupby_patterns = vmware_opts.get('groupby_patterns') + ret.setdefault('keyed_groups', []) if groupby_patterns: - ret.setdefault('keyed_groups', []) for pattern in groupby_patterns.split(','): stripped_pattern = pattern.replace('{', '').replace('}', '').strip() # make best effort ret['keyed_groups'].append({ 'prefix': '', 'separator': '', 'key': stripped_pattern }) + else: + # default groups from script + for entry in ('guest.guestId', '"templates" if config.template else "guests"'): + ret['keyed_groups'].append({ + 'prefix': '', 'separator': '', + 'key': entry + }) return ret diff --git a/awx/main/tests/data/inventory/plugins/vmware/files/vmware_vm_inventory.yml b/awx/main/tests/data/inventory/plugins/vmware/files/vmware_vm_inventory.yml index 6363d6c26b..d08a5ff126 100644 --- a/awx/main/tests/data/inventory/plugins/vmware/files/vmware_vm_inventory.yml +++ b/awx/main/tests/data/inventory/plugins/vmware/files/vmware_vm_inventory.yml @@ -25,9 +25,6 @@ keyed_groups: separator: '' plugin: community.vmware.vmware_vm_inventory properties: -- ansible_ssh_host -- ansible_host -- ansible_uuid - availableField - configIssue - configStatus diff --git a/requirements/collections_requirements.yml b/requirements/collections_requirements.yml index cec16c491f..333ed62924 100644 --- a/requirements/collections_requirements.yml +++ b/requirements/collections_requirements.yml @@ -3,7 +3,7 @@ collections: - name: awx.awx version: 9.3.0 - name: azure.azcollection - version: 0.1.1 # questionable https://github.com/ansible-collections/azure/issues/55 + version: 0.1.2 - name: amazon.aws version: 0.1.1 # version 0.1.0 seems to have gone missing - name: theforeman.foreman @@ -13,6 +13,6 @@ collections: - name: openstack.cloud version: 0.0.1-dev85 # earlier had checksum mismatch - name: community.vmware - version: 0.3.1-dev1 + version: 0.4.0 # first to contain necessary grouping and filtering features - name: ovirt.ovirt_collection version: 1.0.1 # new fix published, should be good to go