controller_inventories.yml

In these files we configure the inventories for automation controller.
we will probably do this on each environment separately, as the hostnames differ.

group_vars/all/controller_inventories.yml

Here we see an empty set for all.

---
controller_inventories_all:

  - name: ORG_NEW_inventory
    description: ORG_NEW Inventory
    organization: ORG_NEW
    variables: '{}'
...

But you can already see that the variable name used here has the "_all" extension, so the variable will not be overridden as this is not quite a inventory.
Why we do this, will become clear in a moment.

group_vars/dev/controller_inventories.yml

As we do not configure extra inventories in development, this file is an empty set.
(We use the containerized setup version, so no need for inventories).

---
controller_inventories_dev: []
  # No extra config exists
...

Here the variable has the "_dev" extension, so the variable will not be overridden.

group_vars/prod/controller_inventories.yml

As we do not configure extra inventories in prod, this file is an empty set.

---
controller_inventories_prod: []
  # No extra config exists
...

Here the variable has the "_prod" extension, so the variable will not be overridden.

When we run a pipeline for a certain environment, the inventory structure will provide us with 2 variables: - controller_inventories_all
- controller_inventories_

We will merge these 2 variables into 1: controller_inventories and feed this to the infra.aap_configuration.controller_inventories role.

Back