@cloudbase/cli 2.0.3 → 2.0.4-alpha.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 (199) hide show
  1. package/.editorconfig +9 -9
  2. package/.eslintignore +7 -7
  3. package/.eslintrc +35 -35
  4. package/.prettierrc.js +29 -29
  5. package/.vscode/launch.json +16 -16
  6. package/LICENSE +5 -5
  7. package/README.md +35 -35
  8. package/bin/cloudbase.js +5 -5
  9. package/bin/tcb.js +0 -0
  10. package/changelog.md +6 -6
  11. package/jest.config.js +17 -17
  12. package/lib/commands/account/login.js +18 -18
  13. package/lib/commands/storage/storage.js +1 -1
  14. package/lib/env/login.js +7 -7
  15. package/package.json +2 -2
  16. package/post-install.js +61 -61
  17. package/runtime/nodejs/bootstrap.js +255 -255
  18. package/runtime/nodejs/runtime.js +183 -183
  19. package/src/auth/index.ts +1 -1
  20. package/src/auth/login.ts +91 -91
  21. package/src/auth/logout.ts +7 -7
  22. package/src/commands/account/index.ts +2 -2
  23. package/src/commands/account/login.ts +192 -192
  24. package/src/commands/account/logout.ts +24 -24
  25. package/src/commands/env/base.ts +90 -90
  26. package/src/commands/env/create.ts +92 -92
  27. package/src/commands/env/domain.ts +186 -186
  28. package/src/commands/env/index.ts +4 -4
  29. package/src/commands/env/login.ts +235 -235
  30. package/src/commands/framework/index.ts +124 -124
  31. package/src/commands/functions/alias/getRoute.ts +76 -76
  32. package/src/commands/functions/alias/index.ts +2 -2
  33. package/src/commands/functions/alias/setRoute.ts +82 -82
  34. package/src/commands/functions/code-download.ts +100 -100
  35. package/src/commands/functions/code-update.ts +62 -62
  36. package/src/commands/functions/concurrency/delete.ts +45 -45
  37. package/src/commands/functions/concurrency/index.ts +2 -2
  38. package/src/commands/functions/concurrency/list.ts +58 -58
  39. package/src/commands/functions/concurrency/set.ts +47 -47
  40. package/src/commands/functions/config-update.ts +76 -76
  41. package/src/commands/functions/copy.ts +62 -62
  42. package/src/commands/functions/delete.ts +79 -79
  43. package/src/commands/functions/deploy.ts +293 -293
  44. package/src/commands/functions/detail.ts +138 -138
  45. package/src/commands/functions/index.ts +16 -16
  46. package/src/commands/functions/invoke.ts +121 -121
  47. package/src/commands/functions/layer/bind.ts +182 -182
  48. package/src/commands/functions/layer/common.ts +8 -8
  49. package/src/commands/functions/layer/create.ts +49 -49
  50. package/src/commands/functions/layer/delete.ts +73 -73
  51. package/src/commands/functions/layer/download.ts +92 -92
  52. package/src/commands/functions/layer/index.ts +7 -7
  53. package/src/commands/functions/layer/list.ts +94 -94
  54. package/src/commands/functions/layer/sort.ts +76 -76
  55. package/src/commands/functions/list.ts +68 -68
  56. package/src/commands/functions/log.ts +148 -148
  57. package/src/commands/functions/run.ts +249 -249
  58. package/src/commands/functions/trigger-create.ts +79 -79
  59. package/src/commands/functions/trigger-delete.ts +105 -105
  60. package/src/commands/functions/version/index.ts +1 -1
  61. package/src/commands/functions/version/list.ts +73 -73
  62. package/src/commands/functions/version/publish.ts +43 -43
  63. package/src/commands/gateway/create.ts +109 -109
  64. package/src/commands/gateway/delete.ts +81 -81
  65. package/src/commands/gateway/domain.ts +159 -159
  66. package/src/commands/gateway/index.ts +5 -5
  67. package/src/commands/gateway/list.ts +76 -76
  68. package/src/commands/gateway/switch.ts +107 -107
  69. package/src/commands/helpers/index.ts +2 -2
  70. package/src/commands/helpers/init.ts +431 -431
  71. package/src/commands/helpers/new.ts +117 -117
  72. package/src/commands/helpers/open.ts +67 -67
  73. package/src/commands/hosting/hosting.ts +360 -360
  74. package/src/commands/index.ts +13 -13
  75. package/src/commands/lowcode/app.ts +34 -34
  76. package/src/commands/lowcode/comps.ts +322 -322
  77. package/src/commands/lowcode/index.ts +1 -1
  78. package/src/commands/lowcode/utils.ts +24 -24
  79. package/src/commands/run/image/index.ts +4 -4
  80. package/src/commands/run/standalonegateway/common.ts +7 -7
  81. package/src/commands/run/standalonegateway/create.ts +85 -85
  82. package/src/commands/run/standalonegateway/destroy.ts +59 -59
  83. package/src/commands/run/standalonegateway/index.ts +4 -4
  84. package/src/commands/run/standalonegateway/list.ts +53 -53
  85. package/src/commands/run/standalonegateway/package.ts +62 -62
  86. package/src/commands/run/standalonegateway/turn.ts +63 -63
  87. package/src/commands/run/version/index.ts +4 -4
  88. package/src/commands/smart.ts +132 -132
  89. package/src/commands/storage/storage.ts +464 -464
  90. package/src/commands/third/thirdAttach.ts +49 -49
  91. package/src/completion/index.ts +13 -13
  92. package/src/decorators/captureError.ts +25 -25
  93. package/src/decorators/constants.ts +12 -12
  94. package/src/decorators/deprecate.ts +25 -25
  95. package/src/decorators/guard.ts +42 -42
  96. package/src/decorators/index.ts +7 -7
  97. package/src/decorators/injectParams.ts +54 -54
  98. package/src/decorators/params/common.ts +28 -28
  99. package/src/decorators/params/index.ts +35 -35
  100. package/src/env/domain.ts +33 -33
  101. package/src/env/index.ts +63 -63
  102. package/src/env/login.ts +80 -80
  103. package/src/error.ts +36 -36
  104. package/src/function/alias.ts +43 -43
  105. package/src/function/base.ts +253 -253
  106. package/src/function/code.ts +55 -55
  107. package/src/function/concurrency.ts +57 -57
  108. package/src/function/create.ts +78 -78
  109. package/src/function/delete.ts +42 -42
  110. package/src/function/index.ts +10 -10
  111. package/src/function/layer/attach.ts +68 -68
  112. package/src/function/layer/create.ts +63 -63
  113. package/src/function/layer/delete.ts +21 -21
  114. package/src/function/layer/download.ts +54 -54
  115. package/src/function/layer/index.ts +7 -7
  116. package/src/function/layer/list.ts +32 -32
  117. package/src/function/layer/sort.ts +24 -24
  118. package/src/function/trigger.ts +97 -97
  119. package/src/function/update.ts +35 -35
  120. package/src/function/version.ts +38 -38
  121. package/src/function/vpc.ts +22 -22
  122. package/src/gateway/index.ts +137 -137
  123. package/src/hosting.ts +212 -212
  124. package/src/index.ts +13 -13
  125. package/src/logger.ts +17 -17
  126. package/src/run/create.ts +23 -23
  127. package/src/run/delete.ts +15 -15
  128. package/src/run/image/build.ts +36 -36
  129. package/src/run/image/delete.ts +13 -13
  130. package/src/run/image/index.ts +3 -3
  131. package/src/run/image/info.ts +26 -26
  132. package/src/run/list.ts +29 -29
  133. package/src/run/repo.ts +24 -24
  134. package/src/run/standalonegateway/create.ts +24 -24
  135. package/src/run/standalonegateway/destroy.ts +19 -19
  136. package/src/run/standalonegateway/index.ts +4 -4
  137. package/src/run/standalonegateway/list.ts +74 -74
  138. package/src/run/standalonegateway/package/list.ts +24 -24
  139. package/src/run/standalonegateway/turn/index.ts +1 -1
  140. package/src/run/standalonegateway/turn/off.ts +19 -19
  141. package/src/run/standalonegateway/turn/on.ts +19 -19
  142. package/src/run/version/create.ts +68 -68
  143. package/src/run/version/delete.ts +15 -15
  144. package/src/run/version/index.ts +5 -5
  145. package/src/run/version/list.ts +16 -16
  146. package/src/run/version/modify.ts +16 -16
  147. package/src/run/version/repo.ts +27 -27
  148. package/src/run/version/update.ts +58 -58
  149. package/src/storage.ts +114 -114
  150. package/src/third/index.ts +12 -12
  151. package/src/utils/auth.ts +15 -15
  152. package/src/utils/cli-table.ts +23 -23
  153. package/src/utils/config.ts +39 -39
  154. package/src/utils/env.ts +244 -244
  155. package/src/utils/fs/del.ts +5 -5
  156. package/src/utils/fs/index.ts +71 -71
  157. package/src/utils/function-packer.ts +97 -97
  158. package/src/utils/log.ts +81 -81
  159. package/src/utils/net/cloud-api-request.ts +62 -62
  160. package/src/utils/net/credential.ts +53 -53
  161. package/src/utils/net/index.ts +4 -4
  162. package/src/utils/net/manager-service.ts +36 -36
  163. package/src/utils/net/proxy.ts +6 -6
  164. package/src/utils/notice.ts +28 -28
  165. package/src/utils/output/highlight.ts +5 -5
  166. package/src/utils/output/index.ts +2 -2
  167. package/src/utils/output/link.ts +10 -10
  168. package/src/utils/output/loading.ts +82 -82
  169. package/src/utils/parallel.ts +82 -82
  170. package/src/utils/platform/index.ts +2 -2
  171. package/src/utils/platform/mac.ts +21 -21
  172. package/src/utils/platform/os.ts +64 -64
  173. package/src/utils/platform/port.ts +10 -10
  174. package/src/utils/progress-bar.ts +38 -38
  175. package/src/utils/prompt/select.ts +59 -59
  176. package/src/utils/reporter/agree.ts +20 -20
  177. package/src/utils/reporter/download.ts +26 -26
  178. package/src/utils/reporter/index.ts +3 -3
  179. package/src/utils/reporter/usage.ts +20 -20
  180. package/src/utils/store/auth.ts +49 -49
  181. package/src/utils/store/common.ts +8 -8
  182. package/src/utils/store/db.ts +68 -68
  183. package/src/utils/store/index.ts +4 -4
  184. package/src/utils/store/usage.ts +12 -12
  185. package/src/utils/template.ts +170 -170
  186. package/src/utils/tools/encoding.ts +8 -8
  187. package/src/utils/tools/index.ts +4 -4
  188. package/src/utils/tools/object.ts +33 -33
  189. package/src/utils/tools/time.ts +38 -38
  190. package/src/utils/tools/uid.ts +19 -19
  191. package/templates/html/loginFail.html +90 -90
  192. package/templates/html/loginSuccess.html +86 -86
  193. package/templates/server/node/_gitignore +54 -54
  194. package/templates/server/node/cloudbaserc.json +10 -10
  195. package/templates/server/node/index.js +5 -5
  196. package/templates/server/node/package.json +9 -9
  197. package/tsconfig.json +19 -19
  198. package/tsconfig.test.json +13 -13
  199. package/.vscode/settings.json +0 -3
@@ -1,100 +1,100 @@
1
- import path from 'path'
2
- import fse from 'fs-extra'
3
- import inquirer from 'inquirer'
4
- import { Command, ICommand } from '../common'
5
- import { CloudBaseError } from '../../error'
6
- import { InjectParams, CmdContext, ArgsParams } from '../../decorators'
7
- import { downloadFunctionCode, getFunctionDetail } from '../../function'
8
- import { loadingFactory, checkFullAccess, delSync, highlightCommand } from '../../utils'
9
-
10
- @ICommand()
11
- export class CodeDownload extends Command {
12
- get options() {
13
- return {
14
- cmd: 'fn',
15
- childCmd: {
16
- cmd: 'code',
17
- desc: '函数代码管理'
18
- },
19
- childSubCmd: 'download <name> [dest]',
20
- deprecateCmd: 'functions:download <name> [dest]',
21
- options: [
22
- {
23
- flags: '-e, --envId <envId>',
24
- desc: '环境 Id'
25
- },
26
- { flags: '-l, --limit <limit>', desc: '返回数据长度,默认值为 20' },
27
- {
28
- flags: '--code-secret <codeSecret>',
29
- desc: '代码加密的函数的 CodeSecret'
30
- }
31
- ],
32
- desc: '下载云函数代码'
33
- }
34
- }
35
-
36
- @InjectParams()
37
- async execute(@CmdContext() ctx, @ArgsParams() params) {
38
- const { envId, config, options } = ctx
39
- const { codeSecret } = options
40
-
41
- const name = params?.[0]
42
- const dest = params?.[1]
43
-
44
- if (!name) {
45
- throw new CloudBaseError('请指定云函数名称!')
46
- }
47
-
48
- // 检查函数是否存在
49
- try {
50
- await getFunctionDetail({
51
- envId,
52
- codeSecret,
53
- functionName: name
54
- })
55
- } catch (e) {
56
- if (e.code === 'ResourceNotFound.FunctionName') {
57
- throw new CloudBaseError(
58
- `云函数 [${name}] 不存在!\n\n使用 ${highlightCommand(
59
- 'cloudbase functions:list'
60
- )} 命令查看已部署云函数`
61
- )
62
- }
63
- return
64
- }
65
-
66
- let destPath = dest
67
-
68
- // 没有指定下载路径时,使用函数名作为存储文件夹
69
- if (!destPath) {
70
- destPath = path.resolve(config.functionRoot, name)
71
- // 路径已存在,询问是否覆盖
72
- if (checkFullAccess(destPath)) {
73
- const { override } = await inquirer.prompt({
74
- type: 'confirm',
75
- name: 'override',
76
- message: '函数已经存在,是否覆盖原文件?',
77
- default: false
78
- })
79
-
80
- if (!override) {
81
- throw new CloudBaseError('下载终止!')
82
- }
83
- // 删除原文件
84
- delSync([destPath])
85
- }
86
- await fse.ensureDir(destPath)
87
- }
88
-
89
- const loading = loadingFactory()
90
- loading.start('文件下载中...')
91
- await downloadFunctionCode({
92
- envId,
93
- functionName: name,
94
- destPath: destPath,
95
- codeSecret: codeSecret,
96
- unzip: true
97
- })
98
- loading.succeed(`[${name}] 云函数代码下载成功!`)
99
- }
100
- }
1
+ import path from 'path'
2
+ import fse from 'fs-extra'
3
+ import inquirer from 'inquirer'
4
+ import { Command, ICommand } from '../common'
5
+ import { CloudBaseError } from '../../error'
6
+ import { InjectParams, CmdContext, ArgsParams } from '../../decorators'
7
+ import { downloadFunctionCode, getFunctionDetail } from '../../function'
8
+ import { loadingFactory, checkFullAccess, delSync, highlightCommand } from '../../utils'
9
+
10
+ @ICommand()
11
+ export class CodeDownload extends Command {
12
+ get options() {
13
+ return {
14
+ cmd: 'fn',
15
+ childCmd: {
16
+ cmd: 'code',
17
+ desc: '函数代码管理'
18
+ },
19
+ childSubCmd: 'download <name> [dest]',
20
+ deprecateCmd: 'functions:download <name> [dest]',
21
+ options: [
22
+ {
23
+ flags: '-e, --envId <envId>',
24
+ desc: '环境 Id'
25
+ },
26
+ { flags: '-l, --limit <limit>', desc: '返回数据长度,默认值为 20' },
27
+ {
28
+ flags: '--code-secret <codeSecret>',
29
+ desc: '代码加密的函数的 CodeSecret'
30
+ }
31
+ ],
32
+ desc: '下载云函数代码'
33
+ }
34
+ }
35
+
36
+ @InjectParams()
37
+ async execute(@CmdContext() ctx, @ArgsParams() params) {
38
+ const { envId, config, options } = ctx
39
+ const { codeSecret } = options
40
+
41
+ const name = params?.[0]
42
+ const dest = params?.[1]
43
+
44
+ if (!name) {
45
+ throw new CloudBaseError('请指定云函数名称!')
46
+ }
47
+
48
+ // 检查函数是否存在
49
+ try {
50
+ await getFunctionDetail({
51
+ envId,
52
+ codeSecret,
53
+ functionName: name
54
+ })
55
+ } catch (e) {
56
+ if (e.code === 'ResourceNotFound.FunctionName') {
57
+ throw new CloudBaseError(
58
+ `云函数 [${name}] 不存在!\n\n使用 ${highlightCommand(
59
+ 'cloudbase functions:list'
60
+ )} 命令查看已部署云函数`
61
+ )
62
+ }
63
+ return
64
+ }
65
+
66
+ let destPath = dest
67
+
68
+ // 没有指定下载路径时,使用函数名作为存储文件夹
69
+ if (!destPath) {
70
+ destPath = path.resolve(config.functionRoot, name)
71
+ // 路径已存在,询问是否覆盖
72
+ if (checkFullAccess(destPath)) {
73
+ const { override } = await inquirer.prompt({
74
+ type: 'confirm',
75
+ name: 'override',
76
+ message: '函数已经存在,是否覆盖原文件?',
77
+ default: false
78
+ })
79
+
80
+ if (!override) {
81
+ throw new CloudBaseError('下载终止!')
82
+ }
83
+ // 删除原文件
84
+ delSync([destPath])
85
+ }
86
+ await fse.ensureDir(destPath)
87
+ }
88
+
89
+ const loading = loadingFactory()
90
+ loading.start('文件下载中...')
91
+ await downloadFunctionCode({
92
+ envId,
93
+ functionName: name,
94
+ destPath: destPath,
95
+ codeSecret: codeSecret,
96
+ unzip: true
97
+ })
98
+ loading.succeed(`[${name}] 云函数代码下载成功!`)
99
+ }
100
+ }
@@ -1,62 +1,62 @@
1
- import path from 'path'
2
- import { Command, ICommand } from '../common'
3
- import { CloudBaseError } from '../../error'
4
- import { loadingFactory } from '../../utils'
5
- import { updateFunctionCode } from '../../function'
6
- import { InjectParams, CmdContext, ArgsParams } from '../../decorators'
7
-
8
- @ICommand()
9
- export class CodeUpdate extends Command {
10
- get options() {
11
- return {
12
- cmd: 'fn',
13
- childCmd: {
14
- cmd: 'code',
15
- desc: '函数代码管理'
16
- },
17
- childSubCmd: 'update <name>',
18
- deprecateCmd: 'functions:code:update <name>',
19
- options: [
20
- {
21
- flags: '-e, --envId <envId>',
22
- desc: '环境 Id'
23
- },
24
- {
25
- flags: '--code-secret <codeSecret>',
26
- desc: '传入此参数将保护代码,格式为 36 位大小写字母和数字'
27
- }
28
- ],
29
- desc: '更新云函数代码'
30
- }
31
- }
32
-
33
- @InjectParams()
34
- async execute(@CmdContext() ctx, @ArgsParams() params) {
35
- const { envId, config, options } = ctx
36
- const { codeSecret } = options
37
-
38
- const name = params?.[0]
39
-
40
- if (!name) {
41
- throw new CloudBaseError('请指定云函数名称!')
42
- }
43
-
44
- const func = config.functions.find((item) => item.name === name) || { name }
45
-
46
- const loading = loadingFactory()
47
-
48
- loading.start(`[${func.name}] 函数代码更新中...`)
49
- try {
50
- await updateFunctionCode({
51
- func,
52
- envId,
53
- codeSecret,
54
- functionRootPath: path.join(process.cwd(), config.functionRoot)
55
- })
56
- loading.succeed(`[${func.name}] 函数代码更新成功!`)
57
- } catch (e) {
58
- loading.stop()
59
- throw e
60
- }
61
- }
62
- }
1
+ import path from 'path'
2
+ import { Command, ICommand } from '../common'
3
+ import { CloudBaseError } from '../../error'
4
+ import { loadingFactory } from '../../utils'
5
+ import { updateFunctionCode } from '../../function'
6
+ import { InjectParams, CmdContext, ArgsParams } from '../../decorators'
7
+
8
+ @ICommand()
9
+ export class CodeUpdate extends Command {
10
+ get options() {
11
+ return {
12
+ cmd: 'fn',
13
+ childCmd: {
14
+ cmd: 'code',
15
+ desc: '函数代码管理'
16
+ },
17
+ childSubCmd: 'update <name>',
18
+ deprecateCmd: 'functions:code:update <name>',
19
+ options: [
20
+ {
21
+ flags: '-e, --envId <envId>',
22
+ desc: '环境 Id'
23
+ },
24
+ {
25
+ flags: '--code-secret <codeSecret>',
26
+ desc: '传入此参数将保护代码,格式为 36 位大小写字母和数字'
27
+ }
28
+ ],
29
+ desc: '更新云函数代码'
30
+ }
31
+ }
32
+
33
+ @InjectParams()
34
+ async execute(@CmdContext() ctx, @ArgsParams() params) {
35
+ const { envId, config, options } = ctx
36
+ const { codeSecret } = options
37
+
38
+ const name = params?.[0]
39
+
40
+ if (!name) {
41
+ throw new CloudBaseError('请指定云函数名称!')
42
+ }
43
+
44
+ const func = config.functions.find((item) => item.name === name) || { name }
45
+
46
+ const loading = loadingFactory()
47
+
48
+ loading.start(`[${func.name}] 函数代码更新中...`)
49
+ try {
50
+ await updateFunctionCode({
51
+ func,
52
+ envId,
53
+ codeSecret,
54
+ functionRootPath: path.join(process.cwd(), config.functionRoot)
55
+ })
56
+ loading.succeed(`[${func.name}] 函数代码更新成功!`)
57
+ } catch (e) {
58
+ loading.stop()
59
+ throw e
60
+ }
61
+ }
62
+ }
@@ -1,45 +1,45 @@
1
-
2
- import { Command, ICommand } from '../../common'
3
- import { CloudBaseError } from '../../../error'
4
- import { loadingFactory } from '../../../utils'
5
- import { deleteProvisionedConcurrencyConfig } from '../../../function'
6
- import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
-
8
-
9
- @ICommand()
10
- export class deleteProvisionedConcurrency extends Command {
11
- get options() {
12
- return {
13
- cmd: 'fn',
14
- childCmd: 'delete-provisioned-concurrency <name> <version>',
15
- options: [
16
- {
17
- flags: '-e, --envId <envId>',
18
- desc: '环境 Id'
19
- }
20
- ],
21
- desc: '删除函数版本预置并发配置'
22
- }
23
- }
24
-
25
- @InjectParams()
26
- async execute(@CmdContext() ctx, @ArgsParams() params) {
27
- const name = params?.[0]
28
- const version = params?.[1]
29
-
30
- const {
31
- envId
32
- } = ctx
33
-
34
- const loading = loadingFactory()
35
- loading.start(`删除函数 [${name}] 预置并发配置中...`)
36
-
37
- await deleteProvisionedConcurrencyConfig({
38
- envId,
39
- functionName: name,
40
- qualifier: version
41
- })
42
-
43
- loading.succeed(`删除函数 [${name}] 预置并发配置成功!`)
44
- }
45
- }
1
+
2
+ import { Command, ICommand } from '../../common'
3
+ import { CloudBaseError } from '../../../error'
4
+ import { loadingFactory } from '../../../utils'
5
+ import { deleteProvisionedConcurrencyConfig } from '../../../function'
6
+ import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
+
8
+
9
+ @ICommand()
10
+ export class deleteProvisionedConcurrency extends Command {
11
+ get options() {
12
+ return {
13
+ cmd: 'fn',
14
+ childCmd: 'delete-provisioned-concurrency <name> <version>',
15
+ options: [
16
+ {
17
+ flags: '-e, --envId <envId>',
18
+ desc: '环境 Id'
19
+ }
20
+ ],
21
+ desc: '删除函数版本预置并发配置'
22
+ }
23
+ }
24
+
25
+ @InjectParams()
26
+ async execute(@CmdContext() ctx, @ArgsParams() params) {
27
+ const name = params?.[0]
28
+ const version = params?.[1]
29
+
30
+ const {
31
+ envId
32
+ } = ctx
33
+
34
+ const loading = loadingFactory()
35
+ loading.start(`删除函数 [${name}] 预置并发配置中...`)
36
+
37
+ await deleteProvisionedConcurrencyConfig({
38
+ envId,
39
+ functionName: name,
40
+ qualifier: version
41
+ })
42
+
43
+ loading.succeed(`删除函数 [${name}] 预置并发配置成功!`)
44
+ }
45
+ }
@@ -1,3 +1,3 @@
1
- export * from './delete'
2
- export * from './list'
1
+ export * from './delete'
2
+ export * from './list'
3
3
  export * from './set'
@@ -1,58 +1,58 @@
1
-
2
- import { Command, ICommand } from '../../common'
3
- import { CloudBaseError } from '../../../error'
4
- import { loadingFactory, printHorizontalTable } from '../../../utils'
5
- import { getProvisionedConcurrencyConfig } from '../../../function'
6
- import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
- import { StatusMap, ConcurrencyTaskStatus } from '../../../constant'
8
-
9
-
10
- @ICommand()
11
- export class getProvisionedConcurrency extends Command {
12
- get options() {
13
- return {
14
- cmd: 'fn',
15
- childCmd: 'get-provisioned-concurrency <name> [version]',
16
- options: [
17
- {
18
- flags: '-e, --envId <envId>',
19
- desc: '环境 Id'
20
- }
21
- ],
22
- desc: '获取函数版本预置并发配置'
23
- }
24
- }
25
-
26
- @InjectParams()
27
- async execute(@CmdContext() ctx, @ArgsParams() params, @ArgsOptions() options) {
28
- const name = params?.[0]
29
- const version = params?.[1]
30
-
31
- const {
32
- envId
33
- } = ctx
34
-
35
- const loading = loadingFactory()
36
- loading.start(`拉取函数 [${name}] 预置并发配置中...`)
37
-
38
- const res = await getProvisionedConcurrencyConfig({
39
- envId,
40
- functionName: name,
41
- qualifier: version
42
- })
43
-
44
- loading.stop()
45
-
46
- const head: string[] = ['设置并发数', '已完成并发数', '预置任务状态', '状态说明', '版本号']
47
-
48
- const tableData = res.Allocated.map((item) => [
49
- item.AllocatedProvisionedConcurrencyNum,
50
- item.AvailableProvisionedConcurrencyNum,
51
- ConcurrencyTaskStatus[item.Status] || '无',
52
- item.StatusReason,
53
- item.Qualifier
54
- ])
55
-
56
- printHorizontalTable(head, tableData)
57
- }
58
- }
1
+
2
+ import { Command, ICommand } from '../../common'
3
+ import { CloudBaseError } from '../../../error'
4
+ import { loadingFactory, printHorizontalTable } from '../../../utils'
5
+ import { getProvisionedConcurrencyConfig } from '../../../function'
6
+ import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
+ import { StatusMap, ConcurrencyTaskStatus } from '../../../constant'
8
+
9
+
10
+ @ICommand()
11
+ export class getProvisionedConcurrency extends Command {
12
+ get options() {
13
+ return {
14
+ cmd: 'fn',
15
+ childCmd: 'get-provisioned-concurrency <name> [version]',
16
+ options: [
17
+ {
18
+ flags: '-e, --envId <envId>',
19
+ desc: '环境 Id'
20
+ }
21
+ ],
22
+ desc: '获取函数版本预置并发配置'
23
+ }
24
+ }
25
+
26
+ @InjectParams()
27
+ async execute(@CmdContext() ctx, @ArgsParams() params, @ArgsOptions() options) {
28
+ const name = params?.[0]
29
+ const version = params?.[1]
30
+
31
+ const {
32
+ envId
33
+ } = ctx
34
+
35
+ const loading = loadingFactory()
36
+ loading.start(`拉取函数 [${name}] 预置并发配置中...`)
37
+
38
+ const res = await getProvisionedConcurrencyConfig({
39
+ envId,
40
+ functionName: name,
41
+ qualifier: version
42
+ })
43
+
44
+ loading.stop()
45
+
46
+ const head: string[] = ['设置并发数', '已完成并发数', '预置任务状态', '状态说明', '版本号']
47
+
48
+ const tableData = res.Allocated.map((item) => [
49
+ item.AllocatedProvisionedConcurrencyNum,
50
+ item.AvailableProvisionedConcurrencyNum,
51
+ ConcurrencyTaskStatus[item.Status] || '无',
52
+ item.StatusReason,
53
+ item.Qualifier
54
+ ])
55
+
56
+ printHorizontalTable(head, tableData)
57
+ }
58
+ }
@@ -1,47 +1,47 @@
1
-
2
- import { Command, ICommand } from '../../common'
3
- import { CloudBaseError } from '../../../error'
4
- import { loadingFactory } from '../../../utils'
5
- import { setProvisionedConcurrencyConfig } from '../../../function'
6
- import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
-
8
-
9
- @ICommand()
10
- export class setProvisionedConcurrency extends Command {
11
- get options() {
12
- return {
13
- cmd: 'fn',
14
- childCmd: 'set-provisioned-concurrency <name> <version> <concurrency>',
15
- options: [
16
- {
17
- flags: '-e, --envId <envId>',
18
- desc: '环境 Id'
19
- }
20
- ],
21
- desc: '设置函数版本预置并发'
22
- }
23
- }
24
-
25
- @InjectParams()
26
- async execute(@CmdContext() ctx, @ArgsParams() params) {
27
- const name = params?.[0]
28
- const version = params?.[1]
29
- const concurrency = Number(params?.[2] || 0)
30
-
31
- const {
32
- envId
33
- } = ctx
34
-
35
- const loading = loadingFactory()
36
- loading.start(`配置函数 [${name}] 预置并发中...`)
37
-
38
- await setProvisionedConcurrencyConfig({
39
- envId,
40
- functionName: name,
41
- qualifier: version,
42
- versionProvisionedConcurrencyNum: concurrency
43
- })
44
-
45
- loading.succeed(`配置函数 [${name}] 预置并发成功!`)
46
- }
47
- }
1
+
2
+ import { Command, ICommand } from '../../common'
3
+ import { CloudBaseError } from '../../../error'
4
+ import { loadingFactory } from '../../../utils'
5
+ import { setProvisionedConcurrencyConfig } from '../../../function'
6
+ import { InjectParams, CmdContext, ArgsParams, ArgsOptions } from '../../../decorators'
7
+
8
+
9
+ @ICommand()
10
+ export class setProvisionedConcurrency extends Command {
11
+ get options() {
12
+ return {
13
+ cmd: 'fn',
14
+ childCmd: 'set-provisioned-concurrency <name> <version> <concurrency>',
15
+ options: [
16
+ {
17
+ flags: '-e, --envId <envId>',
18
+ desc: '环境 Id'
19
+ }
20
+ ],
21
+ desc: '设置函数版本预置并发'
22
+ }
23
+ }
24
+
25
+ @InjectParams()
26
+ async execute(@CmdContext() ctx, @ArgsParams() params) {
27
+ const name = params?.[0]
28
+ const version = params?.[1]
29
+ const concurrency = Number(params?.[2] || 0)
30
+
31
+ const {
32
+ envId
33
+ } = ctx
34
+
35
+ const loading = loadingFactory()
36
+ loading.start(`配置函数 [${name}] 预置并发中...`)
37
+
38
+ await setProvisionedConcurrencyConfig({
39
+ envId,
40
+ functionName: name,
41
+ qualifier: version,
42
+ versionProvisionedConcurrencyNum: concurrency
43
+ })
44
+
45
+ loading.succeed(`配置函数 [${name}] 预置并发成功!`)
46
+ }
47
+ }