Skip to content

Combine Embedded Automation Managers #22838

Open
@agrare

Description

@agrare

Currently ManageIQ has two embedded automation managers: Embedded Ansible and Embedded Workflows. These are both EmbeddedAutomationManager types but the UI was originally designed with embedded_ansible as a separate / standalone menu-item.

We are looking at adding an additional embedded provider, Embedded Terraform.

As we add more of these it becomes more and more unwieldy to manage each of them separately. It is highly likely that an organization will have repositories / credentials that are common across the three and currently these have to be added to each embedded provider separately.

There are two high-level efforts, core and UI

UI

  • Refactor the current controllers and menu-items to not be "Embedded Ansible" or "Embedded Workflows" specific, but rather generic Automation Managers
  • Allow management of Git Repositories separate from ConfigurationScriptSource (allow one git repo to have playbooks, ASLs, terraform scripts, etc...)

Core

  • Group current embedded automation managers under a "parent" ManageIQ::Providers::EmbeddedAutomationManager
  • Allow credentials to be shared across child managers
  • Allow for multiple configuration-script-sources per git repo (might already be possible)
  • Allow for directory backed configuration-script-sources for built-in automation scripts

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions