hub_ee_registries
group_vars/all/hub_ee_registries.yml
As we do not configure extra ee_registries, this file could be an empty set. For educational purposes, we added the removal of a custom registry entry.
---
hub_ee_registries_all:
- name: my_registry
state: absent
...
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/hub_ee_registries.yml
As we do not configure extra ee registries in automation hub, this file is an empty set.
---
hub_ee_registries_dev: []
# No extra config exists
...
Here the variable has the "_dev" extension, so the variable will not be overridden.
group_vars/prod/hub_ee_registries.yml
As we do not configure extra ee_registries in automation hub, this file is an empty set.
---
hub_ee_registries_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:
- hub_ee_registries_all
- hub_ee_registries_
We will merge these 2 variables into 1: hub_ee_registries and feed this to the infra.aap_configuration.hub_ee_registries role.
In main.yml the merge of the variables is done by this piece of code:
- name: Set the gateway vars
ansible.builtin.set_fact:
hub_ee_registries: >
{{ hub_ee_registries_all |
community.general.lists_mergeby(vars['hub_ee_registries_' + branch_name],
'name', recursive=true, list_merge='append') }}
This results in the hub_ee_registries variable the collection needs.