Partial S3 support

This commit is contained in:
2020-08-15 13:14:44 -05:00
parent 3846c85500
commit 27aa0ae8dc
17 changed files with 588 additions and 385 deletions

View File

@@ -213,10 +213,14 @@ const _getDataDirectory = () => {
return _resolvePath(Constants.DATA_LOCATIONS[os.platform()]);
};
const _getDefaultRepertoryArgs = (provider, remote) => {
const _getDefaultRepertoryArgs = (provider, remote, s3) => {
const providerLower = provider.toLowerCase();
const args = [];
if (remote) {
if (s3) {
args.push('-s3');
args.push('-na');
args.push(provider.substr(2));
} else if (remote) {
args.push('-rm');
args.push(provider.substr(6));
} else if (Constants.PROVIDER_ARG[providerLower] && (Constants.PROVIDER_ARG[providerLower].length > 0)) {
@@ -276,7 +280,7 @@ module.exports.checkDaemonVersion = (version, provider) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, false);
const args = _getDefaultRepertoryArgs(provider);
args.push('-cv');
const process = new spawn(repertoryExec.cmd, args, processOptions);
@@ -368,7 +372,9 @@ module.exports.detectRepertoryMounts = (version, providerList) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, !Constants.PROVIDER_LIST.includes(provider));
const args = _getDefaultRepertoryArgs(provider,
!Constants.PROVIDER_LIST.includes(provider) && provider.toLowerCase().startsWith('remote'),
!Constants.PROVIDER_LIST.includes(provider) && provider.toLowerCase().startsWith('s3'));
args.push('-status');
const process = new spawn(repertoryExec.cmd, args, processOptions);
@@ -560,7 +566,7 @@ module.exports.executeScript = script => {
});
};
module.exports.executeMount = (version, provider, remote, location, exitCallback) => {
module.exports.executeMount = (version, provider, remote, s3, location, exitCallback) => {
return new Promise((resolve) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
@@ -570,7 +576,7 @@ module.exports.executeMount = (version, provider, remote, location, exitCallback
stdio: 'ignore',
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
if ((os.platform() === 'linux') || (os.platform() === 'darwin')) {
args.push('-o');
@@ -645,7 +651,7 @@ module.exports.exportSkylinks = (version, paths) => {
});
};
module.exports.getConfig = (version, provider, remote) => {
module.exports.getConfig = (version, provider, remote, s3) => {
return new Promise((resolve, reject) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
@@ -655,7 +661,7 @@ module.exports.getConfig = (version, provider, remote) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
args.push('-dc');
const process = new spawn(repertoryExec.cmd, args, processOptions);
@@ -689,7 +695,7 @@ module.exports.getConfig = (version, provider, remote) => {
});
};
module.exports.getConfigTemplate = (version, provider, remote) => {
module.exports.getConfigTemplate = (version, provider, remote, s3) => {
return new Promise((resolve, reject) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
@@ -699,7 +705,7 @@ module.exports.getConfigTemplate = (version, provider, remote) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
args.push('-gt');
const process = new spawn(repertoryExec.cmd, args, processOptions);
@@ -969,7 +975,7 @@ module.exports.removeDirectoryRecursively = _removeDirectoryRecursively;
module.exports.resolvePath = _resolvePath;
module.exports.setConfigValue = (name, value, provider, remote, version) => {
module.exports.setConfigValue = (name, value, provider, remote, s3, version) => {
return new Promise((resolve, reject) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
@@ -979,7 +985,7 @@ module.exports.setConfigValue = (name, value, provider, remote, version) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
args.push('-set');
args.push(name);
args.push(value);
@@ -998,7 +1004,7 @@ module.exports.setConfigValue = (name, value, provider, remote, version) => {
});
};
module.exports.stopMountProcess = (version, provider, remote) => {
module.exports.stopMountProcess = (version, provider, remote, s3) => {
return new Promise((resolve, reject) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
@@ -1008,7 +1014,7 @@ module.exports.stopMountProcess = (version, provider, remote) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
args.push('-unmount');
const process = new spawn(repertoryExec.cmd, args, processOptions);
@@ -1029,7 +1035,7 @@ module.exports.stopMountProcess = (version, provider, remote) => {
});
};
module.exports.stopMountProcessSync = (version, provider, remote) => {
module.exports.stopMountProcessSync = (version, provider, remote, s3) => {
const repertoryExec = _getRepertoryExec(version);
const processOptions = {
cwd: repertoryExec.working,
@@ -1038,7 +1044,7 @@ module.exports.stopMountProcessSync = (version, provider, remote) => {
windowsHide: true,
};
const args = _getDefaultRepertoryArgs(provider, remote);
const args = _getDefaultRepertoryArgs(provider, remote, s3);
args.push('-unmount');
const process = new spawn(repertoryExec.cmd, args, processOptions);