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