openstack-ansible/doc/source/reference/configure-inventory.rst
Jesse Pretorius 315780f350 March to the beat of the new docs drum
Boss drum, motivating rhythm of life with the
healing, rhythmic synergy.

More seriously, this patch re-arranges the
documentation structure to conform to the
structure outlined in [1].

With it, some changes are made to effectively
transition the links and simplify the sphinx
configuration.

The Mitaka/Liberty documentation links are
removed as they are no longer available.

[1] http://specs.openstack.org/openstack/docs-specs/specs/pike/os-manuals-migration.html
Change-Id: Icc985de3af4de5ea7a5aa01b6e6f6e524c67f11b
2017-07-05 09:13:13 +00:00

1.9 KiB

Configuring the inventory

Changing the base environment directory

The --environment/-e argument will take the path to a directory containing an env.d directory. This defaults to playbooks/inventory/ in the OpenStack-Ansible codebase.

Contents of this directory are populated into the environment before the env.d found in the directory specified by --config.

Checking inventory configuration for errors

Using the --check flag when running dynamic_inventory.py will run the inventory build process and look for known errors, but not write any files to disk.

If any groups defined in the openstack_user_config.yml or conf.d files are not found in the environment, a warning will be raised.

This check does not do YAML syntax validation, though it will fail if there are unparseable errors.

Writing debug logs

The --debug/-d parameter allows writing of a detailed log file for debugging the inventory script's behavior. The output is written to inventory.log in the current working directory.

The inventory.log file is appended to, not overwritten.

Like --check, this flag is not invoked when running from ansible.

Configuration constraints

Group memberships

When adding groups, keep the following in mind:

  • A group can contain hosts
  • A group can contain child groups

However, groups cannot contain child groups and hosts.

The lxc_hosts Group

When the dynamic inventory script creates a container name, the host on which the container resides is added to the lxc_hosts inventory group.

Using this name for a group in the configuration will result in a runtime error.

Dynamic Inventory API documentation

dynamic_inventory