diff --git a/apps/server/src/modules/backends/backend.ts b/apps/server/src/modules/backends/backend.ts index 07321e6..4a4e015 100644 --- a/apps/server/src/modules/backends/backend.ts +++ b/apps/server/src/modules/backends/backend.ts @@ -1,6 +1,6 @@ import type { BackendStatus } from "@ironmount/schemas"; -import { VOLUME_MOUNT_BASE } from "../../core/constants"; import type { Volume } from "../../db/schema"; +import { getVolumePath } from "../volumes/helpers"; import { makeDirectoryBackend } from "./directory/directory-backend"; import { makeNfsBackend } from "./nfs/nfs-backend"; import { makeSmbBackend } from "./smb/smb-backend"; @@ -18,7 +18,7 @@ export type VolumeBackend = { }; export const createVolumeBackend = (volume: Volume): VolumeBackend => { - const path = `${VOLUME_MOUNT_BASE}/${volume.name}/_data`; + const path = getVolumePath(volume.name); switch (volume.config.backend) { case "nfs": { diff --git a/apps/server/src/modules/driver/driver.controller.ts b/apps/server/src/modules/driver/driver.controller.ts index b00955c..9bf566f 100644 --- a/apps/server/src/modules/driver/driver.controller.ts +++ b/apps/server/src/modules/driver/driver.controller.ts @@ -1,6 +1,6 @@ import { Hono } from "hono"; -import { VOLUME_MOUNT_BASE } from "../../core/constants"; import { volumeService } from "../volumes/volume.service"; +import { getVolumePath } from "../volumes/helpers"; export const driverController = new Hono() .post("/VolumeDriver.Capabilities", (c) => { @@ -32,10 +32,8 @@ export const driverController = new Hono() const volumeName = body.Name.replace(/^im-/, ""); - const mountpoint = `${VOLUME_MOUNT_BASE}/${volumeName}/_data`; - return c.json({ - Mountpoint: mountpoint, + Mountpoint: getVolumePath(volumeName), }); }) .post("/VolumeDriver.Unmount", (c) => { @@ -53,7 +51,7 @@ export const driverController = new Hono() const { volume } = await volumeService.getVolume(body.Name.replace(/^im-/, "")); return c.json({ - Mountpoint: `${VOLUME_MOUNT_BASE}/${volume.name}/_data`, + Mountpoint: getVolumePath(volume.name), }); }) .post("/VolumeDriver.Get", async (c) => { @@ -68,7 +66,7 @@ export const driverController = new Hono() return c.json({ Volume: { Name: `im-${volume.name}`, - Mountpoint: `${VOLUME_MOUNT_BASE}/${volume.name}/_data`, + Mountpoint: getVolumePath(volume.name), Status: {}, }, Err: "", @@ -79,7 +77,7 @@ export const driverController = new Hono() const res = volumes.map((volume) => ({ Name: `im-${volume.name}`, - Mountpoint: `${VOLUME_MOUNT_BASE}/${volume.name}/_data`, + Mountpoint: getVolumePath(volume.name), Status: {}, })); diff --git a/apps/server/src/modules/volumes/volume.service.ts b/apps/server/src/modules/volumes/volume.service.ts index a3fbc83..bf28e1a 100644 --- a/apps/server/src/modules/volumes/volume.service.ts +++ b/apps/server/src/modules/volumes/volume.service.ts @@ -118,7 +118,7 @@ const getVolume = async (name: string) => { let statfs: Partial = {}; if (volume.status === "mounted") { - statfs = await getStatFs(`${VOLUME_MOUNT_BASE}/${name}/_data`).catch(() => ({})); + statfs = await getStatFs(getVolumePath(name)).catch(() => ({})); } return { volume, statfs }; diff --git a/biome.json b/biome.json index c7dc327..c8fd686 100644 --- a/biome.json +++ b/biome.json @@ -28,7 +28,7 @@ "enabled": true, "actions": { "source": { - "organizeImports": "on" + "organizeImports": "off" } } }