-
Notifications
You must be signed in to change notification settings - Fork 267
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(nextcloud): add notify_push support #581
base: main
Are you sure you want to change the base?
Changes from all commits
01cf972
78952a6
87cc7b8
d35cfd1
530d99c
93dfc31
4e06db2
30b3ecf
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
#!/bin/sh | ||
/var/www/html/occ app:install notify_push | ||
/var/www/html/occ notify_push:setup https://{{ .Values.nextcloud.host }}{{ .Values.notifyPush.ingress.path }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,38 @@ | ||
{{- if .Values.metrics.enabled }} | ||
{{- with .Values.metrics.service }} | ||
--- | ||
apiVersion: v1 | ||
kind: Service | ||
metadata: | ||
name: {{ template "nextcloud.fullname" . }}-metrics | ||
name: {{ template "nextcloud.fullname" $ }}-metrics | ||
labels: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||
helm.sh/chart: {{ include "nextcloud.chart" . }} | ||
app.kubernetes.io/instance: {{ .Release.Name }} | ||
app.kubernetes.io/managed-by: {{ .Release.Service }} | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
helm.sh/chart: {{ include "nextcloud.chart" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/managed-by: {{ $.Release.Service }} | ||
app.kubernetes.io/component: metrics | ||
{{- with .Values.metrics.service.labels }} | ||
app.kubernetes.io/monitor: enabled | ||
{{- with .labels }} | ||
{{- toYaml . | nindent 4 }} | ||
{{- end }} | ||
{{- with .Values.metrics.service.annotations }} | ||
{{- with .annotations }} | ||
annotations: | ||
{{- toYaml . | nindent 4 }} | ||
{{- end }} | ||
spec: | ||
type: {{ .Values.metrics.service.type }} | ||
{{- if eq .Values.metrics.service.type "LoadBalancer" }} | ||
{{- with .Values.metrics.service.loadBalancerIP }} | ||
type: {{ .type }} | ||
{{- if eq .type "LoadBalancer" }} | ||
{{- with .loadBalancerIP }} | ||
loadBalancerIP: {{ . }} | ||
{{- end }} | ||
{{- end }} | ||
selector: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/component: metrics | ||
ports: | ||
- name: metrics | ||
port: 9205 | ||
port: 9100 | ||
targetPort: metrics | ||
selector: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||
app.kubernetes.io/instance: {{ .Release.Name }} | ||
app.kubernetes.io/component: metrics | ||
{{- end }} | ||
{{- end }} |
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
{{- if and .Values.notifyPush.enabled .Values.notifyPush.autoSetup }} | ||
--- | ||
apiVersion: v1 | ||
kind: ConfigMap | ||
metadata: | ||
name: {{ template "nextcloud.fullname" . }}-notify-push | ||
labels: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||
helm.sh/chart: {{ include "nextcloud.chart" . }} | ||
app.kubernetes.io/instance: {{ .Release.Name }} | ||
app.kubernetes.io/managed-by: {{ .Release.Service }} | ||
data: | ||
hook.sh: |- | ||
{{- tpl (.Files.Get "files/notify_push.sh.gotmpl" ) . | nindent 4 }} | ||
{{- end }} |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
@@ -0,0 +1,70 @@ | ||||||
{{- if .Values.notifyPush.enabled }} | ||||||
--- | ||||||
apiVersion: apps/v1 | ||||||
kind: Deployment | ||||||
metadata: | ||||||
name: {{ template "nextcloud.fullname" . }}-notify-push | ||||||
labels: | ||||||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||||||
helm.sh/chart: {{ include "nextcloud.chart" . }} | ||||||
app.kubernetes.io/instance: {{ .Release.Name }} | ||||||
app.kubernetes.io/managed-by: {{ .Release.Service }} | ||||||
app.kubernetes.io/component: notify-push | ||||||
spec: | ||||||
replicas: {{ .Values.notifyPush.replicaCount }} | ||||||
selector: | ||||||
matchLabels: | ||||||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||||||
app.kubernetes.io/instance: {{ .Release.Name }} | ||||||
app.kubernetes.io/component: notify-push | ||||||
template: | ||||||
metadata: | ||||||
annotations: | ||||||
{{- toYaml .Values.notifyPush.podAnnotations | nindent 8 }} | ||||||
labels: | ||||||
app.kubernetes.io/name: {{ include "nextcloud.name" . }} | ||||||
app.kubernetes.io/instance: {{ .Release.Name }} | ||||||
app.kubernetes.io/component: notify-push | ||||||
{{- with .Values.notifyPush.podLabels }} | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} | ||||||
spec: | ||||||
{{- with .Values.notifyPush.image.pullSecrets }} | ||||||
imagePullSecrets: | ||||||
{{- range . }} | ||||||
- name: {{ . }} | ||||||
{{- end}} | ||||||
{{- end }} | ||||||
containers: | ||||||
- name: notify-push | ||||||
{{- with .Values.notifyPush.image }} | ||||||
image: "{{ .registry }}/{{ .repository }}:{{ .tag }}" | ||||||
imagePullPolicy: {{ .pullPolicy }} | ||||||
{{- end }} | ||||||
env: | ||||||
- name: PORT | ||||||
value: "7867" | ||||||
- name: METRICS_PORT | ||||||
value: "9867" | ||||||
- name: DATABASE_URL | ||||||
valueFrom: | ||||||
secretKeyRef: | ||||||
name: {{ .Values.externalDatabase.existingSecret.secretName | default (printf "%s-db" .Release.Name) }} | ||||||
key: {{ .Values.externalDatabase.existingSecret.databaseURLKey }} | ||||||
- name: REDIS_URL | ||||||
value: "redis://{{ if .Values.redis.auth.enabled }}:{{ .Values.redis.auth.password }}@{{ end }}{{ template "nextcloud.redis.fullname" . }}-master:{{ .Values.redis.master.service.ports.redis }}" | ||||||
- name: NEXTCLOUD_URL # deployment.namespace.svc.cluster.local | ||||||
value: "http{{ if .Values.notifyPush.https }}s{{ end }}://{{ template "nextcloud.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local:{{ .Values.service.port }}" | ||||||
ports: | ||||||
- name: http | ||||||
containerPort: 7867 | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, that is strange - I do like to run pods with less priority and permission (port over 1000) and reNAT it with the service to an port like 80 ... That is the reason why I set the ENV and this port to 7867. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm also notify_push mean, this is the default port: So, how should it work this way 🤔 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I got a connection timeout when I started it and only saw the port 80 in the service. I was a bit in hurry. Your right, this should be the correct port-setting. |
||||||
- name: metrics | ||||||
containerPort: 9867 | ||||||
{{- with .Values.notifyPush.resources }} | ||||||
resources: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
securityContext: | ||||||
runAsUser: 1000 | ||||||
runAsNonRoot: true | ||||||
{{- end }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
{{- if .Values.notifyPush.enabled }} | ||
{{- with .Values.notifyPush.service }} | ||
--- | ||
apiVersion: v1 | ||
kind: Service | ||
metadata: | ||
name: {{ template "nextcloud.fullname" $ }}-notify-push | ||
labels: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
helm.sh/chart: {{ include "nextcloud.chart" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/managed-by: {{ $.Release.Service }} | ||
app.kubernetes.io/component: notify-push | ||
app.kubernetes.io/monitor: enabled | ||
{{- with .labels }} | ||
{{- toYaml . | nindent 4 }} | ||
{{- end }} | ||
{{- with .annotations }} | ||
annotations: | ||
{{- toYaml . | nindent 4 }} | ||
{{- end }} | ||
spec: | ||
type: {{ .type }} | ||
{{- if eq .type "LoadBalancer" }} | ||
{{- with .loadBalancerIP }} | ||
loadBalancerIP: {{ . }} | ||
{{- end }} | ||
{{- end }} | ||
selector: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/component: notify-push | ||
ports: | ||
- name: http | ||
port: 80 | ||
targetPort: http | ||
- name: metrics | ||
port: 9100 | ||
targetPort: metrics | ||
{{- end }} | ||
{{- end }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
{{- with .Values.prometheus.serviceMonitor }} | ||
{{- if .enabled }} | ||
--- | ||
apiVersion: monitoring.coreos.com/v1 | ||
kind: ServiceMonitor | ||
metadata: | ||
name: {{ template "nextcloud.fullname" $ }} | ||
namespace: {{ .namespace | default $.Release.Namespace | quote }} | ||
labels: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
helm.sh/chart: {{ include "nextcloud.chart" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/managed-by: {{ $.Release.Service }} | ||
{{- with .labels }} | ||
{{- toYaml . | nindent 4 }} | ||
{{- end }} | ||
spec: | ||
jobLabel: {{ .jobLabel | quote }} | ||
selector: | ||
matchLabels: | ||
app.kubernetes.io/name: {{ include "nextcloud.name" $ }} | ||
app.kubernetes.io/instance: {{ $.Release.Name }} | ||
app.kubernetes.io/monitor: enabled | ||
namespaceSelector: | ||
{{- with .namespaceSelector }} | ||
{{- toYaml . | nindent 4 }} | ||
{{- else }} | ||
matchNames: | ||
- {{ $.Release.Namespace | quote }} | ||
{{- end }} | ||
endpoints: | ||
- port: metrics | ||
path: "/metrics" | ||
{{- with .interval }} | ||
interval: {{ . }} | ||
{{- end }} | ||
{{- with .scrapeTimeout }} | ||
scrapeTimeout: {{ . }} | ||
{{- end }} | ||
{{- end }} | ||
{{- end }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feel free to remove or tweak this @wrenix 🙏
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the rename of the templates (and the merge of #480 )
and yes i will replace that part into a
ci/ct-*-values.yaml
ala #526There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh i see that i have missed to #598 ala #526 ...