YAML inventory unit test: fix test inventory format (#33828)
* Fix YAML inventory unit test * YAML inventory unit test: add checks * YAML: add hosts without any group to ungrouped
This commit is contained in:
parent
7c187cae93
commit
dfb2f346d8
2 changed files with 14 additions and 3 deletions
|
@ -140,6 +140,9 @@ class InventoryModule(BaseFileInventoryPlugin):
|
|||
for host_pattern in group_data['hosts']:
|
||||
hosts, port = self._parse_host(host_pattern)
|
||||
self._populate_host_vars(hosts, group_data['hosts'][host_pattern] or {}, group, port)
|
||||
if group == 'all':
|
||||
for host in hosts:
|
||||
self.inventory.add_host(host, group='ungrouped', port=port)
|
||||
else:
|
||||
self.display.warning('Skipping unexpected key (%s) in group (%s), only "vars", "children" and "hosts" are valid' % (key, group))
|
||||
|
||||
|
|
|
@ -113,7 +113,7 @@ class TestInventory(unittest.TestCase):
|
|||
)
|
||||
|
||||
|
||||
class IniInventory(unittest.TestCase):
|
||||
class TestInventoryPlugins(unittest.TestCase):
|
||||
|
||||
def test_empty_inventory(self):
|
||||
inventory = self._get_inventory('')
|
||||
|
@ -168,13 +168,21 @@ class IniInventory(unittest.TestCase):
|
|||
---
|
||||
all:
|
||||
hosts:
|
||||
test1
|
||||
test2
|
||||
test1:
|
||||
test2:
|
||||
""")}
|
||||
C.INVENTORY_ENABLED = ['yaml']
|
||||
fake_loader = DictDataLoader(inventory_content)
|
||||
im = InventoryManager(loader=fake_loader, sources=filename)
|
||||
self.assertTrue(im._inventory.hosts)
|
||||
self.assertIn('test1', im._inventory.hosts)
|
||||
self.assertIn('test2', im._inventory.hosts)
|
||||
self.assertIn(im._inventory.get_host('test1'), im._inventory.groups['all'].hosts)
|
||||
self.assertIn(im._inventory.get_host('test2'), im._inventory.groups['all'].hosts)
|
||||
self.assertEqual(len(im._inventory.groups['all'].hosts), 2)
|
||||
self.assertIn(im._inventory.get_host('test1'), im._inventory.groups['ungrouped'].hosts)
|
||||
self.assertIn(im._inventory.get_host('test2'), im._inventory.groups['ungrouped'].hosts)
|
||||
self.assertEqual(len(im._inventory.groups['ungrouped'].hosts), 2)
|
||||
|
||||
def _get_inventory(self, inventory_content):
|
||||
|
||||
|
|
Loading…
Reference in a new issue