Title: GET /api/v2.0/system/version/
no longer includes “scale” in version string, breaking detection logic
Description: In TrueNAS SCALE Fangtooth 25.04, the API endpoint GET /api/v2.0/system/version/
returns:
"TrueNAS-25.04.0"
Previously, this version string included "scale"
(e.g., "TrueNAS-SCALE-24.10.2.1"
), which was used by external tools like democratic-csi driver to detect whether the instance is running TrueNAS SCALE.
This change breaks the getIsScale()
method in democratic-csi code:
if (!(await httpApiClient.getIsScale())) {
throw new GrpcError(
grpc.status.FAILED_PRECONDITION,
driver is only availalbe with TrueNAS SCALE
);
}
...
async getIsScale() {
const systemVersion = await this.getSystemVersion();
if (systemVersion.v2 && systemVersion.v2.toLowerCase().includes("scale")) {
return true;
}
return false;
}
As a result, errors like this are thrown:
GrpcError: driver is only availalbe with TrueNAS SCALE
Expected behavior:
- The version string should include
"scale"
again (e.g.,"TrueNAS-SCALE-25.04.0"
)
Impact:
-
Breaks CSI driver integrations that rely on version string parsing.
-
Affects automation and deployment tools.
Environment: -
TrueNAS SCALE 25.04 (Fangtooth)
-
democratic-csi integration