Skip to content

Commit

Permalink
BRE-300: Resolve MSSQL storage deployment permissions
Browse files Browse the repository at this point in the history
- Moved DB storageClass to managed disk and RWO
- Setup init container to ensure the permissions are set to container user
  • Loading branch information
mimartin12 committed Sep 10, 2024
1 parent 80047b1 commit af0a904
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 22 deletions.
17 changes: 17 additions & 0 deletions charts/self-host/templates/mssql.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,23 @@ spec:
serviceAccount: {{ .Values.database.podServiceAccount | quote }}
serviceAccountName: {{ .Values.database.podServiceAccount | quote }}
{{- end }}
initContainers:
- name: init-permissions
image: busybox
command: ['sh', '-c']
args:
- |
chown -R 10001:10001 /var/opt/mssql/data
chown -R 10001:10001 /var/opt/mssql/log
chown -R 10001:10001 /var/opt/mssql/backups
ls -la /var/opt/mssql
volumeMounts:
- name: mssql-data
mountPath: /var/opt/mssql/data
- name: mssql-log
mountPath: /var/opt/mssql/log
- name: mssql-backups
mountPath: /var/opt/mssql/backups
containers:
- name: {{ template "bitwarden.mssql" . }}
image: "{{ .Values.database.image.name }}:{{ .Values.database.image.tag }}"
Expand Down
14 changes: 0 additions & 14 deletions charts/self-host/templates/post-install-db-migrator-job.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ spec:
while [[ $(kubectl get pods -n {{ .Release.Namespace }} -l app={{ template "bitwarden.admin" . }} -o jsonpath="{.items[*].status.containerStatuses[*].ready}") != "true" ]]; do sleep 1; done

echo "Admin Ready!"

while [ ! -f /db/vault.mdf ]; do sleep 1; done

echo "DB Ready!"
']
{{- else }}
args: ['
Expand All @@ -53,11 +49,6 @@ spec:
']
{{- end }}
image: "{{ .Values.supportComponents.kubectl.image.name }}:{{ .Values.supportComponents.kubectl.image.tag }}"
volumeMounts:
{{- if .Values.database.enabled }}
- name: mssql-data
mountPath: /db
{{- end }}
containers:
- name: migrate-db
env:
Expand All @@ -82,11 +73,6 @@ spec:
{{- end }}
restartPolicy: Never
volumes:
{{- if .Values.database.enabled }}
- name: mssql-data
persistentVolumeClaim:
claimName: {{ default ( include "bitwarden.mssqlData" . ) .Values.database.volume.data.existingClaim }}
{{- end }}
{{- if .Values.secrets.secretProviderClass }}
- name: secrets-store-inline
csi:
Expand Down
16 changes: 8 additions & 8 deletions charts/self-host/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -481,10 +481,10 @@ database:
# Use an existing PVC by specifying the name.
# existingClaim: claimName
# Override the accessMode specified in general.volumeAccessMode
# accessMode: ReadWriteOnce
accessMode: ReadWriteOnce
# Override the storageClass specified in sharedStorageClassName
# storageClass: "shared-storage"
size: 1Gi
storageClass: "managed"
size: 10Gi
labels: {}
annotations:
argocd.argoproj.io/hook: PreSync
Expand All @@ -494,10 +494,10 @@ database:
# Use an existing PVC by specifying the name.
# existingClaim: claimName
# Override the accessMode specified in general.volumeAccessMode
# accessMode: ReadWriteOnce
accessMode: ReadWriteOnce
# Override the storageClass specified in sharedStorageClassName
# storageClass: "shared-storage"
size: 10Gi
storageClass: "managed"
size: 20Gi
labels: {}
annotations:
argocd.argoproj.io/hook: PreSync
Expand All @@ -507,9 +507,9 @@ database:
# Use an existing PVC by specifying the name.
# existingClaim: claimName
# Override the accessMode specified in general.volumeAccessMode
# accessMode: ReadWriteOnce
accessMode: ReadWriteOnce
# Override the storageClass specified in sharedStorageClassName
# storageClass: "shared-storage"
storageClass: "managed"
size: 10Gi
labels: {}
annotations:
Expand Down

0 comments on commit af0a904

Please sign in to comment.