X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharm%2Fnbi-k8s%2Freactive%2Fnbi.py;h=50187ad814cd7e366871c61d73c90ef42f051561;hb=d4f66da948f4bcc3082272360c61ca453c56342f;hp=edcdd4cce8f75c5d68f3f916829d09cae218ca45;hpb=82c5ffa15e1abb4c7ff58dc489f22cbe276c78c3;p=osm%2Fdevops.git diff --git a/installers/charm/nbi-k8s/reactive/nbi.py b/installers/charm/nbi-k8s/reactive/nbi.py index edcdd4cc..50187ad8 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") @@ -201,7 +222,6 @@ def make_pod_spec(kafka_host, kafka_port, mongo_uri, prometheus_uri): prometheus_host, prometheus_port = parse_hostport(prometheus_uri) data = { "name": md.get("name"), - "docker_image": cfg.get("image"), "mongo_uri": mongo_uri, "kafka_host": "{}".format(kafka_host), "kafka_port": "{}".format(kafka_port),