Skip to content

Commit

Permalink
Support Operator 0.7.0 (#91)
Browse files Browse the repository at this point in the history
* Operator 0.7.0 expect configs to be secrets. Secret have different format. Support rules selector

* Fix configmap for rules specified in values
  • Loading branch information
goruha authored Apr 3, 2017
1 parent 1ac9ee8 commit 2c8ce38
Show file tree
Hide file tree
Showing 10 changed files with 83 additions and 5 deletions.
2 changes: 1 addition & 1 deletion incubator/alertmanager/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ maintainers:
name: alertmanager
sources:
- https://github.com/coreos/prometheus-operator
version: 0.1.0
version: 0.2.0
16 changes: 16 additions & 0 deletions incubator/alertmanager/templates/_alertmanager.yaml.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{- if .Values.config }}
{{ .Values.config }}
{{- else }}
global:
resolve_timeout: 5m
receivers:
- name: 'webhook'
webhook_configs:
- url: 'http://alertmanagerwh:30500/'
route:
group_by: ['job']
group_interval: 5m
group_wait: 30s
receiver: 'webhook'
repeat_interval: 12h
{{- end }}
12 changes: 12 additions & 0 deletions incubator/alertmanager/templates/secret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
apiVersion: v1
kind: Secret
metadata:
labels:
alertmanager: {{ .Release.Name }}
app: {{ template "name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: alertmanager-{{ .Release.Name }}
data:
alertmanager.yaml: {{ include (print (dir $.Template.Name) "/_alertmanager.yaml.tpl") . | b64enc | quote }}
2 changes: 1 addition & 1 deletion incubator/prometheus/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ maintainers:
name: prometheus
sources:
- https://github.com/coreos/prometheus-operator
version: 0.1.0
version: 0.2.0
8 changes: 8 additions & 0 deletions incubator/prometheus/templates/_configmaps.json.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{ "items": [
{{- if and .Values.rules.specifiedInValues .Values.rules.value }}
{
"key": "{{ .Release.Namespace }}/prometheus-{{ .Release.Name }}-rules",
"checksum": "33bbd11f3d6ecfa14af3d46c46e91de4906fe86d2429f34ba6ee74082f9d6414"
}
{{- end }}
]}
16 changes: 15 additions & 1 deletion incubator/prometheus/templates/prometheus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,23 @@ spec:
{{- if .Values.routePrefix }}
routePrefix: "{{ .Values.routePrefix }}"
{{- end }}
{{- if .Values.serviceMonitors }}
{{- if .Values.serviceMonitorsSelector }}
serviceMonitorSelector:
matchLabels:
{{ toYaml .Values.serviceMonitorsSelector | indent 6 }}
{{- else if .Values.serviceMonitors }}
serviceMonitorSelector:
matchLabels:
app: {{ template "name" . }}
release: {{ .Release.Name }}
{{- end }}
{{- if .Values.rulesSelector }}
ruleSelector:
matchLabels:
{{ toYaml .Values.rulesSelector | indent 6 }}
{{- else if .Values.rules.value }}
ruleSelector:
matchLabels:
app: {{ template "name" . }}
release: {{ .Release.Name }}
{{- end }}
Expand Down
5 changes: 3 additions & 2 deletions incubator/prometheus/templates/rules.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{{- if .Values.rules.specifiedInValues -}}
{{- if and .Values.rules.specifiedInValues .Values.rules.value }}
apiVersion: v1
kind: ConfigMap
metadata:
Expand All @@ -8,7 +8,8 @@ metadata:
heritage: {{ .Release.Service }}
prometheus: {{ .Release.Name }}
release: {{ .Release.Name }}
{{ toYaml .Values.rulesSelector | indent 4 }}
name: prometheus-{{ .Release.Name }}-rules
data:
{{ toYaml .Values.rules.value | indent 2 }}
{{- end -}}
{{- end }}
16 changes: 16 additions & 0 deletions incubator/prometheus/templates/secret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{- if and (and .Values.config.specifiedInValues .Values.config.value ) ( not .Values.serviceMonitorSelector ) }}
apiVersion: v1
kind: Secret
metadata:
labels:
app: {{ template "name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
heritage: {{ .Release.Service }}
prometheus: {{ .Release.Name }}
release: {{ .Release.Name }}
{{ toYaml .Values.serviceMonitorsSelector | indent 4 }}
name: prometheus-{{ .Release.Name }}
data:
configmaps.json: {{ include (print (dir $.Template.Name) "/_configmaps.json.tpl") . | b64enc | quote }}
prometheus.yaml: {{ toYaml .Values.config.value | b64enc | quote }}
{{- end }}
1 change: 1 addition & 0 deletions incubator/prometheus/templates/servicemonitors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ items:
chart: {{ $chartName }}-{{ $chartVersion }}
heritage: {{ $releaseService }}
release: {{ $releaseName }}
{{ toYaml .Values.serviceMonitorSelector | indent 8 }}
name: {{ .name }}
spec:
endpoints:
Expand Down
10 changes: 10 additions & 0 deletions incubator/prometheus/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,11 @@ retention: 24h
##
routePrefix: /

## Rules configmap selector
## Ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/design.md
##
rulesSelector: {}

## Prometheus alerting & recording rules
## Ref: https://prometheus.io/docs/querying/rules/
## Ref: https://prometheus.io/docs/alerting/rules/
Expand Down Expand Up @@ -115,6 +120,11 @@ service:
##
type: ClusterIP

## Service monitors selector
## Ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/design.md
##
serviceMonitorsSelector: {}

## ServiceMonitor TPRs to create & be scraped by the Prometheus instance.
## Ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/service-monitor.md
##
Expand Down

0 comments on commit 2c8ce38

Please sign in to comment.