bind-charmers team mailing list archive
-
bind-charmers team
-
Mailing list archive
-
Message #00064
[Merge] ~barryprice/charm-k8s-bind/+git/charm-k8s-bind:charm-fixes into charm-k8s-bind:master
Barry Price has proposed merging ~barryprice/charm-k8s-bind/+git/charm-k8s-bind:charm-fixes into charm-k8s-bind:master with ~barryprice/charm-k8s-bind/+git/charm-k8s-bind:image-builder as a prerequisite.
Commit message:
Move generate_pod_config() inside our class, add an ActiveStatus to non-leader units
Requested reviews:
Bind Charmers (bind-charmers)
For more details, see:
https://code.launchpad.net/~barryprice/charm-k8s-bind/+git/charm-k8s-bind/+merge/388450
--
Your team Bind Charmers is requested to review the proposed merge of ~barryprice/charm-k8s-bind/+git/charm-k8s-bind:charm-fixes into charm-k8s-bind:master.
diff --git a/src/charm.py b/src/charm.py
index eb751a6..7a8cf34 100755
--- a/src/charm.py
+++ b/src/charm.py
@@ -16,33 +16,6 @@ logger = logging.getLogger()
REQUIRED_SETTINGS = ['bind_image_path']
-def generate_pod_config(config, secured=True):
- """Kubernetes pod config generator.
-
- generate_pod_config generates Kubernetes deployment config.
- If the secured keyword is set then it will return a sanitised copy
- without exposing secrets.
- """
- pod_config = {}
- if config["container_config"].strip():
- pod_config = safe_load(config["container_config"])
-
- if config["custom_config_repo"].strip():
- pod_config["CUSTOM_CONFIG_REPO"] = config["custom_config_repo"]
-
- if config["https_proxy"].strip():
- pod_config["http_proxy"] = config["https_proxy"]
- pod_config["https_proxy"] = config["https_proxy"]
-
- if secured:
- return pod_config
-
- # Add secrets from charm config.
- pass
-
- return pod_config
-
-
class BindK8sCharm(CharmBase):
def __init__(self, *args):
super().__init__(*args)
@@ -93,6 +66,7 @@ class BindK8sCharm(CharmBase):
self.model.unit.status = ActiveStatus(msg)
else:
logger.info("Spec changes ignored by non-leader")
+ self.model.unit.status = ActiveStatus()
def make_pod_resources(self):
resources = {}
@@ -101,10 +75,34 @@ class BindK8sCharm(CharmBase):
logger.info("This is the Kubernetes Pod resources <<EOM\n{}\nEOM".format(out.getvalue()))
return resources
+ def generate_pod_config(self, secured=True):
+ """Kubernetes pod config generator.
+
+ generate_pod_config generates Kubernetes deployment config.
+ If the secured keyword is set then it will return a sanitised copy
+ without exposing secrets.
+ """
+ config = self.model.config
+ pod_config = {}
+ if config["container_config"].strip():
+ pod_config = safe_load(config["container_config"])
+
+ if config["custom_config_repo"].strip():
+ pod_config["CUSTOM_CONFIG_REPO"] = config["custom_config_repo"]
+
+ if config["https_proxy"].strip():
+ pod_config["http_proxy"] = config["https_proxy"]
+ pod_config["https_proxy"] = config["https_proxy"]
+
+ if secured:
+ return pod_config
+
+ return pod_config
+
def make_pod_spec(self):
config = self.model.config
- full_pod_config = generate_pod_config(config, secured=False)
- secure_pod_config = generate_pod_config(config, secured=True)
+ full_pod_config = self.generate_pod_config(secured=False)
+ secure_pod_config = self.generate_pod_config(secured=True)
ports = [
{"name": "domain-tcp", "containerPort": 53, "protocol": "TCP"},
Follow ups