Skip to content

Latest commit

 

History

History
135 lines (131 loc) · 15.9 KB

File metadata and controls

135 lines (131 loc) · 15.9 KB

Inputs

Name Description Type Default Required
addtional_capabilities_enabled Whether additional capabilities block is enabled. bool false no
admin_password The password associated with the local administrator account.NOTE:- Optional for Linux Vm but REQUIRED for Windows VM string null no
admin_username Specifies the name of the local administrator account.NOTE:- Optional for Linux Vm but REQUIRED for Windows VM string "" no
allocation_method Defines the allocation method for this IP address. Possible values are Static or Dynamic. string "Static" no
allow_extension_operations (Optional) Should Extension Operations be allowed on this Virtual Machine? Defaults to true. bool true no
availability_set_enabled Whether availability set is enabled. bool false no
backup_enabled Added Backup Policy and Service Vault for the Virtual Machine bool false no
backup_policy Value for Backup Policy ID string null no
backup_policy_frequency (Optional) Indicate the fequency to use for the backup policy string "Daily" no
backup_policy_retention n/a
map(object({
enabled = bool
frequency = string
count = string
weekdays = list(string)
weeks = list(string)
}))
{
"daily": {
"count": "7",
"enabled": true,
"frequency": "Daily",
"weekdays": [],
"weeks": []
},
"monthly": {
"count": "3",
"enabled": false,
"frequency": "Monthly",
"weekdays": [
"Saturday"
],
"weeks": [
"Last"
]
},
"weekly": {
"count": "4",
"enabled": false,
"frequency": "Weekly",
"weekdays": [
"Saturday"
],
"weeks": []
}
}
no
backup_policy_time (Optional) Indicates the time for when to execute the backup policy string "23:00" no
backup_policy_time_zone (Optional) Indicates the timezone that the policy will use string "UTC" no
backup_policy_type (Optional) Indicates which version type to use when creating the backup policy string "V1" no
blob_endpoint The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files string "" no
boot_diagnostics_enabled Whether boot diagnostics block is enabled. bool false no
caching Specifies the caching requirements for the OS Disk. Possible values include None, ReadOnly and ReadWrite. string "ReadWrite" no
computer_name Name of the Windows Computer Name. string null no
create Used when creating the Resource Group. string "60m" no
create_option Specifies how the azure managed Disk should be created. Possible values are Attach (managed disks only) and FromImage. string "Empty" no
custom_image_id Specifies the ID of the Custom Image which the Virtual Machine should be created from. string "" no
data_disks Managed Data Disks for azure virtual machine
list(object({
name = string
storage_account_type = string
disk_size_gb = number
}))
[] no
ddos_protection_mode The DDoS protection mode of the public IP string "VirtualNetworkInherited" no
dedicated_host_id (Optional) The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id. string null no
delete Used when deleting the Resource Group. string "60m" no
diagnostic_setting_enable n/a bool false no
disable_password_authentication Specifies whether password authentication should be disabled. bool true no
disk_size_gb Specifies the size of the OS Disk in gigabytes. number 30 no
dns_servers List of IP addresses of DNS servers. list(string) [] no
domain_name_label Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system. string null no
enable_accelerated_networking Should Accelerated Networking be enabled? Defaults to false. bool false no
enable_automatic_updates (Optional) Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true. bool true no
enable_disk_encryption_set n/a bool false no
enable_encryption_at_host Flag to control Disk Encryption at host level bool true no
enable_ip_forwarding Should IP Forwarding be enabled? Defaults to false. bool false no
enable_os_disk_write_accelerator Should Write Accelerator be Enabled for this OS Disk? This requires that the storage_account_type is set to Premium_LRS and that caching is set to None. bool false no
enabled Flag to control the module creation. bool true no
environment Environment (e.g. prod, dev, staging). string "" no
eventhub_authorization_rule_id Specifies the ID of an Event Hub Namespace Authorization Rule used to send Diagnostics Data. string null no
eventhub_name Specifies the name of the Event Hub where Diagnostics Data should be sent. string null no
extensions List of extensions for azure virtual machine list(any) [] no
identity_enabled Whether identity block is enabled. bool true no
identity_ids Specifies a list of user managed identity ids to be assigned to the VM. list(any) [] no
idle_timeout_in_minutes Specifies the timeout for the TCP idle connection. The value can be set between 4 and 60 minutes. number 10 no
image_offer Specifies the offer of the image used to create the virtual machine. string "" no
image_publisher Specifies the publisher of the image used to create the virtual machine. string "" no
image_sku Specifies the SKU of the image used to create the virtual machine. string "" no
image_version Specifies the version of the image used to create the virtual machine. string "latest" no
internal_dns_name_label The (relative) DNS Name used for internal communications between Virtual Machines in the same Virtual Network. string null no
ip_version The IP Version to use, IPv6 or IPv4. string "IPv4" no
is_vm_linux Create Linux Virtual Machine. bool false no
is_vm_windows Create Windows Virtual Machine. bool false no
key_size Specifies the Size of the RSA key to create in bytes. For example, 1024 or 2048. Note: This field is required if key_type is RSA or RSA-HSM. Changing this forces a new resource to be created. number 2048 no
key_type Specifies the Key Type to use for this Key Vault Key. Possible values are EC (Elliptic Curve), EC-HSM, RSA and RSA-HSM. Changing this forces a new resource to be created. string "RSA" no
key_vault_id n/a any null no
key_vault_rbac_auth_enabled Flag to state whether rbac authorization is used in key vault or access policy. bool true no
label_order Label order, e.g. name,application. list(any)
[
"name",
"environment"
]
no
license_type Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server. string "Windows_Client" no
linux_patch_mode (Optional) Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault string "ImageDefault" no
location Location where resource should be created. string "" no
log_analytics_destination_type Possible values are AzureDiagnostics and Dedicated, default to AzureDiagnostics. When set to Dedicated, logs sent to a Log Analytics workspace will go into resource specific tables, instead of the legacy AzureDiagnostics table. string "AzureDiagnostics" no
log_analytics_workspace_id n/a string null no
machine_count Number of Virtual Machines to create. number 1 no
managed Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. bool true no
managedby ManagedBy, eg 'CloudDrove'. string "[email protected]" no
metric_enabled Is this Diagnostic Metric enabled? Defaults to true. bool true no
name Name (e.g. app or cluster). string "" no
network_interface_sg_enabled Whether network interface security group is enabled. bool false no
network_security_group_id The ID of the Network Security Group which should be attached to the Network Interface. string "" no
os_disk_storage_account_type The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS and Premium_LRS. string "StandardSSD_LRS" no
patch_assessment_mode (Optional) Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. string "ImageDefault" no
pip_logs n/a
object({
enabled = bool
category = optional(list(string))
category_group = optional(list(string))
})
{
"category_group": [
"AllLogs"
],
"enabled": true
}
no
plan_enabled Whether plan block is enabled. bool false no
plan_name Specifies the name of the image from the marketplace. string "" no
plan_product Specifies the product of the image from the marketplace. string "" no
plan_publisher Specifies the publisher of the image. string "" no
platform_fault_domain_count Specifies the number of fault domains that are used. Defaults to 3. number 3 no
platform_update_domain_count Specifies the number of update domains that are used. Defaults to 5. number 5 no
primary Is this the Primary IP Configuration? Must be true for the first ip_configuration when multiple are specified. Defaults to false. bool true no
private_ip_address_allocation The allocation method used for the Private IP Address. Possible values are Dynamic and Static. string "Static" no
private_ip_address_version The IP Version to use. Possible values are IPv4 or IPv6. Defaults to IPv4. string "IPv4" no
private_ip_addresses The Static IP Address which should be used. list(any) [] no
provision_vm_agent Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to false. bool true no
proximity_placement_group_id The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. string null no
public_ip_enabled Whether public IP is enabled. bool false no
public_ip_prefix_id If specified then public IP address allocated will be provided from the public IP prefix resource. string null no
public_key Name (e.g. ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQ). string null no
public_network_access_enabled n/a bool true no
read Used when retrieving the Resource Group. string "5m" no
repository Terraform current module repo string "" no
resource_group_name The name of the resource group in which to create the virtual network. string "" no
reverse_fqdn A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN. string "" no
role_definition_name The name of a built-in Role. Changing this forces a new resource to be created. Conflicts with role_definition_id. string "Key Vault Crypto Service Encryption User" no
sku The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic. string "Basic" no
source_image_id The ID of an Image which each Virtual Machine should be based on any null no
storage_account_id The ID of the Storage Account where logs should be sent. string null no
storage_image_reference_enabled Whether storage image reference is enabled. bool true no
subnet_id The ID of the Subnet where this Network Interface should be located in. list(any) [] no
timezone Specifies the time zone of the virtual machine. string "" no
ultra_ssd_enabled Should Ultra SSD disk be enabled for this Virtual Machine?. bool false no
update Used when updating the Resource Group. string "60m" no
user_data (Optional) A string of the desired User Data for the vm.(path/to/user-data.sh) string null no
user_object_id The ID of the Principal (User, Group or Service Principal) to assign the Role Definition to. Changing this forces a new resource to be created.
map(object({
role_definition_name = string
principal_id = string
}))
{} no
vault_service Value for Service Vault ID string null no
vault_sku n/a string "Standard" no
vm_addon_name The name of the addon Virtual machine's name. string null no
vm_availability_zone (Optional) Specifies the Availability Zone in which this Virtual Machine should be located. Changing this forces a new Virtual Machine to be created. any null no
vm_identity_type The Managed Service Identity Type of this Virtual Machine. Possible values are SystemAssigned and UserAssigned. string "SystemAssigned" no
vm_size Specifies the size of the Virtual Machine. string "" no
windows_patch_mode Optional) Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. string "AutomaticByPlatform" no
write_accelerator_enabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on Premium_LRS managed disks with no caching and M-Series VMs. Defaults to false. bool false no

Outputs

Name Description
availability_set_id The ID of the Availability Set.
disk_encryption_set-id n/a
extension_id The ID of the Virtual Machine Extension.
key_id Id of key that is to be used for encrypting
linux_virtual_machine_id The ID of the Linux Virtual Machine.
network_interface_id The ID of the Network Interface.
network_interface_private_ip_addresses The private IP addresses of the network interface.
network_interface_sg_association_id The (Terraform specific) ID of the Association between the Network Interface and the Network Interface.
public_ip_address The IP address value that was allocated.
public_ip_id The Public IP ID.
service_vault_id The Principal ID associated with this Managed Service Identity.
service_vault_tenant_id The Tenant ID associated with this Managed Service Identity.
tags The tags associated to resources.
vm_backup_policy_id The ID of the VM Backup Policy.
windows_virtual_machine_id The ID of the Windows Virtual Machine.