Courseiva

EX294 · domain

Create content collections and execution environments

This domain covers Ansible content collections and execution environments on Red Hat Ansible Automation Platform. You must know how to build, version, and publish collections to Automation Hub or a private automation hub, and how execution environments package collections, Python dependencies, and ansible-core into container images. Questions test real commands, versioning rules, and the roles of ansible-galaxy and ansible-builder.

64 questions20 easy25 medium19 hard

Focused practice

Practice Create content collections and execution environments questions

Scored sessions drawing only from this domain — pick a length below.

Start 20-question practice test →

What this domain covers

What to know about Create content collections and execution environments

Be able to build and publish a collection with ansible-galaxy, bump its version before republishing, and build an execution environment with ansible-builder. The single most important thing: a published collection version is immutable, so update the version in galaxy.yml before publishing again.

Using ansible-galaxy collection build and ansible-galaxy collection publish to package and upload collections

Incrementing the collection version in galaxy.yml before republishing an already-published collection

Uploading collections to a private automation hub with ansible-galaxy collection publish and an API token

Building execution environments with ansible-builder and an execution-environment.yml definition file

Watch out for

Common Create content collections and execution environments exam traps

  • ▸Trying to republish a collection with the same version already on Automation Hub instead of bumping the version in galaxy.yml first
  • ▸Confusing collection publishing commands with execution environment build commands, or forgetting the required API token and server URL
  • ▸Assuming execution environments only contain collections, ignoring Python dependencies and ansible-core pinned in the definition file

Question index

All Create content collections and execution environments questions (64)

Click any question to see the full explanation, or start a practice session above.

1

Based on the exhibit, which file is generated by `ansible-builder` to support the build?

Easy
2

Which command publishes a collection to Automation Hub?

Easy
3

Which THREE components are typically included in an execution environment?

Hard
4

An automation engineer is preparing an execution environment for a project that requires the `community.general` collection and the `netaddr` Python library. The engineer has created an `execution-environment.yml` file in the project directory. Which command should be used to build the execution environment image?

Medium
5

An administrator is creating a new execution environment and wants to use a minimal base image provided by Red Hat that includes `ansible-core` and essential Python libraries. Which base image should be specified in the `execution-environment.yml` file?

Easy
6

Which TWO factors should be considered when choosing a base container image for an execution environment?

Easy
7

Drag and drop the steps to configure SELinux to allow Apache to read a custom web directory in the correct order.

Medium
8

An automation engineer has written a custom Ansible role called `db_deploy` and wants to package it inside a new collection named `acme.database`. Which command initializes the collection skeleton with the correct directory layout for roles, modules, and plugins?

Easy
9

Refer to the exhibit. A developer builds an execution environment using this execution-environment.yml. After building, the container starts but ansible-navigator cannot connect to the container because the required SSH packages are missing. Which file most likely needs to be updated?

Hard
10

Your organization uses Ansible Automation Platform 2.2 with private Automation Hub. You have developed a custom collection named 'my_company.network' that depends on 'cisco.ios' and 'vyos.vyos'. The collection is published in your private hub. You are building an execution environment using ansible-builder. The execution-environment.yml specifies 'EE_BASE_IMAGE: registry.redhat.io/ansible-automation-platform-22/ee-supported-rhel8:latest'. The dependencies section points to a requirements.yml file that includes your collection. When you run 'ansible-builder build', the build succeeds, but when running a playbook that uses modules from 'cisco.ios', you get an error 'module not found'. What is the most likely reason and the correct action to resolve it?

Medium
11

Refer to the exhibit. A user attempts to download the collection using the download URL but the signature verification fails. What is the most likely reason?

Hard
12

An organization uses a private Automation Hub. A user has configured the server in ansible.cfg. Which command installs a collection from this server?

Medium
13

You are developing a content collection and need to include a custom Ansible module that requires a specific Python library. The library is not available as a system package and must be installed via pip. Where should you declare this Python dependency so that it is automatically installed when the collection is used in an execution environment?

Medium
14

An organization uses a private automation hub to distribute collections. A developer has created a new collection and needs to ensure it is available in the hub for others. Which command should the developer use to upload the collection to the private automation hub?

Medium
15

The build fails with a DNS resolution error for `registry.redhat.io`. Which troubleshooting step is most likely to resolve the issue?

Hard
16

A developer is creating a new content collection named `acme.automation` and wants to ensure that the collection is structured correctly for distribution. After running `ansible-galaxy collection init acme.automation`, which directory should contain the custom Ansible modules that the collection will provide?

Hard
17

A developer is creating a new content collection and wants to include a custom module that requires the `requests` Python library. The collection will be used in an execution environment. Where should the developer declare this Python dependency so that it is automatically installed when the execution environment is built?

Hard
18

Which TWO statements are true about Ansible content collections?

Medium
19

A build of an execution environment fails with an error that ansible-builder cannot find the collection acme.internal.utils in any configured Galaxy server. The collection exists on the private Automation Hub, and the build host can reach it. The execution-environment.yml lists the collection under dependencies.galaxy pointing to requirements.yml. What is the most likely cause?

Hard
20

Which file is required to define the content of an Ansible execution environment when using ansible-builder?

Easy
21

When building an execution environment with ansible-builder, a developer notices that the build process fails with an error about missing dependencies. The developer wants to ensure all required Python packages are installed in the execution environment. Which file should be used to specify additional Python packages?

Medium
22

An automation team wants to build an execution environment that includes a specific collection from a private Automation Hub. Which file must be present in the build context to specify the collection and its source?

Easy
23

Based on the exhibit, what is the purpose of the `galaxy` dependency entry?

Medium
24

Which TWO statements about Ansible Execution Environments (EE) are true?

Medium
25

Which TWO options are valid methods for including collections in an execution environment?

Medium
26

Which TWO statements about Ansible content collections are correct?

Hard
27

A collection version is already published on Automation Hub. The developer needs to update the collection with a new feature. What must be done to the version number before publishing again?

Hard
28

An administrator needs to create a new Ansible content collection named `myorg.automation` that will contain roles and modules. Which command initializes the collection directory structure with the required skeleton files?

Easy
29

Match each firewall zone to its default behavior.

Medium
30

An automation team is designing a content collection to distribute internal Ansible modules across the organization. The collection should be installed from a private Galaxy server. To minimize namespace conflicts and ensure discoverability, which naming convention should be used for the collection?

Hard
31

A user wants to use a collection from Automation Hub. Which command downloads and installs the collection to the default collections path?

Easy
32

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.)

Medium
33

A DevOps engineer is creating an execution environment for a team that needs both Ansible and the 'requests' Python library. The engineer creates an execution environment definition file (EE.yml) with the following content: --- version: 3 images: base_image: name: registry.redhat.io/ansible-automation-platform-22/ee-minimal-rhel8:latest options: package_manager_path: /usr/bin/microdnf dependencies: python: requirements.txt system: bindep.txt What is missing from this definition to ensure the 'requests' library is installed?

Hard
34

Your team maintains a collection that includes custom modules and plugins. You have been tasked with creating a content collection that adheres to the Red Hat Ansible Content Collection requirements. You have created the directory structure and written the collection code. Now you need to package the collection for distribution to your internal automation hub. You run 'ansible-galaxy collection build' and it completes successfully, generating a tarball. However, when you try to publish it to your private automation hub using 'ansible-galaxy collection publish', you get an authentication error. You have verified that your automation hub server URL and API token are correct. What is the most likely cause of the error?

Medium
35

Which THREE files are commonly used when building an execution environment with ansible-builder?

Medium
36

An Ansible developer needs to use the `podman_container` module in a playbook. The module is part of the `containers.podman` collection. Which command must be run first to make the module available?

Easy
37

An organization wants to include custom Python packages in their execution environment to support custom modules. Which method should be used to define these Python dependencies?

Medium
38

A developer is preparing a collection for distribution and must declare its metadata, including version, license, and the list of collections it depends on. Which file at the collection root contains these declarations?

Medium
39

Ansible Builder fails during the build of an execution environment with error: 'No matching manifest for linux/amd64 in the manifest list entries'. What is the most likely cause?

Hard
40

An administrator needs to create a custom execution environment that includes a specific Ansible collection and a Python package. Which two steps are required to build and use the execution environment? (Choose two.)

Hard
41

You are creating a new Ansible content collection named 'acme.corp' using the ansible-galaxy collection init command. After running the command, you need to add a module that will be part of this collection. Where should you place the module file within the collection directory structure?

Easy
42

An organization's execution environment must include a custom RPM that is not in the default base image. How should this be added in the execution-environment.yml?

Medium
43

Which directory is the default location for installed Ansible collections on a control node for a regular user?

Easy
44

A team develops an Ansible collection and wants to distribute it internally. They have a private Automation Hub. Which approach best ensures that collection dependencies from external sources are also available?

Hard
45

You are preparing to publish a new version of a content collection to a private Automation Hub. The collection includes several roles and modules. Before publishing, you need to ensure the collection is properly built and packaged. Which two commands are required to build and publish the collection? (Choose two.)

Medium
46

A developer wants to create a new collection named 'myutils' under namespace 'myorg'. Which command initializes the collection structure?

Medium
47

Which TWO actions are required to use a private Automation Hub to share collections?

Easy
48

During a collection development, a developer wants to include a Python dependency that is not available in the base image of the execution environment. Where should this dependency be declared?

Hard
49

A user wants to build an execution environment from a definition file. Which command is used?

Easy
50

Your organization is migrating from manually maintained control nodes to using execution environments. You have created an execution environment that includes all necessary collections and Python dependencies. You want to ensure that developers use this execution environment when running playbooks. You have configured ansible-navigator on their workstations. However, some developers report that when they run a playbook, it uses the local installation of Ansible instead of the execution environment. What should you check first?

Medium
51

Your team maintains a collection that depends on a module requiring the Python library netaddr. You are building an execution environment with ansible-builder and need that library available inside the image at run time. The collection itself is installed from a private Automation Hub. Which approach ensures the Python dependency is present in the execution environment?

Hard
52

A developer wants to create a new Ansible collection from a skeleton template. Which command should be used?

Easy
53

Refer to the exhibit. A user runs ansible-runner with --container-image localhost/ee-30:latest and receives the error shown. What is the most likely cause?

Medium
54

A developer is creating a new content collection named acme.tools to distribute internal modules and roles. Which command initializes the collection with the standard directory skeleton, including the galaxy.yml metadata file?

Easy
55

Which TWO statements about execution environments are true?

Medium
56

Which key in the galaxy.yml file defines the collection's namespace?

Easy
57

An admin wants to build an execution environment using ansible-builder. Which file is required to define the base image and additional Python dependencies?

Easy
58

A team wants to use a certified collection from Red Hat Automation Hub but cannot access it directly due to firewall restrictions. What is the best practice?

Medium
59

A system administrator wants to build an Ansible execution environment using ansible-builder. Which file format is required to define the base image, dependencies, and additional Python packages for the build?

Easy
60

An execution environment fails to build because `pip install` fails when installing a Python package from a private repository that requires authentication. The build works when run locally by the developer. Which approach should be taken to securely provide credentials during the `ansible-builder build` process?

Hard
61

A platform team maintains an execution environment definition where `requirements.yml` lists several collections. They need to pin `community.general` to a specific version range so that only releases from 7.0.0 up to but not including 8.0.0 are installed during the build. Which syntax inside `requirements.yml` accomplishes this?

Medium
62

A system administrator wants to publish a custom Ansible collection to a private Automation Hub. What is the correct command to build the collection before publishing?

Easy
63

You are building an execution environment using ansible-builder with a definition that includes a base image and a list of collections. During the build, you need to run a custom shell command to install an additional system package that is not available via the standard package manager configuration. Which section of the execution-environment.yml file should you use to add this custom build step?

Hard
64

An admin attempts to build an execution environment using the exhibited files. The build fails with an error about incompatible Python dependency. What is the most likely cause?

Hard

Frequently asked questions

What does the Create content collections and execution environments domain cover on the EX294 exam?
Be able to build and publish a collection with ansible-galaxy, bump its version before republishing, and build an execution environment with ansible-builder. The single most important thing: a published collection version is immutable, so update the version in galaxy.yml before publishing again.
How many questions are in this domain?
This page lists all 64 Create content collections and execution environments questions in the EX294 question bank. The actual exam draws from this domain proportionally to its weighting in the official exam blueprint.
What is the best way to practise this domain?
Start with a short focused session (10 questions) to identify gaps, then work through explanations. Repeat with a longer session once the weak areas feel solid.
Can I practise only Create content collections and execution environments questions?
Yes — the session launcher on this page filters questions to this domain only. Choose any session length for inline explanations and scoring.
redhat-rhce REDHAT-RHCE collections environments Practice Questions