I believe the problem here is that Nova processes the request asynchronously and Juju doesn't check back on the error. The initial server creation request returns a success for the server creation and then as William mentioned when the nova-scheduler starts working it transitions to an error state. The error handling in Juju only handles the case where the error is returned from Nova as part of the original request and so Juju never picks up on the error.
There is just one major problem I have not been able to get a test environment working that replicates the problem in order to validate my fix. I'll keep working on that but any help in replicating it would be appreciated.
I believe the problem here is that Nova processes the request asynchronously and Juju doesn't check back on the error. The initial server creation request returns a success for the server creation and then as William mentioned when the nova-scheduler starts working it transitions to an error state. The error handling in Juju only handles the case where the error is returned from Nova as part of the original request and so Juju never picks up on the error.
The first step of fixing this is to have goose return the fault when getting server details. /github. com/tkuhlman/ goose/commit/ 9fc1d747db6d01d fbabecfccf87f6b 6bf765b457
https:/
Then Juju can grab the server details and check for the fault. /github. com/tkuhlman/ juju/commit/ 7dccfcad8144213 72b8b2139a1ed47 588a816dbb
https:/
There is just one major problem I have not been able to get a test environment working that replicates the problem in order to validate my fix. I'll keep working on that but any help in replicating it would be appreciated.