_permissions.tpl 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. {{/* Returns an init container that fixes permissions */}}
  2. {{/* Call this template:
  3. {{ include "ix.v1.common.app.permissions" (dict "UID" 568 "GID" 568 "type" "init") }}
  4. type (optional): init or install (default: install)
  5. UID: UID to change permissions to
  6. GID: GID to change permissions to
  7. */}}
  8. {{- define "ix.v1.common.app.permissions" -}}
  9. {{- $type := .type | default "install" -}}
  10. {{- $containerName := .containerName | default "permissions" -}}
  11. {{- $UID := .UID -}}
  12. {{- $GID := .GID -}}
  13. {{- if (kindIs "invalid" $type) -}}
  14. {{- fail "Permissions Container - [type] cannot be empty" -}}
  15. {{- end -}}
  16. {{- if (kindIs "invalid" $containerName) -}}
  17. {{- fail "Permissions Container - [containerName] cannot be empty" -}}
  18. {{- end -}}
  19. {{- if (kindIs "invalid" $GID) -}}
  20. {{- fail "Permissions Container - [GID] cannot be empty" -}}
  21. {{- end -}}
  22. {{- if (kindIs "invalid" $UID) -}}
  23. {{- fail "Permissions Container - [UID] cannot be empty" -}}
  24. {{- end }}
  25. {{ $containerName }}:
  26. enabled: true
  27. type: {{ $type }}
  28. imageSelector: bashImage
  29. resources:
  30. limits:
  31. cpu: 1000m
  32. memory: 512Mi
  33. securityContext:
  34. runAsUser: 0
  35. runAsGroup: 0
  36. runAsNonRoot: false
  37. readOnlyRootFilesystem: false
  38. capabilities:
  39. add:
  40. - CHOWN
  41. command: bash
  42. args:
  43. - -c
  44. - |
  45. echo "Changing ownership to {{ $UID }}:{{ $GID }} on the following directories:"
  46. ls -la /mnt/directories
  47. chown -R {{ $UID }}:{{ $GID }} /mnt/directories
  48. echo "Finished changing ownership"
  49. echo "Permissions after changing ownership:"
  50. ls -la /mnt/directories
  51. {{- end -}}