mirror of
https://github.com/nicotsx/ironmount.git
synced 2025-12-10 12:10:51 +01:00
fix: mount and unmount command not properly throwing errors
This commit is contained in:
@@ -19,7 +19,9 @@ export class CleanupDanglingMountsJob extends Job {
|
|||||||
const matchingVolume = allVolumes.find((v) => getVolumePath(v) === mount.mountPoint);
|
const matchingVolume = allVolumes.find((v) => getVolumePath(v) === mount.mountPoint);
|
||||||
if (!matchingVolume) {
|
if (!matchingVolume) {
|
||||||
logger.info(`Found dangling mount at ${mount.mountPoint}, attempting to unmount...`);
|
logger.info(`Found dangling mount at ${mount.mountPoint}, attempting to unmount...`);
|
||||||
await executeUnmount(mount.mountPoint);
|
await executeUnmount(mount.mountPoint).catch((err) => {
|
||||||
|
logger.warn(`Failed to unmount dangling mount ${mount.mountPoint}: ${toMessage(err)}`);
|
||||||
|
});
|
||||||
|
|
||||||
await fs.rmdir(path.dirname(mount.mountPoint)).catch((err) => {
|
await fs.rmdir(path.dirname(mount.mountPoint)).catch((err) => {
|
||||||
logger.warn(
|
logger.warn(
|
||||||
|
|||||||
@@ -13,6 +13,10 @@ export const executeMount = async (args: string[]): Promise<void> => {
|
|||||||
if (stderr?.trim()) {
|
if (stderr?.trim()) {
|
||||||
logger.warn(stderr.trim());
|
logger.warn(stderr.trim());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (result.exitCode !== 0) {
|
||||||
|
throw new Error(`Mount command failed with exit code ${result.exitCode}: ${stderr?.trim()}`);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const executeUnmount = async (path: string): Promise<void> => {
|
export const executeUnmount = async (path: string): Promise<void> => {
|
||||||
@@ -24,6 +28,10 @@ export const executeUnmount = async (path: string): Promise<void> => {
|
|||||||
if (stderr?.trim()) {
|
if (stderr?.trim()) {
|
||||||
logger.warn(stderr.trim());
|
logger.warn(stderr.trim());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (result.exitCode !== 0) {
|
||||||
|
throw new Error(`Mount command failed with exit code ${result.exitCode}: ${stderr?.trim()}`);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const createTestFile = async (path: string): Promise<void> => {
|
export const createTestFile = async (path: string): Promise<void> => {
|
||||||
|
|||||||
Reference in New Issue
Block a user