- Website: https://www.morpheusdata.com/
- Docs: Morpheus Documentation
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 Morpheus Terraform provider uses a community support model. Morpheus welcomes pull requests and responds to issues on a best-effort basis.
Reporting an issue
If you an encounter an issue with the Terraform provider, create a new issue in this GitHub repository.
https://github.com/gomorpheus/terraform-provider-morpheus/issues
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-morpheus
As 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-morpheus
Build the provider using make dev
. This will place the provider onto your system in a Terraform 0.13-compliant manner.
make dev
You'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.