Refer to the latest Product Documentation for Red Hat Ansible Automation Platform for the complete Automation Platform documentation.
New Features
Administrative users can now enable a tech preview of the new controller UI, which includes some basic and limited functionality around creating and viewing the resources needed to launch a job template (AAP-9133)
A tech preview version of the Automation Calculator utility that shows a report that represents (possible) savings to the subscriber (AAP-7331) See Analytics Reports for more information.
IBM Z/Power support has been added as a tech preview feature for Ansible Automation Platform 2.4 and ARM support is added so you can now run automation controller on an ARM machine with or without using the bundle installer (AAP-7975)
Ability to launch multiple jobs at once via a new API endpoint, /api/v2/bulk/job_launch
(AAP-7953)
Ability to add multiple hosts at once via a new API endpoint, /api/v2/bulk/host_create
(AAP-5706)
Provided a new page for showing which hosts are consuming the subscription count and allowing users to delete hosts that are no longer used so they are not counted against the subscription consumption (AAP-9046) See Subscription compliance for more information.
Introduced the ability to scale web and task pods independently (AAP-6025)
Conjur Cloud support to CyberArk Conjur Secrets Lookup (AAP-6643) See CyberArk Conjur Secrets Manager Lookup for detail.
Added the ability to use host and groupvars in order to create Constructed Inventories from other inventories (AAP-3687)
Added the ability to run automation against Constructed Inventories (AAP-3687)
Added Max concurrent jobs and Max forks fields in the Instance Group and Container Groups Create and Edit screens of the controller UI to allow users to define an instance group maximum of jobs that will be run on an instance group or sum of forks of all jobs to be run an instance group, making this especially useful for container groups where there is no concept of capacity (AAP-6699) See Instance group capacity limits for more information.
Additions
Added the ability for automation controller to tolerate the restart of Kubernetes master node during job execution and as a result, jobs will no longer fail due to a master node restart (AAP-12590)
The Add button is now available for organization Admins to be able to add roles to the team (AAP-11618)
Missing API metrics related to task_manager
, dependency_manager
, and workflow_manager
are added to the /api/v2/metrics/
endpoint to standalone scenarios (AAP-10795)
Added use of static Central Credential deployment for CyberArk on cloud (AAP-7272) See CyberArk Central Credential Provider (CCP) Lookup for more detail.
Expanded the Advanced search capability in the controller UI to support the lookup type of exact on related keys (AAP-6886)
Updates or Fixes
After database failover, the Dispatcher now recovers and resumes normal operation (AAP-12462)
Users can now specify an SCM branch override on the inventory source and inventory update, similar to how it is done for job templates (AAP-9150) See Inventory Sources for detail.
〈Normal〉 users now have the ability to select instance groups on job templates in the UI (AAP-5170)
Changed the Operator to split web and task into separate deployments (aka Web-Task split). Redis now runs as a separate container inside of the pod in the OpenShift Container Platform . Now that web/task are separate pods, they now both have their own dedicated redis containers and use another service to clear cache (clear_cache
) and restart rsyslog (rsyslog_reconfigurer
). (awx-operator#1182)
Requests to HashiCorp Vault clusters will be retried if an HTTP 412 error is received from the HashiCorp Vault server instead of failing (AAP-8503)
Updated the controller UI to pre-populate information from a credential and inventory when creating a job template from the context of a credential or inventory, respectively (AAP-7286)
Updated the Job Template form to allow the playbook filename to be manually entered even if those filenames are not present in the select list (AAP-5672)
Improved the speed of saving facts to hosts at the end of a job, and ensured that facts are saved before the status changes so that downstream workflow nodes can make use of host fact saved by the prior node (AAP-9144)
Removed validation check that was disallowing users from editing the hostname of a host attached to an inventory when the max_hosts
limit was reached for a particular organization (AAP-4487)
《Related Groups》 column added back to 《Hosts》 views in the controller UI (AAP-4538)
Re-added the Approve and Deny buttons to the list toolbar of the controller UI (AAP-8384)
Added a password field to the user serializer if a user is an internal user. This allows for the awx.awx.user
module to respect the update_secrets
parameter. This also changes the /api/v2/users
endpoint by adding a password field to the returned payload on a GET which will have a value of "$encrypted$"
(awx#13704)
Users logging in through LDAP are now properly being mapped into teams based on their LDAP groups (AAP-9067)
The LDAP adapter no longer removes users from admin roles (and others) for an organization even if the remove_*
flag was set to False
(AAP-8696)
The LDAP adapter no longer manages a team by name regardless of the organization the team was in, preventing users of a particular team from logging into the system through LDAP and being unnecessarily added to multiple organizations due to the same team name (AAP-8063)
Improved performance of the SAML login process (AAP-4671)
Jobs due to X509_V_FLAG_CB_ISSUER_CHECK
attribute no longer produces an error (AAP-12618)
Saving a workflow in the controller UI will no longer save an empty string for scm_branch
, which previously resulted in undesired changing of the branch jobs used (AAP-7638)
Editing a node no longer defaults to All Convergence in the Workflow Visualizer of the controller UI (AAP-7243)
Controller containers in an Openshift Container Platform now operate as expected when running 100 jobs or more (AAP-6406)
When executing a playbook that contains multiple credentials in the job template, the correct error displays (AAP-5951)
Triggered notifications perform a POST request during job template runs as expected (AAP-5785)
Accessing the globally available execution environments no longer produces a 500 error or a 400 error while assigning the 《Execution Environment Admin” permission to a user (AAP-2551)
The frequency of the scheduler now run ons the correct day of the week as specified by the user (AAP-11776)
Management jobs scheduled with a 《days》 parameter can now be edited (AAP-10338)
Disabled schedules no longer lose access to encrypted survey values (AAP-4501)
Fixed the date picker to no longer select dates in the past and prevent saving (AAP-4499)
Thycotic Secret Server credential type can now handle secret types such as SSH key or Digital Certificate in addition to just Password templates (AAP-11711 and AAP-11795)
Changing credential types using the dropdown list in the Launch prompt window no longer causes the screen to disappear (AAP-11444)
Fixed broken name search in the credentials step of ad-hoc commands and updated adhoc credentials search queries to include icontains (AAP-9668)
Missing Vault ID in the credential edit form no longer prevents vault credential to update properly (AAP-11438)
Viewing job details of a job template that has been deleted no longer displays an error (AAP-7236)
Variables in the controller UI can now be edited in YAML format (AAP-5540)
The login form no longer supports auto-complete on the password field due to security concerns (AAP-5437)
Corrected the behavior of the controller UI to no longer display the 《waiting》 status while a job is running (AAP-5273)
The controller now tolerates resume streaming stdout from job execution container after being disconnected from Kubernetes API server (AAP-5116)
Corrected broken docs link in the controller UI during product registration (AAP-4903)
The job output in the controller UI is now updating correctly despite to gap between API-loaded job events and WS-streamed events (AAP-4730)
Deprecations
Smart Inventories are deprecated in favor of Constructed Inventories
Removals
Removed auto-complete for fields in the controller UI to prevent exposing sensitive information (AAP-8543)
Automation Controller fixes:
Starting the application no longer results in 〈listener_port〉 not-null constraint violation error (AAP-8096)
Shell escaping no longer produces special characters in the Administrator password (AAP-7972)
Automation Controller fixes:
Accessing execution environments functions as expected when upgrading from Ansible Tower 3.x (AAP-2551)
Updated the receptor to 1.3.0-3 to avoid replacing receptor.conf
on upgrade (AAP-7938)
Automation Controller UI fixes:
The Save button now responds appropriately on the Job Settings page (AAP-7757)
Automation Controller UI fixes:
Fixed the Job Template Launch page to no longer result in a 〈Not Found〉 error when choosing credentials (AAP-7507)
Automation Controller fixes:
Fixed issue upgrading to Ansible Automation Platform 2.3 (AAP-7353)
Automation Controller UI fixes:
The Hosts Automated field on the Subscriptions Detail page is now correctly translated
New Features
Added the ability for control nodes to peer out to remote execution nodes (on a Kubernetes deployment only)
Introduced peers detail tab for instances
Introduced the ability to create and remove instances in the controller UI
Updated nodes/links in the Topology Viewer of the controller UI to support new states
Enabled health checks to be run on remote execution nodes on a Kubernetes deployment
Added the ability for Kubernetes users to create instance groups
Added project/playbook signature verification functionality to the controller, enabling users to supply a GPG key and add a content signing credential to a project, automatically enabling content signing for that project
Introduced ansible-sign
, a content signing and verification utility that provides a unified way to sign content across the Ansible eco-system
Support for schedules with the awx-cli import
and awx-cli export
features
Surfaced database connections in /api/v2/metrics
Additions
Topology viewer now shows new node and link states
Mesh topology shows directionality of links between nodes
The ability to pass variable value from a nested workflow job template to a job template or workflow job template using the set_stats
module
Added Prompt on Launch options on all parameters of the job template and workflow job templates
Added Job and Skip tags on workflow job templates and accompanying Prompt on Launch options
Configurable timeout settings for the receptor
Added missing security headers to application URLs
Metrics added for Support Engineers and customers to analyze, problem solve performance-related issues with lags in job events
The controller now polls the job endpoint to determine exactly when events are done processing and the UI displays a message when it has finished processing events for the job
Include forks on job and/or job template data for Automation Analytics
Forks information no longer missing in running job details
Schedules now allow date exceptions
Optimized/cache information about preferred instance groups
Control for capacity decisions and task worker availability
Survey wizard now handles multiple choice/multi-select question-answers in both array and string form (formerly only strings were supported)
Surveys can now auto-complete in multiple choice input fields
Added options for setting the priority class on the control plane and PostgreSQL pods
Subscription Details indicating whether the customer is in or out-of-compliance with their subscriptions
Added the ability for Receptor Ansible collection to provision receptor node(s)
Added the ability to deprovision external execution nodes
Added playbook with all the required variables for provisioning new remote execution nodes
Pop-up help text added to Details fields of job templates, workflow job templates, credentials, projects, inventories, hosts, organizations, users, credential types, notifications, instance groups, applications, and execution environments
Extra variables added to workflow approval notifications
Updates or Fixes
Topology Viewer links, nodes, legend, list view 《Status》 updated to reflect new states
Updated the Topology viewer to show more node detail
Topology Viewer no longer fails to populate when launched
Updated the controller to handle asynchronous health checks on an instance
Nodes are now moved to a deprovisioning state when removing from the controller UI
Increased the number of allowed characters for the job_tags
(Job Tags field) in a template
Job schedules are no longer missing from the Schedules view when sorting by type
Schedules now prompting for job or skip tags
Browser timezone automatically set as default when creating a schedule
Fixed issue with adding a schedule to an inventory source
LDAP / LDAPS connections no longer stay open after a user has logged out
Refactored LDAP backend to be more efficient, including reduced initial login time after increasing list of LDAP mappings
Job launch failure error now contains more succinct and informative messaging in the event that content signature validation fails
Users with Admin permissions on a workflow are able to assign an inventory to the workflow job template
Approval node toolbar buttons updated to improve the Workflow approval user experience
Workflow approval templates are now exportable
Admin users can now copy a workflow job template
Node rejoins cluster as expected after connection to PostgreSQL is lost
Workflow or sliced jobs no longer blocked or fails when ran
Sliced jobs no longer produce 500 errors when performing a GET
operation while launching more than 500 slices
Jobs no longer fails if Job Slicing and Fact Storage are enabled together
Adhoc command jobs no longer result in error when ran
Fixed error that resulted from relaunching an adhoc command with password
Advanced search updated to only allow users to select valid or logical match types to avoid unnecessary 500 errors
Included updates and enhancements to improve performance associated with the Task Manager in the handling of scaling jobs, mesh and cluster sizes
Job output performance improvements
Job output screen user experience improvements
Job timeout details showing in the Job Output as expected
Job Settings page updated to no longer produce 404 errors and other various warnings
First Run / Next Run values of the job schedule fixed to no longer change to one day before the date entered in the Edit/Add page of the schedule settings
Job template with concurrent jobs launches as expected if capacity allows the controller to run more jobs
awx-cli import
and awx-cli export
now produce an error message and provide appropriate exit codes when an imported or exported operation fails
Default cleanup schedules no longer only run once
Updated SAML adapter to not remove System Administrator and System Auditor flags
Lookup modals refresh when opened
Twilio notifications can now be sent from the controller from behind a proxy
Custom credential type creation works as expected
Updated strings for translation
The Demo Project will now initially show a status of 《successful》 and will not update on launch, whereas before it showed 《never updated》 and updated on launch
Inventory updates based on an SCM source now provides the revision of the project it used
Removing hosts from inventories no longer fails with 《Out of Shared Memory》 error
Manually gathering analytics from CLI no longer results in a unicode error
Filter websockets related to sync jobs on jobs list(s) when refreshed, these jobs will be filtered again from the Jobs view
The GOOGLE_APPLICATION_CREDENTIALS
environment variable is now being set from a Google Compute Engine (GCE) credential type
Fixes some stability issues with ansible-runner worker processes and related logging slowdowns in the Dispatcher task processing
Deprecations
None in this release.
Removals
Removed the Update on Project Update field (update_on_project_update
) in projects. This is intended to be replaced by ordinary 《Update on Launch》 behavior, because they chain from inventory to project. So if this option was previously set on the inventory source, it is recommended that both inventory and project are set to 《Update on Launch》.
The Credential Permissions page no longer allows Credential Admin or Org Admins to manage access operations for a credential that does not belong to any organization
Fallback behavior removed when an instance group is defined on a job template or inventory
Automation Controller fixes:
Node alias is now saved when job template is changed in the workflow
Improved error messages in the API job_explanation
field for specific error scenarios, (e.g., runner worker process is killed), or certain failure scenarios (e.g., shutdown)
Fixed the Task Manager to fully account for the job’s control process capacity for jobs running in container groups
JOB_WAITING_GRACE_PERIOD
increases the threshold for marking jobs stuck in the 《waiting》 status as failed
CLUSTER_NODE_MISSED_HEARTBEAT_TOLERANCE
to allow the heartbeat to be more tolerant to clock skew and other problems
K8S_POD_REAPER_GRACE_PERIOD
to allow more time before pod cleanup executes its last attempt to delete pods used by jobs
TASK_MANAGER_TIMEOUT
to allow more time in the unlikely event that the Task Manager fails to finish normally
Jobs no longer fail for nested submodules in an SCM (git) project and the .git
folder will be omitted
Added more logs to help debug database connectivity problems and cluster resource limits
Removed the current_user
cookie which was not used by the UI
Updated controller to send FQCN data for tasks to analytics
Fixed the metrics endpoint (/api/v2/metrics
) to no longer produce erroneous 500
errors
Added remove_superuser
and remove_system_auditors
to the SAML user attribute map
Added the ability to allow multiple values in the SOCIAL_AUTH_SAML_USER_FLAGS_BY_ATTR.is_*_[value|role]
settings
Unwanted Galaxy credentials are no longer added to the Organization while logging in through SAML
awx-cli now allows for multiple --extra_vars
parameters
Receptor no longer fails in FIPS mode
If an OCP node’s record is deleted (either by the awx-manage
command or by the heartbeat task), it will re-register itself
Upgrading and changing node_type
from execution
to control
or hybrid
no longer causes cleanup errors
Execution Environment fixes:
None for this release
Automation Controller UI fixes:
The controller UI properly displays job output when strategy: free
is set in the playbook
Fixed the pagination displays within the main lists, i.e., Resources (Job Templates, Projects, Inventory), Access (Organization, Users, Teams, Notifications), and Administration (Instance Groups, Execution Environments)
Fixed the Job Output to properly follow and scroll; and improved the Page Up/Page Down button behavior
Fixed the controller UI to now be able to filter by multiple labels
Large workflow templates no longer cause browsers to crash when linking nodes near the end of the template
Fixed the approval node 《Deny》 to no longer run the subsequent workflow nodes
Forks information no longer missing in running job details
Upon saving a schedule, the date chooser no longer changes to the day before the selected date
References to Ansible Tower are replaced with Automation Controller throughout the UI, including tooltips where documentation is referenced
Corrected translations for the Japanese Subscription settings screen
Installation fixes specific to Automation Controller:
None for this release
Introduced
Graphical visualization of the automation topology to show the types of nodes, the links between them and their statuses
Added
For VM-based installs, the controller will now automatically mount the system trust store in execution environments when jobs run
Log Format For API 4XX Errors field to the Logging settings form to allow customization of 4xx error messages that are produced when the API encounters an issue with a request
Ability to use labels with inventory
Ability to flag users as superusers and auditors in SAML integration
Support for expanding and collapsing plays and tasks in the job output UI
Filtering job output UI by multiple event types
Various default search filters to a number of list views
Top-level list of instances to now be visible in the UI
A pop-up message when a user copies a resource
Job Templates tab to Credentials and Inventories to view all the templates that use that particular credential or inventory
Updated
Controller to use Python 3.9
Django’s SESSION_COOKIE_NAME
setting to a non-default value. Note, any external clients that previously used the sessionid
cookie will need to change. Refer to Session Authentication for more detail.
Controller to support podman-style volume mount syntax in the Paths to expose to isolated jobs field of the Jobs Settings of the UI
Isolated path to be exposed in OCP/K8s as HostPath
Upgraded Django from version 2.2 to 3.2
Modified usage of ansible_facts
on Advanced Search to add more flexibility to the usage of ansible_facts
when creating a smart inventory
The controller node for a job running on an execution node now incurs a penalty of 1 unit of capacity to account for the system load that controlling a job incurs. This can be adjusted with the file-based setting AWX_CONTROL_NODE_TASK_IMPACT
.
Project updates to always run in the controlplane
instance group
Slack notifications to allow replying to a thread instead of just channels
UI performance to improve job output
Job status icons to be more accessible
Display of only usable inventories when launching a job
Browser tab to show more information about which page the user is currently viewing
Controller to now load variables after job template extra variables to prevent overriding the meta variables injected into each job run
Deprecated
The concept of 《committed capacity》 from Instance Groups due to the removal of RabbitMQ
Inventory source option to Update on project update - this field updates the inventory source if its project pulled a new revision. In the future, when updating an inventory source, the controller shall automatically run project updates if the project itself is set to Update on launch.
Removed
Case sensitivity around hostcount
Automation Controller fixes:
When setting the use role on a credential to more than 10 users, users are no longer added on different admin roles unexpectedly
Fixed the fallback cleanup task to not delete files in-use
Updated inventory hosts to allow editing when organization is at max host limit
Enabled job slicing with fact caching now correctly saves facts for hosts from the relevant slice
No longer validating hostnames when editing the hostname on an existing host
Execution Environment fixes:
Fixed jobs stuck in running when timing out during an image pull
Automation Controller UI fixes:
Fixed list search/pagination filters in place when clicking the Back to <N> button. Applies to all top-level list pages except the Schedules page.
Updated Subscription and inventory usage details, including a status indicating whether the customer is in or out-of-compliance with their subscriptions
Survey wizard now handles multiple choice/multi-select question-answers in both array and string form (formerly only strings were supported)
Fixed error that resulted from relaunching an adhoc command with password
Updated filter websockets related to sync jobs on jobs list(s) that when refreshed, these jobs will be filtered again from the Jobs view
Added validation for same start/end day different time schedules
Automation Controller fixes:
Receptor no longer fails in FIPS mode
Added the ability to exit gracefully and recover quickly when a service in the control plane crashes
The create_partition
method will skip creating a table if it already exists
Having logging enabled no longer breaks migrations if the migration sends logs to an external aggregator
Fixed the metrics endpoint (/api/v2/metrics
) to no longer produce erroneous 500
errors
Execution Environment fixes:
Enhanced the execution environment copy process to reduce required space in the /tmp
directory
Allowed execution environment images to be pulled from automation controller only
Added the ansible-builder-rhel8 image to the setup bundle
Modified base execution environment images so that controller backups can run in the container
Automation Controller UI fixes:
Upon saving a schedule, the date chooser no longer changes to the day before the selected date
Fixed the ability to create manual projects in Japanese and other supported non-English languages
Forks information no longer missing in running job details
Project selected for deletion is now removed as expected when running a project sync
The Admin option in the Team Permissions is now disabled so that a user cannot select it when it is not applicable to the available organization(s)
Large workflow templates no longer cause browsers to crash when linking nodes near the end of the template
References to Ansible Tower are replaced with Automation Controller throughout the UI, including tooltips where documentation is referenced
Installation fixes specific to Automation Controller:
Updated the Receptor to 1.2.3 everywhere as needed
Automation Controller fixes:
Upgraded Django version to 3.2 LTS
System (management) jobs are now able to be canceled
Rsyslog no longer needs manual intervention to send out logs after hitting a 40x error
Credential lookup plugins now respect the AWX_TASK_ENV
setting
Fixed the controller to list valid subscriptions from Satellite when having multiple quantities from the same SKU
Updated Receptor version to 1.2.1, which includes several fixes
Execution Environment fixes:
The host trusted cert store is now exposed to execution environments by default. See Isolation functionality and variables for detail.
Mounting the /etc/ssh
or /etc/
to isolated jobs now works in podman
User customization of execution environment mount options and mount paths are now supported
Fixed SELinux context on /var/lib/awx/.local/share/containers
and ensure awx as podman storage
Fixed failures to no longer occur when the semanage fcontext
has been already set for the expected directory
Automation Controller UI fixes:
Fixed the ability to create manual projects in Japanese and other suppported non-English languages
Fixed the controller UI to list the roles for organizations when using non-English web browsers
Fixed the job output to display all job type events, including source control update events over websockets
Fixed the TypeError
when running a command on a host in a smart inventory
Fixed the encrypted password in surveys to no longer show up as plaintext in the Edit Order page
Installation fixes specific to Automation Controller:
Fixed duplicate Galaxy credentials with no default organization
Running the ./setup.sh -b
out of the installer directory no longer fails to load group vars
The installer no longer fails when IPV6 is disabled
Fixed unnecessary become_user:root
entries in the installation
Modified database backup and restore logic to compress dump data
Creating default execution environments no longer fails when password has special characters
Fixed installations of execution environments when installing without internet access
Upgrading to AAP 2.1 no longer breaks when the Django superuser is missing
Rekey now allowed with existing key
Added the ability to specify additional nginx headers
Fixed analytics gathering to collect all the data the controller needed to collect
Fixed the controller to no longer break subsequent installer runs when deleting the demo organization
Introduced
Connected Receptor nodes to form a control plane and execution mesh configurations
The special controlplane
instance group to allow for the task manager code to target an OpenShift Controller node to run the project update
The ability to render a configured mesh topology in a graph in the installer
Controller 4.1 execution nodes can be remote
Node types for Controller 4.1 (control, hybrid, execution, hop
, control
, hybrid
, execution
, hop
) installed for different sets of services and provide different capabilities, allowing for scaling nodes that provide the desired capability such as job execution or serving of web requests to the API/UI.
Added
The ability for the platform installer to allow users to install execution nodes and express receptor mesh topology in the inventory file. The platform installer will also be responsible for deprovisioning nodes.
Work signing to the receptor mesh so that control plane nodes have the exclusive authority to submit receptor work to execution nodes over the mesh
Support for pre-population of execution environment name, description, and image from query parameters when adding a new execution environment in the Controller User Interface
Ability to trigger a reload of the topology configuration in Receptor without interrupting work execution
Using Public Key Infrastructure (PKI) for securing the Receptor mesh
Added importing execution environments from Automation Hub into the controller to improve the platform experience
Updated
The controller to support new controller control plane and execution mesh
Task manager will only run project updates and system jobs on nodes with node_type
of 《control》 or 《hybrid》
Task manager will only run jobs, inventory updates, and ad hoc commands on nodes with node_type
of 《hybrid》 or 《execution》
Heartbeat and capacity check to work with Receptor execution nodes
Reaper to work with the addition of execution nodes
Controller User Interface to not show control instances as an option to associate with instance groups
The Associate pop-up screen to display host names when adding an existing host to a group
Validators for editing miscellaneous authentication parameters
Advanced search key options to be grouped
SAML variables default values
Survey validation on Prompt on Launch
Login redirect
Deprecated
None
Removed
The ability to delete the default instance group through the User Interface
Upgraded Django version to 3.2 LTS
Updated receptor to version 1.2.1
Introduced
Support for automation execution environments. All automation now runs in execution environments via containers, either directly via OpenShift, or locally via podman
New PatternFly 4 based user-interface for increased performance, security, and consistency with other Ansible Automation Platform components
Added
Added identity provider support for GitHub Enterprise
Support for RHEL system crypto profiles to nginx configuration
The ability to disable local system users and only pull users from configured identity providers
Additional Prometheus metrics for tracking job event processing performance
New awx-manage
command for dumping host automation information
Red Hat Insights as an inventory source
Ability to set server-side password policies using Django’s AUTH_PASSWORD_VALIDATORS
setting
Support for Centrify Vault as a credential lookup plugin
Support for namespaces in Hashicorp Vault credential plugin
Updated
OpenShift deployment to be done via an Operator instead of a playbook
Python used by application to Python 3.8
Nginx used to version 1.18
PostgreSQL used to PostgreSQL 12, and moved to partitioned databases for performance
The “container groups” feature to general availability from Tech Preview; now fully utilizes execution environments
Insights remediation to use new Red Hat Insights inventory source rather than utilizing scan playbooks with arbitrary inventory
Subscriptions display to count hosts automated on instead of hosts imported
Inventory source, credential, and Ansible content collection to reference controller instead of tower
Deprecated
None
Removed
Support for isolated nodes
Support for deploying on CentOS (any version) and RHEL 7
Support for Mercurial projects
Support for custom inventory scripts stored in controller (use awx-manage export_custom_scripts
to export them)
Resource profiling code (AWX_RESOURCE_PROFILING_*
)
Support for custom Python virtual environments for execution. Use new awx-manage
tools for assisting in migration
Top-level /api/v2/job_events/ API endpoint
The ability to disable job isolation