6602760a48
- Local Volume StorageClass configuration is now manged by `local_volume_provisioner_storage_classes`, a list of maps that specifies local storage classes with `name` `host_dir` and `mount_dir` keys per entry - Tasks and templates updated to loop through local volume storage classes - Previous defaults for path/class names were not changed - Fixed an issue where a `kubernetes/preinstall` was creating directories inconsistently with the `kubernetes-apps/external_provisioner/local_volume_provisioner` task
46 lines
1.2 KiB
Django/Jinja
46 lines
1.2 KiB
Django/Jinja
---
|
|
apiVersion: policy/v1beta1
|
|
kind: PodSecurityPolicy
|
|
metadata:
|
|
name: local-volume-provisioner
|
|
annotations:
|
|
seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
|
|
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default'
|
|
{% if apparmor_enabled %}
|
|
apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
|
|
apparmor.security.beta.kubernetes.io/allowedProfileNames: 'runtime/default'
|
|
{% endif %}
|
|
labels:
|
|
kubernetes.io/cluster-service: 'true'
|
|
addonmanager.kubernetes.io/mode: Reconcile
|
|
spec:
|
|
privileged: true
|
|
allowPrivilegeEscalation: true
|
|
requiredDropCapabilities:
|
|
- ALL
|
|
volumes:
|
|
- 'configMap'
|
|
- 'emptyDir'
|
|
- 'secret'
|
|
- 'downwardAPI'
|
|
- 'hostPath'
|
|
allowedHostPaths:
|
|
{% for class in local_volume_provisioner_storage_classes %}
|
|
- pathPrefix: "{{ class.host_dir }}"
|
|
readOnly: false
|
|
{% endfor %}
|
|
hostNetwork: false
|
|
hostIPC: false
|
|
hostPID: false
|
|
runAsUser:
|
|
rule: 'RunAsAny'
|
|
seLinux:
|
|
rule: 'RunAsAny'
|
|
supplementalGroups:
|
|
rule: 'MustRunAs'
|
|
ranges:
|
|
- min: 1
|
|
max: 65535
|
|
fsGroup:
|
|
rule: 'RunAsAny'
|
|
readOnlyRootFilesystem: false
|