Story #8701

Updated by 7 months ago

As mentioned in #7773 , we should refactor our logic to add repos to the system (in a robust & configurable manner) into another role like `pulp_repos`. pulp_repos.

I propose the following design:
1. This is a dependency role. pulp_common, pulp_redis, pulp_database, will all depend on it.
2. When a role like pulp_common depends on it, it passes variables like `__pulp_repos_epel: true` to denote which repos the role needs. It passes variables via roles/pulp_common/meta/main.yml : `dependencies:`
3. If a user wants to disable the logic to add the repo (if they added it manually), they'll pass a variable like `pulp_repos_epel: false` to disable it.
4. Existing variables for configuring how we add the repos to the system, like `epel_release_packages`, should still used.

This logic is found in: