Chapter 5. Decision environments
Decision environments are a container image to run Ansible Rulebook 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 Building a custom decision environment for Event-Driven Ansible within Ansible Automation Platform.
5.1. Building a custom decision environment for Event-Driven Ansible
Decision Environments are execution environments tailored towards running Ansible Rulebooks.
Similar to execution environments that run Ansible rulebooks for automation controller, decision environments are designed to run rulebooks for Event-Driven Ansible controller.
You can create a custom decision environment for Event-Driven Ansible that provides a custom maintained or third-party event source plugin that is not available in the default decision environment.
Prerequisites
- Ansible Automation Platform > = 2.5
- Event-Driven Ansible
- Ansible Builder > = 3.0
Procedure
Add the
de-supported
decision environment. This image is built from a base image provided by Red Hat calledde-minimal
at Ansible Automation Platform supported decision environment.NoteRed Hat recommends using
de-minimal
as the base image with Ansible Builder to build your custom decision environments.
The following is an example of the Ansible Builder definition file that uses de-minimal
as a base image to build a custom decision environment with the ansible.eda collection:
version: 3 images: base_image: name: 'registry.redhat.io/ansible-automation-platform-24/de-minimal-rhel8:latest' dependencies: galaxy: collections: - ansible.eda python_interpreter: package_system: "python39" options: package_manager_path: /usr/bin/microdnf
Additionally, if you need other Python packages or RPMs, you can add the following to a single definition file:
version: 3 images: base_image: name: 'registry.redhat.io/ansible-automation-platform-24/de-minimal-rhel8:latest' dependencies: galaxy: collections: - ansible.eda python: - six - psutil system: - iputils [platform:rpm] python_interpreter: package_system: "python39" options: package_manager_path: /usr/bin/microdnf
5.2. Setting up a new decision environment
The following steps describe how to import a decision environment into your Event-Driven Ansible controller Dashboard.
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 image
de-supported
provided at 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.
- Credential
- This field is optional. This is the token needed to use the decision environment image.
- Select .
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.