### Run Ansible Automation Platform Setup Script Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-troubleshoot-rpm-aap Access the installation program folder and run the setup script to connect to nodes, install sos, and generate logs. ```bash $ ./setup.sh -s ``` -------------------------------- ### Automation Hub Extra Settings Example Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/appendix-inventory-files-vars Example of defining additional settings for Automation Hub during installation. ```yaml hub_extra_settings: some_setting: "some_value" ``` -------------------------------- ### Run Ansible Automation Platform Installer Setup Script Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/automation_mesh_for_vm_environments/setting-up Execute the setup script to begin the installation of Red Hat Ansible Automation Platform. Ensure you have updated the inventory file with the required parameters before running. ```bash $ sudo ./setup.sh ``` -------------------------------- ### Example hub_extra_settings for Automation Hub Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/appendix-inventory-files-vars This example demonstrates how to define additional settings for Automation Hub during installation, specifically enabling HTTPS redirection. ```python hub_extra_settings=[{"setting": "REDIRECT_IS_HTTPS", "value": True}] ``` -------------------------------- ### Run RPM-based Installation with Vault Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/hardening_and_compliance/hardening-aap Execute the setup script for RPM-based installations, providing the vault file and prompting for the vault password at runtime. ```bash ./setup.sh -e @vault.yml –ask-vault-pass ``` -------------------------------- ### Back up Ansible Automation Platform using setup.sh Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/controller-backup-and-restore Run the setup script to create a verified archive of your platform database, configurations, and secrets. Use `backup_dest` to specify a custom backup directory and compression flags to reduce artifact size. ```bash $ ./setup.sh -e 'backup_dest=/ansible/mybackup' -e 'use_archive_compression=true' 'use_db_compression=true @credentials.yml -b ``` -------------------------------- ### Webhook Payload Example: Job Started Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/using_automation_execution/index This is an example of a 'started' notification payload sent by Automation Controller to a webhook endpoint. ```json {"id": 38, "name": "Demo Job Template", "url": "https://host/#/jobs/playbook/38", "created_by": "bianca", "started": "2020-07-28T19:57:07.888193+00:00", "finished": null, "status": "running", "traceback": "", "inventory": "Demo Inventory", "project": "Demo Project", "playbook": "hello_world.yml", "credential": "Demo Credential", "limit": "", "extra_vars": "{}", "hosts": {}} ``` -------------------------------- ### Create and Deploy Plug-in Registry Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/installing_self-service_automation_portal/self-service-upgrading_aap-self-service-install Create a new build for an httpd service, start the build from a local directory containing plug-in files, and then create a new application using the built image stream. ```bash oc new-build httpd --name=plugin-registry --binary oc start-build plugin-registry --from-dir=$DYNAMIC_PLUGIN_ROOT_DIR --wait oc new-app --image-stream=plugin-registry ``` -------------------------------- ### Run Ansible Automation Platform Installer Setup Script Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_upgrade_and_migration/aap-upgrading-platform Execute the setup script after updating the inventory file to begin the installation process. ```bash $ ./setup.sh ``` -------------------------------- ### Run setup.sh for Upgrade Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_upgrade_and_migration/aap-upgrading-platform Command to execute the setup script for upgrading Ansible Automation Platform services to version 2.5. ```bash setup.sh ``` -------------------------------- ### Run the install playbook Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/installing-containerized-aap Execute the `install` playbook to begin the containerized Ansible Automation Platform installation. Ensure you are in the installation directory and specify your inventory file. ```bash ansible-playbook -i ansible.containerized_installer.install ``` ```bash ansible-playbook -i inventory ansible.containerized_installer.install ``` -------------------------------- ### Enable and Start Apache HTTP Service Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/disconnected-installation Enable the httpd service to start on boot and start it immediately. ```bash $ sudo systemctl enable --now httpd.service ``` -------------------------------- ### Open Example in Editor Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_content_navigator/assembly-review-collections-navigator_installing-devtools Open the current module example in your configured editor from within the automation content navigator. This facilitates copying and integrating examples into your playbooks. ```bash :open ``` -------------------------------- ### Install ansible-core Package Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_dashboard/assembly-view-key-metrics Installs the required ansible-core package. This command needs to be run from the extracted setup directory. ```bash cd ansible-automation-dashboard-containerized-setup sudo dnf install ansible-core ``` -------------------------------- ### View Module Examples Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/using_content_navigator/index Access the documentation examples for a specific module within the automation content navigator. This allows you to see how to use the module and copy examples into playbooks. ```shell :{{ examples }} 0│ 1│ 2│#### Simple examples 3│ 4│- name: Check if 10.1.1.1 is a valid IP address 5│ ansible.builtin.set_fact: 6│ data: "{{ '10.1.1.1' is ansible.utils.ip_address }}" 7│ 8│# TASK [Check if 10.1.1.1 is a valid IP address] ********************* 9│# ok: [localhost] => { 10│# "ansible_facts": { 11│# "data": true 12│# }, 13│# "changed": false 14│# } 15│ ``` -------------------------------- ### Extract Tarball Installer Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_upgrade_and_migration/aap-upgrading-platform Use this command to extract the Ansible Automation Platform setup tarball when installing with internet access. ```bash $ tar xvzf ansible-automation-platform-setup-.tar.gz ``` -------------------------------- ### Example Container Log Output Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/using_automation_dashboard/index This is an example of log output from the `automation-dashboard-task` container, showing the start of a sync task and retrieval of cluster information. ```text May 22 13:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Waiting for database migrations... May 22 13:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Attempt 1 May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2 140568371550016 Starting sync task. May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2 140568371550016 Retrieving clusters inform> May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,747 periodic 2 140568371550016 Retrieved 1 clusters. ``` -------------------------------- ### Example of creating a new OpenShift project Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/installing_self-service_automation_portal/self-service-preinstall-config_aap-self-service-install This example demonstrates how to create a new project named '' in OpenShift using the `oc new-project` command. ```bash $ oc new-project Now using project "my-project" on server "https://openshift.example.com:6443". ``` -------------------------------- ### Example of eda_extra_settings variable Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/appendix-inventory-files-vars Use the `eda_extra_settings` variable to define additional settings for Event-Driven Ansible during installation. This example shows how to set the `RULEBOOK_READINESS_TIMEOUT_SECONDS`. ```yaml eda_extra_settings=[{"setting": "RULEBOOK_READINESS_TIMEOUT_SECONDS", "value": 120}] ``` -------------------------------- ### Example: Displaying User Selections in Output Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_self-service_automation_portal/backstage-software-templates_aap-self-service-using This example demonstrates how to display user-entered parameter values within the output text, combining static text with dynamic references. ```yaml output: text: - title: Request submitted content: | Your request for **${{ parameters.app_name }}** has been submitted. **Configuration:** - Inventory: ${{ parameters.inventory }} - Environment: ${{ parameters.environment }} ``` -------------------------------- ### View Ansible Creator Help Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/developing_automation_content/installing-devtools Once installed, you can view the help documentation for `ansible-creator` to understand its usage and available commands, such as `add` and `init`. ```bash $ ansible-creator --help ``` -------------------------------- ### Jump to Module Examples Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_content_navigator/assembly-review-collections-navigator_installing-devtools Navigate directly to the examples section for a module within the automation content navigator. This is useful for understanding how to use the module in playbooks. ```bash :{{ examples }} ``` -------------------------------- ### Example of eda_extra_settings Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars This snippet demonstrates how to define additional settings for Event-Driven Ansible during installation using the `eda_extra_settings` variable. It shows an example of setting the `RULEBOOK_READINESS_TIMEOUT_SECONDS`. ```yaml eda_extra_settings=["{"setting": "RULEBOOK_READINESS_TIMEOUT_SECONDS", "value": 120}"] ``` -------------------------------- ### Run a test container with Podman Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/developing_automation_content/installing-devtools Tests the Podman installation by running the 'hello-world' container. This confirms that Podman is functioning correctly. ```bash $ podman run hello ``` -------------------------------- ### Full PostgreSQL Configuration Example Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/configuring_automation_execution/assembly-controller-improving-performance This is an example of the complete `postgres.py` file after replacing the plain text password with its encrypted and decrypted form. ```python # Ansible Automation platform controller database settings. from awx.main.utils import decrypt_value, get_encryption_key DATABASES = { 'default': { 'ATOMIC_REQUESTS': True, 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'awx', 'USER': 'awx', 'PASSWORD': decrypt_value(get_encryption_key('value'),'$encrypted$AESCBC$Z0FBQUFBQmNONU9BbGQ1VjJyNDJRVTRKaFRIR09Ib2U5TGdaYVRfcXFXRjlmdmpZNjdoZVpEZ21QRWViMmNDOGJaM0dPeHN2b194NUxvQ1M5X3dSc1gxQ29TdDBKRkljWHc9PQ=='), 'HOST': '127.0.0.1', 'PORT': 5432, } } ``` -------------------------------- ### Encrypted PostgreSQL Password Example Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/configuring_automation_execution/assembly-controller-improving-performance This is an example of an encrypted password hash. Ensure you copy the full hash value, which starts with `$encrypted$`, when configuring your system. ```text $encrypted$UTF8$AESCBC$Z0FBQUFBQmtLdGNRWXFjZGtkV1ZBR3hkNGVVbFFIU3hhY21UT081eXFkR09aUWZLcG9TSmpndmZYQXFyRHVFQ3ZYSE15OUFuM1RHZHBqTFU3S0MyNEo2Y2JWUURSYktsdmc9PQ== ``` -------------------------------- ### Ansible Automation Platform Installer Configuration Error Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_execution/controller-instance-and-container-groups Example of a fatal error during the Ansible Automation Platform installation when a host is not found in the required 'automationcontroller' or 'execution_nodes' groups. ```text TASK [ansible.automation_platform_installer.check_config_static : Validate mesh topology] *** fatal: [126-addr.tatu.home -> localhost]: FAILED! => {"msg": "The host '110-addr.tatu.home' is not present in either [automationcontroller] or [execution_nodes]"} ``` -------------------------------- ### Example Podman Mount Command Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_execution/assembly-controller-execution-environments Illustrates a `podman run` command with volume mounting, demonstrating how to correctly mount configuration files for SSH to work as expected within a container. ```bash podman run -v /ssh_config:/etc/ssh/ssh_config.d/:O ... ``` -------------------------------- ### Example CPU Capacity Calculation Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_execution/controller-jobs This example demonstrates the CPU capacity calculation for a 4-core system using the default `fork_per_cpu` value of 4. ```text 4 * 4 == 16 ``` -------------------------------- ### Run setup script with encrypted credentials Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/planning_your_installation/con-inventory-introduction_planning Executes the setup script for Ansible Automation Platform installation, passing the encrypted credentials file and prompting for the vault password. ```bash $ ANSIBLE_BECOME_METHOD='sudo' ANSIBLE_BECOME=True ANSIBLE_HOST_KEY_CHECKING=False ./setup.sh -e @credentials.yml -- --ask-vault-pass ``` -------------------------------- ### Example execution-environment.yml and requirements.yml Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/creating_and_using_execution_environments/index This example shows a basic `execution-environment.yml` file that specifies dependencies from a `requirements.yml` file, including a collection. This setup is used with the `ansible-builder build` command. ```yaml version: 3 dependencies: galaxy: - requirements.yml ``` ```yaml --- collections: - name: awx.awx ``` -------------------------------- ### View all ansible facts for a host Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/configuring_automation_execution/controller-tips-and-tricks Use the setup module as an ad hoc action to retrieve all facts about a managed machine. This output is a dictionary of available facts. ```bash ansible -m setup hostname ``` -------------------------------- ### Start Platform Gateway Services Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/ansible_automation_platform_migration/target-environment Use these commands on the platform gateway node to start the gateway and proxy services. ```bash systemctl --user start automation-gateway automation-gateway-proxy ``` -------------------------------- ### Configure Inventory for Disconnected Installation Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/aap-containerized-disconnected-installation Add these variables to the `[all:vars]` group in your inventory file for a disconnected installation. Ensure `bundle_dir` points to the correct location of your setup bundle. ```yaml bundle_install=true # The bundle directory must include /bundle in the path bundle_dir='{{ lookup("ansible.builtin.env", "PWD") }}/bundle' ``` -------------------------------- ### Install Automation Dashboard Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_dashboard/assembly-view-key-metrics Run the installation playbook after updating the inventory file. Ensure all required collections are installed first. ```bash ansible-galaxy collection install -r requirements.yml ansible-playbook -i inventory ansible.containerized_installer.dashboard_install --ask-become-pass ``` -------------------------------- ### Example Device Status Output Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/managing_device_fleets_with_the_red_hat_edge_manager/edge-manager-manage-apps Example output of the 'flightctl get device' command, showing the status of deployed applications including their readiness, restarts, and overall status. ```yaml ... spec: applications: - name: example-app image: quay.io/flightctl-demos/example-app:v1 status: applications: - name: example-app ready: 3/3 restarts: 0 status: Running applicationsSummary: info: All application workloads are healthy. status: Healthy ... ``` -------------------------------- ### Module Examples Output Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html-single/using_content_navigator/index Shows example usage for the 'ansible.utils.ip_address' module, demonstrating how to check if a string is a valid IP address. Includes task details and expected output. ```yaml 0│ 1│ 2│#### Simple examples 3│ 4│- name: Check if 10.1.1.1 is a valid IP address 5│ ansible.builtin.set_fact: 6│ data: "{{ '10.1.1.1' is ansible.utils.ip_address }}" 7│ 8│# TASK [Check if 10.1.1.1 is a valid IP address] ********************* 9│# ok: [localhost] => { 10│# "ansible_facts": { 11│# "data": true 12│# }, 13│# "changed": false 14│# } 15│ ``` -------------------------------- ### Webhook Payload Example (Running Job) Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_execution/controller-notifications This is an example of a 'started' notification payload sent by automation controller to a webhook endpoint. It includes job details while the job is in a running state. ```json {"id": 38, "name": "Demo Job Template", "url": "https://host/#/jobs/playbook/38", "created_by": "bianca", "started": "2020-07-28T19:57:07.888193+00:00", "finished": null, "status": "running", "traceback": "", "inventory": "Demo Inventory", "project": "Demo Project", "playbook": "hello_world.yml", "credential": "Demo Credential", "limit": "", "extra_vars": "{}", "hosts": {}}POST / HTTP/1.1 ``` -------------------------------- ### Example hub_shared_data_path for NFS Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/containerized_installation/appendix-inventory-files-vars This example specifies the path for the Network File System (NFS) share required for Automation Hub when installing multiple instances with a file storage backend. ```yaml hub_shared_data_path: nfs-server.example.com:/exports/hub ``` -------------------------------- ### Display Sample Project Structure Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/using_automation_execution/assembly-controller-project-signing This command displays the directory structure of a sample Ansible project. ```bash $ cd sample-project/ $ tree -a . ``` -------------------------------- ### Verify New SSL/TLS Certificate and Key Installation Source: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/operating_ansible_automation_platform/changing-ssl-certs-keys Verify that the new SSL/TLS certificate and key have been successfully installed and are being used by the component. Replace `` with the fully qualified domain name of the component. ```bash true | openssl s_client -showcerts -connect :443 ```