- Website: https://www.morpheusdata.com/
- Docs: Morpheus Documentation
- Support: Morpheus Support
This is the Terraform provider for the Morpheus Data Cloud Management Platform (CMP). It interfaces with the Morpheus API using the morpheus-go-sdk client. Like all Terraform Providers, it is written in Go.
This is being developed in conjunction with morpheus-go-sdk.
The best way to get started using the Morpheus Terraform provider is by following the getting started guide.
The following list of resources are supported by the Morpheus Terraform provider:
| Resource Name | Description |
|---|---|
| morpheus_active_directory_identity_source | Morpheus active directory identity source resource |
| morpheus_ansible_integration | Morpheus ansible_integration resource |
| morpheus_ansible_playbook_task | Morpheus ansible playbook automation task resource |
| morpheus_ansible_tower_integration | Morpheus ansible tower integration resource |
| morpheus_ansible_tower_task | Morpheus ansible tower task resource |
| morpheus_api_option_list | Morpheus api_option_list resource |
| morpheus_app_blueprint_catalog_item | Morpheus app_blueprint_catalog_item resource |
| morpheus_arm_app_blueprint | Morpheus ARM app blueprint resource |
| morpheus_arm_spec_template | Morpheus ARM spec template resource |
| morpheus_aws_cloud | Morpheus AWS cloud integration resource |
| morpheus_backup_creation_policy | Morpheus backup creation policy resource |
| morpheus_backup_setting | Morpheus backup setting resource |
| morpheus_boot_script | Morpheus boot script resource |
| morpheus_budget_policy | Morpheus budget policy resource |
| morpheus_checkbox_option_type | Morpheus checkbox option type resource |
| morpheus_cloud_formation_app_blueprint | Morpheus Cloud Formation app blueprint resource |
| morpheus_cloud_formation_spec_template | Morpheus Cloud Formation spec template resource |
| morpheus_cluster_layout | Morpheus cluster layout resource |
| morpheus_cluster_resource_name_policy | Morpheus cluster resource name policy resource |
| morpheus_contact | Morpheus contact resource |
| morpheus_docker_registry_integration | Morpheus docker_registry_integration resource |
| morpheus_cypher_access_policy | Morpheus cypher access policy resource |
| morpheus_delayed_delete_policy | Morpheus delayed delete policy resource |
| morpheus_email_task | Morpheus email task resource |
| morpheus_environment | Morpheus environment resource |
| morpheus_execute_schedule | Morpheus execute schedule resource |
| morpheus_file_template | Morpheus file template resource |
| morpheus_git_integration | Morpheus git_integration resource |
| morpheus_groovy_task | Morpheus groovy script task resource |
| morpheus_group | Morpheus group resource |
| morpheus_guidance_setting | Morpheus guidance setting resource |
| morpheus_helm_app_blueprint | Morpheus HELM app blueprint resource |
| morpheus_helm_spec_template | Morpheus HELM spec template resource |
| morpheus_hidden_option_type | Morpheus hidden option type resource |
| morpheus_hostname_policy | Morpheus hostname policy resource |
| morpheus_instance_catalog_item | Morpheus instance_catalog_item resource |
| morpheus_instance_layout | Morpheus instance_layout resource |
| morpheus_instance_type | Morpheus instance_type resource |
| morpheus_kubernetes_app_blueprint | Morpheus Kubernetes app blueprint resource |
| morpheus_kubernetes_spec_template | Morpheus Kubernetes spec template resource |
| morpheus_javascript_task | Morpheus javascript task resource |
| morpheus_library_script_task | Morpheus library script task resource |
| morpheus_library_template_task | Morpheus library template task resource |
| morpheus_manual_option_list | Morpheus manual option list resource |
| morpheus_max_containers_policy | Morpheus max containers policy resource |
| morpheus_max_cores_policy | Morpheus max cores policy resource |
| morpheus_max_hosts_policy | Morpheus max hosts policy resource |
| morpheus_max_memory_policy | Morpheus max memory policy resource |
| morpheus_max_storage_policy | Morpheus max storage policy resource |
| morpheus_max_vms_policy | Morpheus max vms policy resource |
| morpheus_monitoring_setting | Morpheus monitoring setting resource |
| morpheus_motd_policy | Morpheus message of the day policy resource |
| morpheus_network_domain | Morpheus network domain resource |
| morpheus_network_quota_policy | Morpheus network quota policy resource |
| morpheus_node_type | Morpheus node_type resource |
| morpheus_number_option_type | Morpheus number option type resource |
| morpheus_operational_workflow | Morpheus operational automation workflow resource |
| morpheus_password_option_type | Morpheus password option type resource |
| morpheus_power_schedule_policy | Morpheus power schedule policy resource |
| morpheus_powershell_script_task | Morpheus powershell script task resource |
| morpheus_preseed_script | Morpheus preseed script resource |
| morpheus_price | Morpheus price resource |
| morpheus_price_set | Morpheus price set resource |
| morpheus_provisiong_setting | Morpheus provisioning setting resource |
| morpheus_provisiong_workflow | Morpheus provisioning automation workflow resource |
| morpheus_puppet_integration | Morpheus puppet integration resource |
| morpheus_python_script_task | Morpheus python script automation task resource |
| morpheus_radio_list_option_type | Morpheus radio list option type resource |
| morpheus_resource_pool_group | Morpheus resource pool group resource |
| morpheus_rest_option_list | Morpheus REST API option list resource |
| morpheus_restart_task | Morpheus restart task resource |
| morpheus_router_quota_policy | Morpheus router quota policy resource for configuring router quotas based upon the group, cloud, role, user or globally |
| morpheus_ruby_script_task | Morpheus ruby script task resource |
| morpheus_scale_threshold | Morpheus scale threshold resource |
| morpheus_script_template | Morpheus script template resource |
| morpheus_select_list_option_type | Morpheus select list option type resource |
| morpheus_service_plan | Morpheus service plan resource |
| morpheus_shell_script_task | Morpheus shell script task resource |
| morpheus_tag_policy | Morpheus tag policy resource |
| morpheus_task_job | Morpheus task job resource for scheduling automation tasks |
| morpheus_tenant | Morpheus tenant resource |
| morpheus_terraform_app_blueprint | Morpheus Terraform app blueprint resource |
| morpheus_terraform_spec_template | Morpheus Terraform spec template resource |
| morpheus_text_option_type | Morpheus text option type resource |
| morpheus_textarea_option_type | Morpheus text area option type resource |
| morpheus_typeahead_option_type | Morpheus typeahead option type resource |
| morpheus_user_creation_policy | Morpheus user creation policy resource for configuring user creation based upon the group, cloud, role, user or globally |
| morpheus_user_group_creation_policy | Morpheus user group creation policy resource for configuring user group creation based upon the group, cloud, role, user or globally |
| morpheus_user_role | Morpheus user role resource |
| morpheus_vro_integration | Morpheus VMware vRealize Orchestrator integration resource |
| morpheus_vro_task | Morpheus VMware vRealize Orchestrator task resource |
| morpheus_vsphere_cloud | Morpheus VMware vSphere cloud resource |
| morpheus_vsphere_instance | Morpheus VMware vSphere instance resource |
| morpheus_wiki_page | Morpheus wiki page resource for creating and managing wiki pages |
| morpheus_workflow_catalog_item | Morpheus workflow catalog item resource for creating and managing operational workflow catalog items |
| morpheus_workflow_policy | Morpheus workflow policy resource for assigning a workflow to a group, cloud, role, user or globally |
| morpheus_write_attributes_task | Morpheus write attributes task resource for storing values from XaaS instance phases |
The following list of data sources are supported by the Morpheus Terraform provider:
| Data Source Name | Description |
|---|---|
| morpheus_ansible_tower_inventory | Morpheus ansible tower inventory data source |
| morpheus_ansible_tower_job_template | Morpheus ansible tower job template data source |
| morpheus_blueprint | Morpheus blueprint data source |
| morpheus_budget | Morpheus budget data source |
| morpheus_cloud | Morpheus cloud data source |
| morpheus_contact | Morpheus contact data source |
| morpheus_credential | Morpheus credential data source |
| morpheus_environment | Morpheus environment data source |
| morpheus_execute_schedule | Morpheus execute schedule data source |
| morpheus_file_template | Morpheus file template data source |
| morpheus_group | Morpheus group data source |
| morpheus_instance_layout | Morpheus isntance layout data source |
| morpheus_instance_type | Morpheus instance type data source |
| morpheus_integration | Morpheus integration data source |
| morpheus_job | Morpheus job data source |
| morpheus_network | Morpheus network data source |
| morpheus_network_group | Morpheus network group data source |
| morpheus_node_type | Morpheus node type data source |
| morpheus_option_list | Morpheus option list data source |
| morpheus_option_type | Morpheus option type data source |
| morpheus_plan | Morpheus plan data source |
| morpheus_policy | Morpheus policy data source |
| morpheus_power_schedule | Morpheus power schedule data source |
| morpheus_price | Morpheus price data source |
| morpheus_price_set | Morpheus price set data source |
| morpheus_resource_pool | Morpheus resources pool data source |
| morpheus_script_template | Morpheus script template data source |
| morpheus_spec_template | Morpheus spec template data source |
| morpheus_storage_bucket | Morpheus storage bucket data source |
| morpheus_task | Morpheus automation task data source |
| morpheus_tenant_role | Morpheus automation tenant role data source |
| morpheus_tenant | Morpheus automation tenant data source |
| morpheus_user_group | Morpheus user group data source |
| morpheus_virtual_image | Morpheus virtual image data source |
| morpheus_vro_workflow | Morpheus VMware vRealize Orchestrator workflow data source |
| morpheus_workflow | Morpheus workflow data source |
Clone repository to: $GOPATH/src/github.com/gomorpheus/terraform-provider-morpheus
mkdir -p $GOPATH/src/github.com/gomorpheus; cd $GOPATH/src/github.com/gomorpheus
git clone git@github.com:gomorpheus/terraform-provider-morpheusAs an alternative to cloning manually, you can use go get:
go get -v github.com/gomorpheus/terraform-provider-morpheus/...Enter the provider directory.
cd $GOPATH/src/github.com/gomorpheus/terraform-provider-morpheusBuild the provider using make dev. This will place the provider onto your system in a Terraform 0.13-compliant manner.
make devYou'll need to ensure that your Terraform file contains the information necessary to find the plugin when running terraform init. make dev will use a version number of 0.0.1, so the following block will work:
terraform {
required_providers {
morpheus = {
source = "localhost/providers/morpheus"
version = "0.0.1"
}
}
}From the root of the repo run:
go run github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs
See the contributing directory for more developer documentation.