2022-06-09 03:44:18 +00:00
|
|
|
#!/usr/bin/env node
|
2021-09-01 05:32:08 +00:00
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
const process = require("process");
|
|
|
|
|
const utils = require("./utils");
|
|
|
|
|
const export_db = require("./export_db.js");
|
|
|
|
|
const import_db = require("./import_db.js");
|
|
|
|
|
const migrate = require("./migrate.js");
|
|
|
|
|
const check_replica_set = require("./check_replica_set.js");
|
2023-01-03 06:44:21 +00:00
|
|
|
const version = require("./version.js");
|
|
|
|
|
const mongo_shell_utils = require("./mongo_shell_utils.js");
|
2021-09-01 05:32:08 +00:00
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
const APPLICATION_CONFIG_PATH = "/appsmith-stacks/configuration/docker.env";
|
2021-09-01 05:32:08 +00:00
|
|
|
|
|
|
|
|
// Loading latest application configuration
|
2022-07-20 05:03:47 +00:00
|
|
|
require("dotenv").config({ path: APPLICATION_CONFIG_PATH });
|
2021-12-17 05:09:20 +00:00
|
|
|
|
2022-06-09 03:44:18 +00:00
|
|
|
const command = process.argv[2];
|
2022-03-24 07:27:46 +00:00
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
if (["export-db", "export_db", "ex"].includes(command)) {
|
|
|
|
|
console.log("Exporting database");
|
2022-06-09 03:44:18 +00:00
|
|
|
export_db.run();
|
2022-07-20 05:03:47 +00:00
|
|
|
console.log("Export database done");
|
2021-12-17 05:09:20 +00:00
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
if (["import-db", "import_db", "im"].includes(command)) {
|
|
|
|
|
console.log("Importing database");
|
2021-12-17 05:09:20 +00:00
|
|
|
// Get Force option flag to run import DB immediately
|
2022-07-20 05:03:47 +00:00
|
|
|
const forceOption = process.argv[3] === "-f";
|
2021-12-17 05:09:20 +00:00
|
|
|
import_db.runImportDatabase(forceOption);
|
2022-07-20 05:03:47 +00:00
|
|
|
console.log("Importing database done");
|
2021-12-17 05:09:20 +00:00
|
|
|
return;
|
2021-09-01 05:32:08 +00:00
|
|
|
}
|
|
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
if (["migrate", "mi"].includes(command) && process.argv[3]) {
|
|
|
|
|
const arrString = process.argv[3].split("@");
|
|
|
|
|
console.log("Start migrate instance");
|
2021-12-17 05:09:20 +00:00
|
|
|
migrate.runMigrate(arrString[0], arrString[1]);
|
2021-09-01 05:32:08 +00:00
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
if (["check-replica-set", "check_replica_set", "crs"].includes(command)) {
|
2022-03-10 04:46:16 +00:00
|
|
|
check_replica_set.exec();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2022-07-20 05:03:47 +00:00
|
|
|
if (["backup", "restore"].includes(command)) {
|
2022-06-09 03:44:18 +00:00
|
|
|
require(`./${command}.js`).run(process.argv.slice(3));
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-03 06:44:21 +00:00
|
|
|
if (["appsmith-version", "appsmith_version", "version"].includes(command)) {
|
|
|
|
|
version.exec();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if (["mongo-eval", "mongo_eval", "mongoEval"].includes(command)) {
|
|
|
|
|
mongo_shell_utils.exec(process.argv.slice(3));
|
|
|
|
|
return;
|
|
|
|
|
}
|
2022-07-20 05:03:47 +00:00
|
|
|
|
2021-09-01 05:32:08 +00:00
|
|
|
utils.showHelp();
|