-
Notifications
You must be signed in to change notification settings - Fork 916
Description
Enable terraform provider support to workflows.
Ensure it works for generic services and terraform provision workflows.
Workflow execute task does not work for terraforms which is based upon services.
Currently the way this is implemented for VM Provisioning relies on having a MiqProvisionRequestTemplate with the selected workflow in the options hash. The AutomationManager type services (AWX, Ansible Automation Platform, TFE, EmbeddedTerraform) do not follow that approach.
The plan here is to modify the Terraform Enterprise provision process to pull the majority of the state machine logic out of automate where it currently lives (https://github.com/ManageIQ/manageiq-content/tree/master/content/automate/ManageIQ/AutomationManagement/TerraformEnterprise) and into a MiqProvisionTask and a "Job" based state machine in the provider code just like VM provisioning. NOTE This also allows us to invoke a TFE provision not through the service catalog but via e.g. a button on the ConfigurationScript record.
Once this is available we can update the service catalog item to build a MiqProvisionRequestTemplate and use the same exact logic as VM provisioning.
We also need to update the builtin workflows provision method to allow any MiqProvisionTask, not just MiqProvision which is specific for VMs.
- Add MiqRequest and MiqProvisionWorkflow classes for ConfigurationScript provisioning #23542
- Updates for ConfigurationScript Service UI #23637
- Add provisioning via automation manager such as terraform enterprise manageiq-automation_engine#579
- Add provisioning via automation manager such as terraform enterprise manageiq-content#772
- MiqProvisionTask based workspace provision manageiq-providers-terraform_enterprise#18
- MiqProvisionTask Job StateMachine manageiq-providers-terraform_enterprise#23
- Updates for ConfigurationScript Service Provisioning manageiq-ui-classic#9683