I'm trying to create a reusable Windows 10 image in Azure to use as a QuickBuild agent. Looking at the instructions (https://wiki.pmease.com/display/QB10/Launch+Node+in+Azure) for Windows versus Linux agents, I notice a significant difference in that the Linux agent appears to get a dynamic CloudNodeUserData value passed in through Azure's ovf-env.xml whereas the instructions for Windows say to authorize the build agent before capturing an image from it.
I've tried building my image both with and without authorizing the template node in QuickBuild before the image is captured. It doesn't seem to make any difference, which makes sense since the hostname of the cloud-spawned agent is going to be different than the hostname of the template.
Is the QuickBuild agent on Windows capable of reading the CloudNodeUserData value from c:\AzureData\CustomData.bin? It appears the test launch for the cloud node on Windows does push the CloudNodeUserData into CustomData.bin in the VM when it's spawned, but the agent in the VM is stuck at "Build agent 'vm088738749a:8811' is not authorized to join the grid."
We're looking to be able to dynamically spawn many build agents to run automated GUI testing on Windows, so we need something where a dynamic number of agents can be spawned from one template as we do on Linux. I feel like I'm missing something obvious to get the cloud node running appropriately with the dynamic CloudNodeUserData. Any pointers on how to build the Windows image to work this way would be appreciated.