https://github.com/ptrvsrg/csi-driver-ipfs
CSI driver that provisions Kubernetes PersistentVolumes on top of IPFS.
https://github.com/ptrvsrg/csi-driver-ipfs
csi-driver golang helm ipfs kubernetes
Last synced: 14 days ago
JSON representation
CSI driver that provisions Kubernetes PersistentVolumes on top of IPFS.
- Host: GitHub
- URL: https://github.com/ptrvsrg/csi-driver-ipfs
- Owner: ptrvsrg
- License: apache-2.0
- Created: 2026-04-17T03:47:33.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-22T15:04:43.000Z (21 days ago)
- Last Synced: 2026-05-22T19:55:56.526Z (21 days ago)
- Topics: csi-driver, golang, helm, ipfs, kubernetes
- Language: Go
- Homepage: https://ptrvsrg.github.io/csi-driver-ipfs/
- Size: 693 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Maintainers: MAINTAINERS.md
- Dco: DCO
Awesome Lists containing this project
README
# IPFS CSI drover for Kubernetes
[](https://github.com/ptrvsrg/csi-driver-ipfs/actions/workflows/security.yml)
[](https://artifacthub.io/packages/search?repo=csi-driver-ipfs)
## About
CSI driver that provisions Kubernetes PersistentVolumes on top of [IPFS](https://ipfs.tech/).
## Quick start (Helm)
1. Install snapshot CRDs and snapshot-controller (required for snapshot restore flows).
2. Deploy IPFS backend.
3. Deploy CSI driver chart.
Example:
```bash
helm upgrade --install ipfs-cluster charts/ipfs-cluster -n ipfs --create-namespace
helm upgrade --install csi-driver-ipfs charts/csi-driver-ipfs -n csi-ipfs --create-namespace
```
## Development
### What this repository contains
- `cmd/csi-driver-ipfs`: driver entrypoint and server bootstrap.
- `pkg/driver`: CSI Controller/Node/Identity implementations.
- `pkg/ipfs`: Kubo API client used by the driver.
- `charts/csi-driver-ipfs`: Helm chart for the CSI driver.
- `charts/ipfs-cluster`: Helm chart for single-cluster IPFS deployment used by local/dev scenarios.
- `test/e2e`: end-to-end suite (Ginkgo + KUTTL).
- `docs`: Docusaurus documentation site source.
### Build and unit tests
```bash
make build/golang
make test/unit
```
### Charts
```bash
make -C charts lint/all
make -C charts test/all
```
### E2E
```bash
make -C test/e2e env/up
make -C test/e2e test/e2e
make -C test/e2e env/down
```
## Documentation site
Local docs preview:
```bash
make -C docs dev/start
```
Published docs are expected on GitHub Pages, and packaged charts/index on the same domain under `/charts`.
## Helm repository path (GitHub Pages)
When GitHub Pages publication is enabled for this repository:
- Docs root: `https://ptrvsrg.github.io/csi-driver-ipfs/`
- Helm index: `https://ptrvsrg.github.io/csi-driver-ipfs/charts/index.yaml`
Use with Helm:
```bash
helm repo add csi-driver-ipfs https://ptrvsrg.github.io/csi-driver-ipfs/charts
helm repo update
```