A simple fix would be to rename AmazonEC2Cloud back to EC2Cloud, and maybe rename EC2Cloud AbstractEC2Cloud or something. This would enable all existing configs to work correctly since it's obvious that no one out there has a config with an AmazonEC2Cloud in it.
But I think there is a larger issue with the plugin initialization lifecycle here. If plugins can contribute extensions to core components, they must have some way to contribute configuration options such as this earlier in the initialization cycle. IE, since the config.xml is read before plugins are initialized, but may contain data from those plugin's classes.
Or is there some other existing way to solve this issue?
This happens to me every time I restart Hudson (after I change something in the main configuration). I'm using Hudson 1.352 and ec2 plugin 1.7.
After some investigation it looks as if the config.xml file refers to the cloud node the wrong way. The config.xml refers to hudson.plugins.ec2.EC2Cloud while it should in fact use hudson.plugins.ec2.AmazonEC2Cloud or hudson.plugins.ec2.Eucalyptus.