41 lines
1.2 KiB
JavaScript
Executable file
41 lines
1.2 KiB
JavaScript
Executable file
|
|
// Source: https://stackoverflow.com/a/22185855/9084561
|
|
|
|
const fs = require("fs")
|
|
const path = require("path")
|
|
|
|
/**
|
|
* Look ma, it's cp -R.
|
|
* @param {string} src The path to the thing to copy.
|
|
* @param {string} dest The path to the new copy.
|
|
*/
|
|
var copyRecursiveSync = function(src, dest) {
|
|
var exists = fs.existsSync(src);
|
|
var stats = exists && fs.statSync(src);
|
|
var isDirectory = exists && stats.isDirectory();
|
|
if (isDirectory) {
|
|
fs.mkdirSync(dest, { recursive: true });
|
|
fs.readdirSync(src).forEach(function(childItemName) {
|
|
copyRecursiveSync(path.join(src, childItemName),
|
|
path.join(dest, childItemName));
|
|
});
|
|
} else {
|
|
fs.copyFileSync(src, dest, fs.constants.COPYFILE_FICLONE);
|
|
}
|
|
};
|
|
|
|
// Define sources and destinations for both themes named "casper" and "source".
|
|
let sourcePath = ("/var/lib/ghost/content.orig/themes/");
|
|
let destinationPath = ("/var/lib/ghost/content/themes");
|
|
|
|
// Wrap the function in a try/catch block to handle any errors.
|
|
try {
|
|
copyRecursiveSync(sourcePath, destinationPath)
|
|
console.log("Copy successful!");
|
|
}
|
|
catch (error) {
|
|
console.error("Error copying files: ", error);
|
|
}
|
|
|
|
// Run Ghost from the current version.
|
|
require("./index.js");
|