"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 = []
{
"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"])
),
}
],
Returns:
List[str]: command to startup the process.
"""
- return [
- "sh",
- "-c",
+ command = [
"/bin/prometheus",
"--config.file=/etc/prometheus/prometheus.yml",
"--storage.tsdb.path=/prometheus",
port, config.get("web_subpath")
),
]
+ if config.get("enable_web_admin_api"):
+ command.append("--web.enable-admin-api")
+ return command
def make_pod_spec(