Skip to main content

Node Service

Node service implements CSI Node API in pkg/driver/node.go.

Key methods

NodeStageVolume(ctx, req) (*csi.NodeStageVolumeResponse, error)

  • prepares staged path,
  • fetches or materializes volume content locally,
  • validates mount/input arguments.

NodePublishVolume(ctx, req) (*csi.NodePublishVolumeResponse, error)

  • publishes staged content into pod target path,
  • supports mount semantics and read-only behavior.

NodeUnpublishVolume(ctx, req) (*csi.NodeUnpublishVolumeResponse, error)

  • unmounts and cleans target path.

NodeExpandVolume(ctx, req) (*csi.NodeExpandVolumeResponse, error)

  • performs node-side filesystem resize where required.

Important behavior

  • destination directories are cleaned before exporting content to avoid stale-file collisions.
  • path handling is defensive to maintain idempotent publish flows across retries.

Typical error classes

  • invalid path/arguments,
  • mount failures from node environment,
  • IPFS fetch/export failures.