mirror of
https://github.com/caprover/caprover
synced 2026-08-23 07:56:28 +00:00
logout and list are now working.
This commit is contained in:
@@ -8,10 +8,10 @@ const StdOutUtil_1 = require("../utils/StdOutUtil");
|
||||
const program = require("commander");
|
||||
// Command actions
|
||||
const login_1 = require("./login");
|
||||
const list_1 = require("./list");
|
||||
const logout_1 = require("./logout");
|
||||
// import serversetup = require('./serversetup');
|
||||
// import list = require('./list');
|
||||
// import deploy = require('./deploy');
|
||||
// import logout = require('./logout');
|
||||
// Setup
|
||||
program.version(packagejson.version).description(packagejson.description);
|
||||
// Commands
|
||||
@@ -21,18 +21,18 @@ program
|
||||
.action(() => {
|
||||
login_1.default();
|
||||
});
|
||||
program.command('list').alias('ls').description('List all Captain machines currently logged in.').action(() => {
|
||||
list_1.default();
|
||||
});
|
||||
program.command('logout').description('Logout from a specific Captain machine.').action(() => {
|
||||
logout_1.default();
|
||||
});
|
||||
// program
|
||||
// .command('serversetup')
|
||||
// .description('Performs necessary actions and prepares your Captain server.')
|
||||
// .action(() => {
|
||||
// serversetup();
|
||||
// });
|
||||
// program.command('logout').description('Logout from a specific Captain machine.').action(() => {
|
||||
// logout();
|
||||
// });
|
||||
// program.command('list').alias('ls').description('List all Captain machines currently logged in.').action(() => {
|
||||
// list();
|
||||
// });
|
||||
// program
|
||||
// .command('deploy')
|
||||
// .description(
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"captainduckduck.js","sourceRoot":"","sources":["../../src/commands/captainduckduck.ts"],"names":[],"mappings":";;;AAEA,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAClD,kDAAkD;AAClD,cAAc,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAEhE,oDAA6C;AAC7C,qCAAqC;AAErC,kBAAkB;AAClB,mCAA4B;AAC5B,iDAAiD;AACjD,mCAAmC;AACnC,uCAAuC;AACvC,uCAAuC;AAEvC,QAAQ;AACR,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAE1E,WAAW;AAEX,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,+FAA+F,CAAC;KAC5G,MAAM,CAAC,GAAG,EAAE;IACZ,eAAK,EAAE,CAAC;AACT,CAAC,CAAC,CAAC;AAEJ,UAAU;AACV,2BAA2B;AAC3B,gFAAgF;AAChF,mBAAmB;AACnB,mBAAmB;AACnB,OAAO;AAEP,kGAAkG;AAClG,aAAa;AACb,MAAM;AAEN,mHAAmH;AACnH,WAAW;AACX,MAAM;AAEN,UAAU;AACV,sBAAsB;AACtB,iBAAiB;AACjB,4HAA4H;AAC5H,KAAK;AACL,mGAAmG;AACnG,wDAAwD;AACxD,sDAAsD;AACtD,yFAAyF;AACzF,gFAAgF;AAChF,kFAAkF;AAClF,4FAA4F;AAC5F,+BAA+B;AAC/B,qBAAqB;AACrB,OAAO;AAEP,4BAA4B;AAC5B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;IAC5B,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE7C,oBAAU,CAAC,UAAU,CAAC,sBAAsB,aAAa,gDAAgD,EAAE,IAAI,CAAC,CAAC;AAClH,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
||||
{"version":3,"file":"captainduckduck.js","sourceRoot":"","sources":["../../src/commands/captainduckduck.ts"],"names":[],"mappings":";;;AAEA,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAClD,kDAAkD;AAClD,cAAc,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAEhE,oDAA6C;AAC7C,qCAAqC;AAErC,kBAAkB;AAClB,mCAA4B;AAC5B,iCAA0B;AAC1B,qCAA8B;AAC9B,iDAAiD;AACjD,uCAAuC;AAEvC,QAAQ;AACR,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAE1E,WAAW;AAEX,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,+FAA+F,CAAC;KAC5G,MAAM,CAAC,GAAG,EAAE;IACZ,eAAK,EAAE,CAAC;AACT,CAAC,CAAC,CAAC;AAEJ,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;IAC7G,cAAI,EAAE,CAAC;AACR,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,yCAAyC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;IAC5F,gBAAM,EAAE,CAAC;AACV,CAAC,CAAC,CAAC;AAEH,UAAU;AACV,2BAA2B;AAC3B,gFAAgF;AAChF,mBAAmB;AACnB,mBAAmB;AACnB,OAAO;AAEP,UAAU;AACV,sBAAsB;AACtB,iBAAiB;AACjB,4HAA4H;AAC5H,KAAK;AACL,mGAAmG;AACnG,wDAAwD;AACxD,sDAAsD;AACtD,yFAAyF;AACzF,gFAAgF;AAChF,kFAAkF;AAClF,4FAA4F;AAC5F,+BAA+B;AAC/B,qBAAqB;AACrB,OAAO;AAEP,4BAA4B;AAC5B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;IAC5B,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE7C,oBAAU,CAAC,UAAU,CAAC,sBAAsB,aAAa,gDAAgD,EAAE,IAAI,CAAC,CAAC;AAClH,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
||||
Executable
+18
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env node
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const chalk_1 = require("chalk");
|
||||
const StdOutUtil_1 = require("../utils/StdOutUtil");
|
||||
const StorageHelper_1 = require("../utils/StorageHelper");
|
||||
function _displayMachine(machine) {
|
||||
console.log('>> ' + chalk_1.default.greenBright(machine.name) + ' at ' + chalk_1.default.cyan(machine.baseUrl));
|
||||
}
|
||||
function list() {
|
||||
StdOutUtil_1.default.printMessage('\nLogged in Captain Machines:\n');
|
||||
StorageHelper_1.default.get().getMachines().map((machine) => {
|
||||
_displayMachine(machine);
|
||||
});
|
||||
StdOutUtil_1.default.printMessage('');
|
||||
}
|
||||
exports.default = list;
|
||||
//# sourceMappingURL=list.js.map
|
||||
Executable
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";;;AAEA,iCAA0B;AAC1B,oDAA6C;AAC7C,0DAAmD;AAGnD,SAAS,eAAe,CAAC,OAAiB;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,eAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,IAAI;IACZ,oBAAU,CAAC,YAAY,CAAC,iCAAiC,CAAC,CAAC;IAE3D,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACjD,eAAe,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,oBAAU,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED,kBAAe,IAAI,CAAC"}
|
||||
@@ -120,7 +120,7 @@ function login() {
|
||||
baseUrl,
|
||||
name: captainName
|
||||
}).getAuthToken(captainPassword);
|
||||
StdOutUtil_1.default.printGreenMessage(`Logged in successfully to ${baseUrl}`);
|
||||
StdOutUtil_1.default.printGreenMessage(`\nLogged in successfully to ${baseUrl}`);
|
||||
StdOutUtil_1.default.printGreenMessage(`Authorization token is now saved as ${captainName} \n`);
|
||||
}
|
||||
catch (error) {
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env node
|
||||
"use strict";
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
return new (P || (P = Promise))(function (resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const inquirer = require("inquirer");
|
||||
const StdOutUtil_1 = require("../utils/StdOutUtil");
|
||||
const CliHelper_1 = require("../utils/CliHelper");
|
||||
function generateQuestions() {
|
||||
const listOfMachines = CliHelper_1.default.get().getMachinesAsOptions();
|
||||
return [
|
||||
{
|
||||
type: 'list',
|
||||
name: 'captainNameToLogout',
|
||||
message: 'Select the Captain Machine you want to logout from:',
|
||||
choices: listOfMachines
|
||||
},
|
||||
{
|
||||
type: 'confirm',
|
||||
name: 'confirmedToLogout',
|
||||
message: 'Are you sure you want to logout from this Captain machine?',
|
||||
default: false,
|
||||
when: (answers) => answers.captainNameToLogout
|
||||
}
|
||||
];
|
||||
}
|
||||
function logout() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const questions = generateQuestions();
|
||||
StdOutUtil_1.default.printMessage('Logout from a Captain Machine and clear auth info');
|
||||
const answers = yield inquirer.prompt(questions);
|
||||
const { captainNameToLogout, confirmedToLogout } = answers;
|
||||
if (!captainNameToLogout || !confirmedToLogout) {
|
||||
StdOutUtil_1.default.printMessage('\nOperation cancelled by the user...\n');
|
||||
return;
|
||||
}
|
||||
CliHelper_1.default.get().logoutMachine(captainNameToLogout);
|
||||
});
|
||||
}
|
||||
exports.default = logout;
|
||||
//# sourceMappingURL=logout.js.map
|
||||
Executable
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":";;;;;;;;;;;AAEA,qCAAqC;AACrC,oDAA6C;AAC7C,kDAA2C;AAE3C,SAAS,iBAAiB;IACzB,MAAM,cAAc,GAAG,mBAAS,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC;IAE9D,OAAO;QACN;YACC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE,cAAc;SACvB;QACD;YACC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE,4DAA4D;YACrE,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,mBAAmB;SACnD;KACD,CAAC;AACH,CAAC;AAED,SAAe,MAAM;;QACpB,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;QAEtC,oBAAU,CAAC,YAAY,CAAC,mDAAmD,CAAC,CAAC;QAE7E,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAE3D,IAAI,CAAC,mBAAmB,IAAI,CAAC,iBAAiB,EAAE;YAC/C,oBAAU,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC;YAClE,OAAO;SACP;QAED,mBAAS,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IACpD,CAAC;CAAA;AAED,kBAAe,MAAM,CAAC"}
|
||||
@@ -1,12 +1,35 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const StorageHelper_1 = require("./StorageHelper");
|
||||
const StdOutUtil_1 = require("./StdOutUtil");
|
||||
class CliHelper {
|
||||
static get() {
|
||||
if (!CliHelper.instance)
|
||||
CliHelper.instance = new CliHelper();
|
||||
return CliHelper.instance;
|
||||
}
|
||||
getMachinesAsOptions() {
|
||||
const machines = StorageHelper_1.default.get().getMachines();
|
||||
const firstItemInOption = [
|
||||
{
|
||||
name: '-- CANCEL --',
|
||||
value: '',
|
||||
short: ''
|
||||
}
|
||||
];
|
||||
const listOfMachines = machines.map((machine) => {
|
||||
return {
|
||||
name: `${machine.name} at ${machine.baseUrl}`,
|
||||
value: `${machine.name}`,
|
||||
short: `${machine.name} at ${machine.baseUrl}`
|
||||
};
|
||||
});
|
||||
return [...firstItemInOption, ...listOfMachines];
|
||||
}
|
||||
logoutMachine(machineName) {
|
||||
const removedMachine = StorageHelper_1.default.get().removeMachine(machineName);
|
||||
StdOutUtil_1.default.printMessage(`You are now logged out from ${removedMachine.name} at ${removedMachine.baseUrl}...\n`);
|
||||
}
|
||||
findDefaultCaptainName() {
|
||||
let currentSuffix = StorageHelper_1.default.get().getMachines().length + 1;
|
||||
const self = this;
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"CliHelper.js","sourceRoot":"","sources":["../../src/utils/CliHelper.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAG5C,MAAqB,SAAS;IAG7B,MAAM,CAAC,GAAG;QACT,IAAI,CAAC,SAAS,CAAC,QAAQ;YAAE,SAAS,CAAC,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;QAC9D,OAAO,SAAS,CAAC,QAAQ,CAAC;IAC3B,CAAC;IAED,sBAAsB;QACrB,IAAI,aAAa,GAAG,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;YAC1C,aAAa,EAAE,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;IAED,kBAAkB,CAAC,MAAc;QAChC,MAAM,YAAY,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAEzD,OAAO,WAAW,YAAY,EAAE,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,YAAoB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,OAAiB,EAAE,EAAE;YAC3D,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE;gBAC3D,KAAK,GAAG,KAAK,CAAC;aACd;QACF,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AApCD,4BAoCC"}
|
||||
{"version":3,"file":"CliHelper.js","sourceRoot":"","sources":["../../src/utils/CliHelper.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAE5C,6CAAsC;AAEtC,MAAqB,SAAS;IAG7B,MAAM,CAAC,GAAG;QACT,IAAI,CAAC,SAAS,CAAC,QAAQ;YAAE,SAAS,CAAC,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;QAC9D,OAAO,SAAS,CAAC,QAAQ,CAAC;IAC3B,CAAC;IAED,oBAAoB;QACnB,MAAM,QAAQ,GAAG,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;QAClD,MAAM,iBAAiB,GAAG;YACzB;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;aACT;SACD,CAAC;QACF,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC/C,OAAO;gBACN,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,EAAE;gBAC7C,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE;gBACxB,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,EAAE;aAC9C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAE,GAAG,iBAAiB,EAAE,GAAG,cAAc,CAAE,CAAC;IACpD,CAAC;IAED,aAAa,CAAC,WAAmB;QAChC,MAAM,cAAc,GAAI,uBAAa,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACvE,oBAAU,CAAE,YAAY,CAAC,+BAA+B,cAAc,CAAC,IAAI,OAAO,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;IAClH,CAAC;IAGD,sBAAsB;QACrB,IAAI,aAAa,GAAG,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;YAC1C,aAAa,EAAE,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;IAED,kBAAkB,CAAC,MAAc;QAChC,MAAM,YAAY,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAEzD,OAAO,WAAW,YAAY,EAAE,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,YAAoB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,uBAAa,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,OAAiB,EAAE,EAAE;YAC3D,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE;gBAC3D,KAAK,GAAG,KAAK,CAAC;aACd;QACF,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AA9DD,4BA8DC"}
|
||||
@@ -17,6 +17,13 @@ class StorageHelper {
|
||||
getMachines() {
|
||||
return Utils_1.default.copyObject(this.data.get(CAP_MACHINES) || []);
|
||||
}
|
||||
removeMachine(machineName) {
|
||||
const machines = this.getMachines();
|
||||
const removedMachine = machines.filter((machine) => machine.name === machineName)[0];
|
||||
const newMachines = machines.filter((machine) => machine.name !== machineName);
|
||||
this.data.set(CAP_MACHINES, newMachines);
|
||||
return removedMachine;
|
||||
}
|
||||
saveMachine(machineToSaveOrUpdate) {
|
||||
const currMachines = this.getMachines();
|
||||
let updatedMachine = false;
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"StorageHelper.js","sourceRoot":"","sources":["../../src/utils/StorageHelper.ts"],"names":[],"mappings":";;AACA,2CAA2C;AAC3C,mCAA4B;AAE5B,MAAM,YAAY,GAAG,aAAa,CAAC;AACnC,MAAM,aAAa,GAAG,cAAc,CAAC;AAErC,MAAqB,aAAa;IAGjC,MAAM,CAAC,GAAG;QACT,IAAI,CAAC,aAAa,CAAC,QAAQ;YAAE,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1E,OAAO,aAAa,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAID;QACC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACnD,qBAAqB;IACtB,CAAC;IAED,WAAW;QACV,OAAO,eAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CAAC,qBAA+B;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACzD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,qBAAqB,CAAC,IAAI,EAAE;gBAChD,cAAc,GAAG,IAAI,CAAC;gBACtB,YAAY,CAAC,KAAK,CAAC,GAAG,qBAAqB,CAAC;gBAC5C,MAAM;aACN;SACD;QAED,IAAI,CAAC,cAAc,EAAE;YACpB,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SACzC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,sBAAsB;QACrB,OAAO,eAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,qBAAqB,CAAC,uBAA2C;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC/C,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,OAAO,CAAC,GAAG,KAAK,uBAAuB,CAAC,GAAG,EAAE;gBAChD,UAAU,GAAG,IAAI,CAAC;gBAClB,QAAQ,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC;gBAC1C,MAAM;aACN;SACD;QAED,IAAI,CAAC,UAAU,EAAE;YAChB,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;SACvC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;CACD;AA5DD,gCA4DC"}
|
||||
{"version":3,"file":"StorageHelper.js","sourceRoot":"","sources":["../../src/utils/StorageHelper.ts"],"names":[],"mappings":";;AACA,2CAA2C;AAC3C,mCAA4B;AAE5B,MAAM,YAAY,GAAG,aAAa,CAAC;AACnC,MAAM,aAAa,GAAG,cAAc,CAAC;AAErC,MAAqB,aAAa;IAGjC,MAAM,CAAC,GAAG;QACT,IAAI,CAAC,aAAa,CAAC,QAAQ;YAAE,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1E,OAAO,aAAa,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAID;QACC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACnD,qBAAqB;IACtB,CAAC;IAED,WAAW;QACV,OAAO,eAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa,CAAC,WAAmB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAEzC,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,qBAA+B;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACzD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,qBAAqB,CAAC,IAAI,EAAE;gBAChD,cAAc,GAAG,IAAI,CAAC;gBACtB,YAAY,CAAC,KAAK,CAAC,GAAG,qBAAqB,CAAC;gBAC5C,MAAM;aACN;SACD;QAED,IAAI,CAAC,cAAc,EAAE;YACpB,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SACzC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,sBAAsB;QACrB,OAAO,eAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,qBAAqB,CAAC,uBAA2C;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC/C,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,OAAO,CAAC,GAAG,KAAK,uBAAuB,CAAC,GAAG,EAAE;gBAChD,UAAU,GAAG,IAAI,CAAC;gBAClB,QAAQ,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC;gBAC1C,MAAM;aACN;SACD;QAED,IAAI,CAAC,UAAU,EAAE;YAChB,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;SACvC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;CACD;AArED,gCAqEC"}
|
||||
@@ -9,10 +9,10 @@ import * as program from 'commander';
|
||||
|
||||
// Command actions
|
||||
import login from './login';
|
||||
import list from './list';
|
||||
import logout from './logout';
|
||||
// import serversetup = require('./serversetup');
|
||||
// import list = require('./list');
|
||||
// import deploy = require('./deploy');
|
||||
// import logout = require('./logout');
|
||||
|
||||
// Setup
|
||||
program.version(packagejson.version).description(packagejson.description);
|
||||
@@ -26,6 +26,14 @@ program
|
||||
login();
|
||||
});
|
||||
|
||||
program.command('list').alias('ls').description('List all Captain machines currently logged in.').action(() => {
|
||||
list();
|
||||
});
|
||||
|
||||
program.command('logout').description('Logout from a specific Captain machine.').action(() => {
|
||||
logout();
|
||||
});
|
||||
|
||||
// program
|
||||
// .command('serversetup')
|
||||
// .description('Performs necessary actions and prepares your Captain server.')
|
||||
@@ -33,14 +41,6 @@ program
|
||||
// serversetup();
|
||||
// });
|
||||
|
||||
// program.command('logout').description('Logout from a specific Captain machine.').action(() => {
|
||||
// logout();
|
||||
// });
|
||||
|
||||
// program.command('list').alias('ls').description('List all Captain machines currently logged in.').action(() => {
|
||||
// list();
|
||||
// });
|
||||
|
||||
// program
|
||||
// .command('deploy')
|
||||
// .description(
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import chalk from 'chalk';
|
||||
import StdOutUtil from '../utils/StdOutUtil';
|
||||
import StorageHelper from '../utils/StorageHelper';
|
||||
import { IMachine } from '../models/storage/StoredObjects';
|
||||
|
||||
function _displayMachine(machine: IMachine) {
|
||||
console.log('>> ' + chalk.greenBright(machine.name) + ' at ' + chalk.cyan(machine.baseUrl));
|
||||
}
|
||||
|
||||
function list() {
|
||||
StdOutUtil.printMessage('\nLogged in Captain Machines:\n');
|
||||
|
||||
StorageHelper.get().getMachines().map((machine) => {
|
||||
_displayMachine(machine);
|
||||
});
|
||||
|
||||
StdOutUtil.printMessage('');
|
||||
}
|
||||
|
||||
export default list;
|
||||
@@ -130,7 +130,7 @@ async function login() {
|
||||
name: captainName
|
||||
}).getAuthToken(captainPassword);
|
||||
|
||||
StdOutUtil.printGreenMessage(`Logged in successfully to ${baseUrl}`);
|
||||
StdOutUtil.printGreenMessage(`\nLogged in successfully to ${baseUrl}`);
|
||||
StdOutUtil.printGreenMessage(`Authorization token is now saved as ${captainName} \n`);
|
||||
} catch (error) {
|
||||
const errorMessage = error.message ? error.message : error;
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import * as inquirer from 'inquirer';
|
||||
import StdOutUtil from '../utils/StdOutUtil';
|
||||
import CliHelper from '../utils/CliHelper';
|
||||
|
||||
function generateQuestions() {
|
||||
const listOfMachines = CliHelper.get().getMachinesAsOptions();
|
||||
|
||||
return [
|
||||
{
|
||||
type: 'list',
|
||||
name: 'captainNameToLogout',
|
||||
message: 'Select the Captain Machine you want to logout from:',
|
||||
choices: listOfMachines
|
||||
},
|
||||
{
|
||||
type: 'confirm',
|
||||
name: 'confirmedToLogout',
|
||||
message: 'Are you sure you want to logout from this Captain machine?',
|
||||
default: false,
|
||||
when: (answers: any) => answers.captainNameToLogout
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
async function logout() {
|
||||
const questions = generateQuestions();
|
||||
|
||||
StdOutUtil.printMessage('Logout from a Captain Machine and clear auth info');
|
||||
|
||||
const answers = await inquirer.prompt(questions);
|
||||
const { captainNameToLogout, confirmedToLogout } = answers;
|
||||
|
||||
if (!captainNameToLogout || !confirmedToLogout) {
|
||||
StdOutUtil.printMessage('\nOperation cancelled by the user...\n');
|
||||
return;
|
||||
}
|
||||
|
||||
CliHelper.get().logoutMachine(captainNameToLogout);
|
||||
}
|
||||
|
||||
export default logout;
|
||||
@@ -1,5 +1,6 @@
|
||||
import StorageHelper from './StorageHelper';
|
||||
import { IMachine } from '../models/storage/StoredObjects';
|
||||
import StdOutUtil from './StdOutUtil';
|
||||
|
||||
export default class CliHelper {
|
||||
static instance: CliHelper;
|
||||
@@ -9,6 +10,32 @@ export default class CliHelper {
|
||||
return CliHelper.instance;
|
||||
}
|
||||
|
||||
getMachinesAsOptions() {
|
||||
const machines = StorageHelper.get().getMachines()
|
||||
const firstItemInOption = [
|
||||
{
|
||||
name: '-- CANCEL --',
|
||||
value: '',
|
||||
short: ''
|
||||
}
|
||||
];
|
||||
const listOfMachines = machines.map((machine) => {
|
||||
return {
|
||||
name: `${machine.name} at ${machine.baseUrl}`,
|
||||
value: `${machine.name}`,
|
||||
short: `${machine.name} at ${machine.baseUrl}`
|
||||
};
|
||||
});
|
||||
|
||||
return [ ...firstItemInOption, ...listOfMachines ];
|
||||
}
|
||||
|
||||
logoutMachine(machineName: string) {
|
||||
const removedMachine = StorageHelper.get().removeMachine(machineName);
|
||||
StdOutUtil. printMessage(`You are now logged out from ${removedMachine.name} at ${removedMachine.baseUrl}...\n`);
|
||||
}
|
||||
|
||||
|
||||
findDefaultCaptainName() {
|
||||
let currentSuffix = StorageHelper.get().getMachines().length + 1;
|
||||
const self = this;
|
||||
|
||||
@@ -24,6 +24,15 @@ export default class StorageHelper {
|
||||
return Utils.copyObject(this.data.get(CAP_MACHINES) || []);
|
||||
}
|
||||
|
||||
removeMachine(machineName: string) {
|
||||
const machines = this.getMachines();
|
||||
const removedMachine = machines.filter((machine) => machine.name === machineName)[0];
|
||||
const newMachines = machines.filter((machine) => machine.name !== machineName);
|
||||
this.data.set(CAP_MACHINES, newMachines);
|
||||
|
||||
return removedMachine;
|
||||
}
|
||||
|
||||
saveMachine(machineToSaveOrUpdate: IMachine) {
|
||||
const currMachines = this.getMachines();
|
||||
let updatedMachine = false;
|
||||
|
||||
Reference in New Issue
Block a user