We've seen issues in AWS, where a stack can get caught in UPDATE_IN_PROGRESS permanently. During a deployment, we poll the status for the stack, and wait until it either has a success, or a failure status - if the stack is perpetually in neither of those states, the polling (and therefore the deployment) will continue forever.
Add a default/configurable timeout around checking the stack status, so that such problems can be detected in an automated pipeline.
https://github.com/manheim/cf_deployer/blob/master/lib/cf_deployer/stack.rb#L156
Noted by @ryanrwalker during code review for Issue #38.