Skip to content

Commit

Permalink
New Helm chart for 7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
SebastianStehle committed Aug 10, 2022
1 parent 790931c commit 2a4105c
Show file tree
Hide file tree
Showing 11 changed files with 486 additions and 6 deletions.
35 changes: 31 additions & 4 deletions helm/index.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ entries:
squidex:
- apiVersion: v2
appVersion: 5.9.0
created: "2021-09-16T16:06:57.441843+02:00"
created: "2022-08-10T10:38:40.2985659+02:00"
dependencies:
- condition: mongodb-replicaset.enabled
name: mongodb-replicaset
repository: https://kubernetes-charts.storage.googleapis.com/
version: 3.9.6
description: Squidex CMS
digest: 22ecd83b2795d407a4695d3685bbd5a24ad638d3d1cadebf9c7445925ea12d2e
digest: 566b4d063d2717e00fc04b35bf594869dc9e5398bb08da13b542a5497dd4dc19
home: https://squidex.io/
keywords:
- cms
Expand All @@ -24,6 +24,33 @@ entries:
- https://github.com/Squidex/squidex
type: application
urls:
- https://squidex.github.io/squidex/helm/squidex-1.3.0.tgz
- squidex-1.3.0.tgz
version: 1.3.0
generated: "2021-09-16T16:06:57.439521+02:00"
squidex7:
- apiVersion: v2
appVersion: 7.0.2
created: "2022-08-10T10:38:40.2995659+02:00"
dependencies:
- condition: mongodb-replicaset.enabled
name: mongodb-replicaset
repository: https://kubernetes-charts.storage.googleapis.com/
version: 3.9.6
description: Squidex CMS v7.0 and newer
digest: 9cc4c40f4a5825a33835fa8f0fc4c40389f2da96b247a9425dd999b90ee1457f
home: https://squidex.io/
icon: https://raw.githubusercontent.com/Squidex/squidex/master/media/logo-squared.png
keywords:
- cms
- headless-cms
- mongodb
- csharp
- asp-net-core
- asp-net
name: squidex7
sources:
- https://github.com/Squidex/squidex
type: application
urls:
- squidex7-1.0.0.tgz
version: 1.0.0
generated: "2022-08-10T10:38:40.2965702+02:00"
5 changes: 3 additions & 2 deletions helm/squidex/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@ apiVersion: v2
type: application

name: squidex
icon: https://raw.githubusercontent.com/Squidex/squidex/master/media/logo-squared.png
description: Squidex CMS

version: 1.3.0
appVersion: "5.9.0"
version: 1.4.0
appVersion: "6.13.0"

home: https://squidex.io/

Expand Down
Binary file added helm/squidex7-1.0.0.tgz
Binary file not shown.
28 changes: 28 additions & 0 deletions helm/squidex7/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
apiVersion: v2
type: application

name: squidex7
icon: https://raw.githubusercontent.com/Squidex/squidex/master/media/logo-squared.png
description: Squidex CMS v7.0 and newer

version: 1.0.0
appVersion: "7.0.2"

home: https://squidex.io/

keywords:
- cms
- headless-cms
- mongodb
- csharp
- asp-net-core
- asp-net

sources:
- https://github.com/Squidex/squidex

dependencies:
- name: mongodb-replicaset
version: 3.9.6
repository: https://kubernetes-charts.storage.googleapis.com/
condition: mongodb-replicaset.enabled
Binary file added helm/squidex7/charts/mongodb-replicaset-3.9.6.tgz
Binary file not shown.
73 changes: 73 additions & 0 deletions helm/squidex7/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{{/* vim: set filetype=mustache: */}}

{{- define "squidex.selectors" }}
{{- if .Values.selectors.component }}
app.kubernetes.io/component: {{ .Values.selectors.component }}
{{- end}}
app.kubernetes.io/name: {{ include "squidex.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Values.selectors.partOf }}
app.kubernetes.io/part-of: {{ .Values.selectors.partOf }}
{{- end }}
{{- if .Values.selectors.version }}
app.kubernetes.io/version: {{ .Values.selectors.version | quote }}
{{- end -}}
{{- end -}}

{{- define "squidex.labels" }}
{{- include "squidex.selectors" . }}
helm.sh/chart: {{ include "squidex.chart" . }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.labels }}
{{- toYaml .Values.labels | nindent 4 }}
{{- end -}}
{{- end -}}

{{- define "squidex.mongoDefaultHostname" }}
{{- $release := .Release}}
{{- $clusterSuffix := .Values.clusterSuffix}}
{{- range $index, $i := until (int (index .Values "mongodb-replicaset").replicas) }}
{{- $replica := printf "%s-mongodb-replicaset-%d.%s-mongodb-replicaset.%s.svc.%s" $release.Name $i $release.Name $release.Namespace $clusterSuffix }}
{{- if eq $i 0}}
{{- $replica }}
{{- else -}}
,{{ $replica }}
{{- end }}
{{- end }}
{{- end }}

{{- define "squidex.internalDnsName" }}
{{- .Release.Name }}-
{{- include "squidex.name" . }}.
{{- .Release.Namespace }}.svc.
{{- .Values.clusterSuffix}}
{{- end }}

{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "squidex.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{- define "squidex.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "squidex.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
80 changes: 80 additions & 0 deletions helm/squidex7/templates/deployment-worker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "squidex.fullname" . }}-worker
labels:
{{- include "squidex.labels" . | indent 4 }}
app.kubernetes.io/role: worker
spec:
replicas: 1
selector:
matchLabels:
{{- include "squidex.selectors" . | indent 6 }}
app.kubernetes.io/role: worker
template:
metadata:
labels:
{{- include "squidex.selectors" . | indent 8 }}
app.kubernetes.io/role: worker
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ default .Chart.AppVersion .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 300
readinessProbe:
httpGet:
path: /readiness
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
env:
{{- range $key, $val := .Values.env }}
{{- if (eq $key "URLS__BASEURL") }}
- name: {{ $key | quote }}
value: {{ required (printf "The value .Values.env.%s is required" $key) $val | quote }}
{{- else }}
- name: {{ $key | quote }}
value: {{ $val | quote }}
{{- end }}
{{- end }}

- name: CLUSTERING__WORKER
value: "true"

{{- $mongoDefaultConnectionString := printf "mongodb://%s" (include "squidex.mongoDefaultHostname" .) }}
{{- if (not .Values.env.EVENTSTORE__MONGODB__CONFIGURATION) }}
- name: "EVENTSTORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}

{{- if (not .Values.env.STORE__MONGODB__CONFIGURATION) }}
- name: "STORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}

{{- if (not .Values.env.ASSETSTORE__MONGODB__CONFIGURATION) }}
- name: "ASSETSTORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}
nodeSelector:
{{- toYaml .Values.nodeSelector | nindent 8 }}
affinity:
{{- toYaml .Values.affinity | nindent 8 }}
tolerations:
{{- toYaml .Values.tolerations | nindent 8 }}
{{- if (.Values.deployment.serviceAccountName) }}
serviceAccountName: {{ .Values.deployment.serviceAccountName}}
{{- end }}
77 changes: 77 additions & 0 deletions helm/squidex7/templates/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "squidex.fullname" . }}
labels:
{{- include "squidex.labels" . | indent 4 }}
app.kubernetes.io/role: api
spec:
replicas: {{ .Values.deployment.replicaCount }}
selector:
matchLabels:
{{- include "squidex.selectors" . | indent 6 }}
app.kubernetes.io/role: api
template:
metadata:
labels:
{{- include "squidex.selectors" . | indent 8 }}
app.kubernetes.io/role: api
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ default .Chart.AppVersion .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 300
readinessProbe:
httpGet:
path: /readiness
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
env:
{{- range $key, $val := .Values.env }}
{{- if (eq $key "URLS__BASEURL") }}
- name: {{ $key | quote }}
value: {{ required (printf "The value .Values.env.%s is required" $key) $val | quote }}
{{- else }}
- name: {{ $key | quote }}
value: {{ $val | quote }}
{{- end }}
{{- end }}

{{- $mongoDefaultConnectionString := printf "mongodb://%s" (include "squidex.mongoDefaultHostname" .) }}
{{- if (not .Values.env.EVENTSTORE__MONGODB__CONFIGURATION) }}
- name: "EVENTSTORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}

{{- if (not .Values.env.STORE__MONGODB__CONFIGURATION) }}
- name: "STORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}

{{- if (not .Values.env.ASSETSTORE__MONGODB__CONFIGURATION) }}
- name: "ASSETSTORE__MONGODB__CONFIGURATION"
value: {{ $mongoDefaultConnectionString | quote }}
{{- end }}
nodeSelector:
{{- toYaml .Values.nodeSelector | nindent 8 }}
affinity:
{{- toYaml .Values.affinity | nindent 8 }}
tolerations:
{{- toYaml .Values.tolerations | nindent 8 }}
{{- if (.Values.deployment.serviceAccountName) }}
serviceAccountName: {{ .Values.deployment.serviceAccountName}}
{{- end }}
36 changes: 36 additions & 0 deletions helm/squidex7/templates/ingress.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "squidex.fullname" . -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ $fullName }}
namespace: {{ .Release.Namespace | quote }}
labels:
{{- include "squidex.labels" . | indent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
- host: {{ .Values.ingress.hostName | quote }}
http:
paths:
- path: /
pathType: ImplementationSpecific
backend:
service:
name: {{ $fullName }}
port:
number: {{ .Values.service.port }}
{{- end -}}
17 changes: 17 additions & 0 deletions helm/squidex7/templates/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "squidex.fullname" . }}
labels:
{{- include "squidex.labels" . | indent 4 }}
app.kubernetes.io/role: api
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "squidex.selectors" . | indent 4 }}
app.kubernetes.io/role: api
Loading

0 comments on commit 2a4105c

Please sign in to comment.