you need to handle the case where allocation fails for all instance types, an else branch for the for loop would do the trick, add something like this here:
```
else:
    raise error
```
to reraise the last exception, or just raise a new CloudError.