Added the ability for workflow templates to have workflows as nodes
Added to workflow templates the ability to allow edges/links to have mix of always, success, or failure, therefore, removing edge conflicts to improve workflow behavior
Added job slicing feature to job templates, where a job template will launch a workflow of a certain number of jobs, distributing inventory evenly amongst those jobs, and allowing work to execute in parallel among Tower instances
Added optional and promptable inventory field to Workflow job templates (WFJTs)- the selected inventory will override the inventory of any Job Template node that prompts for an inventory, which includes inventory prompt-on-launch for standalone WFJTs, nested WFJT nodes, and WFJT schedules
Added the ability to run Ansible Tower when Red Hat Enterprise Linux is configured in FIPS mode
Added job event entries for runner_on_start
, since it was introduced in Ansible core
Deprecated several read-only API fields, pending removal in future release:
ask_xxx_on_launch
fields in jobs API, duplicated with job template valuesInventory and groups
groups_with_active_failures
, not used by the Tower user interface
Removed previously-deprecated read-only project field scm_delete_on_next_update
Removed the restriction that workflows cannot be used in workflows
Removed backwards-compatible support for deprecated legacy Auth Tokens. Starting in Ansible Tower 3.4, users who wish to authenticate with tokens must use the new OAuth 2.0 authentication mechanism introduced in Tower 3.3.
Removed deprecated cluster management commands: deprovision_node
→ deprovision_instance
and register_instance
→ provision_instance
Removed deprecated --name
option from deprovision_instance
Fixed a deadlock scenario where new websocket connections would get 502’s until daphne and runworker services were restarted
Fixed the Workflow job templates to return a 400 response if a client attempts to launch without providing required survey variables using the API
Improved the task runner by replacing celery with a custom Kombu-based dispatcher
Improved validation survey specs on save, returning a 400 response in many new cases
Improved the Workflow job nodes with missing unified_job_template
to no longer unconditionally fail a workflow. Instead, the workflow job node is treated as a job that ran with status result of failure.
Improved the Workflow job failure semantics. Before, if any leaf node failed then the workflow job was considered failed, else success. Now, if any node in the workflow fails without a failure handle path, then the workflow job is considered failed; else success.
Improved workflows to now allow convergence nodes (nodes with multiple parents)
Updated the environment variables used in job runs, which include the removal of INVENTORY_HOSTVARS
and the ability for the inventory plugin and inventory unparsed behavior to be configurable
Updated how project “sync” jobs (as opposed to project updates) work
Updated the behavior of the Activity Stream associated with deleted inventory and displayed list of credentials used in job creation entry
Updated the creation of schedules from the API to allow global schedules lists
Updated GCE instances by moving from GCE_PEM_FILE_PATH
to GCE_CREDENTIALS_FILE_PATH
Updated Tower to allow use of organization roles with teams in the user interface
Updated Configure Tower from the Settings menu to contain sub-menus and access to sub-tasks