Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ Read more: [Docker installation](docs/getting-started/docker.md)

### Kubernetes (Helm)

A Helm chart lives in `helm/incidentrelay`. It deploys the web UI plus the scheduler and Telegram workers, renders the application config from values into a Secret, and wires up the `/healthz` and `/readyz` probes.
A Helm chart lives in `helm/incidentrelay`. It deploys the web UI plus the scheduler, Telegram and Slack workers, renders the application config from values into a Secret, and wires up the `/healthz` and `/readyz` probes.

```bash
helm install incidentrelay ./helm/incidentrelay \
Expand Down
2 changes: 1 addition & 1 deletion helm/incidentrelay/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
name: incidentrelay
description: On-call scheduling, alert routing and incident notification service
type: application
version: 1.1.0
version: 1.2.0
appVersion: "1.1.0"
home: https://github.com/roxy-wi/IncidentRelay
sources:
Expand Down
1 change: 1 addition & 0 deletions helm/incidentrelay/templates/NOTES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ Components:
web {{ .Values.web.replicaCount }} replica(s)
scheduler {{ .Values.scheduler.enabled | ternary "enabled" "disabled" }}
telegram {{ .Values.telegram.enabled | ternary "enabled" "disabled" }}
slack {{ .Values.slack.enabled | ternary "enabled" "disabled" }}

Access the web UI:
{{- if .Values.ingress.enabled }}
Expand Down
82 changes: 82 additions & 0 deletions helm/incidentrelay/templates/deployment-slack.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
{{- if .Values.slack.enabled }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "incidentrelay.fullname" . }}-slack
labels:
{{- include "incidentrelay.labels" . | nindent 4 }}
app.kubernetes.io/component: slack
spec:
replicas: 1
{{- with .Values.slack.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
selector:
matchLabels:
{{- include "incidentrelay.selectorLabels" . | nindent 6 }}
app.kubernetes.io/component: slack
template:
metadata:
annotations:
{{- include "incidentrelay.configChecksum" . | nindent 8 }}
{{- with .Values.slack.podAnnotations }}
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "incidentrelay.selectorLabels" . | nindent 8 }}
app.kubernetes.io/component: slack
{{- with .Values.slack.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "incidentrelay.serviceAccountName" . }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: slack
image: {{ include "incidentrelay.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
{{- with .Values.securityContext }}
securityContext:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: INCIDENTRELAY_CONFIG_FILE
value: /etc/incidentrelay/incidentrelay.conf
- name: INCIDENTRELAY_SERVICE
value: slack
- name: INCIDENTRELAY_RUN_MIGRATIONS
value: "0"
- name: PYTHONUNBUFFERED
value: "1"
{{- with .Values.slack.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.slack.resources }}
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
{{- include "incidentrelay.volumeMounts" . | nindent 12 }}
volumes:
{{- include "incidentrelay.volumes" . | nindent 8 }}
{{- with .Values.slack.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.slack.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.slack.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- end }}
14 changes: 14 additions & 0 deletions helm/incidentrelay/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,20 @@ telegram:
affinity: {}
extraEnv: []

# Socket Mode worker for Slack interactive buttons. Harmless without a
# configured Slack app (it idles), disable it if you do not use Slack.
slack:
enabled: true
strategy:
type: Recreate
resources: {}
podAnnotations: {}
podLabels: {}
nodeSelector: {}
tolerations: []
affinity: {}
extraEnv: []

service:
type: ClusterIP
port: 8080
Expand Down