How to run custom scripts post terraform vmware vm deployment?

Viewed 624

I have been researching on this topic for over a week now and couldn't find any good solution neither on terraform documentation site nor on the web.

Main issue trying to solve right now is: how to run a custom powershell script at the end of terraform vmware basic windows server 2016 vm build.

Tried following methods:

  • remote-exec - fail
  • provisioners inside vm resource definition - fail
  • null resource - Error: timeout - last error: http response error: 401 - invalid content type

Here's my null resource definition right below vm resource build within the same main.tf file

resource "null_resource" "vm" {
  triggers = {
    public_ip = <host ip address>
  }

  connection {
    type = "winrm"
    host = <host ip address>
    user = <username>
    password = <password>
    agent = false
  }

  provisioner "file" {
    source      = "userdata.ps1"
    destination = "C:/Windows"
  }

  provisioner "remote-exec" {
    inline = [
      "powershell.exe -ExecutionPolicy Bypass -File C:/Windows/userdata.ps1"
    ]
  }
}

Please suggest what are the recommended practices and your working solution

0 Answers
Related