I have created Vagrant file that launches a Windows VM using vCenter Server with the provider plugin from NSIDC. It's all working fine and dandy except that when Winrm tries to authenticate it happens before sysprep can finish.
Bringing machine 'default' up with 'vsphere' provider...
==> default: Calling vSphere CloneVM with the following settings:
==> default: -- Template VM: xxxxxx/vm/w2k8_r2_base_remoting
==> default: -- Target VM: xxxxxx/vm/vagrant01
==> default: New virtual machine successfully cloned
default: WinRM address: xxx.xxx.xxx.xxx:5985
==> default: Waiting for machine to boot. This may take a few minutes...
default: WinRM username: xxxxxx <------- This section executes immediately. Sysprep takes a while and also reboots a couple times...
default: WinRM execution_time_limit: PT2H
default: WinRM transport: negotiate
No route to host - connect(2) for "xxx.xxx.xxx.xxx" port 5985 (xxx.xxx.xxx.xxx:5985)
In vSphere client the machine created properly and is accessible with RDP etc...
If I run vagrant up again for the sake of it...
Bringing machine 'default' up with 'vsphere' provider...
==> default: The VM is already created
default: WinRM address: xxx.xxx.xxx.xxx:5985
==> default: Waiting for machine to boot. This may take a few minutes...
default: WinRM username: xxxxxx
default: WinRM execution_time_limit: PT2H
default: WinRM transport: negotiate
==> default: Machine booted and ready!
So is there a way to tell vagrant to wait before it tries to winrm?