hub_collection_repositories

Ensure the correct repositorie are availlable to load collection into.

group_vars/all/hub_collection_repositories.yml

Just to be sure, we add the default repositories here.

---
hub_collection_repositories_all:

  - name: rh-certified
    description: Red Hat certified content repository
    remote: rh-certified
    update_repo: true
    wait: false
    state: present

  - name: community
    description: Community content repository
    remote: community
    update_repo: true
    wait: false
    state: present

  - name: validated
    description: Redhat validated content repository
    remote: validated
    update_repo: true
    wait: false
    state: present
...

group_vars/dev/hub_collection_repositories.yml

As we do not configure extra repositories in automation hub, this file is an empty set.

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

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

group_vars/prod/hub_collection_repositories.yml

As we do not configure extra repositories in automation hub, this file is an empty set.

---
hub_collection_repositories_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_collection_repositories_all
- hub_collection_repositories_

We will merge these 2 variables into 1: hub_collection_repositories and feed this to the infra.aap_configuration.hub_collection_repositories 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_collection_repositories: >
          {{ hub_collection_repositories_all |
          community.general.lists_mergeby(vars['hub_collection_repositories_' + branch_name],
          'name', recursive=true, list_merge='append') }}

This results in the hub_collection_repositories variable the collection needs.

Back