initial xfs support
This commit is contained in:
+7
-1
@@ -54,6 +54,7 @@ function validateMountOptions(type, options) {
|
||||
if (typeof options.remoteDir !== 'string') return new BoxError(BoxError.BAD_FIELD, 'remoteDir is not a string');
|
||||
return null;
|
||||
case 'ext4':
|
||||
case 'xfs':
|
||||
if (typeof options.diskPath !== 'string') return new BoxError(BoxError.BAD_FIELD, 'diskPath is not a string');
|
||||
return null;
|
||||
default:
|
||||
@@ -62,7 +63,7 @@ function validateMountOptions(type, options) {
|
||||
}
|
||||
|
||||
function isManagedProvider(provider) {
|
||||
return provider === 'sshfs' || provider === 'cifs' || provider === 'nfs' || provider === 'ext4';
|
||||
return provider === 'sshfs' || provider === 'cifs' || provider === 'nfs' || provider === 'ext4' || provider === 'xfs';
|
||||
}
|
||||
|
||||
function mountObjectFromBackupConfig(backupConfig) {
|
||||
@@ -108,6 +109,11 @@ function renderMountFile(mount) {
|
||||
what = mountOptions.diskPath; // like /dev/disk/by-uuid/uuid or /dev/disk/by-id/scsi-id
|
||||
options = 'discard,defaults,noatime';
|
||||
break;
|
||||
case 'xfs':
|
||||
type = 'xfs';
|
||||
what = mountOptions.diskPath; // like /dev/disk/by-uuid/uuid or /dev/disk/by-id/scsi-id
|
||||
options = 'discard,defaults,noatime';
|
||||
break;
|
||||
case 'sshfs': {
|
||||
const keyFilePath = path.join(paths.SSHFS_KEYS_DIR, `id_rsa_${mountOptions.host}`);
|
||||
if (!safe.fs.writeFileSync(keyFilePath, `${mount.mountOptions.privateKey}\n`, { mode: 0o600 })) throw new BoxError(BoxError.FS_ERROR, `Could not write private key: ${safe.error.message}`);
|
||||
|
||||
Reference in New Issue
Block a user