If EC2 instance doesn't expose AMITypeData, we effectively drop the data in the AMITypeData object. For Windows slaves this means that the password is removed and the instance type is defaulted to unix.
Fix is simple - add a getter and a setter and remove transient amiType property in SlaveTemplate class.
To replicate :
- Add an EC2 cloud in Global Config
- Add a new Slave Template
- Change the type to Windows
- Enter password in the Windows Admin Password field
- Click Save
- Perform "Reload Configuration From Disk"
- Go back to Global Config
- The type of the Slave Template is reset to Unix and password is gone