CSI Proxy is a Go library providing convenience methods to execute privileged storage operations in Windows, such as formatting and mounting volumes. A container, such as CSI node plugins, can import the CSI Proxy library to get a Go interface for storage-related Windows system calls. Since the commands executed are privileged instructions, containers must run as HostProcess containers.
Closely related functionalities are bundled as API groups that target specific areas of storage. The available API groups are
- Disk
- Filesystem
- SMB
- Volume
- iSCSI (experimental)
- System (experimental)
Recommended K8s Version: 1.23
See usage.md for detailed usage instructions, as well as a migration guide from v1.
Check out development.md for instructions to set up a development environment to run CSI Proxy.
Learn how to engage with the Kubernetes community on the community page.
You can reach the maintainers of this project at:
-
SMB CSI Driver. To see specifically how this driver is invoked, you can look at https://github.com/kubernetes-csi/csi-driver-smb/blob/master/pkg/mounter/safe_mounter_windows.go.
-
Azure File CSI Driver. See https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/pkg/mounter/safe_mounter_windows.go as an example of the invocation path
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.