refactor: naming, labels and selectors

This commit is contained in:
jon4hz
2022-12-28 15:42:47 +01:00
parent da5800c268
commit 4880cd84dc
6 changed files with 157 additions and 25 deletions
@@ -0,0 +1,114 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "infisical.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "infisical.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Create unified labels for infisical components
*/}}
{{- define "infisical.common.matchLabels" -}}
app: {{ template "infisical.name" . }}
release: {{ .Release.Name }}
{{- end -}}
{{- define "infisical.common.metaLabels" -}}
chart: {{ template "infisical.chart" . }}
heritage: {{ .Release.Service }}
{{- end -}}
{{- define "infisical.common.labels" -}}
{{ include "infisical.common.matchLabels" . }}
{{ include "infisical.common.metaLabels" . }}
{{- end -}}
{{- define "infisical.backend.labels" -}}
{{ include "infisical.backend.matchLabels" . }}
{{ include "infisical.common.metaLabels" . }}
{{- end -}}
{{- define "infisical.backend.matchLabels" -}}
component: {{ .Values.backend.name | quote }}
{{ include "infisical.common.matchLabels" . }}
{{- end -}}
{{- define "infisical.frontend.labels" -}}
{{ include "infisical.frontend.matchLabels" . }}
{{ include "infisical.common.metaLabels" . }}
{{- end -}}
{{- define "infisical.frontend.matchLabels" -}}
component: {{ .Values.frontend.name | quote }}
{{ include "infisical.common.matchLabels" . }}
{{- end -}}
{{- define "infisical.mongodb.labels" -}}
{{ include "infisical.mongodb.matchLabels" . }}
{{ include "infisical.common.metaLabels" . }}
{{- end -}}
{{- define "infisical.mongodb.matchLabels" -}}
component: {{ .Values.mongodb.name | quote }}
{{ include "infisical.common.matchLabels" . }}
{{- end -}}
{{/*
Create a fully qualified backend proxy name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}}
{{- define "infisical.backend.fullname" -}}
{{- if .Values.backend.fullnameOverride -}}
{{- .Values.backend.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- printf "%s-%s" .Release.Name .Values.backend.name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s-%s" .Release.Name $name .Values.backend.name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{/*
Create a fully qualified frontend manager name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}}
{{- define "infisical.frontend.fullname" -}}
{{- if .Values.frontend.fullnameOverride -}}
{{- .Values.frontend.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- printf "%s-%s" .Release.Name .Values.frontend.name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s-%s" .Release.Name $name .Values.frontend.name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{/*
Create a fully qualified mongodb collector name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}}
{{- define "infisical.mongodb.fullname" -}}
{{- if .Values.mongodb.fullnameOverride -}}
{{- .Values.mongodb.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- printf "%s-%s" .Release.Name .Values.mongodb.name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s-%s" .Release.Name $name .Values.mongodb.name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
@@ -1,22 +1,22 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-backend-deployment name: {{ include "infisical.backend.fullname" . }}
labels: labels:
app: backend {{- include "infisical.backend.labels" . | nindent 4 }}
spec: spec:
replicas: {{ .Values.backend.replicaCount }} replicas: {{ .Values.backend.replicaCount }}
selector: selector:
matchLabels: matchLabels:
app: backend {{- include "infisical.backend.matchLabels" . | nindent 6 }}
template: template:
metadata: metadata:
labels: labels:
app: backend {{- include "infisical.backend.matchLabels" . | nindent 8 }}
spec: spec:
containers: containers:
- name: backend - name: {{ template "infisical.name" . }}-{{ .Values.backend.name }}
image: "{{ .Values.frontend.image.repository }}:{{ .Values.frontend.image.tag | default .Chart.AppVersion }}" image: "{{ .Values.backend.image.repository }}:{{ .Values.backend.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.backend.image.pullPolicy }} imagePullPolicy: {{ .Values.backend.image.pullPolicy }}
ports: ports:
- containerPort: 4000 - containerPort: 4000
@@ -38,10 +38,12 @@ spec:
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: infisical-backend-service name: {{ include "infisical.backend.fullname" . }}
labels:
{{- include "infisical.backend.labels" . | nindent 4 }}
spec: spec:
selector: selector:
app: backend {{- include "infisical.backend.matchLabels" . | nindent 8 }}
ports: ports:
- protocol: TCP - protocol: TCP
port: 4000 port: 4000
@@ -1,21 +1,21 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-frontend-deployment name: {{ include "infisical.frontend.fullname" . }}
labels: labels:
app: frontend {{- include "infisical.frontend.labels" . | nindent 4 }}
spec: spec:
replicas: {{ .Values.frontend.replicaCount }} replicas: {{ .Values.frontend.replicaCount }}
selector: selector:
matchLabels: matchLabels:
app: frontend {{- include "infisical.frontend.matchLabels" . | nindent 6 }}
template: template:
metadata: metadata:
labels: labels:
app: frontend {{- include "infisical.frontend.matchLabels" . | nindent 8 }}
spec: spec:
containers: containers:
- name: frontend - name: {{ template "infisical.name" . }}-{{ .Values.frontend.name }}
image: "{{ .Values.frontend.image.repository }}:{{ .Values.frontend.image.tag | default .Chart.AppVersion }}" image: "{{ .Values.frontend.image.repository }}:{{ .Values.frontend.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.frontend.image.pullPolicy }} imagePullPolicy: {{ .Values.frontend.image.pullPolicy }}
{{- if .Values.frontend.kubeSecretRef }} {{- if .Values.frontend.kubeSecretRef }}
@@ -39,11 +39,13 @@ spec:
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: infisical-frontend-service name: {{ include "infisical.frontend.fullname" . }}
labels:
{{- include "infisical.frontend.labels" . | nindent 4 }}
spec: spec:
type: {{ .Values.frontend.service.type }} type: {{ .Values.frontend.service.type }}
selector: selector:
app: frontend {{- include "infisical.frontend.matchLabels" . | nindent 8 }}
ports: ports:
- protocol: TCP - protocol: TCP
port: 3000 # service port: 3000 # service
+2 -2
View File
@@ -26,14 +26,14 @@ spec:
pathType: {{ .Values.ingress.frontend.pathType }} pathType: {{ .Values.ingress.frontend.pathType }}
backend: backend:
service: service:
name: infisical-frontend-service name: {{ include "infisical.frontend.fullname" . }}
port: port:
number: 3000 number: 3000
- path: {{ .Values.ingress.backend.path }} - path: {{ .Values.ingress.backend.path }}
pathType: {{ .Values.ingress.backend.pathType }} pathType: {{ .Values.ingress.backend.pathType }}
backend: backend:
service: service:
name: infisical-backend-service name: {{ include "infisical.backend.fullname" . }}
port: port:
number: 4000 number: 4000
{{ end }} {{ end }}
@@ -1,22 +1,23 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: mongodb-deployment name: {{ include "infisical.mongodb.fullname" . }}
labels: labels:
app: mongodb {{- include "infisical.mongodb.labels" . | nindent 4 }}
spec: spec:
replicas: 1 # Cannot be scaled. To scale, you must set up Stateful Set replicas: 1 # Cannot be scaled. To scale, you must set up Stateful Set
selector: selector:
matchLabels: matchLabels:
app: mongodb {{- include "infisical.mongodb.matchLabels" . | nindent 6 }}
template: template:
metadata: metadata:
labels: labels:
app: mongodb {{- include "infisical.mongodb.matchLabels" . | nindent 8 }}
spec: spec:
containers: containers:
- name: mongodb - name: {{ template "infisical.name" . }}-{{ .Values.mongodb.name }}
image: mongo image: "{{ .Values.mongodb.image.repository }}:{{ .Values.mongodb.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.mongodb.image.pullPolicy }}
ports: ports:
- containerPort: 27017 - containerPort: 27017
env: env:
@@ -28,10 +29,12 @@ spec:
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: mongodb-service name: {{ include "infisical.mongodb.fullname" . }}
labels:
{{- include "infisical.mongodb.labels" . | nindent 4 }}
spec: spec:
selector: selector:
app: mongodb {{- include "infisical.mongodb.matchLabels" . | nindent 8 }}
ports: ports:
- protocol: TCP - protocol: TCP
port: 27017 port: 27017
+11
View File
@@ -3,7 +3,10 @@
# PLEASE REPLACE VALUES/EDIT AS REQUIRED # PLEASE REPLACE VALUES/EDIT AS REQUIRED
##### #####
nameOverride: ""
frontend: frontend:
name: frontend
replicaCount: 1 replicaCount: 1
image: image:
repository: infisical/frontend repository: infisical/frontend
@@ -17,6 +20,7 @@ frontend:
# nodePort: # nodePort:
backend: backend:
name: backend
replicaCount: 1 replicaCount: 1
image: image:
repository: infisical/backend repository: infisical/backend
@@ -24,6 +28,13 @@ backend:
tag: "latest" tag: "latest"
# kubeSecretRef: some-kube-secret-name # kubeSecretRef: some-kube-secret-name
mongodb:
name: mongodb
image:
repository: mongo
pullPolicy: IfNotPresent
tag: "latest"
ingress: ingress:
enabled: true enabled: true
annotations: annotations: