@cloudbase/cli 2.3.11 → 2.3.12-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || function (mod) {
25
+ if (mod && mod.__esModule) return mod;
26
+ var result = {};
27
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
+ __setModuleDefault(result, mod);
29
+ return result;
30
+ };
31
+ var __metadata = (this && this.__metadata) || function (k, v) {
32
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
+ };
34
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
35
+ return function (target, key) { decorator(target, key, paramIndex); }
36
+ };
37
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
38
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
39
+ return new (P || (P = Promise))(function (resolve, reject) {
40
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
41
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
42
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
43
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
44
+ });
45
+ };
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.AddonPush = exports.AddonPull = void 0;
48
+ const cloud_api_1 = require("@cloudbase/cloud-api");
49
+ const decorators_1 = require("../../decorators");
50
+ const utils_1 = require("../../utils");
51
+ const common_1 = require("../common");
52
+ let AddonPull = class AddonPull extends common_1.Command {
53
+ get options() {
54
+ return getOptions({
55
+ childCmd: 'pull',
56
+ options: [
57
+ {
58
+ flags: '--envId <envId>',
59
+ desc: '环境 ID'
60
+ }
61
+ ],
62
+ desc: '拉取插件代码',
63
+ requiredEnvId: true,
64
+ hasNameArg: true
65
+ });
66
+ }
67
+ execute(ctx, options) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ const tcbService = yield getTcbServiceInstance(ctx);
70
+ const { name, resource } = getParams(ctx.params, true);
71
+ Promise.resolve().then(() => __importStar(require('@cloudbase/addon-cli'))).then((res) => __awaiter(this, void 0, void 0, function* () {
72
+ yield res.pull({ name, resource, envId: ctx.envId, tcbService });
73
+ }));
74
+ });
75
+ }
76
+ };
77
+ __decorate([
78
+ (0, decorators_1.InjectParams)(),
79
+ __param(0, (0, decorators_1.CmdContext)()),
80
+ __param(1, (0, decorators_1.ArgsOptions)()),
81
+ __metadata("design:type", Function),
82
+ __metadata("design:paramtypes", [Object, Object]),
83
+ __metadata("design:returntype", Promise)
84
+ ], AddonPull.prototype, "execute", null);
85
+ AddonPull = __decorate([
86
+ (0, common_1.ICommand)({
87
+ supportPrivate: true
88
+ })
89
+ ], AddonPull);
90
+ exports.AddonPull = AddonPull;
91
+ let AddonPush = class AddonPush extends common_1.Command {
92
+ get options() {
93
+ return getOptions({
94
+ childCmd: 'push',
95
+ desc: '推送插件代码',
96
+ options: [],
97
+ requiredEnvId: true,
98
+ hasNameArg: false
99
+ });
100
+ }
101
+ execute(ctx, options) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ const tcbService = yield getTcbServiceInstance(ctx);
104
+ const { resource } = getParams(ctx.params, false);
105
+ Promise.resolve().then(() => __importStar(require('@cloudbase/addon-cli'))).then((res) => __awaiter(this, void 0, void 0, function* () {
106
+ yield res.push({ tcbService, envId: ctx.envId, resource });
107
+ }));
108
+ });
109
+ }
110
+ };
111
+ __decorate([
112
+ (0, decorators_1.InjectParams)(),
113
+ __param(0, (0, decorators_1.CmdContext)()),
114
+ __param(1, (0, decorators_1.ArgsOptions)()),
115
+ __metadata("design:type", Function),
116
+ __metadata("design:paramtypes", [Object, Object]),
117
+ __metadata("design:returntype", Promise)
118
+ ], AddonPush.prototype, "execute", null);
119
+ AddonPush = __decorate([
120
+ (0, common_1.ICommand)({
121
+ supportPrivate: true
122
+ })
123
+ ], AddonPush);
124
+ exports.AddonPush = AddonPush;
125
+ function getTcbServiceInstance(ctx) {
126
+ return __awaiter(this, void 0, void 0, function* () {
127
+ let credential;
128
+ if (ctx.hasPrivateSettings) {
129
+ process.env.IS_PRIVATE = 'true';
130
+ const privateSettings = (0, utils_1.getPrivateSettings)(ctx.config, this.options.cmd);
131
+ credential = privateSettings.credential;
132
+ }
133
+ else {
134
+ credential = yield utils_1.authSupevisor.getLoginState();
135
+ }
136
+ const tcbService = cloud_api_1.CloudApiService.getInstance({ service: 'tcb', credential });
137
+ return tcbService;
138
+ });
139
+ }
140
+ function getOptions({ childCmd, options, desc, requiredEnvId, hasNameArg }) {
141
+ return {
142
+ cmd: 'addon',
143
+ childCmd,
144
+ options,
145
+ args: hasNameArg
146
+ ? [{ flags: '[resource]' }, { flags: '[name]' }]
147
+ : [{ flags: '[resource]' }],
148
+ desc,
149
+ requiredEnvId
150
+ };
151
+ }
152
+ function getParams(ctxParams, hasNameArg) {
153
+ const params = ctxParams.filter((param) => typeof param === 'string');
154
+ let name, resource;
155
+ if (hasNameArg) {
156
+ if (params.length === 1) {
157
+ name = params[0];
158
+ }
159
+ else if (params.length === 2) {
160
+ resource = params[0];
161
+ name = params[1];
162
+ }
163
+ }
164
+ else {
165
+ if (params.length === 1) {
166
+ resource = params[0];
167
+ }
168
+ }
169
+ return {
170
+ name,
171
+ resource
172
+ };
173
+ }
@@ -134,7 +134,7 @@ class Command extends events_1.EventEmitter {
134
134
  }
135
135
  }
136
136
  createProgram(instance, deprecate, newCmd) {
137
- const { cmd, desc, options, requiredEnvId = true, withoutAuth = false } = this.options;
137
+ const { cmd, desc, options, args = [], requiredEnvId = true, withoutAuth = false } = this.options;
138
138
  instance.storeOptionsAsProperties(false);
139
139
  options.forEach((option) => {
140
140
  const { hideHelp } = option;
@@ -145,6 +145,9 @@ class Command extends events_1.EventEmitter {
145
145
  instance.option(option.flags, option.desc);
146
146
  }
147
147
  });
148
+ const argsStr = args.map((argItem) => argItem.flags).join(' ');
149
+ if (argsStr)
150
+ instance.arguments(argsStr);
148
151
  instance.description(desc);
149
152
  instance.action((...args) => __awaiter(this, void 0, void 0, function* () {
150
153
  const params = args.slice(0, -1);
@@ -27,3 +27,4 @@ __exportStar(require("./framework"), exports);
27
27
  __exportStar(require("./smart"), exports);
28
28
  __exportStar(require("./lowcode"), exports);
29
29
  __exportStar(require("./run"), exports);
30
+ __exportStar(require("./addon"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/cli",
3
- "version": "2.3.11",
3
+ "version": "2.3.12-alpha.1",
4
4
  "description": "cli tool for cloudbase",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -34,6 +34,7 @@
34
34
  "@cloudbase/cloud-api": "^0.5.5",
35
35
  "@cloudbase/framework-core": "^1.9.7",
36
36
  "@cloudbase/lowcode-cli": "^0.20.5",
37
+ "@cloudbase/addon-cli": "0.0.1-alpha.3",
37
38
  "@cloudbase/manager-node": "4.2.8",
38
39
  "@cloudbase/toolbox": "^0.7.5",
39
40
  "@sentry/node": "^5.10.2",
@@ -0,0 +1,9 @@
1
+ import { Command, ICommandOptions } from '../common';
2
+ export declare class AddonPull extends Command {
3
+ get options(): ICommandOptions;
4
+ execute(ctx: any, options: any): Promise<void>;
5
+ }
6
+ export declare class AddonPush extends Command {
7
+ get options(): ICommandOptions;
8
+ execute(ctx: any, options: any): Promise<void>;
9
+ }
@@ -6,6 +6,9 @@ interface ICommandOption {
6
6
  desc: string;
7
7
  hideHelp?: boolean;
8
8
  }
9
+ interface ICommandArgument {
10
+ flags: string;
11
+ }
9
12
  export interface ICommandOptions {
10
13
  deprecateCmd?: string;
11
14
  cmd: string;
@@ -14,6 +17,7 @@ export interface ICommandOptions {
14
17
  desc: string;
15
18
  };
16
19
  childSubCmd?: string;
20
+ args?: ICommandArgument[];
17
21
  options: ICommandOption[];
18
22
  desc: string;
19
23
  requiredEnvId?: boolean;
@@ -11,3 +11,4 @@ export * from './framework';
11
11
  export * from './smart';
12
12
  export * from './lowcode';
13
13
  export * from './run';
14
+ export * from './addon';