All the examples I see (in both knife-azure and knife-ec2) poll infinitely.  Polling implementations should have an upper limit of attempts - otherwise error states can cause the plugin to poll forever.

This is important for my usage since we use the plugins in deployment automation - there is no human making a decision that we've tried to provision the virtual machine too long.

Instead of wrapping this plugin with a "watcher" and raising an error condition when an upper threshold has been met - it would be beneficial for the plugin to do this.

Perhaps the other polling methods in these plugins should also have an upper bound of polling attempts?