extremum-cli
Version:
Extremum CLI
94 lines (93 loc) • 3.81 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var commander_1 = require("commander");
var extremum_client_1 = __importDefault(require("../../extremum-client"));
var helpers_1 = require("../../helpers");
var createBucket = function (name) {
return (0, extremum_client_1.default)().management.storage.buckets.create(name);
};
var updateBucket = function (bucketName, cmd) {
var payload = (0, helpers_1.safeParseJson)(cmd.data);
return (0, extremum_client_1.default)().management.storage.buckets.update(bucketName, payload);
};
var removeBucket = function (name) {
return (0, extremum_client_1.default)().management.storage.buckets.remove(name);
};
var getBucketMetadata = function (name) {
return (0, extremum_client_1.default)().management.storage.buckets.get(name);
};
var listBuckets = function () {
return (0, extremum_client_1.default)().management.storage.buckets.list(helpers_1.LIST_OPTIONS);
};
var createTrigger = function (bucketName, cmd) {
var trigger = {
function: cmd.function,
options: {
prefix: cmd.prefix,
operations: [cmd.event],
},
};
return (0, extremum_client_1.default)().management.storage.buckets.setTrigger(bucketName, trigger);
};
var removeTrigger = function (bucketName, cmd) {
return (0, extremum_client_1.default)().management.storage.buckets.removeTrigger(bucketName, cmd.function);
};
var mount = function (from, to) {
return (0, extremum_client_1.default)().management.storage.mount.create({ from: from, to: to });
};
var unmount = function (to) {
return (0, extremum_client_1.default)().management.storage.mount.remove(to);
};
var listMountTableEntries = function () {
return (0, extremum_client_1.default)().management.storage.mount.list();
};
var buckets = new commander_1.Command('buckets').description('manage storage buckets');
buckets
.command('create <bucket-name>')
.description('create bucket')
.action((0, helpers_1.actionRunner)(createBucket));
buckets
.command('update <bucket-name>')
.requiredOption('--data <patch>', 'JSON patch')
.description('update bucket metadata')
.action((0, helpers_1.actionRunner)(updateBucket));
buckets
.command('remove <bucket-name>')
.description('remove bucket')
.action((0, helpers_1.actionRunner)(removeBucket));
buckets
.command('describe <bucket_name>')
.description('get bucket metadata by key')
.action((0, helpers_1.actionRunner)(getBucketMetadata));
buckets
.command('create-trigger <bucket-name>')
.requiredOption('-f, --function <function-name>', 'trigger function name')
.requiredOption('-e, --event <event-name>', "events: ['create' | 'delete']")
.option('--prefix <trigger-prefix>', 'prefix', '')
.description('attach trigger to a bucket')
.action((0, helpers_1.actionRunner)(createTrigger));
buckets
.command('remove-trigger <bucket-name>')
.requiredOption('-f, --function <function-name>', 'trigger function name')
.description('remove trigger from a bucket')
.action((0, helpers_1.actionRunner)(removeTrigger));
buckets
.command('ls')
.description('list buckets')
.action((0, helpers_1.actionRunner)(listBuckets));
buckets
.command('mount <prefix> <bucket>')
.description('mount bucket')
.action((0, helpers_1.actionRunner)(mount));
buckets
.command('unmount <bucket>')
.description('unmount bucket')
.action((0, helpers_1.actionRunner)(unmount));
buckets
.command('ls-mount')
.description('list mount table entries')
.action((0, helpers_1.actionRunner)(listMountTableEntries));
exports.default = buckets;