@plutonhq/core-backend 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyFiles.d.ts","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,QAAA,MAAM,SAAS,GACd,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,kBAAiB,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,OAAkB,KACxE,OAAO,CAAC,IAAI,CAMd,CAAC;
|
|
1
|
+
{"version":3,"file":"copyFiles.d.ts","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,QAAA,MAAM,SAAS,GACd,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,kBAAiB,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,OAAkB,KACxE,OAAO,CAAC,IAAI,CAMd,CAAC;AAiSF,eAAe,SAAS,CAAC"}
|
package/dist/utils/copyFiles.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{spawn}from"child_process";import{access,constants}from"fs/promises";const copyFilesWindows=(sourcePath,destinationPath,overwritePolicy="always")=>{const robocopyArgsList=[sourcePath,destinationPath,"/E"];switch(overwritePolicy){case"always":robocopyArgsList.push("/COPY:DAT","/W:1","/R:1");break;case"if-changed":robocopyArgsList.push("/XO","/XC");break;case"if-newer":robocopyArgsList.push("/XO");break;case"never":robocopyArgsList.push("/XC","/XN","/XO")}const psCommand=`\n $ErrorActionPreference = 'Stop'\n try {\n $process = Start-Process robocopy -ArgumentList ${robocopyArgsList.map(arg=>`"${arg.replace(/"/g,'`"')}"`).join(", ")} -Verb runas -PassThru -Wait;\n if ($null -ne $process) {\n exit $process.ExitCode\n } else {\n Write-Error "Failed to start robocopy process or UAC was denied."\n exit 2001\n }\n } catch {\n Write-Error "PowerShell script failed: $($_.Exception.Message)"\n exit 2000\n }\n `;return new Promise((resolve,reject)=>{const subprocess=spawn("powershell.exe",["-NoProfile","-NoLogo","-Command",psCommand],{stdio:["ignore","pipe","pipe"]});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start PowerShell process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;stderrData.trim()&&(errorMessage+=`\nPowerShell Stderr: ${stderrData.trim()}`),null!==code&&(stdoutData.trim()&&(code>=8||16===code)&&(errorMessage+=`\nPowerShell Stdout: ${stdoutData.trim()}`),2e3===code?errorMessage=`PowerShell script execution failed (code ${code}). Details: ${stderrData.trim()||stdoutData.trim()}`:2001===code&&(errorMessage=`Failed to get Robocopy process object (code ${code}), UAC might have been denied. Details: ${stderrData.trim()||stdoutData.trim()}`)),reject(new Error(errorMessage))}})})},copyFilesUnix=async(copyFrom,restorePath,overwritePolicy="always")=>{try{await access(restorePath,constants.F_OK)}catch{throw new Error(`Restore path does not exist: ${restorePath}`)}const rsyncArgs=["-a","--progress"];switch(overwritePolicy){case"always":break;case"if-changed":rsyncArgs.push("--checksum");break;case"if-newer":rsyncArgs.push("--update");break;case"never":rsyncArgs.push("--ignore-existing")}const normalizedSource=restorePath.endsWith("/")?restorePath:restorePath+"/";return rsyncArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("rsync",rsyncArgs,{stdio:"inherit"});subprocess.on("error",err=>{if(err.message.includes("ENOENT"))return copyFilesUnixFallback(copyFrom,restorePath,overwritePolicy).then(resolve).catch(reject);reject(new Error(`Failed to start rsync: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`rsync failed with code ${code}`))})})},copyFilesUnixFallback=(copyFrom,restorePath,overwritePolicy="always")=>{const cpArgs=["-R"];switch(overwritePolicy){case"always":cpArgs.push("-f");break;case"if-changed":case"if-newer":cpArgs.push("-u");break;case"never":cpArgs.push("-n")}const normalizedSource=restorePath.endsWith("/")?restorePath+".":restorePath+"/.";return cpArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("cp",cpArgs,{stdio:"inherit"});subprocess.on("error",err=>{reject(new Error(`Failed to start cp: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`cp failed with code ${code}`))})})};export default(copyFrom,copyTo,overwritePolicy="always")=>"win32"===process.platform?copyFilesWindows(copyFrom,copyTo,overwritePolicy):copyFilesUnix(copyFrom,copyTo,overwritePolicy);
|
|
1
|
+
import{spawn}from"child_process";import{access,constants}from"fs/promises";const copyFilesWindows=(sourcePath,destinationPath,overwritePolicy="always")=>{const isPkg=process.pkg,robocopyArgsList=[sourcePath,destinationPath,"/E"];switch(overwritePolicy){case"always":robocopyArgsList.push("/COPY:DAT","/W:1","/R:1");break;case"if-changed":robocopyArgsList.push("/XO","/XC");break;case"if-newer":robocopyArgsList.push("/XO");break;case"never":robocopyArgsList.push("/XC","/XN","/XO")}return isPkg?copyFilesWindowsDirect(robocopyArgsList):copyFilesWindowsWithUAC(robocopyArgsList)},copyFilesWindowsDirect=robocopyArgsList=>new Promise((resolve,reject)=>{const subprocess=spawn("robocopy",robocopyArgsList,{stdio:["ignore","pipe","pipe"],shell:!0});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start robocopy process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;16===code?errorMessage+=" Serious error - this may indicate permission issues, invalid paths, or insufficient disk space.":null!==code&&code>=8&&(errorMessage+=" Some files could not be copied due to errors."),stderrData.trim()&&(errorMessage+=`\nStderr: ${stderrData.trim()}`),stdoutData.trim()&&(errorMessage+=`\nOutput: ${stdoutData.trim()}`),reject(new Error(errorMessage))}})}),copyFilesWindowsWithUAC=robocopyArgsList=>{const psCommand=`\n $ErrorActionPreference = 'Stop'\n try {\n $process = Start-Process robocopy -ArgumentList ${robocopyArgsList.map(arg=>`"${arg.replace(/"/g,'`"')}"`).join(", ")} -Verb runas -PassThru -Wait;\n if ($null -ne $process) {\n exit $process.ExitCode\n } else {\n Write-Error "Failed to start robocopy process or UAC was denied."\n exit 2001\n }\n } catch {\n Write-Error "PowerShell script failed: $($_.Exception.Message)"\n exit 2000\n }\n `;return new Promise((resolve,reject)=>{const subprocess=spawn("powershell.exe",["-NoProfile","-NoLogo","-Command",psCommand],{stdio:["ignore","pipe","pipe"]});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start PowerShell process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;stderrData.trim()&&(errorMessage+=`\nPowerShell Stderr: ${stderrData.trim()}`),null!==code&&(stdoutData.trim()&&(code>=8||16===code)&&(errorMessage+=`\nPowerShell Stdout: ${stdoutData.trim()}`),2e3===code?errorMessage=`PowerShell script execution failed (code ${code}). Details: ${stderrData.trim()||stdoutData.trim()}`:2001===code&&(errorMessage=`Failed to get Robocopy process object (code ${code}), UAC might have been denied. Details: ${stderrData.trim()||stdoutData.trim()}`)),reject(new Error(errorMessage))}})})},copyFilesUnix=async(copyFrom,restorePath,overwritePolicy="always")=>{try{await access(restorePath,constants.F_OK)}catch{throw new Error(`Restore path does not exist: ${restorePath}`)}const rsyncArgs=["-a","--progress"];switch(overwritePolicy){case"always":break;case"if-changed":rsyncArgs.push("--checksum");break;case"if-newer":rsyncArgs.push("--update");break;case"never":rsyncArgs.push("--ignore-existing")}const normalizedSource=restorePath.endsWith("/")?restorePath:restorePath+"/";return rsyncArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("rsync",rsyncArgs,{stdio:"inherit"});subprocess.on("error",err=>{if(err.message.includes("ENOENT"))return copyFilesUnixFallback(copyFrom,restorePath,overwritePolicy).then(resolve).catch(reject);reject(new Error(`Failed to start rsync: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`rsync failed with code ${code}`))})})},copyFilesUnixFallback=(copyFrom,restorePath,overwritePolicy="always")=>{const cpArgs=["-R"];switch(overwritePolicy){case"always":cpArgs.push("-f");break;case"if-changed":case"if-newer":cpArgs.push("-u");break;case"never":cpArgs.push("-n")}const normalizedSource=restorePath.endsWith("/")?restorePath+".":restorePath+"/.";return cpArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("cp",cpArgs,{stdio:"inherit"});subprocess.on("error",err=>{reject(new Error(`Failed to start cp: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`cp failed with code ${code}`))})})};export default(copyFrom,copyTo,overwritePolicy="always")=>"win32"===process.platform?copyFilesWindows(copyFrom,copyTo,overwritePolicy):copyFilesUnix(copyFrom,copyTo,overwritePolicy);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,SAAS,GAAG,CACjB,QAAgB,EAChB,MAAc,EACd,kBAAkE,QAAQ,EAC1D,EAAE;IAClB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACP,OAAO,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACxB,UAAkB,EAAE,oDAAoD;AACxE,eAAuB,EAAE,yDAAyD;AAClF,kBAAkE,QAAQ,EAC1D,EAAE;IAClB,gEAAgE;IAChE,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,mBAAmB,GAAG,eAAe,CAAC;IAE5C,MAAM,gBAAgB,GAAG;QACxB,cAAc;QACd,mBAAmB;QACnB,
|
|
1
|
+
{"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"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"}
|