Fixes #32146 Fixes reconcile inventory to correctly remove hosts from ungrouped

(cherry picked from commit e02c72d856)
pull/37276/head
Izuke 7 years ago committed by Matt Davis
parent 4ecd16b2ae
commit 5b0d8ab868

@ -128,7 +128,7 @@ class InventoryData(object):
if self.groups['ungrouped'] in mygroups:
# clear ungrouped of any incorrectly stored by parser
if set(mygroups).difference(set([self.groups['all'], self.groups['ungrouped']])):
host.remove_group(self.groups['ungrouped'])
self.groups['ungrouped'].remove_host(host)
elif not host.implicit:
# add ungrouped hosts to ungrouped, except implicit

@ -198,6 +198,6 @@ class TestInventoryPlugins(unittest.TestCase):
all_hosts = set(host.name for host in inventory.groups['all'].get_hosts())
self.assertEqual(set(['host1', 'host2', 'host3', 'host4', 'host5']), all_hosts)
ungrouped_hosts = set(host.name for host in inventory.groups['ungrouped'].get_hosts())
self.assertEqual(set(['host1', 'host2', 'host3']), ungrouped_hosts)
self.assertEqual(set(['host1', 'host2']), ungrouped_hosts)
servers_hosts = set(host.name for host in inventory.groups['servers'].get_hosts())
self.assertEqual(set(['host3', 'host4', 'host5']), servers_hosts)

Loading…
Cancel
Save