Courseiva

EX294 Practice Question: Create content collections and execution environments

An engineer is preparing to build an execution environment using `ansible-builder`. The build must include several collections and also install additional Python packages. Which two files are used to declare these dependencies? (Choose two.)

⚠ Common exam trap

Many candidates confuse `bindep.txt` (system packages) with `requirements.txt` (Python packages), or assuming that `execution-environment.yml` directly lists all dependencies.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

requirements.yml

The correct files are `requirements.yml` for Ansible collections and roles, and `requirements.txt` for Python packages. These are referenced by the `execution-environment.yml` file and are used by `ansible-builder` to install the necessary dependencies into the execution environment.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    requirements.yml

    Why this is correct

    `requirements.yml` is used to list Ansible collections and roles that should be installed into the execution environment. It is the standard file for declaring collection dependencies, including those from Automation Hub or Galaxy. This file ensures the required collections are present.

  • ✗

    galaxy.yml

    Why it's wrong here

    `galaxy.yml` is metadata for an Ansible collection, not for an execution environment. It defines the collection's own dependencies, but it is not used by `ansible-builder` to determine what to install into the execution environment. It is irrelevant in this context.

  • ✗

    execution-environment.yml

    Why it's wrong here

    `execution-environment.yml` is the main definition file that references the dependency files, but it does not directly list collections or Python packages. It specifies the base image and points to `requirements.yml`, `bindep.txt`, and `requirements.txt`. It is not the file where dependencies are declared.

  • ✗

    bindep.txt

    Why it's wrong here

    `bindep.txt` is used to specify system-level package dependencies, such as RPM packages, needed by the execution environment. It does not handle Python packages; those are managed separately. Therefore, it is not the correct file for Python dependencies.

  • ✓

    requirements.txt

    Why this is correct

    `requirements.txt` is a standard Python requirements file used by `ansible-builder` to install additional Python packages into the execution environment. It lists packages with optional version specifiers, ensuring the required Python libraries are available for modules and plugins.

About these practice questions

Courseiva writes every EX294 question from scratch — 392 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Red Hat exam blueprint

This EX294 practice question is part of Courseiva's free Red Hat certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the EX294 exam.