projects
/
osm
/
devops.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix juju status in OSM Charms
[osm/devops.git]
/
installers
/
charm
/
lcm-k8s
/
reactive
/
lcm.py
diff --git
a/installers/charm/lcm-k8s/reactive/lcm.py
b/installers/charm/lcm-k8s/reactive/lcm.py
index
85ec9c5
..
313ed63
100644
(file)
--- a/
installers/charm/lcm-k8s/reactive/lcm.py
+++ b/
installers/charm/lcm-k8s/reactive/lcm.py
@@
-21,6
+21,10
@@
from charmhelpers.core.hookenv import (
config,
)
from charms import layer
config,
)
from charms import layer
+import yaml
+import logging
+
+logger = logging.getLogger(__name__)
@hook("upgrade-charm")
@hook("upgrade-charm")
@@
-37,18
+41,21
@@
def restart():
@when_not("kafka.ready")
@when_not("lcm-k8s.configured")
@when_not("kafka.ready")
@when_not("lcm-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("lcm-k8s.configured")
def waiting_for_kafka():
layer.status.waiting("Waiting for kafka to be ready")
@when_not("mongo.ready")
@when_not("lcm-k8s.configured")
+@when("leadership.is_leader")
def waiting_for_mongo():
layer.status.waiting("Waiting for mongo to be ready")
@when_not("ro.ready")
@when_not("lcm-k8s.configured")
def waiting_for_mongo():
layer.status.waiting("Waiting for mongo to be ready")
@when_not("ro.ready")
@when_not("lcm-k8s.configured")
+@when("leadership.is_leader")
def waiting_for_ro():
layer.status.waiting("Waiting for ro to be ready")
def waiting_for_ro():
layer.status.waiting("Waiting for ro to be ready")
@@
-96,7
+103,14
@@
def configure():
layer.status.blocked("k8s spec failed to deploy: {}".format(e))
layer.status.blocked("k8s spec failed to deploy: {}".format(e))
+@when("kafka.ready", "mongo.ready", "ro.ready")
+@when_not("leadership.is_leader")
+def non_leaders_active():
+ layer.status.active("ready")
+
+
@when("lcm-k8s.configured")
@when("lcm-k8s.configured")
+@when("leadership.is_leader")
def set_lcm_active():
layer.status.active("ready")
def set_lcm_active():
layer.status.active("ready")
@@
-130,5
+144,8
@@
def make_pod_spec(ro_host, ro_port, kafka_host, kafka_port, mongo_uri):
"mongo_uri": mongo_uri,
}
data.update(cfg)
"mongo_uri": mongo_uri,
}
data.update(cfg)
-
- return pod_spec_template % data
+ logs = pod_spec_template % data
+ spec = yaml.safe_load(pod_spec_template % data)
+ if "vca_apiproxy" in cfg and cfg["vca_apiproxy"] != "":
+ spec["containers"][0]["config"]["OSMLCM_VCA_APIPROXY"] = cfg["vca_apiproxy"]
+ return spec