X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=installers%2Fcharm%2Fprometheus%2Fsrc%2Fpod_spec.py;h=202114ee76e66976a808e350025083599e8bd41a;hb=794fa72d51b56931596d9c93330d97be69966e47;hp=3e4bc443f7bedf358c0124dfe555fb309d3db9d3;hpb=2459af695441e460e64daea40157c0fd5a78e2c3;p=osm%2Fdevops.git diff --git a/installers/charm/prometheus/src/pod_spec.py b/installers/charm/prometheus/src/pod_spec.py index 3e4bc443..202114ee 100644 --- a/installers/charm/prometheus/src/pod_spec.py +++ b/installers/charm/prometheus/src/pod_spec.py @@ -95,6 +95,7 @@ def _validate_data(config_data: Dict[str, Any], relation_data: Dict[str, Any]) - "tls_secret_name": lambda value, _: isinstance(value, str) if value is not None else True, + "enable_web_admin_api": lambda value, _: isinstance(value, bool), } relation_validators = {} problems = [] @@ -238,18 +239,18 @@ def _make_pod_files(config: Dict[str, Any]) -> List[Dict[str, Any]]: { "path": "prometheus.yml", "content": ( - "global:" - " scrape_interval: 15s" - " evaluation_interval: 15s" - "alerting:" - " alertmanagers:" - " - static_configs:" - " - targets:" - "rule_files:" - "scrape_configs:" - " - job_name: 'prometheus'" - " static_configs:" - " - targets: [{}]".format(config["default_target"]) + "global:\n" + " scrape_interval: 15s\n" + " evaluation_interval: 15s\n" + "alerting:\n" + " alertmanagers:\n" + " - static_configs:\n" + " - targets:\n" + "rule_files:\n" + "scrape_configs:\n" + " - job_name: 'prometheus'\n" + " static_configs:\n" + " - targets: [{}]\n".format(config["default_target"]) ), } ], @@ -307,9 +308,7 @@ def _make_pod_command(config: Dict[str, Any], port: int) -> List[str]: Returns: List[str]: command to startup the process. """ - return [ - "sh", - "-c", + command = [ "/bin/prometheus", "--config.file=/etc/prometheus/prometheus.yml", "--storage.tsdb.path=/prometheus", @@ -320,6 +319,9 @@ def _make_pod_command(config: Dict[str, Any], port: int) -> List[str]: port, config.get("web_subpath") ), ] + if config.get("enable_web_admin_api"): + command.append("--web.enable-admin-api") + return command def make_pod_spec(