Test Environment

This page describes details about the test environment setup.

Epel

Before Testing Farm starts installing artifacts into the test environment, it adds the EPEL repositories to the system.

Epel repository is added only for CentOS Stream distributions tested via the 🌍 Public ranch.

For RHEL the repository is not added by default, as this is not considered a best practice when testing RHEL.

For enabling the repository for RHEL you can use:

Implementation

The tag repository setup is implemented via the following guest-setup playbook:

Tag Repository

Before Testing Farm starts installing artifacts into the test environment, it adds the "tag repository" to the system. This repository contains all builds tagged with -candidate (i.e. which passed gating) that are not yet present in the nightly repository. It’s currently necessary as landing in nightly can take an indefinite amount of time due to the manual "pre-validation" and "attach to erratum" steps. Adding this repository greatly reduces the number of artifact installation failures.

The repository is auto-generated by the build system - Koji or Brew. The base url of the repository is set up according to the test environment operating system.

Tag repository is added:

  • for RHEL, CentOS Stream and Fedora based distributions

  • when testing on VM or Bare Metal, for container testing the setup is skipped

Tag repository details:

  • repository name: testing-farm-tag-repository

  • priority

    • 🌍 Public Ranch - 9 (higher then system repos)

    • 🎩 Red Hat Ranch - 999 (lower then system repos)

We are revisiting the usage of the tag repository for RHEL and Fedora in Testing Farm

Implementation

The tag repository setup is implemented via the following guest-setup playbooks: