1
0

Compare commits

...

18 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
ae50b6da6c Merge pull request #71 from khalsa-ji/bugfix/provisioningFails-storageclassWith-WaitForFirstConsumer
PV provisioning fails when storageclass has volumeBindingMode as 'WaitForFirstConsumer'
2021-04-29 12:16:12 -07:00
Ravikiran Singh
2cad8da61c PV provisioning fails when storageclass has volumeBindingMode as 'WaitForFirstConsumer':
1. Adds RBAC permissions to get nodes in the cluster.
2. Bumps the chart version
2021-04-28 13:03:50 +05:30
Kubernetes Prow Robot
7947697c42 Merge pull request #72 from yonatankahana/chart-labels-and-annotations
Helm chart labels and annotations and add missing image pull secrets in documentation
2021-04-23 06:24:02 -07:00
Yonatan Kahana
1cafa67771 Merge branch 'master' of https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner into chart-labels-and-annotations 2021-04-22 14:44:40 +03:00
Kubernetes Prow Robot
48e51b160c Merge pull request #89 from yonatankahana/promoted-4.0.2
Update image location after v4.0.2 promoted from the temporary staging repository
2021-04-14 09:36:40 -07:00
Yonatan Kahana
9a5d466349 Update image location after v4.0.2 promoted from the temporary staging repository
Signed-off-by: Yonatan Kahana <yonatankahana.il@gmail.com>
2021-04-14 15:01:34 +03:00
yonatankahana
466cf8be73 Update storageclass.yaml to include annotations even when defaultClass is false
Co-authored-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>
2021-04-13 18:04:36 +03:00
Yonatan Kahana
172cab36f1 Merge branch 'chart-labels-and-annotations' of github.com:yonatankahana/nfs-subdir-external-provisioner into chart-labels-and-annotations 2021-04-07 19:15:18 +03:00
Yonatan Kahana
a3f57e1527 Merge branch 'master' of github.com:kubernetes-sigs/nfs-subdir-external-provisioner into chart-labels-and-annotations 2021-04-07 19:15:01 +03:00
Kubernetes Prow Robot
eae7143d98 Merge pull request #83 from MiaoZhou/fixEmptyCustomPath
prevent mounting of root directory
2021-04-01 22:16:11 -07:00
Kubernetes Prow Robot
888d6dbd39 Merge pull request #82 from yonatankahana/v4.0.2-prep
Bump version to 4.0.2
2021-04-01 22:10:11 -07:00
zhoumiao
b8e203661b prevent mounting of root directory
If storageClass enable pathPattern like:

`pathPattern: "${.PVC.annotations.nfs.io/storage-path}"`

but pvc without annotation would make empty `customPath` and create a pv with nfs root path.
2021-03-31 21:23:20 +08:00
Yonatan Kahana
cadce2dbc9 Bump version to 4.0.2
Signed-off-by: Yonatan Kahana <yonatankahana.il@gmail.com>
2021-03-30 11:04:36 +03:00
yonatankahana
012a016471 Update charts/nfs-subdir-external-provisioner/templates/_helpers.tpl
Co-authored-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>
2021-03-22 16:48:19 +02:00
Yonatan Kahana
c53f80160a Use selectorLabels in deployment pod template
Signed-off-by: Yonatan Kahana <yonatankahana.il@gmail.com>
2021-03-17 19:03:49 +02:00
Yonatan Kahana
a5117cbedb Helm chart labels and annotations and add missing image pull secrets in documentation
Signed-off-by: Yonatan Kahana <yonatankahana.il@gmail.com>
2021-03-12 00:34:45 +02:00
Yonatan Kahana
681319b3bd Merge branch 'master' of github.com:kubernetes-sigs/nfs-subdir-external-provisioner into chart-labels-and-annotations 2021-03-12 00:31:02 +02:00
Yonatan Kahana
74123487f2 Helm chart labels and annotations support
Signed-off-by: Yonatan Kahana <yonatankahana.il@gmail.com>
2021-03-12 00:28:49 +02:00
21 changed files with 118 additions and 80 deletions

View File

@@ -1,5 +1,7 @@
# v4.0.1 # v4.0.2
- Add arm7 (32bit) support (https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/pull/58) - Add arm7 (32bit) support (https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/pull/58)
# v4.0.1
- Preserve name of the PV directory name during archiving (https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/pull/59) - Preserve name of the PV directory name during archiving (https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/pull/59)
# v4.0.0 # v4.0.0

View File

@@ -90,7 +90,7 @@ spec:
serviceAccountName: nfs-client-provisioner serviceAccountName: nfs-client-provisioner
containers: containers:
- name: nfs-client-provisioner - name: nfs-client-provisioner
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.1 image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
volumeMounts: volumeMounts:
- name: nfs-client-root - name: nfs-client-root
mountPath: /persistentvolumes mountPath: /persistentvolumes

View File

@@ -1,9 +1,9 @@
apiVersion: v1 apiVersion: v1
appVersion: 4.0.1 appVersion: 4.0.2
description: nfs-subdir-external-provisioner is an automatic provisioner that used your *already configured* NFS server, automatically creating Persistent Volumes. description: nfs-subdir-external-provisioner is an automatic provisioner that used your *already configured* NFS server, automatically creating Persistent Volumes.
name: nfs-subdir-external-provisioner name: nfs-subdir-external-provisioner
home: https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner home: https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
version: 4.0.6 version: 4.0.10
kubeVersion: ">=1.9.0-0" kubeVersion: ">=1.9.0-0"
sources: sources:
- https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner - https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner

View File

@@ -48,32 +48,37 @@ The command removes all the Kubernetes components associated with the chart and
The following tables lists the configurable parameters of this chart and their default values. The following tables lists the configurable parameters of this chart and their default values.
| Parameter | Description | Default | | Parameter | Description | Default |
| ----------------------------------- | ----------------------------------------------------------- | ------------------------------------------------- | | ----------------------------------- | ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| `replicaCount` | Number of provisioner instances to deployed | `1` | | `replicaCount` | Number of provisioner instances to deployed | `1` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` | | `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `image.repository` | Provisioner image | `gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner` | | `image.repository` | Provisioner image | `k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner` |
| `image.tag` | Version of provisioner image | `v4.0.1` | | `image.tag` | Version of provisioner image | `v4.0.2` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` | | `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `storageClass.name` | Name of the storageClass | `nfs-client` | | `imagePullSecrets` | Image pull secrets | `[]` |
| `storageClass.defaultClass` | Set as the default StorageClass | `false` | | `storageClass.name` | Name of the storageClass | `nfs-client` |
| `storageClass.allowVolumeExpansion` | Allow expanding the volume | `true` | | `storageClass.defaultClass` | Set as the default StorageClass | `false` |
| `storageClass.reclaimPolicy` | Method used to reclaim an obsoleted volume | `Delete` | | `storageClass.allowVolumeExpansion` | Allow expanding the volume | `true` |
| `storageClass.provisionerName` | Name of the provisionerName | null | | `storageClass.reclaimPolicy` | Method used to reclaim an obsoleted volume | `Delete` |
| `storageClass.archiveOnDelete` | Archive PVC when deleting | `true` | | `storageClass.provisionerName` | Name of the provisionerName | null |
| `storageClass.onDelete` | Strategy on PVC deletion. Overrides `archiveOnDelete` when set to lowercase values `delete` or `retain` | null | | `storageClass.archiveOnDelete` | Archive PVC when deleting | `true` |
| `storageClass.pathPattern` | Specifies a template for the directory name | null | | `storageClass.onDelete` | Strategy on PVC deletion. Overrides archiveOnDelete when set to lowercase values 'delete' or 'retain' | null |
| `storageClass.accessModes` | Set access mode for PV | `ReadWriteOnce` | | `storageClass.pathPattern` | Specifies a template for the directory name | null |
| `leaderElection.enabled` | Enables or disables leader election | `true` | | `storageClass.accessModes` | Set access mode for PV | `ReadWriteOnce` |
| `nfs.server` | Hostname of the NFS server (required) | null (ip or hostname) | | `storageClass.annotations` | Set additional annotations for the StorageClass | `{}` |
| `nfs.path` | Basepath of the mount point to be used | `/nfs-storage` | | `leaderElection.enabled` | Enables or disables leader election | `true` |
| `nfs.mountOptions` | Mount options (e.g. 'nfsvers=3') | null | | `nfs.server` | Hostname of the NFS server (required) | null (ip or hostname) |
| `resources` | Resources required (e.g. CPU, memory) | `{}` | | `nfs.path` | Basepath of the mount point to be used | `/nfs-storage` |
| `rbac.create` | Use Role-based Access Control | `true` | | `nfs.mountOptions` | Mount options (e.g. 'nfsvers=3') | null |
| `podSecurityPolicy.enabled` | Create & use Pod Security Policy resources | `false` | | `resources` | Resources required (e.g. CPU, memory) | `{}` |
| `priorityClassName` | Set pod priorityClassName | null | | `rbac.create` | Use Role-based Access Control | `true` |
| `serviceAccount.create` | Should we create a ServiceAccount | `true` | | `podSecurityPolicy.enabled` | Create & use Pod Security Policy resources | `false` |
| `serviceAccount.name` | Name of the ServiceAccount to use | null | | `podAnnotations` | Additional annotations for the Pods | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` | | `priorityClassName` | Set pod priorityClassName | null |
| `affinity` | Affinity settings | `{}` | | `serviceAccount.create` | Should we create a ServiceAccount | `true` |
| `tolerations` | List of node taints to tolerate | `[]` | | `serviceAccount.name` | Name of the ServiceAccount to use | null |
| `serviceAccount.annotations` | Additional annotations for the ServiceAccount | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `affinity` | Affinity settings | `{}` |
| `tolerations` | List of node taints to tolerate | `[]` |
| `labels` | Additional labels for any resource created | `{}` |

View File

@@ -60,3 +60,23 @@ Return the appropriate apiVersion for podSecurityPolicy.
{{- print "extensions/v1beta1" -}} {{- print "extensions/v1beta1" -}}
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Common labels
*/}}
{{- define "nfs-subdir-external-provisioner.labels" -}}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
{{ include "nfs-subdir-external-provisioner.selectorLabels" . }}
{{- with .Values.labels }}
{{- toYaml . | nindent 0 }}
{{- end }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "nfs-subdir-external-provisioner.selectorLabels" -}}
app: {{ template "nfs-subdir-external-provisioner.name" . }}
release: {{ .Release.Name }}
{{- end }}

View File

@@ -3,12 +3,12 @@ kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}-runner name: {{ template "nfs-subdir-external-provisioner.fullname" . }}-runner
rules: rules:
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list", "watch"]
- apiGroups: [""] - apiGroups: [""]
resources: ["persistentvolumes"] resources: ["persistentvolumes"]
verbs: ["get", "list", "watch", "create", "delete"] verbs: ["get", "list", "watch", "create", "delete"]

View File

@@ -3,10 +3,7 @@ kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: run-{{ template "nfs-subdir-external-provisioner.fullname" . }} name: run-{{ template "nfs-subdir-external-provisioner.fullname" . }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount

View File

@@ -3,27 +3,25 @@ kind: Deployment
metadata: metadata:
name: {{ template "nfs-subdir-external-provisioner.fullname" . }} name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
spec: spec:
replicas: {{ .Values.replicaCount }} replicas: {{ .Values.replicaCount }}
strategy: strategy:
type: {{ .Values.strategyType }} type: {{ .Values.strategyType }}
selector: selector:
matchLabels: matchLabels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.selectorLabels" . | nindent 6 }}
release: {{ .Release.Name }}
template: template:
metadata: metadata:
annotations: annotations:
{{- with .Values.podAnnotations }}
{{- toYaml . | nindent 8 }}
{{- end }}
{{- if and (.Values.tolerations) (semverCompare "<1.6-0" .Capabilities.KubeVersion.GitVersion) }} {{- if and (.Values.tolerations) (semverCompare "<1.6-0" .Capabilities.KubeVersion.GitVersion) }}
scheduler.alpha.kubernetes.io/tolerations: '{{ toJson .Values.tolerations }}' scheduler.alpha.kubernetes.io/tolerations: '{{ toJson .Values.tolerations }}'
{{- end }} {{- end }}
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.selectorLabels" . | nindent 8 }}
release: {{ .Release.Name }}
spec: spec:
serviceAccountName: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }} serviceAccountName: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
{{- if .Values.nodeSelector }} {{- if .Values.nodeSelector }}
@@ -37,9 +35,9 @@ spec:
{{- if .Values.priorityClassName }} {{- if .Values.priorityClassName }}
priorityClassName: {{ .Values.priorityClassName | quote }} priorityClassName: {{ .Values.priorityClassName | quote }}
{{- end }} {{- end }}
{{- if .Values.imagePullSecrets }} {{- with .Values.imagePullSecrets }}
imagePullSecrets: imagePullSecrets:
{{ toYaml .Values.imagePullSecrets | indent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
containers: containers:
- name: {{ .Chart.Name }} - name: {{ .Chart.Name }}

View File

@@ -4,6 +4,7 @@ kind: PersistentVolume
metadata: metadata:
name: pv-{{ template "nfs-subdir-external-provisioner.fullname" . }} name: pv-{{ template "nfs-subdir-external-provisioner.fullname" . }}
labels: labels:
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
nfs-subdir-external-provisioner: {{ template "nfs-subdir-external-provisioner.fullname" . }} nfs-subdir-external-provisioner: {{ template "nfs-subdir-external-provisioner.fullname" . }}
spec: spec:
capacity: capacity:

View File

@@ -3,6 +3,8 @@ kind: PersistentVolumeClaim
apiVersion: v1 apiVersion: v1
metadata: metadata:
name: pvc-{{ template "nfs-subdir-external-provisioner.fullname" . }} name: pvc-{{ template "nfs-subdir-external-provisioner.fullname" . }}
labels:
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
spec: spec:
accessModes: accessModes:
- {{ .Values.storageClass.accessModes }} - {{ .Values.storageClass.accessModes }}

View File

@@ -4,10 +4,7 @@ kind: PodSecurityPolicy
metadata: metadata:
name: {{ template "nfs-subdir-external-provisioner.fullname" . }} name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
spec: spec:
privileged: false privileged: false
allowPrivilegeEscalation: false allowPrivilegeEscalation: false

View File

@@ -3,10 +3,7 @@ kind: Role
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }} name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
rules: rules:
- apiGroups: [""] - apiGroups: [""]

View File

@@ -3,10 +3,7 @@ kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }} name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount

View File

@@ -3,9 +3,10 @@ apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }} {{- with .Values.serviceAccount.annotations }}
heritage: {{ .Release.Service }} annotations:
release: {{ .Release.Name }} {{- toYaml . | nindent 4 }}
{{- end }}
name: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }} name: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
{{- end -}} {{- end -}}

View File

@@ -3,15 +3,15 @@ apiVersion: storage.k8s.io/v1
kind: StorageClass kind: StorageClass
metadata: metadata:
labels: labels:
app: {{ template "nfs-subdir-external-provisioner.name" . }} {{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
heritage: {{ .Release.Service }}
release: {{ .Release.Name }}
name: {{ .Values.storageClass.name }} name: {{ .Values.storageClass.name }}
{{- if .Values.storageClass.defaultClass }}
annotations: annotations:
{{- if .Values.storageClass.defaultClass }}
storageclass.kubernetes.io/is-default-class: "true" storageclass.kubernetes.io/is-default-class: "true"
{{- end }} {{- end }}
{{- with .Values.storageClass.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
provisioner: {{ template "nfs-subdir-external-provisioner.provisionerName" . }} provisioner: {{ template "nfs-subdir-external-provisioner.provisionerName" . }}
allowVolumeExpansion: {{ .Values.storageClass.allowVolumeExpansion }} allowVolumeExpansion: {{ .Values.storageClass.allowVolumeExpansion }}
reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }} reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}

View File

@@ -2,9 +2,10 @@ replicaCount: 1
strategyType: Recreate strategyType: Recreate
image: image:
repository: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner repository: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner
tag: v4.0.1 tag: v4.0.2
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
imagePullSecrets: []
nfs: nfs:
server: server:
@@ -47,6 +48,9 @@ storageClass:
# Set access mode - ReadWriteOnce, ReadOnlyMany or ReadWriteMany # Set access mode - ReadWriteOnce, ReadOnlyMany or ReadWriteMany
accessModes: ReadWriteOnce accessModes: ReadWriteOnce
# Storage class annotations
annotations: {}
leaderElection: leaderElection:
# When set to false leader election will be disabled # When set to false leader election will be disabled
enabled: true enabled: true
@@ -61,6 +65,9 @@ rbac:
podSecurityPolicy: podSecurityPolicy:
enabled: false enabled: false
# Deployment pod annotations
podAnnotations: {}
## Set pod priorityClassName ## Set pod priorityClassName
# priorityClassName: "" # priorityClassName: ""
@@ -68,6 +75,9 @@ serviceAccount:
# Specifies whether a ServiceAccount should be created # Specifies whether a ServiceAccount should be created
create: true create: true
# Annotations to add to the service account
annotations: {}
# The name of the ServiceAccount to use. # The name of the ServiceAccount to use.
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: name:
@@ -85,3 +95,6 @@ nodeSelector: {}
tolerations: [] tolerations: []
affinity: {} affinity: {}
# Additional labels for any resource created
labels: {}

View File

@@ -104,8 +104,10 @@ func (p *nfsProvisioner) Provision(ctx context.Context, options controller.Provi
pathPattern, exists := options.StorageClass.Parameters["pathPattern"] pathPattern, exists := options.StorageClass.Parameters["pathPattern"]
if exists { if exists {
customPath := metadata.stringParser(pathPattern) customPath := metadata.stringParser(pathPattern)
path = filepath.Join(p.path, customPath) if customPath != "" {
fullPath = filepath.Join(mountPath, customPath) path = filepath.Join(p.path, customPath)
fullPath = filepath.Join(mountPath, customPath)
}
} }
glog.V(4).Infof("creating path %s", fullPath) glog.V(4).Infof("creating path %s", fullPath)

View File

@@ -21,7 +21,7 @@ spec:
serviceAccountName: nfs-client-provisioner serviceAccountName: nfs-client-provisioner
containers: containers:
- name: nfs-client-provisioner - name: nfs-client-provisioner
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.1 image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
volumeMounts: volumeMounts:
- name: nfs-client-root - name: nfs-client-root
mountPath: /persistentvolumes mountPath: /persistentvolumes

View File

@@ -3,6 +3,9 @@ apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
name: nfs-client-provisioner-runner name: nfs-client-provisioner-runner
rules: rules:
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list", "watch"]
- apiGroups: [""] - apiGroups: [""]
resources: ["persistentvolumes"] resources: ["persistentvolumes"]
verbs: ["get", "list", "watch", "create", "delete"] verbs: ["get", "list", "watch", "create", "delete"]

View File

@@ -14,7 +14,7 @@ spec:
serviceAccountName: nfs-client-provisioner serviceAccountName: nfs-client-provisioner
containers: containers:
- name: nfs-client-provisioner - name: nfs-client-provisioner
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.1 image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
volumeMounts: volumeMounts:
- name: nfs-client-root - name: nfs-client-root
mountPath: /persistentvolumes mountPath: /persistentvolumes

View File

@@ -10,6 +10,9 @@ apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
name: nfs-client-provisioner-runner name: nfs-client-provisioner-runner
rules: rules:
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list", "watch"]
- apiGroups: [""] - apiGroups: [""]
resources: ["persistentvolumes"] resources: ["persistentvolumes"]
verbs: ["get", "list", "watch", "create", "delete"] verbs: ["get", "list", "watch", "create", "delete"]