beame-cli
v0.0.4
Published
Beame.io - common CLI handling
Downloads
4
Readme
Intro
This is CLI framework for Beame products. Currently it's in early stages so using it for your products is not advisable. We do expect that beame-cli will become usable to others as it matures. Documentation will be improved later.
Sample usage
const parametersSchema = {
'format': {required: false, options: ['text', 'json'], default: 'text'},
};
const BeameCli = require('beame-cli');
const cli = new BeameCli('YOUR_SCRIPT_NAME_FOR_USAGE_EXAMPLES', 'DIR_WITH_FILES_FOR_CLI', [
'NAMES_OF_FILES',
'WITHOUT_DOT_JS'
]);
cli.setGlobalSchema(parametersSchema);
cli.approveCommand = (cmdName, subCmdName) => {
if((cmdName == 'creds') && (subCmdName == 'getCreds')) {
return true;
}
var credsCount = list().length;
if (!credsCount) {
console.log(getHelpMessage('no-certificates.txt'));
return false;
}
return true;
};
cli.usage = () => {
console.log(getHelpMessage('no-command.txt'));
};
cli.run();
DIR_WITH_FILES_FOR_CLI
contents
There should be *.js
files, each one containing functions to handle one sub-command.
...
function getCreds(regToken, callback) {
callback
}
getCreds.params = { 'regToken': {required: true, base64: true, json: true} }
...
Sample output
./main.js
Usage:
beame-gatekeeper creds getCreds --regToken regToken
beame-gatekeeper creds list [--regex regex] [--format {text|json}]
beame-gatekeeper creds createServersCredentials
beame-gatekeeper creds webToken --type {config|admin|app} [--appId appId] [--format {text|json}]
beame-gatekeeper config init
beame-gatekeeper config name --name name
beame-gatekeeper config setAuthServer --fqdn fqdn
beame-gatekeeper config apps
beame-gatekeeper server start