@@ -2,20 +2,21 @@ local defaults = spec {
22 local defaults = self ,
33 // Convention: Top-level fields related to CRDs are public, other fields are hidden
44 // If there is no CRD for the component, everything is hidden in defaults.
5+ name:: error 'must provide name' ,
56 namespace:: error 'must provide namespace' ,
67 version: error 'must provide version' ,
78 image: error 'must provide image' ,
89 resources: {
910 requests: { memory: '400Mi' },
1011 },
11-
12- name:: error 'must provide name' ,
13- //TODO: remove alertmanagerName and convert to plain 'alerting' object
14- alertmanagerName:: error 'must provide alertmanagerName' ,
12+ //TODO(paulfantom): remove alertmanagerName after release-0.10 and convert to plain 'alerting' object.
13+ alertmanagerName:: "" ,
14+ alerting: {},
1515 namespaces:: ['default' , 'kube-system' , defaults.namespace],
1616 replicas: 2 ,
1717 externalLabels: {},
1818 enableFeatures: [],
19+ ruleSelector: {},
1920 commonLabels:: {
2021 'app.kubernetes.io/name' : 'prometheus' ,
2122 'app.kubernetes.io/version' : defaults.version,
@@ -273,7 +274,7 @@ function(params) {
273274 serviceMonitorNamespaceSelector: {},
274275 nodeSelector: { 'kubernetes.io/os' : 'linux' },
275276 resources: p._config.resources,
276- alerting: {
277+ alerting: if p._config.alerting != {} then p._config.alerting else {
277278 alertmanagers: [{
278279 namespace: p._config.namespace,
279280 name: 'alertmanager-' + p._config.alertmanagerName,
0 commit comments