X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharm%2Fnbi-k8s%2Freactive%2Fnbi.py;h=855d80062033ca1d65276dbd504a8febdc189502;hb=68faf8d30c3e08ca7dc1974281ade474f6f815b7;hp=edcdd4cce8f75c5d68f3f916829d09cae218ca45;hpb=6a70374d7269d181af98c392eba116abb70ee1e9;p=osm%2Fdevops.git diff --git a/installers/charm/nbi-k8s/reactive/nbi.py b/installers/charm/nbi-k8s/reactive/nbi.py index edcdd4cc..855d8006 100644 --- a/installers/charm/nbi-k8s/reactive/nbi.py +++ b/installers/charm/nbi-k8s/reactive/nbi.py @@ -46,23 +46,38 @@ def clear_keystone_ready(): @when_not("kafka.ready") @when_not("nbi-k8s.configured") +@when("leadership.is_leader") def waiting_for_kafka(): layer.status.waiting("Waiting for kafka to be ready") @when_not("mongo.ready") @when_not("nbi-k8s.configured") +@when("leadership.is_leader") def waiting_for_mongo(): layer.status.waiting("Waiting for mongo to be ready") @when_not("endpoint.prometheus.available") @when_not("nbi-k8s.configured") +@when("leadership.is_leader") def waiting_for_prometheus(): layer.status.waiting("Waiting for prometheus to be ready") @when_not("keystone.ready") +@when("leadership.is_leader") +@when_not("nbi-k8s.configured") +def waiting_for_keystone(): + auth_backend = config().get("auth-backend") + if auth_backend == "keystone": + layer.status.waiting("Waiting for Keystone to be ready") + else: + set_flag("keystone.ready") + + +@when_not("keystone.ready") +@when("leadership.is_leader") @when_not("nbi-k8s.configured") def waiting_for_keystone(): auth_backend = config().get("auth-backend") @@ -162,6 +177,12 @@ def configure(): log("Error: {}".format(traceback.format_exc())) +@when("kafka.ready", "mongo.ready", "endpoint.prometheus.available") +@when_not("leadership.is_leader") +def non_leaders_active(): + layer.status.active("ready") + + @when("nbi-k8s.configured") def set_nbi_active(): layer.status.active("ready")