democratic-csi/examples
Claude a04d5eebe6
Refactor to TrueNAS SCALE 25.04+ WebSocket JSON-RPC API only
BREAKING CHANGES:
- Removed support for all systems except TrueNAS SCALE 25.04+
- Removed SSH-based driver (FreeNASSshDriver) and all SSH functionality
- Removed legacy HTTP REST API support (API v1.0 and v2.0)
- Removed generic ZFS, Synology, and other non-TrueNAS drivers
- Migrated to WebSocket JSON-RPC 2.0 protocol exclusively

Changes:
- Implemented new WebSocket JSON-RPC client using 'ws' package
- Completely rewrote API wrapper (reduced from 4,469 to 468 lines)
- Removed all legacy version detection and compatibility code
- Updated driver factory to only support truenas-nfs, truenas-iscsi, truenas-nvmeof
- Removed ssh2 and axios dependencies, added ws dependency
- Deleted 22 example configuration files for unsupported systems
- Deleted 15 driver implementation files for unsupported systems

The new implementation provides a clean, modern interface to TrueNAS SCALE
using versioned JSON-RPC over WebSocket (/api/current endpoint).

API methods now use direct JSON-RPC calls:
- pool.dataset.* for dataset operations
- zfs.snapshot.* for snapshot operations
- iscsi.* for iSCSI configuration (to be implemented)
- sharing.nfs.* for NFS shares (to be implemented)
- nvmet.* for NVMe-oF (to be implemented)
2025-11-24 18:58:36 +00:00
..
controller-common.yaml objectivefs examples, add new csi-proto versions 2024-03-03 17:12:42 -07:00
freenas-api-iscsi.yaml update scale nvmet script, implement unsupported deleteStrategy 2024-03-02 21:38:53 -07:00
freenas-api-nfs.yaml warning about removing / commenting out detachedSnapshotsDatasetParentName option 2023-02-09 17:53:21 +01:00
freenas-api-smb.yaml warning about removing / commenting out detachedSnapshotsDatasetParentName option 2023-02-09 17:53:21 +01:00
node-common.yaml support csi.access_modes, dep bumps 2022-10-17 21:26:21 -06:00
private.yaml update scale nvmet script, implement unsupported deleteStrategy 2024-03-02 21:38:53 -07:00