k8s.io/kubernetes@v1.31.0-alpha.0.0.20240520171757-56147500dadc/test/e2e/testing-manifests/storage-csi/mock/csi-mock-proxy.yaml (about) 1 kind: StatefulSet 2 apiVersion: apps/v1 3 metadata: 4 name: csi-mockplugin 5 spec: 6 selector: 7 matchLabels: 8 app: csi-mockplugin 9 replicas: 1 10 template: 11 metadata: 12 labels: 13 app: csi-mockplugin 14 spec: 15 serviceAccountName: csi-mock 16 containers: 17 - name: csi-provisioner 18 image: registry.k8s.io/sig-storage/csi-provisioner:v4.0.0 19 args: 20 - "--csi-address=$(ADDRESS)" 21 # Topology support is needed for the pod rescheduling test 22 # ("storage capacity" in csi_mock_volume.go). 23 - "--feature-gates=Topology=true" 24 - "-v=5" 25 - "--timeout=1m" 26 # Needed for fsGroup support. 27 - "--default-fstype=ext4" 28 # We don't need much concurrency and having many gouroutines 29 # makes klog.Fatal during shutdown very long. 30 - "--worker-threads=5" 31 env: 32 - name: ADDRESS 33 value: /csi/csi.sock 34 volumeMounts: 35 - mountPath: /csi 36 name: socket-dir 37 - name: driver-registrar 38 image: registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.0 39 args: 40 - --v=5 41 - --csi-address=/csi/csi.sock 42 - --kubelet-registration-path=/var/lib/kubelet/plugins/csi-mock/csi.sock 43 - --timeout=1m 44 env: 45 - name: KUBE_NODE_NAME 46 valueFrom: 47 fieldRef: 48 apiVersion: v1 49 fieldPath: spec.nodeName 50 volumeMounts: 51 - mountPath: /csi 52 name: socket-dir 53 - mountPath: /registration 54 name: registration-dir 55 - name: mock 56 image: registry.k8s.io/sig-storage/hostpathplugin:v1.13.0 57 args: 58 - -v=5 59 - -nodeid=$(KUBE_NODE_NAME) 60 - -endpoint=/csi/csi.sock 61 - -proxy-endpoint=tcp://:9000 62 env: 63 - name: CSI_ENDPOINT 64 value: /csi/csi.sock 65 - name: KUBE_NODE_NAME 66 valueFrom: 67 fieldRef: 68 apiVersion: v1 69 fieldPath: spec.nodeName 70 ports: 71 - containerPort: 9000 72 name: socat 73 volumeMounts: 74 - mountPath: /csi 75 name: socket-dir 76 # The busybox container is needed for running shell commands which 77 # test for directories or create them. It needs additional privileges 78 # for that. 79 - name: busybox 80 image: registry.k8s.io/e2e-test-images/busybox:1.29-2 81 securityContext: 82 privileged: true 83 command: 84 - sleep 85 - "100000" 86 volumeMounts: 87 - mountPath: /var/lib/kubelet/pods 88 name: kubelet-pods-dir 89 - mountPath: /var/lib/kubelet/plugins/kubernetes.io/csi 90 name: kubelet-csi-dir 91 volumes: 92 - hostPath: 93 path: /var/lib/kubelet/plugins/csi-mock 94 type: DirectoryOrCreate 95 name: socket-dir 96 - hostPath: 97 path: /var/lib/kubelet/pods 98 type: Directory 99 # mock driver doesn't make mounts and therefore doesn't need mount propagation. 100 # mountPropagation: Bidirectional 101 name: kubelet-pods-dir 102 - hostPath: 103 path: /var/lib/kubelet/plugins/kubernetes.io/csi 104 type: DirectoryOrCreate 105 name: kubelet-csi-dir 106 - hostPath: 107 path: /var/lib/kubelet/plugins_registry 108 type: Directory 109 name: registration-dir