@cloudbase/cli 2.10.0-beta.0 → 2.11.0-beta.0

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.
Files changed (205) hide show
  1. package/lib/auth/login.js +51 -65
  2. package/lib/auth/logout.js +3 -14
  3. package/lib/commands/account/login.js +136 -149
  4. package/lib/commands/account/logout.js +3 -14
  5. package/lib/commands/ag/base.js +203 -0
  6. package/lib/commands/ag/create.js +301 -0
  7. package/lib/commands/ag/debug/index.html +699 -0
  8. package/lib/commands/ag/delete.js +200 -0
  9. package/lib/commands/ag/deploy.js +185 -0
  10. package/lib/commands/ag/detail.js +113 -0
  11. package/lib/commands/ag/index.js +22 -0
  12. package/lib/commands/ag/list.js +155 -0
  13. package/lib/commands/ag/run.js +644 -0
  14. package/lib/commands/ai/index.js +76 -95
  15. package/lib/commands/cloudfunction/base.js +182 -203
  16. package/lib/commands/cloudrun/base.js +578 -603
  17. package/lib/commands/common.js +48 -63
  18. package/lib/commands/config/delete.js +16 -27
  19. package/lib/commands/config/get.js +13 -24
  20. package/lib/commands/config/list.js +16 -27
  21. package/lib/commands/config/set.js +33 -44
  22. package/lib/commands/db/base.js +221 -240
  23. package/lib/commands/env/base.js +36 -49
  24. package/lib/commands/env/domain.js +79 -94
  25. package/lib/commands/env/login.js +120 -135
  26. package/lib/commands/framework/index.js +32 -49
  27. package/lib/commands/fun/base.js +223 -244
  28. package/lib/commands/functions/alias/getRoute.js +33 -44
  29. package/lib/commands/functions/alias/setRoute.js +36 -47
  30. package/lib/commands/functions/code-download.js +43 -54
  31. package/lib/commands/functions/code-update.js +23 -34
  32. package/lib/commands/functions/concurrency/delete.js +11 -22
  33. package/lib/commands/functions/concurrency/list.js +20 -31
  34. package/lib/commands/functions/concurrency/set.js +13 -24
  35. package/lib/commands/functions/config-update.js +30 -41
  36. package/lib/commands/functions/copy.js +12 -23
  37. package/lib/commands/functions/delete.js +30 -41
  38. package/lib/commands/functions/deploy.js +184 -202
  39. package/lib/commands/functions/detail.js +23 -34
  40. package/lib/commands/functions/invoke.js +69 -75
  41. package/lib/commands/functions/layer/bind.js +102 -105
  42. package/lib/commands/functions/layer/create.js +29 -35
  43. package/lib/commands/functions/layer/delete.js +42 -48
  44. package/lib/commands/functions/layer/download.js +52 -58
  45. package/lib/commands/functions/layer/list.js +44 -50
  46. package/lib/commands/functions/layer/sort.js +39 -45
  47. package/lib/commands/functions/list.js +25 -36
  48. package/lib/commands/functions/log.js +65 -73
  49. package/lib/commands/functions/run.js +118 -116
  50. package/lib/commands/functions/trigger-create.js +32 -43
  51. package/lib/commands/functions/trigger-delete.js +50 -61
  52. package/lib/commands/functions/version/list.js +29 -40
  53. package/lib/commands/functions/version/publish.js +11 -22
  54. package/lib/commands/gateway/create.js +50 -61
  55. package/lib/commands/gateway/delete.js +38 -49
  56. package/lib/commands/gateway/domain.js +65 -80
  57. package/lib/commands/gateway/list.js +31 -42
  58. package/lib/commands/gateway/switch.js +48 -61
  59. package/lib/commands/helpers/init.js +226 -249
  60. package/lib/commands/helpers/new.js +35 -46
  61. package/lib/commands/helpers/open.js +22 -33
  62. package/lib/commands/hosting/hosting.js +157 -178
  63. package/lib/commands/index.js +1 -0
  64. package/lib/commands/lowcode/app.js +114 -144
  65. package/lib/commands/lowcode/comps.js +136 -127
  66. package/lib/commands/lowcode/utils.js +11 -22
  67. package/lib/commands/pull/pull.js +33 -46
  68. package/lib/commands/run/delete.js +35 -46
  69. package/lib/commands/run/image/delete.js +32 -39
  70. package/lib/commands/run/image/download.js +26 -33
  71. package/lib/commands/run/image/list.js +41 -48
  72. package/lib/commands/run/image/upload.js +26 -33
  73. package/lib/commands/run/list.js +32 -43
  74. package/lib/commands/run/service/config.js +17 -28
  75. package/lib/commands/run/service/deploy.js +15 -26
  76. package/lib/commands/run/service/list.js +48 -59
  77. package/lib/commands/run/service/update.js +7 -18
  78. package/lib/commands/run/standalonegateway/create.js +35 -42
  79. package/lib/commands/run/standalonegateway/destroy.js +23 -30
  80. package/lib/commands/run/standalonegateway/list.js +19 -26
  81. package/lib/commands/run/standalonegateway/package.js +31 -38
  82. package/lib/commands/run/standalonegateway/turn.js +27 -34
  83. package/lib/commands/run/version/create.js +198 -205
  84. package/lib/commands/run/version/delete.js +31 -38
  85. package/lib/commands/run/version/list.js +42 -49
  86. package/lib/commands/run/version/modify.js +27 -34
  87. package/lib/commands/run/version/update.js +201 -208
  88. package/lib/commands/runf/base.js +216 -237
  89. package/lib/commands/self-update.js +59 -72
  90. package/lib/commands/smart.js +66 -79
  91. package/lib/commands/storage/storage.js +192 -219
  92. package/lib/commands/third/thirdAttach.js +16 -27
  93. package/lib/commands/utils.js +119 -149
  94. package/lib/db/index.js +48 -67
  95. package/lib/decorators/captureError.js +10 -21
  96. package/lib/decorators/guard.js +11 -22
  97. package/lib/decorators/injectParams.js +29 -40
  98. package/lib/decorators/params/common.js +5 -2
  99. package/lib/decorators/params/index.js +3 -12
  100. package/lib/env/domain.js +13 -28
  101. package/lib/env/index.js +25 -44
  102. package/lib/env/login.js +30 -45
  103. package/lib/function/alias.js +31 -44
  104. package/lib/function/base.js +187 -215
  105. package/lib/function/code.js +8 -19
  106. package/lib/function/concurrency.js +43 -58
  107. package/lib/function/create.js +43 -53
  108. package/lib/function/delete.js +22 -35
  109. package/lib/function/layer/attach.js +33 -46
  110. package/lib/function/layer/create.js +34 -45
  111. package/lib/function/layer/delete.js +5 -16
  112. package/lib/function/layer/download.js +11 -22
  113. package/lib/function/layer/list.js +12 -25
  114. package/lib/function/layer/sort.js +6 -17
  115. package/lib/function/trigger.js +65 -82
  116. package/lib/function/update.js +24 -32
  117. package/lib/function/version.js +29 -42
  118. package/lib/function/vpc.js +12 -25
  119. package/lib/gateway/index.js +77 -104
  120. package/lib/hosting.js +157 -188
  121. package/lib/run/delete.js +3 -12
  122. package/lib/run/image/build.js +6 -15
  123. package/lib/run/image/delete.js +3 -12
  124. package/lib/run/image/info.js +3 -12
  125. package/lib/run/image/list.js +6 -15
  126. package/lib/run/list.js +19 -30
  127. package/lib/run/repo.js +6 -15
  128. package/lib/run/service/common.js +160 -173
  129. package/lib/run/service/config.js +44 -57
  130. package/lib/run/service/deployPackage.js +33 -44
  131. package/lib/run/service/list.js +8 -14
  132. package/lib/run/service/showLogs.js +69 -90
  133. package/lib/run/service/update.js +50 -63
  134. package/lib/run/standalonegateway/create.js +3 -12
  135. package/lib/run/standalonegateway/destroy.js +3 -12
  136. package/lib/run/standalonegateway/list.js +3 -12
  137. package/lib/run/standalonegateway/package/list.js +3 -12
  138. package/lib/run/standalonegateway/turn/off.js +3 -12
  139. package/lib/run/standalonegateway/turn/on.js +3 -12
  140. package/lib/run/version/create.js +41 -31
  141. package/lib/run/version/delete.js +3 -12
  142. package/lib/run/version/list.js +3 -12
  143. package/lib/run/version/modify.js +3 -12
  144. package/lib/run/version/repo.js +6 -15
  145. package/lib/run/version/update.js +37 -26
  146. package/lib/storage.js +62 -93
  147. package/lib/third/index.js +6 -17
  148. package/lib/utils/ai/banner.js +49 -60
  149. package/lib/utils/ai/claudeWindows.js +2 -2
  150. package/lib/utils/ai/config.js +169 -206
  151. package/lib/utils/ai/ensureFiles.js +6 -17
  152. package/lib/utils/ai/env.js +16 -27
  153. package/lib/utils/ai/envLocalManager.js +35 -52
  154. package/lib/utils/ai/router.js +927 -1005
  155. package/lib/utils/ai/setup.js +527 -563
  156. package/lib/utils/auth.js +3 -14
  157. package/lib/utils/checkTcbrEnv.js +20 -31
  158. package/lib/utils/cli-table.js +6 -1
  159. package/lib/utils/config.js +4 -13
  160. package/lib/utils/dts.js +98 -113
  161. package/lib/utils/env.js +154 -175
  162. package/lib/utils/function-packer.js +29 -42
  163. package/lib/utils/log.js +10 -21
  164. package/lib/utils/mcp-config-modifier.js +105 -120
  165. package/lib/utils/net/cloud-api-request.js +15 -23
  166. package/lib/utils/net/credential.js +26 -39
  167. package/lib/utils/net/http-request.js +63 -80
  168. package/lib/utils/net/manager-service.js +22 -35
  169. package/lib/utils/notice.js +16 -27
  170. package/lib/utils/output/loading.js +3 -12
  171. package/lib/utils/parallel.js +32 -43
  172. package/lib/utils/platform/mac.js +4 -15
  173. package/lib/utils/platform/port.js +4 -15
  174. package/lib/utils/prompt/select.js +6 -15
  175. package/lib/utils/report.js +28 -33
  176. package/lib/utils/reporter/agree.js +11 -22
  177. package/lib/utils/reporter/download.js +17 -28
  178. package/lib/utils/reporter/usage.js +12 -23
  179. package/lib/utils/store/auth.js +17 -30
  180. package/lib/utils/store/config.js +11 -25
  181. package/lib/utils/store/db.js +17 -36
  182. package/lib/utils/tcbrApi/callTcbrApi.js +19 -28
  183. package/lib/utils/template-manager.js +215 -242
  184. package/lib/utils/template.js +81 -96
  185. package/lib/utils/tools/common.js +45 -56
  186. package/lib/utils/tools/time.js +5 -16
  187. package/lib/utils/url.js +10 -4
  188. package/package.json +2 -2
  189. package/specs/ag-command/design.md +421 -0
  190. package/specs/ag-command/doc.md +204 -0
  191. package/specs/ag-command/requirements.md +173 -0
  192. package/specs/ag-command/summary.md +174 -0
  193. package/specs/ag-command/tasks.md +197 -0
  194. package/specs/ag-command/usage-guide.md +420 -0
  195. package/tsconfig.json +1 -1
  196. package/types/commands/ag/base.d.ts +44 -0
  197. package/types/commands/ag/create.d.ts +25 -0
  198. package/types/commands/ag/delete.d.ts +32 -0
  199. package/types/commands/ag/deploy.d.ts +31 -0
  200. package/types/commands/ag/detail.d.ts +28 -0
  201. package/types/commands/ag/index.d.ts +6 -0
  202. package/types/commands/ag/list.d.ts +35 -0
  203. package/types/commands/ag/run.d.ts +52 -0
  204. package/types/commands/cloudrun/base.d.ts +10 -0
  205. package/types/commands/index.d.ts +1 -0
@@ -1,72 +1,62 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.batchCreateFunctions = exports.createFunction = void 0;
13
4
  const utils_1 = require("../utils");
14
5
  const error_1 = require("../error");
15
6
  const base_1 = require("./base");
16
7
  const i18n_1 = require("../i18n");
17
- function createFunction(options) {
8
+ async function createFunction(options) {
18
9
  var _a;
19
- return __awaiter(this, void 0, void 0, function* () {
20
- const { envId, accessPath, codeSecret, force = false, functionPath, base64Code = '', functionRootPath = '' } = options;
21
- const func = Object.assign(Object.assign({}, (_a = options === null || options === void 0 ? void 0 : options.func) === null || _a === void 0 ? void 0 : _a.config), options.func);
22
- accessPath && (func.path = accessPath);
23
- const funcName = func.name;
24
- const scfService = yield (0, base_1.getFunctionService)(envId);
25
- func.isWaitInstall = true;
10
+ const { envId, accessPath, codeSecret, force = false, functionPath, base64Code = '', functionRootPath = '' } = options;
11
+ const func = {
12
+ ...(_a = options === null || options === void 0 ? void 0 : options.func) === null || _a === void 0 ? void 0 : _a.config,
13
+ ...options.func
14
+ };
15
+ accessPath && (func.path = accessPath);
16
+ const funcName = func.name;
17
+ const scfService = await (0, base_1.getFunctionService)(envId);
18
+ func.isWaitInstall = true;
19
+ try {
20
+ await scfService.createFunction({
21
+ func,
22
+ force,
23
+ base64Code,
24
+ codeSecret,
25
+ functionPath,
26
+ functionRootPath
27
+ });
28
+ }
29
+ catch (e) {
30
+ if (e.message && !force) {
31
+ throw new error_1.CloudBaseError((0, i18n_1.t)('[{{name}}] 部署失败,{{error}}', { name: funcName, error: e.message }), {
32
+ code: e.code,
33
+ original: e
34
+ });
35
+ }
36
+ throw e;
37
+ }
38
+ }
39
+ exports.createFunction = createFunction;
40
+ async function batchCreateFunctions(options) {
41
+ const { functions, functionRootPath = '', envId, force, codeSecret, log = false } = options;
42
+ const promises = functions.map((func) => (async () => {
43
+ const loading = (0, utils_1.loadingFactory)();
26
44
  try {
27
- yield scfService.createFunction({
45
+ log && loading.start((0, i18n_1.t)('[{{name}}] 函数部署中...', { name: func.name }));
46
+ await createFunction({
28
47
  func,
48
+ envId,
29
49
  force,
30
- base64Code,
31
50
  codeSecret,
32
- functionPath,
33
51
  functionRootPath
34
52
  });
53
+ log && loading.succeed((0, i18n_1.t)('[{{name}}] 函数部署成功', { name: func.name }));
35
54
  }
36
55
  catch (e) {
37
- if (e.message && !force) {
38
- throw new error_1.CloudBaseError((0, i18n_1.t)('[{{name}}] 部署失败,{{error}}', { name: funcName, error: e.message }), {
39
- code: e.code,
40
- original: e
41
- });
42
- }
43
- throw e;
56
+ log && loading.fail((0, i18n_1.t)('[{{name}}] 函数部署失败', { name: func.name }));
57
+ throw new error_1.CloudBaseError(e.message);
44
58
  }
45
- });
46
- }
47
- exports.createFunction = createFunction;
48
- function batchCreateFunctions(options) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- const { functions, functionRootPath = '', envId, force, codeSecret, log = false } = options;
51
- const promises = functions.map((func) => (() => __awaiter(this, void 0, void 0, function* () {
52
- const loading = (0, utils_1.loadingFactory)();
53
- try {
54
- log && loading.start((0, i18n_1.t)('[{{name}}] 函数部署中...', { name: func.name }));
55
- yield createFunction({
56
- func,
57
- envId,
58
- force,
59
- codeSecret,
60
- functionRootPath
61
- });
62
- log && loading.succeed((0, i18n_1.t)('[{{name}}] 函数部署成功', { name: func.name }));
63
- }
64
- catch (e) {
65
- log && loading.fail((0, i18n_1.t)('[{{name}}] 函数部署失败', { name: func.name }));
66
- throw new error_1.CloudBaseError(e.message);
67
- }
68
- }))());
69
- yield Promise.all(promises);
70
- });
59
+ })());
60
+ await Promise.all(promises);
71
61
  }
72
62
  exports.batchCreateFunctions = batchCreateFunctions;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.batchDeleteFunctions = exports.deleteFunction = void 0;
13
4
  const logger_1 = require("../logger");
@@ -16,38 +7,34 @@ const utils_1 = require("../utils");
16
7
  const gateway_1 = require("../gateway");
17
8
  const i18n_1 = require("../i18n");
18
9
  const scfService = utils_1.CloudApiService.getInstance('scf');
19
- function deleteFunction({ functionName, envId }) {
10
+ async function deleteFunction({ functionName, envId }) {
20
11
  var _a;
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const res = yield (0, gateway_1.queryGateway)({
12
+ const res = await (0, gateway_1.queryGateway)({
13
+ envId,
14
+ name: functionName
15
+ });
16
+ if (((_a = res === null || res === void 0 ? void 0 : res.APISet) === null || _a === void 0 ? void 0 : _a.length) > 0) {
17
+ await (0, gateway_1.deleteGateway)({
23
18
  envId,
24
19
  name: functionName
25
20
  });
26
- if (((_a = res === null || res === void 0 ? void 0 : res.APISet) === null || _a === void 0 ? void 0 : _a.length) > 0) {
27
- yield (0, gateway_1.deleteGateway)({
28
- envId,
29
- name: functionName
30
- });
31
- }
32
- yield scfService.request('DeleteFunction', {
33
- FunctionName: functionName,
34
- Namespace: envId
35
- });
21
+ }
22
+ await scfService.request('DeleteFunction', {
23
+ FunctionName: functionName,
24
+ Namespace: envId
36
25
  });
37
26
  }
38
27
  exports.deleteFunction = deleteFunction;
39
- function batchDeleteFunctions({ names, envId }) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- const promises = names.map(name => (() => __awaiter(this, void 0, void 0, function* () {
42
- try {
43
- yield deleteFunction({ functionName: name, envId });
44
- (0, logger_1.successLog)((0, i18n_1.t)('[{{name}}] 函数删除成功!', { name }));
45
- }
46
- catch (e) {
47
- throw new error_1.CloudBaseError(e.message);
48
- }
49
- }))());
50
- yield Promise.all(promises);
51
- });
28
+ async function batchDeleteFunctions({ names, envId }) {
29
+ const promises = names.map(name => (async () => {
30
+ try {
31
+ await deleteFunction({ functionName: name, envId });
32
+ (0, logger_1.successLog)((0, i18n_1.t)('[{{name}}] 函数删除成功!', { name }));
33
+ }
34
+ catch (e) {
35
+ throw new error_1.CloudBaseError(e.message);
36
+ }
37
+ })());
38
+ await Promise.all(promises);
52
39
  }
53
40
  exports.batchDeleteFunctions = batchDeleteFunctions;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
@@ -19,45 +10,41 @@ const error_1 = require("../../error");
19
10
  const i18n_1 = require("../../i18n");
20
11
  const __1 = require("../");
21
12
  const scfService = new utils_1.CloudApiService('scf');
22
- function attachLayer(options) {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- const { envId, functionName, layerName, layerVersion, codeSecret } = options;
25
- const functionService = yield (0, __1.getFunctionService)(envId);
26
- let { Layers } = yield functionService.getFunctionDetail(functionName, codeSecret);
27
- Layers = Layers.map(item => lodash_1.default.pick(item, ['LayerName', 'LayerVersion']));
28
- Layers.push({
29
- LayerName: layerName,
30
- LayerVersion: layerVersion
31
- });
32
- const res = yield scfService.request('UpdateFunctionConfiguration', {
33
- Layers,
34
- Namespace: envId,
35
- FunctionName: functionName
36
- });
37
- return res;
13
+ async function attachLayer(options) {
14
+ const { envId, functionName, layerName, layerVersion, codeSecret } = options;
15
+ const functionService = await (0, __1.getFunctionService)(envId);
16
+ let { Layers } = await functionService.getFunctionDetail(functionName, codeSecret);
17
+ Layers = Layers.map(item => lodash_1.default.pick(item, ['LayerName', 'LayerVersion']));
18
+ Layers.push({
19
+ LayerName: layerName,
20
+ LayerVersion: layerVersion
38
21
  });
22
+ const res = await scfService.request('UpdateFunctionConfiguration', {
23
+ Layers,
24
+ Namespace: envId,
25
+ FunctionName: functionName
26
+ });
27
+ return res;
39
28
  }
40
29
  exports.attachLayer = attachLayer;
41
- function unAttachLayer(options) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- const { envId, functionName, layerName, layerVersion, codeSecret } = options;
44
- const functionService = yield (0, __1.getFunctionService)(envId);
45
- let { Layers } = yield functionService.getFunctionDetail(functionName, codeSecret);
46
- Layers = Layers.map(item => lodash_1.default.pick(item, ['LayerName', 'LayerVersion']));
47
- const index = Layers.findIndex(item => item.LayerName === layerName && item.LayerVersion === layerVersion);
48
- if (index === -1) {
49
- throw new error_1.CloudBaseError((0, i18n_1.t)('层不存在'));
50
- }
51
- Layers.splice(index, 1);
52
- const apiParams = {
53
- Namespace: envId,
54
- FunctionName: functionName,
55
- Layers: Layers.length > 0 ? Layers : [{
56
- LayerName: '',
57
- LayerVersion: 0
58
- }]
59
- };
60
- return scfService.request('UpdateFunctionConfiguration', apiParams);
61
- });
30
+ async function unAttachLayer(options) {
31
+ const { envId, functionName, layerName, layerVersion, codeSecret } = options;
32
+ const functionService = await (0, __1.getFunctionService)(envId);
33
+ let { Layers } = await functionService.getFunctionDetail(functionName, codeSecret);
34
+ Layers = Layers.map(item => lodash_1.default.pick(item, ['LayerName', 'LayerVersion']));
35
+ const index = Layers.findIndex(item => item.LayerName === layerName && item.LayerVersion === layerVersion);
36
+ if (index === -1) {
37
+ throw new error_1.CloudBaseError((0, i18n_1.t)('层不存在'));
38
+ }
39
+ Layers.splice(index, 1);
40
+ const apiParams = {
41
+ Namespace: envId,
42
+ FunctionName: functionName,
43
+ Layers: Layers.length > 0 ? Layers : [{
44
+ LayerName: '',
45
+ LayerVersion: 0
46
+ }]
47
+ };
48
+ return scfService.request('UpdateFunctionConfiguration', apiParams);
62
49
  }
63
50
  exports.unAttachLayer = unAttachLayer;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
@@ -19,45 +10,43 @@ const toolbox_1 = require("@cloudbase/toolbox");
19
10
  const utils_1 = require("../../utils");
20
11
  const i18n_1 = require("../../i18n");
21
12
  const scfService = new utils_1.CloudApiService('scf');
22
- function createLayer(options) {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- const { envId, contentPath = '', layerName, base64Content = '', runtimes = [] } = options;
25
- (0, utils_1.checkFullAccess)(contentPath);
26
- const validRuntime = ['Nodejs8.9', 'Php7', 'Java8', 'Nodejs12.16'];
27
- if (runtimes.some((item) => validRuntime.indexOf(item) === -1)) {
28
- throw new toolbox_1.CloudBaseError(`Invalid runtime value. Now only support: ${validRuntime.join(', ')}`);
29
- }
30
- let base64;
31
- if (base64Content) {
32
- base64 = base64Content;
33
- }
34
- else if ((0, utils_1.isDirectory)(contentPath)) {
35
- const dirName = path_1.default.parse(contentPath).name;
36
- const dest = path_1.default.join(process.cwd(), `cli-${dirName}.zip`);
37
- if ((0, utils_1.checkFullAccess)(dest)) {
38
- (0, utils_1.delSync)(dest);
39
- }
40
- yield (0, toolbox_1.zipDir)(contentPath, dest);
41
- const fileBuffer = yield fs_1.default.promises.readFile(dest);
42
- base64 = fileBuffer.toString('base64');
13
+ async function createLayer(options) {
14
+ const { envId, contentPath = '', layerName, base64Content = '', runtimes = [] } = options;
15
+ (0, utils_1.checkFullAccess)(contentPath);
16
+ const validRuntime = ['Nodejs8.9', 'Php7', 'Java8', 'Nodejs12.16'];
17
+ if (runtimes.some((item) => validRuntime.indexOf(item) === -1)) {
18
+ throw new toolbox_1.CloudBaseError(`Invalid runtime value. Now only support: ${validRuntime.join(', ')}`);
19
+ }
20
+ let base64;
21
+ if (base64Content) {
22
+ base64 = base64Content;
23
+ }
24
+ else if ((0, utils_1.isDirectory)(contentPath)) {
25
+ const dirName = path_1.default.parse(contentPath).name;
26
+ const dest = path_1.default.join(process.cwd(), `cli-${dirName}.zip`);
27
+ if ((0, utils_1.checkFullAccess)(dest)) {
43
28
  (0, utils_1.delSync)(dest);
44
29
  }
45
- else {
46
- const fileType = path_1.default.extname(contentPath);
47
- if (fileType !== '.zip') {
48
- throw new toolbox_1.CloudBaseError((0, i18n_1.t)('文件类型不正确,目前只支持 ZIP 文件!'));
49
- }
50
- const fileBuffer = yield fs_1.default.promises.readFile(contentPath);
51
- base64 = fileBuffer.toString('base64');
30
+ await (0, toolbox_1.zipDir)(contentPath, dest);
31
+ const fileBuffer = await fs_1.default.promises.readFile(dest);
32
+ base64 = fileBuffer.toString('base64');
33
+ (0, utils_1.delSync)(dest);
34
+ }
35
+ else {
36
+ const fileType = path_1.default.extname(contentPath);
37
+ if (fileType !== '.zip') {
38
+ throw new toolbox_1.CloudBaseError((0, i18n_1.t)('文件类型不正确,目前只支持 ZIP 文件!'));
39
+ }
40
+ const fileBuffer = await fs_1.default.promises.readFile(contentPath);
41
+ base64 = fileBuffer.toString('base64');
42
+ }
43
+ return scfService.request('PublishLayerVersion', {
44
+ LayerName: layerName,
45
+ CompatibleRuntimes: runtimes,
46
+ Src: `TCB_${envId}`,
47
+ Content: {
48
+ ZipFile: base64
52
49
  }
53
- return scfService.request('PublishLayerVersion', {
54
- LayerName: layerName,
55
- CompatibleRuntimes: runtimes,
56
- Src: `TCB_${envId}`,
57
- Content: {
58
- ZipFile: base64
59
- }
60
- });
61
50
  });
62
51
  }
63
52
  exports.createLayer = createLayer;
@@ -1,24 +1,13 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.deleteLayer = void 0;
13
4
  const utils_1 = require("../../utils");
14
5
  const scfService = new utils_1.CloudApiService('scf');
15
- function deleteLayer(options) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const { name, version } = options;
18
- return scfService.request('DeleteLayerVersion', {
19
- LayerName: name,
20
- LayerVersion: version
21
- });
6
+ async function deleteLayer(options) {
7
+ const { name, version } = options;
8
+ return scfService.request('DeleteLayerVersion', {
9
+ LayerName: name,
10
+ LayerVersion: version
22
11
  });
23
12
  }
24
13
  exports.deleteLayer = deleteLayer;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
@@ -19,19 +10,17 @@ const error_1 = require("../../error");
19
10
  const common_1 = require("../../utils/tools/common");
20
11
  const i18n_1 = require("../../i18n");
21
12
  const scfService = new utils_1.CloudApiService('scf');
22
- function downloadLayer(options) {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- const { name, version, destPath } = options;
25
- const res = yield scfService.request('GetLayerVersion', {
26
- LayerName: name,
27
- LayerVersion: version
28
- });
29
- const url = res === null || res === void 0 ? void 0 : res.Location;
30
- const zipPath = path_1.default.join(destPath, `${name}-${version}.zip`);
31
- if ((0, utils_1.checkFullAccess)(zipPath)) {
32
- throw new error_1.CloudBaseError((0, i18n_1.t)('文件已存在:{{path}}', { path: zipPath }));
33
- }
34
- return (0, common_1.downloadAndExtractRemoteZip)(url, destPath);
13
+ async function downloadLayer(options) {
14
+ const { name, version, destPath } = options;
15
+ const res = await scfService.request('GetLayerVersion', {
16
+ LayerName: name,
17
+ LayerVersion: version
35
18
  });
19
+ const url = res === null || res === void 0 ? void 0 : res.Location;
20
+ const zipPath = path_1.default.join(destPath, `${name}-${version}.zip`);
21
+ if ((0, utils_1.checkFullAccess)(zipPath)) {
22
+ throw new error_1.CloudBaseError((0, i18n_1.t)('文件已存在:{{path}}', { path: zipPath }));
23
+ }
24
+ return (0, common_1.downloadAndExtractRemoteZip)(url, destPath);
36
25
  }
37
26
  exports.downloadLayer = downloadLayer;
@@ -1,36 +1,23 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.listLayerVersions = exports.listLayers = void 0;
13
4
  const utils_1 = require("../../utils");
14
5
  const scfService = new utils_1.CloudApiService('scf');
15
- function listLayers(options) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const { offset, limit, searchSrc } = options;
18
- const res = yield scfService.request('ListLayers', {
19
- Offset: offset,
20
- Limit: limit,
21
- SearchSrc: searchSrc
22
- });
23
- return (res === null || res === void 0 ? void 0 : res.Layers) || [];
6
+ async function listLayers(options) {
7
+ const { offset, limit, searchSrc } = options;
8
+ const res = await scfService.request('ListLayers', {
9
+ Offset: offset,
10
+ Limit: limit,
11
+ SearchSrc: searchSrc
24
12
  });
13
+ return (res === null || res === void 0 ? void 0 : res.Layers) || [];
25
14
  }
26
15
  exports.listLayers = listLayers;
27
- function listLayerVersions(options) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const { name } = options;
30
- const res = yield scfService.request('ListLayerVersions', {
31
- LayerName: name
32
- });
33
- return (res === null || res === void 0 ? void 0 : res.LayerVersions) || [];
16
+ async function listLayerVersions(options) {
17
+ const { name } = options;
18
+ const res = await scfService.request('ListLayerVersions', {
19
+ LayerName: name
34
20
  });
21
+ return (res === null || res === void 0 ? void 0 : res.LayerVersions) || [];
35
22
  }
36
23
  exports.listLayerVersions = listLayerVersions;
@@ -1,25 +1,14 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.sortLayer = void 0;
13
4
  const utils_1 = require("../../utils");
14
5
  const scfService = new utils_1.CloudApiService('scf');
15
- function sortLayer(options) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const { envId, functionName, layers } = options;
18
- return scfService.request('UpdateFunctionConfiguration', {
19
- Layers: layers,
20
- Namespace: envId,
21
- FunctionName: functionName
22
- });
6
+ async function sortLayer(options) {
7
+ const { envId, functionName, layers } = options;
8
+ return scfService.request('UpdateFunctionConfiguration', {
9
+ Layers: layers,
10
+ Namespace: envId,
11
+ FunctionName: functionName
23
12
  });
24
13
  }
25
14
  exports.sortLayer = sortLayer;