I am working on a Azure Terraform script, recently installed windows module when windows bootup there is no Account Lockout Policy & Minimum Password Length Policy set by default, is there any way I can define in terraform script in windows module. Thanks.
resource "azurerm_virtual_machine_extension" "vm" {
name = var.vm_hostname
count = (var.is_windows_image || contains(list(var.vm_os_simple, var.vm_os_offer), "WindowsServer")) ? var.nb_instances : 0
virtual_machine_id = azurerm_virtual_machine.vm-windows[count.index].id
publisher = "Microsoft.Azure.Extensions"
type = "CustomScript"
type_handler_version = "2.0"
settings = <<SETTINGS
{
"commandToExecute": "net accounts /minpwlen:8 && net accounts /maxpwage:45 && net accounts /minpwage:0 && net accounts /lockoutduration:30 && net accounts /lockoutthreshold:3 "
}
SETTINGS
}
and I am getting error.
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [10s elapsed]
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [20s elapsed]
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [30s elapsed]
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [40s elapsed]
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [50s elapsed]
module.windowsservers.azurerm_virtual_machine_extension.vm[0]: Still creating... [1m0s elapsed]
Error: Code="VMExtensionProvisioningError" Message="VM has reported a failure when processing extension '`HOSTNAME'. Error message: \"Extension '' of Handler 'Microsoft.Azure.Extensions.CustomScript' version '1.0' faulted due to exception during extension processing\"\r\n\r\nMore information on troubleshooting is available at https://aka.ms/VMExtensionCSELinuxTroubleshoot "
on ..\..\modules\windowsservers\main.tf line 194, in resource "azurerm_virtual_machine_extension" "vm":
194: resource "azurerm_virtual_machine_extension" "vm" {
resource "azurerm_virtual_machine_extension" "vm" {
name = "${var.vm_hostname}-${count.index}"
count = (var.is_windows_image || contains(list(var.vm_os_simple, var.vm_os_offer), "WindowsServer")) ? var.nb_instances : 0
virtual_machine_id = azurerm_virtual_machine.vm-windows[count.index].id
publisher = "Microsoft.Compute"
type = "CustomScriptExtension"
type_handler_version = "1.9"
settings = <<SETTINGS
{
"commandToExecute": "powershell -ExecutionPolicy Unrestricted -Command net accounts /minpwlen:8 && net accounts /maxpwage:45 && net accounts /minpwage:0 && net accounts /lockoutduration:30 && net accounts /lockoutthreshold:3 "
}
SETTINGS
}
here is the piece of code which resolved my issue, this mistake i have been doing is using wrong extension which was for the Linux correct extension and code is pasted here.