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.
Start practicing
Create content collections and execution environments — choose a session length
Free · No account required
Domain overview
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.
Exam objectives
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
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
Click any question to see the full explanation and answer options, or start a focused practice session above.
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?
2When 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?
3A 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?
4A 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?
5Which TWO statements about Ansible content collections are correct?
6Which THREE files are commonly used when building an execution environment with ansible-builder?
7An admin wants to build an execution environment using ansible-builder. Which file is required to define the base image and additional Python dependencies?
8A 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?
9Which TWO statements are true about Ansible content collections?
10An 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?
11Your 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?
12Which TWO statements about Ansible Execution Environments (EE) are true?
13Drag and drop the steps to configure SELinux to allow Apache to read a custom web directory in the correct order.
14Match each firewall zone to its default behavior.
15A 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?
16Ansible 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?
17Which file is required to define the content of an Ansible execution environment when using ansible-builder?
18Which command publishes a collection to Automation Hub?
19A 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?
20Which key in the galaxy.yml file defines the collection's namespace?
21Which TWO options are valid methods for including collections in an execution environment?
22Which TWO factors should be considered when choosing a base container image for an execution environment?
23Refer 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?
24Refer 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?
25An 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?
26The build fails with a DNS resolution error for `registry.redhat.io`. Which troubleshooting step is most likely to resolve the issue?
27An 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?
28An 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?
29A developer wants to create a new Ansible collection from a skeleton template. Which command should be used?
30Based on the exhibit, what is the purpose of the `galaxy` dependency entry?
31Based on the exhibit, which file is generated by `ansible-builder` to support the build?
32A user wants to use a collection from Automation Hub. Which command downloads and installs the collection to the default collections path?
33An organization uses a private Automation Hub. A user has configured the server in ansible.cfg. Which command installs a collection from this server?
34Which directory is the default location for installed Ansible collections on a control node for a regular user?
35A developer wants to create a new collection named 'myutils' under namespace 'myorg'. Which command initializes the collection structure?
36An 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?
37A user wants to build an execution environment from a definition file. Which command is used?
38During 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?
39Which TWO actions are required to use a private Automation Hub to share collections?
40Which TWO statements about execution environments are true?
41Which THREE components are typically included in an execution environment?
42Refer 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?
43A 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?
44An 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?
45Your 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?
46Your 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?
47An 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.)
48An 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?
49An 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.)
50An 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?
51A 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?
52An 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?
53A 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?
54A 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?
55You 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?
56An 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?
57Your 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?
58You 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?
59A 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?
60You 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.)
61You 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?
62A 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?
63An 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?
64A 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?
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.
The Courseiva EX294 question bank contains 64 questions in the Create content collections and execution environments domain, covering the 12% of the exam attributed to this domain in the official Red Hat blueprint. Click any question to see the full explanation and answer breakdown.
Start with a 10-question focused session to identify your baseline accuracy in this domain. Read every explanation — even for questions you answer correctly — to understand the reasoning. Once you score consistently above 80%, move to a 20–30 question session to confirm depth before moving to the next domain.
Yes — the session launcher on this page draws questions exclusively from the Create content collections and execution environments domain. Choose 10, 20, 30, or 50 questions for a focused session, or click individual questions to review them one by one.
Save your results, see per-domain analytics, and get readiness scores — free, for every certification.
Sign Up FreeFree forever · Every certification included