terraform-azurerm-naming

command module
v0.1.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 16, 2020 License: MIT Imports: 5 Imported by: 0

README

Azure Naming

This module helps you to keep consistency on your resources names for terraform The goal of this module it is that for each resource that requires a name in terraform you would be easialy able to compose this name using this module and this will keep the consistency in your repositories.

Usage

For every resource in terraform_azurerm just remove the azurerm part of the module and use the name property of this output.

example for azurerm_resource_group you can use :

module "naming" "main" {
  suffix = [ "test" ]
}
resource "azurerm_resource_group" "example" {
  name     = module.naming.main.resource_group.name
  location = "West Europe"
}

if you want this to be unique for this module and not shared with other instances of this module you can use name_unique

module "naming" "main" {
  suffix = [ "test" ]
}
resource "azurerm_resource_group" "example" {
  name     = module.naming.main.resource_group.name
  location = "West Europe"
}

There are other advances usages that will be explained in the Advanced usages part og this docs.

Internals

Modifying resources

The resources are automatically generated using go to change the generation please change the file on the templates folder. To add a new resource, include their definition at resourceDefinition.jsonc file it will be automatically generated.

Current implementation

You can find a list bellow of all the resources that are currently implemented. To get a list of the ones that are missing implementation you can check at Missing resources the resources that have no documentation about their limitation on naming currently on Microsoft docs are on the Not defined list.

Requirements

Name Version
random ~> 2.2

Providers

Name Version
random ~> 2.2

Inputs

Name Description Type Default Required
prefix It is not recommended that you use prefix by azure you should be using a suffix for your resources. list(string) [] no
suffix It is recommended that you specify a suffix for consistency. please use only lowercase charactes when possible list(string) [] no
unique-include-numbers If you want to iunclude numbers in the unique generation bool true no
unique-length Max length of the uniquiness suffix to be added number 4 no
unique-seed Custom value for the randon charecters to be used string "" no

Outputs

Name Description
analysis_services_server n/a
api_managment_service n/a
app_configuration n/a
application_gateway n/a
automation_account n/a
automation_certificate n/a
automation_credential n/a
automation_runbook n/a
automation_schedule n/a
automation_variable n/a
availability_set n/a
bastion_host n/a
batch_account n/a
batch_application n/a
batch_certificate n/a
batch_pool n/a
bot_channel_Email n/a
bot_channel_directline n/a
bot_channel_ms_teams n/a
bot_channel_slack n/a
bot_channels_registration n/a
bot_connection n/a
bot_web_app n/a
cdn_endpoint n/a
cdn_profile n/a
cognitive_account n/a
containerGroups n/a
container_registry n/a
container_registry_webhook n/a
cosmosdb_account n/a
custom_provider n/a
data_factory n/a
data_factory_dataset_mysql n/a
data_factory_dataset_postgresql n/a
data_factory_dataset_sql_server_table n/a
data_factory_integration_runtime_managed n/a
data_factory_linked_service_data_lake_storage_gen2 n/a
data_factory_linked_service_key_vault n/a
data_factory_linked_service_mysql n/a
data_factory_linked_service_postgresql n/a
data_factory_linked_service_sql_server n/a
data_factory_pipeline n/a
data_factory_trigger_schedule n/a
data_lake_analytics_account n/a
data_lake_analytics_firewall_rule n/a
data_lake_store n/a
data_lake_store_firewall_rule n/a
database_migration_project n/a
database_migration_service n/a
databricks_workspace n/a
dev_test_lab n/a
dev_test_linux_virtual_machine n/a
dev_test_windows_virtual_machine n/a
disk_encryption_set n/a
eventhub n/a
eventhub_authorization_rule n/a
eventhub_consumer_group n/a
eventhub_namespace n/a
eventhub_namespace_authorization_rule n/a
eventhub_namespace_disaster_recovery_config n/a
express_route_circuit n/a
express_route_gateway n/a
firewall n/a
firewall_application_rule_collection n/a
firewall_ip_configuration n/a
firewall_nat_rule_collection n/a
firewall_network_rule_collection n/a
frontdoor n/a
frontdoor_firewall_policy n/a
hdinsight_hadoop_cluster n/a
hdinsight_hbase_cluster n/a
hdinsight_interactive_query_cluster n/a
hdinsight_kafka_cluster n/a
hdinsight_ml_services_cluster n/a
hdinsight_rserver_cluster n/a
hdinsight_spark_cluster n/a
hdinsight_storm_cluster n/a
image n/a
iotcentral_application n/a
iothub n/a
iothub_consumer_group n/a
iothub_dps n/a
iothub_dps_certificate n/a
key_vault n/a
key_vault_certificate n/a
key_vault_key n/a
key_vault_secret n/a
kubernetes_cluster n/a
kusto_cluster n/a
kusto_database n/a
kusto_eventhub_data_connection n/a
lb n/a
lb_nat_rule n/a
linux_virtual_machine n/a
linux_virtual_machine_scale_set n/a
local_network_gateway n/a
log_analytics_workspace n/a
machine_learning_workspace n/a
managed_disk n/a
maps_account n/a
mariadb_database n/a
mariadb_firewall_rule n/a
mariadb_server n/a
mariadb_virtual_network_rule n/a
mssql_database n/a
mssql_elasticpool n/a
mssql_server n/a
mysql_database n/a
mysql_firewall_rule n/a
mysql_server n/a
mysql_virtual_network_rule n/a
network_interface n/a
network_watcher n/a
point_to_site_vpn_gateway n/a
postgresql_database n/a
postgresql_firewall_rule n/a
postgresql_server n/a
postgresql_virtual_network_rule n/a
private_endpoint n/a
private_service_connection n/a
public_ip n/a
public_ip_prefix n/a
redis_cache n/a
redis_firewall_rule n/a
resource_group n/a
role_assignment n/a
role_definition n/a
route n/a
route_table n/a
service_fabric_cluster n/a
shared_image n/a
shared_image_gallery n/a
snapshots n/a
sql_elasticpool n/a
sql_failover_group n/a
sql_firewall_rule n/a
sql_server n/a
storage_account n/a
storage_blob n/a
storage_container n/a
storage_data_lake_gen2_filesystem n/a
storage_queue n/a
storage_share n/a
storage_share_directory n/a
storage_table n/a
stream_analytics_function_javascript_udf n/a
stream_analytics_job n/a
stream_analytics_output_blob n/a
stream_analytics_output_eventhub n/a
stream_analytics_output_mssql n/a
stream_analytics_output_servicebus_queue n/a
stream_analytics_output_servicebus_topic n/a
stream_analytics_reference_input_blob n/a
stream_analytics_stream_input_blob n/a
stream_analytics_stream_input_eventhub n/a
stream_analytics_stream_input_iothub n/a
subnet n/a
template_deployment n/a
traffic_manager_profile n/a
unique-seed n/a
virtual_machine n/a
virtual_machine_scale_set n/a
virtual_network n/a
virtual_network_gateway n/a
virtual_network_peering n/a
virtual_wan n/a
windows_virtual_machine n/a
windows_virtual_machine_scale_set n/a

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL