summaryrefslogblamecommitdiffstats
path: root/syntax/terraform.vim
blob: 5508104b7ccb18007d582f669678a2fc089feba4 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11










                                                                                  
                                                                                  



                                                   




                                       
                         

                                   
                              
                              
                             





                                        
                            

                                         
                         
                              
                          




                               
                                
                   
                       
                                    
                                  



                                       
                                 
                                    
                                          
                                    
                           
                           
                              
                            
                                
                          
                              
                           
                                        
                                   
                               
                                
                   
                                             

                                                
                                             
                   
                                  

                                   

                                    
                          
                                   
                        
                                      
                        
                                        
                        

                                
                         


                              
                       
                          



                               
                                 
                         
                           
                           



                                        
                         

                                
                         
                         
                             
                      
                          
                   
                            

                                      
                           


                                              
                                           
                               
                                 

                                      


                                           
                                     
                                          
                                  
                             
                              

                                   
                                            
                            
                                   

                                

                                                         
                                   
                                           

                              
                                
                               



                                   
                             
                       
                              
                            
                               
                                
                             
                              
                              


                                 
                            

                       
                                
                                  
                                
                                          
                                  


                                                  
                                         
                                

                                         
                                  
                                                
                                     
                                     
                                      
                                
                                    
                                            

                                                
                                   
                         
                             

                               
                          
                                            


                                                  
                

                                    
                      

                                     
                                

                                    
                          




                                     
                            

                                        
                                     


                                               
                                       
                                 


                                         

                                           

                                            
                                              
                                            

                                            

                                                   
                                           
                                             
                         
                                                

                                   
                                      
                                       
                                      
                              
                          

                            
                             


                                   




                                 




                                     
                          

                             

                                 

                          
                          
                                    
                              
                             
                                     


                                              
                                 

                                
                                   
                              



                               
                               
                              
                                      







                                         
                                

                                    


                               

                                    
                                   




                                              
                             

                                        
                            
                                

                                      












                                                
                                
                                     



                                        
                                 

                                     
                               


                            

                            

                                          

                            
                                        












                                              

                                                 
                                       
                                            



                                                
                                           
                                 
                                             

                                    


                                          
                                    

                                            
                                               
                                     

                                   

                                  





                                          


                                         
                                      



                                                 
                                    
                                           

                                       

                                                 

                                            
                                              


                                                  
                                 




                                            
                            
                                     
                                                      
                                  
                                 

                                        



                                                    
                                
                           




                                     
                           



                                      



                                        
                                                       
                                           




                                            
                             
                                         
                      
                                     
                              
                                   

                            
                                    






                                     
                                            


                                             
                                                     







                                                        
                                           





                                          
                                          
                        


                              
                             






                                        
                              
                                 





                                           
                                           






                                          
                                       




                                          


                                             

                                

                               


                              



                                                
                         





                                           
                               
                  
                                           
                           
                                       
                                
                                         

                                          


                                  

                                              



                                                   


                                     



                                 
                                            
                                               















                                         

                                          











                                           
                                 





                                        
                                




                                      

                                                       
                                         
                                        

                                           
                               
                                   
                                    
                                     
                                               


                                    
                            

                                 

                                                 
                                        










                                          





                                             
                                      





                                            
                                                    
                                                    


                                                      
                                      
                                               



                                      
                                             
                                  
                                 
                         
                                   

                                     
                        
                              



                                           
                                          
                                         
                                 









                                                   















                                                   
                               

                                                       
                                    
                                    

                                        
                                              



                                         


                                    
                                   
                                      
                                     
                                    




                                    
                                  


                                  
                                   



                                               
                                         


                                                       
                         
                          
                             


                                         
                                      






                                           
                                          
                                           
                                
                                   
                                    



                                       


                                          
                                   


                                     



                                            

                               
                                       
                                  

                                   

                               
                                            

                                        
                                    

                                           
                                                       
                            
                                                      
                                
                                   

                                     
                                            













                                             

                                                      











                                           





                                   




                                  




                                            
                             
                                             

                                  


























                                           
                        








                                 
                            
                                   

                             
                        
                                    

                                
                                 
                                    
                                     




                                


                               
                             
                          






                             
                                    

                              
                                       

                                          
                                        
                                     


                                  

                             
                        

                               
                       

                                   

                                    

                                          

                                     
                                         














                                                 
                                          
                                           

                                                
                                                 
                                                        
                                


                                           
                                          

                                                     
                                   
                                          
                                     



                                             

                                           



                                      
                                      
                               
                                   
                               

                                   
                                    
                         
                                             



                                               
                                            


                                               
                          
                                          
                                     
                                              
                                  
                                   
                                              

                                      

                                         
                                  



                                        





                                        

                                             

                                     
                                   
                      
                              


                         


                                    




                                
                              



                               
                         






                                     
                                 

                                                


                                              

                                             
                                     
                             
                              

                                      
                         
                          


                               
                      

                             
                                  


                                        







                                         
                              
                                         

                            
                     






















                                                  
                         







                                       










                                              
                                     
                                             









                                            
                                          


                                               

                                 


                                                   
                                       
                                                     





                                              
                                         

                                    
                                

                                      


                                    
                                         
                                      
                                      
                                     

















                                                    
                                              
                                                
                                             


















                                                            
                                       













                                                           
                                            




                                                
                                       

                         



                                                
                                  



                                                  
                         
                                
                          
                                    

                          
                                    
                           
                                       
                               
                                        



                                         
                                     
                          













                                         




                                

                                   
                              
                                
                                   



                                     


                                 
                               






                                
                               
                               
                        


                                       
                          
                         
                          
                     
                          
                      
                          
                         







                                        


                              



                                      


                                 
                           
                        







                                   
                           



                               
                           


                           
                               



                              
                       
                                    
                              
                                     

                                              

                          



                                       
                                           

                                

                                   

                                            







































                                                                                           

                                                                                                                                                         
                                     



                                                                                                                                                                    




















                                             
                                         




                                             
                                             



                                  
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'terraform') == -1
  
" Forked from Larry Gilbert's syntax file
" github.com/L2G/vim-syntax-terraform

if exists("b:current_syntax")
  finish
endif

syn case match

syn keyword terraSection connection output provider variable data terraform locals
syn keyword terraValueBool true false on off yes no

""" data
syn keyword terraDataTypeBI
          \ alicloud_dns_domain_groups
          \ alicloud_dns_domain_records
          \ alicloud_dns_domains
          \ alicloud_dns_groups
          \ alicloud_dns_records
          \ alicloud_eips
          \ alicloud_images
          \ alicloud_instance_types
          \ alicloud_instances
          \ alicloud_key_pairs
          \ alicloud_kms_keys
          \ alicloud_ram_account_alias
          \ alicloud_ram_account_aliases
          \ alicloud_ram_groups
          \ alicloud_ram_policies
          \ alicloud_ram_roles
          \ alicloud_ram_users
          \ alicloud_regions
          \ alicloud_security_group_rules
          \ alicloud_security_groups
          \ alicloud_vpcs
          \ alicloud_vswitches
          \ alicloud_zones
          \ archive_file
          \ atlas_artifact
          \ aws_acm_certificate
          \ aws_alb
          \ aws_alb_listener
          \ aws_alb_target_group
          \ aws_ami
          \ aws_ami_ids
          \ aws_api_gateway_rest_api
          \ aws_autoscaling_groups
          \ aws_availability_zone
          \ aws_availability_zones
          \ aws_billing_service_account
          \ aws_caller_identity
          \ aws_canonical_user_id
          \ aws_cloudformation_stack
          \ aws_cloudtrail_service_account
          \ aws_cloudwatch_log_group
          \ aws_db_instance
          \ aws_db_snapshot
          \ aws_dynamodb_table
          \ aws_ebs_snapshot
          \ aws_ebs_snapshot_ids
          \ aws_ebs_volume
          \ aws_ecr_repository
          \ aws_ecs_cluster
          \ aws_ecs_container_definition
          \ aws_ecs_task_definition
          \ aws_efs_file_system
          \ aws_efs_mount_target
          \ aws_eip
          \ aws_elastic_beanstalk_hosted_zone
          \ aws_elastic_beanstalk_solution_stack
          \ aws_elasticache_cluster
          \ aws_elasticache_replication_group
          \ aws_elb
          \ aws_elb_hosted_zone_id
          \ aws_elb_service_account
          \ aws_iam_account_alias
          \ aws_iam_group
          \ aws_iam_instance_profile
          \ aws_iam_policy
          \ aws_iam_policy_document
          \ aws_iam_role
          \ aws_iam_server_certificate
          \ aws_iam_user
          \ aws_inspector_rules_packages
          \ aws_instance
          \ aws_instances
          \ aws_internet_gateway
          \ aws_ip_ranges
          \ aws_kinesis_stream
          \ aws_kms_alias
          \ aws_kms_ciphertext
          \ aws_kms_key
          \ aws_kms_secret
          \ aws_lb
          \ aws_lb_listener
          \ aws_lb_target_group
          \ aws_nat_gateway
          \ aws_network_interface
          \ aws_partition
          \ aws_prefix_list
          \ aws_rds_cluster
          \ aws_redshift_service_account
          \ aws_region
          \ aws_route53_zone
          \ aws_route_table
          \ aws_s3_bucket
          \ aws_s3_bucket_object
          \ aws_security_group
          \ aws_sns_topic
          \ aws_sqs_queue
          \ aws_ssm_parameter
          \ aws_subnet
          \ aws_subnet_ids
          \ aws_vpc
          \ aws_vpc_endpoint
          \ aws_vpc_endpoint_service
          \ aws_vpc_peering_connection
          \ aws_vpn_gateway
          \ azurerm_app_service
          \ azurerm_app_service_plan
          \ azurerm_application_security_group
          \ azurerm_builtin_role_definition
          \ azurerm_cdn_profile
          \ azurerm_client_config
          \ azurerm_dns_zone
          \ azurerm_eventhub_namespace
          \ azurerm_image
          \ azurerm_key_vault_access_policy
          \ azurerm_managed_disk
          \ azurerm_network_interface
          \ azurerm_network_security_group
          \ azurerm_platform_image
          \ azurerm_public_ip
          \ azurerm_public_ips
          \ azurerm_resource_group
          \ azurerm_role_definition
          \ azurerm_scheduler_job_collection
          \ azurerm_snapshot
          \ azurerm_storage_account
          \ azurerm_subnet
          \ azurerm_subscription
          \ azurerm_subscriptions
          \ azurerm_traffic_manager_geographical_location
          \ azurerm_virtual_network
          \ azurerm_virtual_network_gateway
          \ circonus_account
          \ circonus_collector
          \ cloudflare_ip_ranges
          \ cloudstack_template
          \ consul_agent_self
          \ consul_catalog_nodes
          \ consul_catalog_service
          \ consul_catalog_services
          \ consul_key_prefix
          \ consul_keys
          \ digitalocean_image
          \ dns_a_record_set
          \ dns_aaaa_record_set
          \ dns_cname_record_set
          \ dns_ns_record_set
          \ dns_ptr_record_set
          \ dns_txt_record_set
          \ docker_registry_image
          \ external
          \ fastly_ip_ranges
          \ github_ip_ranges
          \ github_team
          \ github_user
          \ google_active_folder
          \ google_billing_account
          \ google_client_config
          \ google_cloudfunctions_function
          \ google_compute_address
          \ google_compute_backend_service
          \ google_compute_default_service_account
          \ google_compute_forwarding_rule
          \ google_compute_global_address
          \ google_compute_image
          \ google_compute_instance_group
          \ google_compute_lb_ip_ranges
          \ google_compute_network
          \ google_compute_region_instance_group
          \ google_compute_ssl_policy
          \ google_compute_subnetwork
          \ google_compute_vpn_gateway
          \ google_compute_zones
          \ google_container_cluster
          \ google_container_engine_versions
          \ google_container_registry_image
          \ google_container_registry_repository
          \ google_dns_managed_zone
          \ google_folder
          \ google_iam_policy
          \ google_kms_secret
          \ google_organization
          \ google_project
          \ google_storage_object_signed_url
          \ google_storage_project_service_account
          \ heroku_app
          \ heroku_space
          \ http
          \ kubernetes_service
          \ kubernetes_storage_class
          \ local_file
          \ logicmonitor_collectors
          \ logicmonitor_device_group
          \ newrelic_application
          \ newrelic_key_transaction
          \ nomad_regions
          \ ns1_datasource
          \ nsxt_edge_cluster
          \ nsxt_logical_tier0_router
          \ nsxt_ns_service
          \ nsxt_switching_profile
          \ nsxt_transport_zone
          \ null_data_source
          \ oneandone_instance_size
          \ opc_compute_image_list_entry
          \ opc_compute_machine_image
          \ opc_compute_network_interface
          \ opc_compute_storage_volume_snapshot
          \ opc_compute_vnic
          \ openstack_compute_flavor_v2
          \ openstack_dns_zone_v2
          \ openstack_identity_project_v3
          \ openstack_identity_role_v3
          \ openstack_identity_user_v3
          \ openstack_images_image_v2
          \ openstack_networking_network_v2
          \ openstack_networking_secgroup_v2
          \ openstack_networking_subnet_v2
          \ openstack_networking_subnetpool_v2
          \ opentelekomcloud_images_image_v2
          \ opentelekomcloud_kms_data_key_v1
          \ opentelekomcloud_kms_key_v1
          \ opentelekomcloud_networking_network_v2
          \ opentelekomcloud_networking_secgroup_v2
          \ opentelekomcloud_rds_flavors_v1
          \ opentelekomcloud_s3_bucket_object
          \ opsgenie_user
          \ oraclepaas_database_service_instance
          \ ovh_publiccloud_region
          \ ovh_publiccloud_regions
          \ packet_precreated_ip_block
          \ pagerduty_escalation_policy
          \ pagerduty_extension_schema
          \ pagerduty_schedule
          \ pagerduty_team
          \ pagerduty_user
          \ pagerduty_vendor
          \ panos_system_info
          \ profitbricks_datacenter
          \ profitbricks_image
          \ profitbricks_location
          \ profitbricks_resource
          \ profitbricks_snapshot
          \ rancher_certificate
          \ rancher_environment
          \ rancher_setting
          \ scaleway_bootscript
          \ scaleway_image
          \ template_cloudinit_config
          \ template_file
          \ terraform_remote_state
          \ tls_public_key
          \ triton_account
          \ triton_datacenter
          \ triton_fabric_network
          \ triton_fabric_vlan
          \ triton_image
          \ triton_network
          \ triton_package
          \ vsphere_custom_attribute
          \ vsphere_datacenter
          \ vsphere_datastore
          \ vsphere_datastore_cluster
          \ vsphere_distributed_virtual_switch
          \ vsphere_host
          \ vsphere_network
          \ vsphere_resource_pool
          \ vsphere_tag
          \ vsphere_tag_category
          \ vsphere_virtual_machine
          \ vsphere_vmfs_disks
""" end data sources

""" resource
syn keyword terraResourceTypeBI
          \ alicloud_cdn_domain
          \ alicloud_cms_alarm
          \ alicloud_container_cluster
          \ alicloud_cs_application
          \ alicloud_cs_kubernetes
          \ alicloud_cs_swarm
          \ alicloud_db_account
          \ alicloud_db_account_privilege
          \ alicloud_db_backup_policy
          \ alicloud_db_connection
          \ alicloud_db_database
          \ alicloud_db_instance
          \ alicloud_disk
          \ alicloud_disk_attachment
          \ alicloud_dns
          \ alicloud_dns_group
          \ alicloud_dns_record
          \ alicloud_eip
          \ alicloud_eip_association
          \ alicloud_ess_attachment
          \ alicloud_ess_scaling_configuration
          \ alicloud_ess_scaling_group
          \ alicloud_ess_scaling_rule
          \ alicloud_ess_schedule
          \ alicloud_forward_entry
          \ alicloud_instance
          \ alicloud_key_pair
          \ alicloud_key_pair_attachment
          \ alicloud_kms_key
          \ alicloud_nat_gateway
          \ alicloud_oss_bucket
          \ alicloud_oss_bucket_object
          \ alicloud_ram_access_key
          \ alicloud_ram_account_alias
          \ alicloud_ram_alias
          \ alicloud_ram_group
          \ alicloud_ram_group_membership
          \ alicloud_ram_group_policy_attachment
          \ alicloud_ram_login_profile
          \ alicloud_ram_policy
          \ alicloud_ram_role
          \ alicloud_ram_role_attachment
          \ alicloud_ram_role_policy_attachment
          \ alicloud_ram_user
          \ alicloud_ram_user_policy_attachment
          \ alicloud_route_entry
          \ alicloud_router_interface
          \ alicloud_security_group
          \ alicloud_security_group_rule
          \ alicloud_slb
          \ alicloud_slb_attachment
          \ alicloud_slb_listener
          \ alicloud_slb_rule
          \ alicloud_slb_server_group
          \ alicloud_snat_entry
          \ alicloud_subnet
          \ alicloud_vpc
          \ alicloud_vswitch
          \ arukas_container
          \ atlas_artifact
          \ aws_acm_certificate
          \ aws_acm_certificate_validation
          \ aws_alb
          \ aws_alb_listener
          \ aws_alb_listener_certificate
          \ aws_alb_listener_rule
          \ aws_alb_target_group
          \ aws_alb_target_group_attachment
          \ aws_ami
          \ aws_ami_copy
          \ aws_ami_from_instance
          \ aws_ami_launch_permission
          \ aws_api_gateway_account
          \ aws_api_gateway_api_key
          \ aws_api_gateway_authorizer
          \ aws_api_gateway_base_path_mapping
          \ aws_api_gateway_client_certificate
          \ aws_api_gateway_deployment
          \ aws_api_gateway_documentation_part
          \ aws_api_gateway_documentation_version
          \ aws_api_gateway_domain_name
          \ aws_api_gateway_gateway_response
          \ aws_api_gateway_integration
          \ aws_api_gateway_integration_response
          \ aws_api_gateway_method
          \ aws_api_gateway_method_response
          \ aws_api_gateway_method_settings
          \ aws_api_gateway_model
          \ aws_api_gateway_request_validator
          \ aws_api_gateway_resource
          \ aws_api_gateway_rest_api
          \ aws_api_gateway_stage
          \ aws_api_gateway_usage_plan
          \ aws_api_gateway_usage_plan_key
          \ aws_api_gateway_vpc_link
          \ aws_app_cookie_stickiness_policy
          \ aws_appautoscaling_policy
          \ aws_appautoscaling_scheduled_action
          \ aws_appautoscaling_target
          \ aws_appsync_datasource
          \ aws_appsync_graphql_api
          \ aws_athena_database
          \ aws_athena_named_query
          \ aws_autoscaling_attachment
          \ aws_autoscaling_group
          \ aws_autoscaling_lifecycle_hook
          \ aws_autoscaling_notification
          \ aws_autoscaling_policy
          \ aws_autoscaling_schedule
          \ aws_batch_compute_environment
          \ aws_batch_job_definition
          \ aws_batch_job_queue
          \ aws_cloud9_environment_ec2
          \ aws_cloudformation_stack
          \ aws_cloudfront_distribution
          \ aws_cloudfront_origin_access_identity
          \ aws_cloudtrail
          \ aws_cloudwatch_dashboard
          \ aws_cloudwatch_event_permission
          \ aws_cloudwatch_event_rule
          \ aws_cloudwatch_event_target
          \ aws_cloudwatch_log_destination
          \ aws_cloudwatch_log_destination_policy
          \ aws_cloudwatch_log_group
          \ aws_cloudwatch_log_metric_filter
          \ aws_cloudwatch_log_resource_policy
          \ aws_cloudwatch_log_stream
          \ aws_cloudwatch_log_subscription_filter
          \ aws_cloudwatch_metric_alarm
          \ aws_codebuild_project
          \ aws_codecommit_repository
          \ aws_codecommit_trigger
          \ aws_codedeploy_app
          \ aws_codedeploy_deployment_config
          \ aws_codedeploy_deployment_group
          \ aws_codepipeline
          \ aws_cognito_identity_pool
          \ aws_cognito_identity_pool_roles_attachment
          \ aws_cognito_user_group
          \ aws_cognito_user_pool
          \ aws_cognito_user_pool_client
          \ aws_cognito_user_pool_domain
          \ aws_config_config_rule
          \ aws_config_configuration_recorder
          \ aws_config_configuration_recorder_status
          \ aws_config_delivery_channel
          \ aws_customer_gateway
          \ aws_dax_cluster
          \ aws_db_event_subscription
          \ aws_db_instance
          \ aws_db_option_group
          \ aws_db_parameter_group
          \ aws_db_security_group
          \ aws_db_snapshot
          \ aws_db_subnet_group
          \ aws_default_network_acl
          \ aws_default_route_table
          \ aws_default_security_group
          \ aws_default_subnet
          \ aws_default_vpc
          \ aws_default_vpc_dhcp_options
          \ aws_devicefarm_project
          \ aws_directory_service_conditional_forwarder
          \ aws_directory_service_directory
          \ aws_dms_certificate
          \ aws_dms_endpoint
          \ aws_dms_replication_instance
          \ aws_dms_replication_subnet_group
          \ aws_dms_replication_task
          \ aws_dx_connection
          \ aws_dx_connection_association
          \ aws_dx_lag
          \ aws_dynamodb_global_table
          \ aws_dynamodb_table
          \ aws_dynamodb_table_item
          \ aws_ebs_snapshot
          \ aws_ebs_volume
          \ aws_ecr_lifecycle_policy
          \ aws_ecr_repository
          \ aws_ecr_repository_policy
          \ aws_ecs_cluster
          \ aws_ecs_service
          \ aws_ecs_task_definition
          \ aws_efs_file_system
          \ aws_efs_mount_target
          \ aws_egress_only_internet_gateway
          \ aws_eip
          \ aws_eip_association
          \ aws_elastic_beanstalk_application
          \ aws_elastic_beanstalk_application_version
          \ aws_elastic_beanstalk_configuration_template
          \ aws_elastic_beanstalk_environment
          \ aws_elasticache_cluster
          \ aws_elasticache_parameter_group
          \ aws_elasticache_replication_group
          \ aws_elasticache_security_group
          \ aws_elasticache_subnet_group
          \ aws_elasticsearch_domain
          \ aws_elasticsearch_domain_policy
          \ aws_elastictranscoder_pipeline
          \ aws_elastictranscoder_preset
          \ aws_elb
          \ aws_elb_attachment
          \ aws_emr_cluster
          \ aws_emr_instance_group
          \ aws_emr_security_configuration
          \ aws_flow_log
          \ aws_gamelift_alias
          \ aws_gamelift_build
          \ aws_gamelift_fleet
          \ aws_glacier_vault
          \ aws_glue_catalog_database
          \ aws_glue_connection
          \ aws_glue_job
          \ aws_guardduty_detector
          \ aws_guardduty_ipset
          \ aws_guardduty_member
          \ aws_guardduty_threatintelset
          \ aws_iam_access_key
          \ aws_iam_account_alias
          \ aws_iam_account_password_policy
          \ aws_iam_group
          \ aws_iam_group_membership
          \ aws_iam_group_policy
          \ aws_iam_group_policy_attachment
          \ aws_iam_instance_profile
          \ aws_iam_openid_connect_provider
          \ aws_iam_policy
          \ aws_iam_policy_attachment
          \ aws_iam_role
          \ aws_iam_role_policy
          \ aws_iam_role_policy_attachment
          \ aws_iam_saml_provider
          \ aws_iam_server_certificate
          \ aws_iam_service_linked_role
          \ aws_iam_user
          \ aws_iam_user_login_profile
          \ aws_iam_user_policy
          \ aws_iam_user_policy_attachment
          \ aws_iam_user_ssh_key
          \ aws_inspector_assessment_target
          \ aws_inspector_assessment_template
          \ aws_inspector_resource_group
          \ aws_instance
          \ aws_internet_gateway
          \ aws_iot_certificate
          \ aws_iot_policy
          \ aws_iot_thing
          \ aws_iot_thing_type
          \ aws_iot_topic_rule
          \ aws_key_pair
          \ aws_kinesis_firehose_delivery_stream
          \ aws_kinesis_stream
          \ aws_kms_alias
          \ aws_kms_grant
          \ aws_kms_key
          \ aws_lambda_alias
          \ aws_lambda_event_source_mapping
          \ aws_lambda_function
          \ aws_lambda_permission
          \ aws_launch_configuration
          \ aws_launch_template
          \ aws_lb
          \ aws_lb_cookie_stickiness_policy
          \ aws_lb_listener
          \ aws_lb_listener_certificate
          \ aws_lb_listener_rule
          \ aws_lb_ssl_negotiation_policy
          \ aws_lb_target_group
          \ aws_lb_target_group_attachment
          \ aws_lightsail_domain
          \ aws_lightsail_instance
          \ aws_lightsail_key_pair
          \ aws_lightsail_static_ip
          \ aws_lightsail_static_ip_attachment
          \ aws_load_balancer_backend_server_policy
          \ aws_load_balancer_listener_policy
          \ aws_load_balancer_policy
          \ aws_main_route_table_association
          \ aws_media_store_container
          \ aws_mq_broker
          \ aws_mq_configuration
          \ aws_nat_gateway
          \ aws_network_acl
          \ aws_network_acl_rule
          \ aws_network_interface
          \ aws_network_interface_attachment
          \ aws_network_interface_sg_attachment
          \ aws_opsworks_application
          \ aws_opsworks_custom_layer
          \ aws_opsworks_ganglia_layer
          \ aws_opsworks_haproxy_layer
          \ aws_opsworks_instance
          \ aws_opsworks_java_app_layer
          \ aws_opsworks_memcached_layer
          \ aws_opsworks_mysql_layer
          \ aws_opsworks_nodejs_app_layer
          \ aws_opsworks_permission
          \ aws_opsworks_php_app_layer
          \ aws_opsworks_rails_app_layer
          \ aws_opsworks_rds_db_instance
          \ aws_opsworks_stack
          \ aws_opsworks_static_web_layer
          \ aws_opsworks_user_profile
          \ aws_organizations_account
          \ aws_organizations_organization
          \ aws_placement_group
          \ aws_proxy_protocol_policy
          \ aws_rds_cluster
          \ aws_rds_cluster_instance
          \ aws_rds_cluster_parameter_group
          \ aws_redshift_cluster
          \ aws_redshift_parameter_group
          \ aws_redshift_security_group
          \ aws_redshift_subnet_group
          \ aws_route
          \ aws_route53_delegation_set
          \ aws_route53_health_check
          \ aws_route53_query_log
          \ aws_route53_record
          \ aws_route53_zone
          \ aws_route53_zone_association
          \ aws_route_table
          \ aws_route_table_association
          \ aws_s3_bucket
          \ aws_s3_bucket_metric
          \ aws_s3_bucket_notification
          \ aws_s3_bucket_object
          \ aws_s3_bucket_policy
          \ aws_security_group
          \ aws_security_group_rule
          \ aws_service_discovery_private_dns_namespace
          \ aws_service_discovery_public_dns_namespace
          \ aws_service_discovery_service
          \ aws_servicecatalog_portfolio
          \ aws_ses_active_receipt_rule_set
          \ aws_ses_configuration_set
          \ aws_ses_domain_dkim
          \ aws_ses_domain_identity
          \ aws_ses_domain_mail_from
          \ aws_ses_event_destination
          \ aws_ses_identity_notification_topic
          \ aws_ses_receipt_filter
          \ aws_ses_receipt_rule
          \ aws_ses_receipt_rule_set
          \ aws_ses_template
          \ aws_sfn_activity
          \ aws_sfn_state_machine
          \ aws_simpledb_domain
          \ aws_snapshot_create_volume_permission
          \ aws_sns_platform_application
          \ aws_sns_topic
          \ aws_sns_topic_policy
          \ aws_sns_topic_subscription
          \ aws_spot_datafeed_subscription
          \ aws_spot_fleet_request
          \ aws_spot_instance_request
          \ aws_sqs_queue
          \ aws_sqs_queue_policy
          \ aws_ssm_activation
          \ aws_ssm_association
          \ aws_ssm_document
          \ aws_ssm_maintenance_window
          \ aws_ssm_maintenance_window_target
          \ aws_ssm_maintenance_window_task
          \ aws_ssm_parameter
          \ aws_ssm_patch_baseline
          \ aws_ssm_patch_group
          \ aws_ssm_resource_data_sync
          \ aws_subnet
          \ aws_volume_attachment
          \ aws_vpc
          \ aws_vpc_dhcp_options
          \ aws_vpc_dhcp_options_association
          \ aws_vpc_endpoint
          \ aws_vpc_endpoint_connection_notification
          \ aws_vpc_endpoint_route_table_association
          \ aws_vpc_endpoint_service
          \ aws_vpc_endpoint_service_allowed_principal
          \ aws_vpc_endpoint_subnet_association
          \ aws_vpc_peering_connection
          \ aws_vpc_peering_connection_accepter
          \ aws_vpn_connection
          \ aws_vpn_connection_route
          \ aws_vpn_gateway
          \ aws_vpn_gateway_attachment
          \ aws_vpn_gateway_route_propagation
          \ aws_waf_byte_match_set
          \ aws_waf_geo_match_set
          \ aws_waf_ipset
          \ aws_waf_rate_based_rule
          \ aws_waf_regex_match_set
          \ aws_waf_regex_pattern_set
          \ aws_waf_rule
          \ aws_waf_rule_group
          \ aws_waf_size_constraint_set
          \ aws_waf_sql_injection_match_set
          \ aws_waf_web_acl
          \ aws_waf_xss_match_set
          \ aws_wafregional_byte_match_set
          \ aws_wafregional_geo_match_set
          \ aws_wafregional_ipset
          \ aws_wafregional_rate_based_rule
          \ aws_wafregional_regex_match_set
          \ aws_wafregional_regex_pattern_set
          \ aws_wafregional_rule
          \ aws_wafregional_rule_group
          \ aws_wafregional_size_constraint_set
          \ aws_wafregional_sql_injection_match_set
          \ aws_wafregional_web_acl
          \ aws_wafregional_web_acl_association
          \ aws_wafregional_xss_match_set
          \ azure_affinity_group
          \ azure_data_disk
          \ azure_dns_server
          \ azure_hosted_service
          \ azure_instance
          \ azure_local_network_connection
          \ azure_security_group
          \ azure_security_group_rule
          \ azure_sql_database_server
          \ azure_sql_database_server_firewall_rule
          \ azure_sql_database_service
          \ azure_storage_blob
          \ azure_storage_container
          \ azure_storage_queue
          \ azure_storage_service
          \ azure_virtual_network
          \ azurerm_app_service
          \ azurerm_app_service_active_slot
          \ azurerm_app_service_custom_hostname_binding
          \ azurerm_app_service_plan
          \ azurerm_app_service_slot
          \ azurerm_application_gateway
          \ azurerm_application_insights
          \ azurerm_application_security_group
          \ azurerm_automation_account
          \ azurerm_automation_credential
          \ azurerm_automation_runbook
          \ azurerm_automation_schedule
          \ azurerm_availability_set
          \ azurerm_cdn_endpoint
          \ azurerm_cdn_profile
          \ azurerm_container_group
          \ azurerm_container_registry
          \ azurerm_container_service
          \ azurerm_cosmosdb_account
          \ azurerm_dns_a_record
          \ azurerm_dns_aaaa_record
          \ azurerm_dns_cname_record
          \ azurerm_dns_mx_record
          \ azurerm_dns_ns_record
          \ azurerm_dns_ptr_record
          \ azurerm_dns_srv_record
          \ azurerm_dns_txt_record
          \ azurerm_dns_zone
          \ azurerm_eventgrid_topic
          \ azurerm_eventhub
          \ azurerm_eventhub_authorization_rule
          \ azurerm_eventhub_consumer_group
          \ azurerm_eventhub_namespace
          \ azurerm_express_route_circuit
          \ azurerm_express_route_circuit_authorization
          \ azurerm_express_route_circuit_peering
          \ azurerm_function_app
          \ azurerm_image
          \ azurerm_iothub
          \ azurerm_key_vault
          \ azurerm_key_vault_certificate
          \ azurerm_key_vault_key
          \ azurerm_key_vault_secret
          \ azurerm_kubernetes_cluster
          \ azurerm_lb
          \ azurerm_lb_backend_address_pool
          \ azurerm_lb_nat_pool
          \ azurerm_lb_nat_rule
          \ azurerm_lb_probe
          \ azurerm_lb_rule
          \ azurerm_local_network_gateway
          \ azurerm_log_analytics_solution
          \ azurerm_log_analytics_workspace
          \ azurerm_managed_disk
          \ azurerm_management_lock
          \ azurerm_metric_alertrule
          \ azurerm_mysql_configuration
          \ azurerm_mysql_database
          \ azurerm_mysql_firewall_rule
          \ azurerm_mysql_server
          \ azurerm_network_interface
          \ azurerm_network_security_group
          \ azurerm_network_security_rule
          \ azurerm_network_watcher
          \ azurerm_packet_capture
          \ azurerm_policy_assignment
          \ azurerm_policy_definition
          \ azurerm_postgresql_configuration
          \ azurerm_postgresql_database
          \ azurerm_postgresql_firewall_rule
          \ azurerm_postgresql_server
          \ azurerm_public_ip
          \ azurerm_redis_cache
          \ azurerm_redis_firewall_rule
          \ azurerm_resource_group
          \ azurerm_role_assignment
          \ azurerm_role_definition
          \ azurerm_route
          \ azurerm_route_table
          \ azurerm_scheduler_job_collection
          \ azurerm_search_service
          \ azurerm_servicebus_namespace
          \ azurerm_servicebus_queue
          \ azurerm_servicebus_subscription
          \ azurerm_servicebus_topic
          \ azurerm_servicebus_topic_authorization_rule
          \ azurerm_snapshot
          \ azurerm_sql_active_directory_administrator
          \ azurerm_sql_database
          \ azurerm_sql_elasticpool
          \ azurerm_sql_firewall_rule
          \ azurerm_sql_server
          \ azurerm_sql_virtual_network_rule
          \ azurerm_storage_account
          \ azurerm_storage_blob
          \ azurerm_storage_container
          \ azurerm_storage_queue
          \ azurerm_storage_share
          \ azurerm_storage_table
          \ azurerm_subnet
          \ azurerm_template_deployment
          \ azurerm_traffic_manager_endpoint
          \ azurerm_traffic_manager_profile
          \ azurerm_virtual_machine
          \ azurerm_virtual_machine_extension
          \ azurerm_virtual_machine_scale_set
          \ azurerm_virtual_network
          \ azurerm_virtual_network_gateway
          \ azurerm_virtual_network_gateway_connection
          \ azurerm_virtual_network_peering
          \ bitbucket_default_reviewers
          \ bitbucket_hook
          \ bitbucket_repository
          \ chef_acl
          \ chef_client
          \ chef_cookbook
          \ chef_data_bag
          \ chef_data_bag_item
          \ chef_environment
          \ chef_node
          \ chef_role
          \ circonus_check
          \ circonus_contact_group
          \ circonus_graph
          \ circonus_metric
          \ circonus_metric_cluster
          \ circonus_rule_set
          \ clc_group
          \ clc_load_balancer
          \ clc_load_balancer_pool
          \ clc_public_ip
          \ clc_server
          \ cloudflare_load_balancer
          \ cloudflare_load_balancer_monitor
          \ cloudflare_load_balancer_pool
          \ cloudflare_page_rule
          \ cloudflare_rate_limit
          \ cloudflare_record
          \ cloudflare_zone_settings_override
          \ cloudscale_floating_ip
          \ cloudscale_server
          \ cloudstack_affinity_group
          \ cloudstack_disk
          \ cloudstack_egress_firewall
          \ cloudstack_firewall
          \ cloudstack_instance
          \ cloudstack_ipaddress
          \ cloudstack_loadbalancer_rule
          \ cloudstack_network
          \ cloudstack_network_acl
          \ cloudstack_network_acl_rule
          \ cloudstack_nic
          \ cloudstack_port_forward
          \ cloudstack_private_gateway
          \ cloudstack_secondary_ipaddress
          \ cloudstack_security_group
          \ cloudstack_security_group_rule
          \ cloudstack_ssh_keypair
          \ cloudstack_static_nat
          \ cloudstack_static_route
          \ cloudstack_template
          \ cloudstack_vpc
          \ cloudstack_vpn_connection
          \ cloudstack_vpn_customer_gateway
          \ cloudstack_vpn_gateway
          \ cobbler_distro
          \ cobbler_kickstart_file
          \ cobbler_profile
          \ cobbler_repo
          \ cobbler_snippet
          \ cobbler_system
          \ consul_agent_service
          \ consul_catalog_entry
          \ consul_key_prefix
          \ consul_keys
          \ consul_node
          \ consul_prepared_query
          \ consul_service
          \ datadog_downtime
          \ datadog_metric_metadata
          \ datadog_monitor
          \ datadog_timeboard
          \ datadog_user
          \ digitalocean_certificate
          \ digitalocean_domain
          \ digitalocean_droplet
          \ digitalocean_firewall
          \ digitalocean_floating_ip
          \ digitalocean_loadbalancer
          \ digitalocean_record
          \ digitalocean_ssh_key
          \ digitalocean_tag
          \ digitalocean_volume
          \ dme_record
          \ dns_a_record_set
          \ dns_aaaa_record_set
          \ dns_cname_record
          \ dns_ns_record_set
          \ dns_ptr_record
          \ dnsimple_record
          \ docker_container
          \ docker_image
          \ docker_network
          \ docker_volume
          \ dyn_record
          \ fastly_service_v1
          \ github_branch_protection
          \ github_issue_label
          \ github_membership
          \ github_organization_webhook
          \ github_repository
          \ github_repository_collaborator
          \ github_repository_deploy_key
          \ github_repository_webhook
          \ github_team
          \ github_team_membership
          \ github_team_repository
          \ gitlab_deploy_key
          \ gitlab_group
          \ gitlab_label
          \ gitlab_project
          \ gitlab_project_hook
          \ gitlab_user
          \ google_bigquery_dataset
          \ google_bigquery_table
          \ google_bigtable_instance
          \ google_bigtable_table
          \ google_cloudfunctions_function
          \ google_cloudiot_registry
          \ google_compute_address
          \ google_compute_autoscaler
          \ google_compute_backend_bucket
          \ google_compute_backend_service
          \ google_compute_disk
          \ google_compute_firewall
          \ google_compute_forwarding_rule
          \ google_compute_global_address
          \ google_compute_global_forwarding_rule
          \ google_compute_health_check
          \ google_compute_http_health_check
          \ google_compute_https_health_check
          \ google_compute_image
          \ google_compute_instance
          \ google_compute_instance_group
          \ google_compute_instance_group_manager
          \ google_compute_instance_template
          \ google_compute_network
          \ google_compute_network_peering
          \ google_compute_project_metadata
          \ google_compute_project_metadata_item
          \ google_compute_region_autoscaler
          \ google_compute_region_backend_service
          \ google_compute_region_instance_group_manager
          \ google_compute_route
          \ google_compute_router
          \ google_compute_router_interface
          \ google_compute_router_peer
          \ google_compute_security_policy
          \ google_compute_shared_vpc_host_project
          \ google_compute_shared_vpc_service_project
          \ google_compute_snapshot
          \ google_compute_ssl_certificate
          \ google_compute_ssl_policy
          \ google_compute_subnetwork
          \ google_compute_target_http_proxy
          \ google_compute_target_https_proxy
          \ google_compute_target_pool
          \ google_compute_target_ssl_proxy
          \ google_compute_target_tcp_proxy
          \ google_compute_url_map
          \ google_compute_vpn_gateway
          \ google_compute_vpn_tunnel
          \ google_container_cluster
          \ google_container_node_pool
          \ google_dataflow_job
          \ google_dataproc_cluster
          \ google_dataproc_job
          \ google_dns_managed_zone
          \ google_dns_record_set
          \ google_endpoints_service
          \ google_folder
          \ google_folder_organization_policy
          \ google_kms_crypto_key
          \ google_kms_key_ring
          \ google_logging_billing_account_sink
          \ google_logging_folder_sink
          \ google_logging_organization_sink
          \ google_logging_project_sink
          \ google_organization_iam_custom_role
          \ google_organization_policy
          \ google_project
          \ google_project_iam_custom_role
          \ google_project_iam_policy
          \ google_project_organization_policy
          \ google_project_service
          \ google_project_services
          \ google_project_usage_export_bucket
          \ google_pubsub_subscription
          \ google_pubsub_topic
          \ google_runtimeconfig_config
          \ google_runtimeconfig_variable
          \ google_service_account
          \ google_service_account_key
          \ google_sourcerepo_repository
          \ google_spanner_database
          \ google_spanner_instance
          \ google_sql_database
          \ google_sql_database_instance
          \ google_sql_user
          \ google_storage_bucket
          \ google_storage_bucket_acl
          \ google_storage_bucket_object
          \ google_storage_default_object_acl
          \ google_storage_notification
          \ google_storage_object_acl
          \ heroku_addon
          \ heroku_addon_attachment
          \ heroku_app
          \ heroku_app_feature
          \ heroku_cert
          \ heroku_domain
          \ heroku_drain
          \ heroku_pipeline
          \ heroku_pipeline_coupling
          \ heroku_space
          \ icinga2_checkcommand
          \ icinga2_host
          \ icinga2_hostgroup
          \ icinga2_service
          \ ignition_config
          \ ignition_directory
          \ ignition_disk
          \ ignition_file
          \ ignition_filesystem
          \ ignition_group
          \ ignition_link
          \ ignition_networkd_unit
          \ ignition_raid
          \ ignition_systemd_unit
          \ ignition_user
          \ influxdb_continuous_query
          \ influxdb_database
          \ influxdb_user
          \ kubernetes_config_map
          \ kubernetes_horizontal_pod_autoscaler
          \ kubernetes_limit_range
          \ kubernetes_namespace
          \ kubernetes_persistent_volume
          \ kubernetes_persistent_volume_claim
          \ kubernetes_pod
          \ kubernetes_replication_controller
          \ kubernetes_resource_quota
          \ kubernetes_secret
          \ kubernetes_service
          \ kubernetes_service_account
          \ kubernetes_storage_class
          \ librato_alert
          \ librato_metric
          \ librato_service
          \ librato_space
          \ librato_space_chart
          \ local_file
          \ logentries_log
          \ logentries_logset
          \ logicmonitor_collector
          \ logicmonitor_collector_group
          \ logicmonitor_device
          \ logicmonitor_device_group
          \ mailgun_domain
          \ mysql_database
          \ mysql_grant
          \ mysql_user
          \ newrelic_alert_channel
          \ newrelic_alert_condition
          \ newrelic_alert_policy
          \ newrelic_alert_policy_channel
          \ newrelic_dashboard
          \ newrelic_nrql_alert_condition
          \ nomad_acl_policy
          \ nomad_acl_token
          \ nomad_job
          \ nomad_namespace
          \ nomad_quota_specification
          \ nomad_sentinel_policy
          \ nsxt_algorithm_type_ns_service
          \ nsxt_dhcp_relay_profile
          \ nsxt_dhcp_relay_service
          \ nsxt_ether_type_ns_service
          \ nsxt_firewall_section
          \ nsxt_icmp_type_ns_service
          \ nsxt_igmp_type_ns_service
          \ nsxt_ip_protocol_ns_service
          \ nsxt_ip_set
          \ nsxt_l4_port_set_ns_service
          \ nsxt_logical_port
          \ nsxt_logical_router_downlink_port
          \ nsxt_logical_router_link_port_on_tier0
          \ nsxt_logical_router_link_port_on_tier1
          \ nsxt_logical_switch
          \ nsxt_logical_tier1_router
          \ nsxt_nat_rule
          \ nsxt_ns_group
          \ nsxt_static_route
          \ nsxt_vm_tags
          \ null_resource
          \ oneandone_firewall_policy
          \ oneandone_loadbalancer
          \ oneandone_monitoring_policy
          \ oneandone_private_network
          \ oneandone_public_ip
          \ oneandone_server
          \ oneandone_shared_storage
          \ oneandone_vpn
          \ opc_compute_acl
          \ opc_compute_image_list
          \ opc_compute_image_list_entry
          \ opc_compute_instance
          \ opc_compute_ip_address_association
          \ opc_compute_ip_address_prefix_set
          \ opc_compute_ip_address_reservation
          \ opc_compute_ip_association
          \ opc_compute_ip_network
          \ opc_compute_ip_network_exchange
          \ opc_compute_ip_reservation
          \ opc_compute_machine_image
          \ opc_compute_orchestrated_instance
          \ opc_compute_route
          \ opc_compute_sec_rule
          \ opc_compute_security_application
          \ opc_compute_security_association
          \ opc_compute_security_ip_list
          \ opc_compute_security_list
          \ opc_compute_security_protocol
          \ opc_compute_security_rule
          \ opc_compute_snapshot
          \ opc_compute_ssh_key
          \ opc_compute_storage_attachment
          \ opc_compute_storage_volume
          \ opc_compute_storage_volume_snapshot
          \ opc_compute_vnic_set
          \ opc_storage_container
          \ opc_storage_object
          \ openstack_blockstorage_volume_attach_v2
          \ openstack_blockstorage_volume_v1
          \ openstack_blockstorage_volume_v2
          \ openstack_compute_flavor_v2
          \ openstack_compute_floatingip_associate_v2
          \ openstack_compute_floatingip_v2
          \ openstack_compute_instance_v2
          \ openstack_compute_keypair_v2
          \ openstack_compute_secgroup_v2
          \ openstack_compute_servergroup_v2
          \ openstack_compute_volume_attach_v2
          \ openstack_db_configuration_v1
          \ openstack_db_database_v1
          \ openstack_db_instance_v1
          \ openstack_db_user_v1
          \ openstack_dns_recordset_v2
          \ openstack_dns_zone_v2
          \ openstack_fw_firewall_v1
          \ openstack_fw_policy_v1
          \ openstack_fw_rule_v1
          \ openstack_identity_project_v3
          \ openstack_identity_role_v3
          \ openstack_identity_user_v3
          \ openstack_images_image_v2
          \ openstack_lb_listener_v2
          \ openstack_lb_loadbalancer_v2
          \ openstack_lb_member_v1
          \ openstack_lb_member_v2
          \ openstack_lb_monitor_v1
          \ openstack_lb_monitor_v2
          \ openstack_lb_pool_v1
          \ openstack_lb_pool_v2
          \ openstack_lb_vip_v1
          \ openstack_networking_floatingip_v2
          \ openstack_networking_network_v2
          \ openstack_networking_port_v2
          \ openstack_networking_router_interface_v2
          \ openstack_networking_router_route_v2
          \ openstack_networking_router_v2
          \ openstack_networking_secgroup_rule_v2
          \ openstack_networking_secgroup_v2
          \ openstack_networking_subnet_v2
          \ openstack_networking_subnetpool_v2
          \ openstack_objectstorage_container_v1
          \ openstack_objectstorage_object_v1
          \ opentelekomcloud_blockstorage_volume_v2
          \ opentelekomcloud_ces_alarmrule
          \ opentelekomcloud_compute_floatingip_associate_v2
          \ opentelekomcloud_compute_floatingip_v2
          \ opentelekomcloud_compute_instance_v2
          \ opentelekomcloud_compute_keypair_v2
          \ opentelekomcloud_compute_secgroup_v2
          \ opentelekomcloud_compute_servergroup_v2
          \ opentelekomcloud_compute_volume_attach_v2
          \ opentelekomcloud_dns_recordset_v2
          \ opentelekomcloud_dns_zone_v2
          \ opentelekomcloud_elb_backend
          \ opentelekomcloud_elb_health
          \ opentelekomcloud_elb_listener
          \ opentelekomcloud_elb_loadbalancer
          \ opentelekomcloud_fw_firewall_group_v2
          \ opentelekomcloud_fw_policy_v2
          \ opentelekomcloud_fw_rule_v2
          \ opentelekomcloud_images_image_v2
          \ opentelekomcloud_kms_key_v1
          \ opentelekomcloud_lb_listener_v2
          \ opentelekomcloud_lb_loadbalancer_v2
          \ opentelekomcloud_lb_member_v2
          \ opentelekomcloud_lb_monitor_v2
          \ opentelekomcloud_lb_pool_v2
          \ opentelekomcloud_networking_floatingip_v2
          \ opentelekomcloud_networking_network_v2
          \ opentelekomcloud_networking_port_v2
          \ opentelekomcloud_networking_router_interface_v2
          \ opentelekomcloud_networking_router_route_v2
          \ opentelekomcloud_networking_router_v2
          \ opentelekomcloud_networking_secgroup_rule_v2
          \ opentelekomcloud_networking_secgroup_v2
          \ opentelekomcloud_networking_subnet_v2
          \ opentelekomcloud_rds_instance_v1
          \ opentelekomcloud_s3_bucket
          \ opentelekomcloud_s3_bucket_object
          \ opentelekomcloud_s3_bucket_policy
          \ opentelekomcloud_smn_subscription_v2
          \ opentelekomcloud_smn_topic_v2
          \ opentelekomcloud_vpc_eip_v1
          \ opsgenie_team
          \ opsgenie_user
          \ oraclepaas_database_access_rule
          \ oraclepaas_database_service_instance
          \ oraclepaas_java_access_rule
          \ oraclepaas_java_service_instance
          \ ovh_domain_zone_record
          \ ovh_publiccloud_private_network
          \ ovh_publiccloud_private_network_subnet
          \ ovh_publiccloud_user
          \ ovh_vrack_publiccloud_attachment
          \ packet_device
          \ packet_ip_attachment
          \ packet_project
          \ packet_reserved_ip_block
          \ packet_ssh_key
          \ packet_volume
          \ packet_volume_attachment
          \ pagerduty_addon
          \ pagerduty_escalation_policy
          \ pagerduty_extension
          \ pagerduty_maintenance_window
          \ pagerduty_schedule
          \ pagerduty_service
          \ pagerduty_service_integration
          \ pagerduty_team
          \ pagerduty_team_membership
          \ pagerduty_user
          \ pagerduty_user_contact_method
          \ panos_address_group
          \ panos_address_object
          \ panos_administrative_tag
          \ panos_dag_tags
          \ panos_ethernet_interface
          \ panos_general_settings
          \ panos_management_profile
          \ panos_nat_policy
          \ panos_security_policies
          \ panos_service_group
          \ panos_service_object
          \ panos_virtual_router
          \ panos_zone
          \ postgresql_database
          \ postgresql_extension
          \ postgresql_role
          \ postgresql_schema
          \ powerdns_record
          \ profitbricks_datacenter
          \ profitbricks_firewall
          \ profitbricks_group
          \ profitbricks_ipblock
          \ profitbricks_ipfailover
          \ profitbricks_lan
          \ profitbricks_loadbalancer
          \ profitbricks_nic
          \ profitbricks_server
          \ profitbricks_share
          \ profitbricks_snapshot
          \ profitbricks_user
          \ profitbricks_volume
          \ rabbitmq_binding
          \ rabbitmq_exchange
          \ rabbitmq_permissions
          \ rabbitmq_policy
          \ rabbitmq_queue
          \ rabbitmq_user
          \ rabbitmq_vhost
          \ rancher_certificate
          \ rancher_environment
          \ rancher_host
          \ rancher_registration_token
          \ rancher_registry
          \ rancher_registry_credential
          \ rancher_secret
          \ rancher_stack
          \ rancher_volume
          \ random_id
          \ random_integer
          \ random_pet
          \ random_shuffle
          \ random_string
          \ rundeck_job
          \ rundeck_private_key
          \ rundeck_project
          \ rundeck_public_key
          \ scaleway_ip
          \ scaleway_security_group
          \ scaleway_security_group_rule
          \ scaleway_server
          \ scaleway_ssh_key
          \ scaleway_token
          \ scaleway_user_data
          \ scaleway_volume
          \ scaleway_volume_attachment
          \ softlayer_ssh_key
          \ softlayer_virtual_guest
          \ spotinst_aws_group
          \ spotinst_healthcheck
          \ spotinst_subscription
          \ statuscake_test
          \ template_dir
          \ tls_cert_request
          \ tls_locally_signed_cert
          \ tls_private_key
          \ tls_self_signed_cert
          \ triton_fabric
          \ triton_firewall_rule
          \ triton_key
          \ triton_machine
          \ triton_snapshot
          \ triton_vlan
          \ ultradns_dirpool
          \ ultradns_probe_http
          \ ultradns_probe_ping
          \ ultradns_rdpool
          \ ultradns_record
          \ ultradns_tcpool
          \ vcd_dnat
          \ vcd_edgegateway_vpn
          \ vcd_firewall_rules
          \ vcd_network
          \ vcd_snat
          \ vcd_vapp
          \ vcd_vapp_vm
          \ vsphere_custom_attribute
          \ vsphere_datacenter
          \ vsphere_datastore_cluster
          \ vsphere_distributed_port_group
          \ vsphere_distributed_virtual_switch
          \ vsphere_file
          \ vsphere_folder
          \ vsphere_host_port_group
          \ vsphere_host_virtual_switch
          \ vsphere_license
          \ vsphere_nas_datastore
          \ vsphere_storage_drs_vm_override
          \ vsphere_tag
          \ vsphere_tag_category
          \ vsphere_virtual_disk
          \ vsphere_virtual_machine
          \ vsphere_virtual_machine_snapshot
          \ vsphere_vmfs_datastore
""" end resources

syn keyword terraTodo         contained TODO FIXME XXX BUG
syn cluster terraCommentGroup contains=terraTodo
syn region  terraComment      start="/\*" end="\*/" contains=@terraCommentGroup,@Spell
syn region  terraComment      start="#" end="$" contains=@terraCommentGroup,@Spell
syn region  terraComment      start="//" end="$" contains=@terraCommentGroup,@Spell

syn match  terraResource        /\<resource\>/ nextgroup=terraResourceTypeStr skipwhite
syn region terraResourceTypeStr start=/"/ end=/"/ contains=terraResourceTypeBI
                              \ nextgroup=terraResourceName skipwhite
syn region terraResourceName    start=/"/ end=/"/
                              \ nextgroup=terraResourceBlock skipwhite

syn match  terraData        /\<data\>/ nextgroup=terraDataTypeStr skipwhite
syn region terraDataTypeStr start=/"/ end=/"/ contains=terraDataTypeBI
                              \ nextgroup=terraDataName skipwhite
syn region terraDataName    start=/"/ end=/"/
                              \ nextgroup=terraDataBlock skipwhite

""" provider
syn match  terraProvider      /\<provider\>/ nextgroup=terraProviderName skipwhite
syn region terraProviderName  start=/"/ end=/"/ nextgroup=terraProviderBlock skipwhite

""" provisioner
syn match  terraProvisioner     /\<provisioner\>/ nextgroup=terraProvisionerName skipwhite
syn region terraProvisionerName start=/"/ end=/"/ nextgroup=terraProvisionerBlock skipwhite

""" module
syn match  terraModule     /\<module\>/ nextgroup=terraModuleName skipwhite
syn region terraModuleName start=/"/ end=/"/ nextgroup=terraModuleBlock skipwhite

""" misc.
syn match terraValueDec      "\<[0-9]\+\([kKmMgG]b\?\)\?\>"
syn match terraValueHexaDec  "\<0x[0-9a-f]\+\([kKmMgG]b\?\)\?\>"
syn match terraBraces        "[{}\[\]]"

""" skip \" in strings.
""" we may also want to pass \\" into a function to escape quotes.
syn region terraValueString   start=/"/ skip=/\\\+"/ end=/"/ contains=terraStringInterp
syn region terraStringInterp  matchgroup=terraBrackets start=/\${/ end=/}/ contains=terraValueFunction,terraValueVarSubscript,terraStringInterp contained
syn region terraHereDocText   start=/<<\z([A-Z]\+\)/ end=/^\z1/ contains=terraStringInterp
"" TODO match keywords here, not a-z+
syn region terraValueFunction matchgroup=terraBrackets start=/[a-z]\+(/ end=/)/ contains=terraValueString,terraValueFunction,terraValueVarSubscript contained
" User variables or module outputs can be lists or maps, and accessed with
" var.map["foo"]
syn region terraValueVarSubscript start=/\(\<var\|\<module\)\.[a-z0-9_-]\+\[/ end=/\]/ contains=terraValueString,terraValueFunction,terraValueVarSubscript contained

hi def link terraComment           Comment
hi def link terraTodo              Todo
hi def link terraBrackets          Operator
hi def link terraProvider          Structure
hi def link terraBraces            Delimiter
hi def link terraProviderName      String
hi def link terraResource          Structure
hi def link terraResourceName      String
hi def link terraResourceTypeBI    Tag
hi def link terraResourceTypeStr   String
hi def link terraData              Structure
hi def link terraDataName          String
hi def link terraDataTypeBI        Tag
hi def link terraDataTypeStr       String
hi def link terraSection           Structure
hi def link terraStringInterp      Identifier
hi def link terraValueBool         Boolean
hi def link terraValueDec          Number
hi def link terraValueHexaDec      Number
hi def link terraValueString       String
hi def link terraHereDocText       String
hi def link terraProvisioner       Structure
hi def link terraProvisionerName   String
hi def link terraModule            Structure
hi def link terraModuleName        String
hi def link terraValueFunction     Identifier
hi def link terraValueVarSubscript Identifier

let b:current_syntax = "terraform"

endif