diff --git a/charts/nebulous-overlay-network-manager/Chart.yaml b/charts/nebulous-overlay-network-manager/Chart.yaml index 6b8b804..60a4c5f 100644 --- a/charts/nebulous-overlay-network-manager/Chart.yaml +++ b/charts/nebulous-overlay-network-manager/Chart.yaml @@ -22,8 +22,3 @@ version: 0.1.0 # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. appVersion: "latest" - -dependencies: - - name: postgresql - version: 14.3.3 - repository: https://charts.bitnami.com/bitnami diff --git a/charts/nebulous-overlay-network-manager/templates/_helpers.tpl b/charts/nebulous-overlay-network-manager/templates/_helpers.tpl index af90e68..7ad84b4 100644 --- a/charts/nebulous-overlay-network-manager/templates/_helpers.tpl +++ b/charts/nebulous-overlay-network-manager/templates/_helpers.tpl @@ -42,6 +42,15 @@ app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} app.kubernetes.io/managed-by: {{ .Release.Service }} {{- end }} +{{- define "nebulous-overlay-network-manager.postgresql.labels" -}} +helm.sh/chart: {{ include "nebulous-overlay-network-manager.chart" . }} +{{ include "nebulous-overlay-network-manager.postgresql.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + {{/* Selector labels */}} @@ -50,6 +59,11 @@ app.kubernetes.io/name: {{ include "nebulous-overlay-network-manager.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} +{{- define "nebulous-overlay-network-manager.postgresql.selectorLabels" -}} +app.kubernetes.io/name: {{ include "nebulous-overlay-network-manager.name" . }}-postgresql +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + {{/* Create the name of the service account to use */}} diff --git a/charts/nebulous-overlay-network-manager/templates/deployment-postgres.yaml b/charts/nebulous-overlay-network-manager/templates/deployment-postgres.yaml new file mode 100644 index 0000000..99fb3ac --- /dev/null +++ b/charts/nebulous-overlay-network-manager/templates/deployment-postgres.yaml @@ -0,0 +1,64 @@ +{{ if .Values.postgresql.enabled }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "nebulous-overlay-network-manager.fullname" . }}-postgresql + labels: + {{- include "nebulous-overlay-network-manager.postgresql.labels" . | nindent 4 }} +spec: + selector: + matchLabels: + {{- include "nebulous-overlay-network-manager.postgresql.selectorLabels" . | nindent 6 }} + template: + metadata: + labels: + {{- include "nebulous-overlay-network-manager.postgresql.selectorLabels" . | nindent 8 }} + spec: + containers: + - name: postgresql + image: "{{ .Values.postgresql.image }}" + ports: + - name: postgresql + containerPort: {{ .Values.postgresql.port }} + protocol: TCP + env: + - name: POSTGRES_USER + value: "{{ .Values.postgresql.user }}" + - name: POSTGRES_PASSWORD + value: "{{ .Values.postgresql.password }}" + - name: POSTGRES_DB + value: "{{ .Values.postgresql.dbName }}" + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ include "nebulous-overlay-network-manager.fullname" . }}-postgresql + labels: + {{- include "nebulous-overlay-network-manager.postgresql.labels" . | nindent 4 }} +spec: + type: ClusterIP + ports: + - port: {{ .Values.postgresql.port }} + targetPort: postgresql + protocol: TCP + name: postgresql + - port: 5050 + targetPort: pgadmin + protocol: TCP + name: pgadmin + selector: + {{- include "nebulous-overlay-network-manager.postgresql.selectorLabels" . | nindent 4 }} +{{ end }} diff --git a/charts/nebulous-overlay-network-manager/templates/deployment.yaml b/charts/nebulous-overlay-network-manager/templates/deployment.yaml index d02a584..d11bdc5 100644 --- a/charts/nebulous-overlay-network-manager/templates/deployment.yaml +++ b/charts/nebulous-overlay-network-manager/templates/deployment.yaml @@ -27,10 +27,6 @@ spec: serviceAccountName: {{ include "nebulous-overlay-network-manager.serviceAccountName" . }} securityContext: {{- toYaml .Values.podSecurityContext | nindent 8 }} - initContainers: - - name: wait-for-postgresql - image: docker.io/bitnami/postgresql:16.2.0-debian-12-r8 - command: ['sh', '-c', 'until pg_isready -U postgresql -d dbname=postgres -h nebulous-overlay-network-manager-postgresql -p 5432; do echo waiting for database; sleep 2; done;'] containers: - name: {{ .Chart.Name }} securityContext: @@ -41,18 +37,15 @@ spec: - name: onm-api containerPort: 8082 protocol: TCP - - name: pgadmin - containerPort: 5050 - protocol: TCP resources: {{- toYaml .Values.resources | nindent 12 }} env: - name: POSTGRES_USER - value: {{ .Values.postgresql.global.postgresql.auth.username }} + value: {{ .Values.postgresql.user }} - name: POSTGRES_PASSWORD - value: {{ .Values.postgresql.global.postgresql.auth.password }} + value: {{ .Values.postgresql.password }} - name: POSTGRES_DB - value: {{ .Values.postgresql.global.postgresql.auth.database }} + value: {{ .Values.postgresql.database }} - name: POSTGRES_IP_FQDN value: "nebulous-overlay-network-manager-postgresql" - name: POSTGRES_CONNECTION_STRING diff --git a/charts/nebulous-overlay-network-manager/values.yaml b/charts/nebulous-overlay-network-manager/values.yaml index ef4b70f..8549524 100644 --- a/charts/nebulous-overlay-network-manager/values.yaml +++ b/charts/nebulous-overlay-network-manager/values.yaml @@ -84,13 +84,12 @@ tolerations: [] affinity: {} postgresql: - global: - postgresql: - auth: - postgresPassword: "nebulous" - username: "postgresql" - password: "postgresql" - database: "postgres" + enabled: true + image: "docker.io/postgres:16" + user: "postgresql" + password: "postgresql" + dbName: "postgres" + port: 5432 customEnv: WIREGUARD_NETWORK_PORTION: "192.168.55."