UNPKG

jmms

Version:

Jmms cli tools, Jmms is a java meta-micro-service framework

68 lines (62 loc) 2.11 kB
const _ = require('lodash'); const utils = require('../../utils'); const log = require('../../log'); const chalk = require('chalk'); const BaseGenerator = require('../base'); module.exports = class extends BaseGenerator { constructor(args, opts) { super(args, opts); } run() { const db = this.app.db; if(!db || _.isEmpty(db)) { log.error('Db config not found at ' + this.app.configPath + ', can\'t drop the database!'); process.exit(1); } this._runJavaCli((cli) => { this._doClean(cli, db); }); } _doClean(cli, db){ cli.exec('db.validate', db, (err, url) => { if(err) { return; } return this.prompt([ { type: 'confirm', name: 'yes', message: "WARNING!!! The command will drops the database '" + chalk.yellow(url) + "', are you sure to continue?", default: false } ]) .then((ans) => { console.log('\n'); if(ans.yes === true) { return this.prompt([ { type: 'confirm', name: 'yes', message: "Dropping database '" + chalk.yellow(url) + "', continue?", default: false } ]) .then((ans) => { if(ans.yes) { cli.exec('db.drop', db, (err, url) => { if(err) { return; } log.info("Drop database done!"); }); }else { process.exit(0); } }) }else { process.exit(0); } }); }); }; };