Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jortfal/azure_virtual_machine
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
https://github.com/jortfal/azure_virtual_machine
azure azure-virtual-machine azure-virtual-machines microsoft-azure terraform terraform-module
Last synced: 24 days ago
JSON representation
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
- Host: GitHub
- URL: https://github.com/jortfal/azure_virtual_machine
- Owner: jortfal
- License: apache-2.0
- Created: 2020-10-14T17:30:19.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2021-04-08T20:15:14.000Z (almost 4 years ago)
- Last Synced: 2024-12-12T00:44:54.424Z (27 days ago)
- Topics: azure, azure-virtual-machine, azure-virtual-machines, microsoft-azure, terraform, terraform-module
- Language: HCL
- Homepage:
- Size: 4.08 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# azure_virtual_machine
![GitHub release (latest by date)](https://img.shields.io/github/v/release/jortfal/azure_virtual_machine)
![GitHub Release Date](https://img.shields.io/github/release-date/jortfal/azure_virtual_machine)
![GitHub license](https://img.shields.io/github/license/jortfal/azure_virtual_machine)
![Maintenance](https://img.shields.io/maintenance/yes/2021?color=green)
![Maintainer](https://img.shields.io/badge/maintainer-jortfal-green)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](#requirement\_terraform) | >= 0.13.0, <= 0.14.10 |
| [azurerm](#requirement\_azurerm) | >= 2.30.0, <= 2.54.0 |## Providers
| Name | Version |
|------|---------|
| [azurerm](#provider\_azurerm) | >= 2.30.0, <= 2.54.0 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [azurerm_network_interface.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/network_interface) | resource |
| [azurerm_virtual_machine.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_machine) | resource |
| [azurerm_resource_group.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/resource_group) | data source |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [delete\_data\_disks\_on\_termination](#input\_delete\_data\_disks\_on\_termination) | True to delete the data disks automatically when deleting the VM | `bool` | `false` | no |
| [delete\_os\_disk\_on\_termination](#input\_delete\_os\_disk\_on\_termination) | True to delete the OS disk automatically when deleting the VM | `bool` | `false` | no |
| [name](#input\_name) | The name of virtual machine | `string` | n/a | yes |
| [network\_interface\_list](#input\_network\_interface\_list) | A list of network interfaces |list(| `[]` | no |
object({
name = string
ip_configuration = object({
name = string
subnet_id = string
private_ip_address_allocation = string
primary = bool
})
})
)
| [os\_profile](#input\_os\_profile) | Settings of virtual machine |object({| n/a | yes |
computer_name = string
admin_username = string
admin_password = string
})
| [os\_profile\_linux\_config](#input\_os\_profile\_linux\_config) | Config profile of linux | `map(bool)` |{| no |
"disable_password_authentication": false
}
| [os\_profile\_windows\_config](#input\_os\_profile\_windows\_config) | Config profile of windows os | `map(bool)` |{| no |
"enable_automatic_upgrades": false,
"provision_vm_agent": false
}
| [os\_type](#input\_os\_type) | The type of os, it can be 'linux' or 'windows' | `string` | `null` | no |
| [primary\_network\_interface\_id](#input\_primary\_network\_interface\_id) | The ID of the primary network interface | `string` | `null` | no |
| [resource\_group\_name](#input\_resource\_group\_name) | The name of resource group where to create the virtual machine | `string` | n/a | yes |
| [storage\_data\_disk\_list](#input\_storage\_data\_disk\_list) | A list of data disk |list(object({| `[]` | no |
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
}))
| [storage\_image\_reference](#input\_storage\_image\_reference) | The image reference of virtual machine |object({| n/a | yes |
publisher = string
offer = string
sku = string
version = string
})
| [storage\_image\_reference\_id](#input\_storage\_image\_reference\_id) | The ID of the Custom Image which the Virtual Machine should be created from | `string` | `null` | no |
| [storage\_os\_disk](#input\_storage\_os\_disk) | The storage os disk settings |object({|
name = string
caching = string
create_option = string
managed_disk_type = string
}){| no |
"caching": null,
"create_option": null,
"managed_disk_type": null,
"name": null
}
| [tags](#input\_tags) | A mapping of tags to assign to security group | `map(string)` | `{}` | no |
| [vm\_size](#input\_vm\_size) | The size of virtual machine | `string` | n/a | yes |## Outputs
| Name | Description |
|------|-------------|
| [id](#output\_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.
- [Documentation](https://www.terraform.io/docs/cli/commands/fmt.html)
#### To display diffs of formatting changes
```bash
# $ terraform fmt --help
# Usage:
# terraform fmt [options] [DIR]$ terraform fmt -check --recursive --diff
```#### To rewrite Terraform configuration files to a canonical format and style
```bash
# $ terraform fmt --help
# Usage:
# terraform fmt [options] [DIR]$ terraform fmt --recursive
```### TFLint
The configuration of TFLint can be found in the file `.tflint.-hcl`
- [Documentation](https://github.com/terraform-linters/tflint/blob/master/README.md)
- [User Guide](https://github.com/terraform-linters/tflint/tree/master/docs/user-guide)
```bash
# $ 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.- [Documentation](https://www.terraform.io/docs/cli/commands/validate.html)
```bash
# $ 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](https://github.com/jortfal).
## License
Apache 2 Licensed. See `LICENSE` file for full details.