Skip to content

Modulo de Terraform para crear una maquina virtual (Linux o Windows) con o sin imagen personalizada en Microsoft Azure | Module of Terraform to Created a Virtual Machine (Linux or Windows) with or without a custom image in Microsoft Azure

License

Notifications You must be signed in to change notification settings

jortfal/azure_virtual_machine

Repository files navigation

azure_virtual_machine

GitHub release (latest by date) GitHub Release Date GitHub license Maintenance Maintainer

Module of Terraform to created a Virtual Machine, linux or windows, in Microsoft Azure.

Features

TO DO

Usage

TO DO

Examples

TO DO

Known issues

No issue is creating limit on this module.

Requirements

Name Version
terraform >= 0.13.0, <= 0.14.10
azurerm >= 2.30.0, <= 2.54.0

Providers

Name Version
azurerm >= 2.30.0, <= 2.54.0

Modules

No modules.

Resources

Name Type
azurerm_network_interface.this resource
azurerm_virtual_machine.this resource
azurerm_resource_group.this data source

Inputs

Name Description Type Default Required
delete_data_disks_on_termination True to delete the data disks automatically when deleting the VM bool false no
delete_os_disk_on_termination True to delete the OS disk automatically when deleting the VM bool false no
name The name of virtual machine string n/a yes
network_interface_list A list of network interfaces
list(
object({
name = string
ip_configuration = object({
name = string
subnet_id = string
private_ip_address_allocation = string
primary = bool
})
})
)
[] no
os_profile Settings of virtual machine
object({
computer_name = string
admin_username = string
admin_password = string
})
n/a yes
os_profile_linux_config Config profile of linux map(bool)
{
"disable_password_authentication": false
}
no
os_profile_windows_config Config profile of windows os map(bool)
{
"enable_automatic_upgrades": false,
"provision_vm_agent": false
}
no
os_type The type of os, it can be 'linux' or 'windows' string null no
primary_network_interface_id The ID of the primary network interface string null no
resource_group_name The name of resource group where to create the virtual machine string n/a yes
storage_data_disk_list A list of data disk
list(object({
name = string
caching = string
create_option = string
disk_size_gb = number
lun = number
write_accelerator_enabled = bool
managed_disk_type = string
managed_disk_id = string
}))
[] no
storage_image_reference The image reference of virtual machine
object({
publisher = string
offer = string
sku = string
version = string
})
n/a yes
storage_image_reference_id The ID of the Custom Image which the Virtual Machine should be created from string null no
storage_os_disk The storage os disk settings
object({
name = string
caching = string
create_option = string
managed_disk_type = string
})
{
"caching": null,
"create_option": null,
"managed_disk_type": null,
"name": null
}
no
tags A mapping of tags to assign to security group map(string) {} no
vm_size The size of virtual machine string n/a yes

Outputs

Name Description
id The ID of the Virtual Machine

Tests

Terraform fmt - Style Conventions

Rewrites all Terraform configuration files to a canonical format. Both configuration files (.tf) and variables files (.tfvars) are updated.

To display diffs of formatting changes

# $ terraform fmt --help
# Usage:
#   terraform fmt [options] [DIR]

$ terraform fmt -check --recursive --diff

To rewrite Terraform configuration files to a canonical format and style

# $ terraform fmt --help
# Usage:
#   terraform fmt [options] [DIR]

$ terraform fmt --recursive

TFLint

The configuration of TFLint can be found in the file .tflint.-hcl

# $ tflint --help
# Usage:
#   tflint [OPTIONS] [FILE or DIR...]

$ tflint

Terraform validate

Validate the configuration files in a directory, referring only to the configuration and not accessing any remote services such as remote state, provider APIs, etc.

# $ terraform validate --help
# Usage:
#   terraform validate [options] [dir]
$ terraform init -backend=false
$ terraform validate

Terraform TFSec

Terraform Docs

Authors

Module managed by jortfal | Jose Manuel Ortega Falcon.

License

Apache 2 Licensed. See LICENSE file for full details.

About

Modulo de Terraform para crear una maquina virtual (Linux o Windows) con o sin imagen personalizada en Microsoft Azure | Module of Terraform to Created a Virtual Machine (Linux or Windows) with or without a custom image in Microsoft Azure

Topics

Resources

License

Stars

Watchers

Forks

Languages