Comment 46 for bug 1818113

Revision history for this message
Aurelien Lourot (aurelien-lourot) wrote :

We found the new culprit:

According to the logs Octavia fails in `setup_hm_port()` which on the condition `@reactive.when('identity-service.available')`. Also we know from the previous keystone fix [0] that the issue was keystone setting `service_password` too early on the `identity-service` interface, thus signaling application readiness too early. The implementation of the interface [1] however shows that `service_password` is taken into account in `identity-service.available.auth` and not in `identity-service.available`. So either:

a. Octavia is waiting on the wrong condition, or
b. the definition of `identity-service.available` should be fixed to wait for `service_password`.

We prefer `b` as waiting for `{relation_name}.available` for application readiness is a widely used pattern and we would rather not have a special case for keystone.

0: https://review.opendev.org/729781
1: https://github.com/openstack/charm-interface-keystone/blob/master/requires.py#L91