So you create a new Generation 2 (Gen2) virtual machine and install either Windows Server 2012 or 2012R2, you customise it and then you convert it in to a template in SCVMM.
All is normal.
You go to deploy that template from the library and it fails with the following:[error]VMM cannot find the device or this device is not valid for a boot device [/error]
Very odd but an easy fix with a little PowerShell
Set-SCVMTemplate -Template "Template Name" -FirstBootDevice "SCSI,0,0"
Now when you deploy the template this time it succeeds with out error.
For a good run down on the new Generation 2 (Gen2) VMs and some background to this issue have a look at this Microsoft Blog article.