Questo contenuto non è disponibile nella lingua selezionata.
Chapter 5. Decision environments
Decision environments are container images that run Ansible rulebooks. They create a common language for communicating automation dependencies, and give a standard way to build and distribute the automation environment.
You can find the default decision environment in the Ansible-Rulebook.
To create your own decision environment, see Installing ansible-builder and Building a custom decision environment for Event-Driven Ansible within Ansible Automation Platform.
5.1. Installing ansible-builder Copia collegamentoCollegamento copiato negli appunti!
To build images, install ansible-builder Python package (along with Podman or Docker) to build the custom decision environments required for rulebooks.
The --container-runtime option must correspond to the Podman or Docker executable you intend to use.
When building a decision environment image, it must support the architecture that Ansible Automation Platform is deployed with.
For more information, see Quickstart for Ansible Builder or Creating and using execution environments.
5.2. Building a custom decision environment for Event-Driven Ansible Copia collegamentoCollegamento copiato negli appunti!
Customize a decision environment container image to ensure your rulebook activations run with the precise, custom-maintained collections and dependencies they require.
Prerequisites
- Ansible Automation Platform > = 2.5
- Event-Driven Ansible
- Ansible Builder > = 3.0
Use the correct Event-Driven Ansible controller decision environment in Ansible Automation Platform to prevent rulebook activation failure.
-
If you want to connect Event-Driven Ansible controller to Ansible Automation Platform 2.4, you must use
registry.redhat.io/ansible-automation-platform-24/de-minimal-rhel9:latest -
If you want to connect Event-Driven Ansible controller to Ansible Automation Platform 2.6, you must use
registry.redhat.io/ansible-automation-platform-25/de-minimal-rhel9:latest
-
If you want to connect Event-Driven Ansible controller to Ansible Automation Platform 2.4, you must use
Procedure
Use
de-minimalas the base image with Ansible Builder to build your custom decision environments. This image is built from a base image provided by Red Hat at Ansible Automation Platform minimal decision environment.The following is an example of the Ansible Builder definition file that uses
de-minimalas a base image to build a custom decision environment with the ansible.eda collection:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optional: If you need other Python packages or RPMs, add the following to a single definition file:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3. Setting up a new decision environment Copia collegamentoCollegamento copiato negli appunti!
Set up a new decision environment to define the dedicated, containerized runtime (including collections and dependencies) necessary to execute your rulebook activations.
Prerequisites
- You have set up a credential, if necessary. For more information, see the Setting up credentials section.
-
You have pushed a decision environment image to an image repository or you chose to use the
de-minimalimage located in registry.redhat.io.
Procedure
- Log in to Ansible Automation Platform.
-
Navigate to
. - Click .
Insert the following:
- Name
- Insert the name.
- Description
- This field is optional.
- Organization
- Select an organization to associate with the decision environment.
- Image
- This is the full image location, including the container registry, image name, and version tag.
- Pull
This optional field defines when the Event-Driven Ansible controller attempts to download (pull) the specified container image from the registry before running an automation rulebook. This setting is crucial for ensuring security, consistency, and efficient use of system resources by controlling when the local image cache is updated or reused.
- Always pull container before running - checks the registry for a new version of the image before every use, even if a local copy exists. This ensures that the freshest content is always used, which is critical for security patches, content updates, and staging environments.
- Only pull the image if not present before running - checks the local cache of Event-Driven Ansible controller first. If the image is found locally, it is used immediately. A pull from the registry only happens if the image is not found locally. This optimizes performance by avoiding unnecessary downloads and is best for production environments where the content image is stable and faster startup is required.
- Never pull container before running - never attempts to pull the image from the registry. It only uses an image that has been previously pulled and is present in the local cache. This option guarantees consistency by preventing unintended content changes. It requires the image to be manually pulled to Event-Driven Ansible controller beforehand. If the image isn’t present, the activation fails.
- Credential
- This field is optional. This is the credential needed to use the decision environment image.
- Select .
Results
Your decision environment is now created and can be managed on the Decision Environments page.
After saving the new decision environment, the decision environment’s details page is displayed. From there or the Decision Environments list view, you can edit or delete it.