@cloudbase/cli 2.0.2 → 2.0.3

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 (201) 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/.vscode/settings.json +3 -0
  7. package/LICENSE +5 -5
  8. package/README.md +35 -35
  9. package/bin/cloudbase.js +5 -5
  10. package/bin/tcb.js +0 -0
  11. package/changelog.md +6 -6
  12. package/jest.config.js +17 -17
  13. package/lib/commands/account/login.js +18 -18
  14. package/lib/commands/storage/storage.js +1 -1
  15. package/lib/env/login.js +7 -7
  16. package/lib/run/service/deployPackage.js +2 -2
  17. package/package.json +2 -2
  18. package/post-install.js +61 -61
  19. package/runtime/nodejs/bootstrap.js +255 -255
  20. package/runtime/nodejs/runtime.js +183 -183
  21. package/src/auth/index.ts +1 -1
  22. package/src/auth/login.ts +91 -91
  23. package/src/auth/logout.ts +7 -7
  24. package/src/commands/account/index.ts +2 -2
  25. package/src/commands/account/login.ts +192 -192
  26. package/src/commands/account/logout.ts +24 -24
  27. package/src/commands/env/base.ts +90 -90
  28. package/src/commands/env/create.ts +92 -92
  29. package/src/commands/env/domain.ts +186 -186
  30. package/src/commands/env/index.ts +4 -4
  31. package/src/commands/env/login.ts +235 -235
  32. package/src/commands/framework/index.ts +124 -124
  33. package/src/commands/functions/alias/getRoute.ts +76 -76
  34. package/src/commands/functions/alias/index.ts +2 -2
  35. package/src/commands/functions/alias/setRoute.ts +82 -82
  36. package/src/commands/functions/code-download.ts +100 -100
  37. package/src/commands/functions/code-update.ts +62 -62
  38. package/src/commands/functions/concurrency/delete.ts +45 -45
  39. package/src/commands/functions/concurrency/index.ts +2 -2
  40. package/src/commands/functions/concurrency/list.ts +58 -58
  41. package/src/commands/functions/concurrency/set.ts +47 -47
  42. package/src/commands/functions/config-update.ts +76 -76
  43. package/src/commands/functions/copy.ts +62 -62
  44. package/src/commands/functions/delete.ts +79 -79
  45. package/src/commands/functions/deploy.ts +293 -293
  46. package/src/commands/functions/detail.ts +138 -138
  47. package/src/commands/functions/index.ts +16 -16
  48. package/src/commands/functions/invoke.ts +121 -121
  49. package/src/commands/functions/layer/bind.ts +182 -182
  50. package/src/commands/functions/layer/common.ts +8 -8
  51. package/src/commands/functions/layer/create.ts +49 -49
  52. package/src/commands/functions/layer/delete.ts +73 -73
  53. package/src/commands/functions/layer/download.ts +92 -92
  54. package/src/commands/functions/layer/index.ts +7 -7
  55. package/src/commands/functions/layer/list.ts +94 -94
  56. package/src/commands/functions/layer/sort.ts +76 -76
  57. package/src/commands/functions/list.ts +68 -68
  58. package/src/commands/functions/log.ts +148 -148
  59. package/src/commands/functions/run.ts +249 -249
  60. package/src/commands/functions/trigger-create.ts +79 -79
  61. package/src/commands/functions/trigger-delete.ts +105 -105
  62. package/src/commands/functions/version/index.ts +1 -1
  63. package/src/commands/functions/version/list.ts +73 -73
  64. package/src/commands/functions/version/publish.ts +43 -43
  65. package/src/commands/gateway/create.ts +109 -109
  66. package/src/commands/gateway/delete.ts +81 -81
  67. package/src/commands/gateway/domain.ts +159 -159
  68. package/src/commands/gateway/index.ts +5 -5
  69. package/src/commands/gateway/list.ts +76 -76
  70. package/src/commands/gateway/switch.ts +107 -107
  71. package/src/commands/helpers/index.ts +2 -2
  72. package/src/commands/helpers/init.ts +431 -431
  73. package/src/commands/helpers/new.ts +117 -117
  74. package/src/commands/helpers/open.ts +67 -67
  75. package/src/commands/hosting/hosting.ts +360 -360
  76. package/src/commands/index.ts +13 -13
  77. package/src/commands/lowcode/app.ts +34 -34
  78. package/src/commands/lowcode/comps.ts +322 -322
  79. package/src/commands/lowcode/index.ts +1 -1
  80. package/src/commands/lowcode/utils.ts +24 -24
  81. package/src/commands/run/image/index.ts +4 -4
  82. package/src/commands/run/standalonegateway/common.ts +7 -7
  83. package/src/commands/run/standalonegateway/create.ts +85 -85
  84. package/src/commands/run/standalonegateway/destroy.ts +59 -59
  85. package/src/commands/run/standalonegateway/index.ts +4 -4
  86. package/src/commands/run/standalonegateway/list.ts +53 -53
  87. package/src/commands/run/standalonegateway/package.ts +62 -62
  88. package/src/commands/run/standalonegateway/turn.ts +63 -63
  89. package/src/commands/run/version/index.ts +4 -4
  90. package/src/commands/smart.ts +132 -132
  91. package/src/commands/storage/storage.ts +464 -464
  92. package/src/commands/third/thirdAttach.ts +49 -49
  93. package/src/completion/index.ts +13 -13
  94. package/src/decorators/captureError.ts +25 -25
  95. package/src/decorators/constants.ts +12 -12
  96. package/src/decorators/deprecate.ts +25 -25
  97. package/src/decorators/guard.ts +42 -42
  98. package/src/decorators/index.ts +7 -7
  99. package/src/decorators/injectParams.ts +54 -54
  100. package/src/decorators/params/common.ts +28 -28
  101. package/src/decorators/params/index.ts +35 -35
  102. package/src/env/domain.ts +33 -33
  103. package/src/env/index.ts +63 -63
  104. package/src/env/login.ts +80 -80
  105. package/src/error.ts +36 -36
  106. package/src/function/alias.ts +43 -43
  107. package/src/function/base.ts +253 -253
  108. package/src/function/code.ts +55 -55
  109. package/src/function/concurrency.ts +57 -57
  110. package/src/function/create.ts +78 -78
  111. package/src/function/delete.ts +42 -42
  112. package/src/function/index.ts +10 -10
  113. package/src/function/layer/attach.ts +68 -68
  114. package/src/function/layer/create.ts +63 -63
  115. package/src/function/layer/delete.ts +21 -21
  116. package/src/function/layer/download.ts +54 -54
  117. package/src/function/layer/index.ts +7 -7
  118. package/src/function/layer/list.ts +32 -32
  119. package/src/function/layer/sort.ts +24 -24
  120. package/src/function/trigger.ts +97 -97
  121. package/src/function/update.ts +35 -35
  122. package/src/function/version.ts +38 -38
  123. package/src/function/vpc.ts +22 -22
  124. package/src/gateway/index.ts +137 -137
  125. package/src/hosting.ts +212 -212
  126. package/src/index.ts +13 -13
  127. package/src/logger.ts +17 -17
  128. package/src/run/create.ts +23 -23
  129. package/src/run/delete.ts +15 -15
  130. package/src/run/image/build.ts +36 -36
  131. package/src/run/image/delete.ts +13 -13
  132. package/src/run/image/index.ts +3 -3
  133. package/src/run/image/info.ts +26 -26
  134. package/src/run/list.ts +29 -29
  135. package/src/run/repo.ts +24 -24
  136. package/src/run/service/deployPackage.ts +1 -1
  137. package/src/run/standalonegateway/create.ts +24 -24
  138. package/src/run/standalonegateway/destroy.ts +19 -19
  139. package/src/run/standalonegateway/index.ts +4 -4
  140. package/src/run/standalonegateway/list.ts +74 -74
  141. package/src/run/standalonegateway/package/list.ts +24 -24
  142. package/src/run/standalonegateway/turn/index.ts +1 -1
  143. package/src/run/standalonegateway/turn/off.ts +19 -19
  144. package/src/run/standalonegateway/turn/on.ts +19 -19
  145. package/src/run/version/create.ts +68 -68
  146. package/src/run/version/delete.ts +15 -15
  147. package/src/run/version/index.ts +5 -5
  148. package/src/run/version/list.ts +16 -16
  149. package/src/run/version/modify.ts +16 -16
  150. package/src/run/version/repo.ts +27 -27
  151. package/src/run/version/update.ts +58 -58
  152. package/src/storage.ts +114 -114
  153. package/src/third/index.ts +12 -12
  154. package/src/utils/auth.ts +15 -15
  155. package/src/utils/cli-table.ts +23 -23
  156. package/src/utils/config.ts +39 -39
  157. package/src/utils/env.ts +244 -244
  158. package/src/utils/fs/del.ts +5 -5
  159. package/src/utils/fs/index.ts +71 -71
  160. package/src/utils/function-packer.ts +97 -97
  161. package/src/utils/log.ts +81 -81
  162. package/src/utils/net/cloud-api-request.ts +62 -62
  163. package/src/utils/net/credential.ts +53 -53
  164. package/src/utils/net/index.ts +4 -4
  165. package/src/utils/net/manager-service.ts +36 -36
  166. package/src/utils/net/proxy.ts +6 -6
  167. package/src/utils/notice.ts +28 -28
  168. package/src/utils/output/highlight.ts +5 -5
  169. package/src/utils/output/index.ts +2 -2
  170. package/src/utils/output/link.ts +10 -10
  171. package/src/utils/output/loading.ts +82 -82
  172. package/src/utils/parallel.ts +82 -82
  173. package/src/utils/platform/index.ts +2 -2
  174. package/src/utils/platform/mac.ts +21 -21
  175. package/src/utils/platform/os.ts +64 -64
  176. package/src/utils/platform/port.ts +10 -10
  177. package/src/utils/progress-bar.ts +38 -38
  178. package/src/utils/prompt/select.ts +59 -59
  179. package/src/utils/reporter/agree.ts +20 -20
  180. package/src/utils/reporter/download.ts +26 -26
  181. package/src/utils/reporter/index.ts +3 -3
  182. package/src/utils/reporter/usage.ts +20 -20
  183. package/src/utils/store/auth.ts +49 -49
  184. package/src/utils/store/common.ts +8 -8
  185. package/src/utils/store/db.ts +68 -68
  186. package/src/utils/store/index.ts +4 -4
  187. package/src/utils/store/usage.ts +12 -12
  188. package/src/utils/template.ts +170 -170
  189. package/src/utils/tools/encoding.ts +8 -8
  190. package/src/utils/tools/index.ts +4 -4
  191. package/src/utils/tools/object.ts +33 -33
  192. package/src/utils/tools/time.ts +38 -38
  193. package/src/utils/tools/uid.ts +19 -19
  194. package/templates/html/loginFail.html +90 -90
  195. package/templates/html/loginSuccess.html +86 -86
  196. package/templates/server/node/_gitignore +54 -54
  197. package/templates/server/node/cloudbaserc.json +10 -10
  198. package/templates/server/node/index.js +5 -5
  199. package/templates/server/node/package.json +9 -9
  200. package/tsconfig.json +19 -19
  201. package/tsconfig.test.json +13 -13
package/src/env/index.ts CHANGED
@@ -1,63 +1,63 @@
1
- import { CloudApiService, getMangerService } from '../utils/net'
2
- export * from './domain'
3
- export * from './login'
4
-
5
- const tcbService = CloudApiService.getInstance('tcb')
6
-
7
- // 初始化云开发服务
8
- // 当用户没开通云开发服务时,需要调用此接口初始化云开发服务
9
- export async function initTcb(skey: string) {
10
- const res: any = await tcbService.request('InitTcb', {
11
- Skey: skey
12
- })
13
- return res
14
- }
15
-
16
- // 创建新环境
17
- export async function createEnv({ alias, paymentMode }) {
18
- const { env } = await getMangerService()
19
-
20
- return env.createEnv({
21
- paymentMode,
22
- name: alias
23
- })
24
- }
25
-
26
- // 获取环境信息
27
- export async function getEnvInfo(envId: string) {
28
- const { EnvList } = await tcbService.request('DescribeEnvs', {
29
- EnvId: envId
30
- })
31
-
32
- return EnvList?.length ? EnvList[0] : {}
33
- }
34
-
35
- // 列出所有环境
36
- export async function listEnvs(options: { source?: string[] } = {}): Promise<any[]> {
37
- const { source } = options
38
- const res: any = await tcbService.request('DescribeEnvs', {
39
- IsVisible: false,
40
- Channels: ['dcloud']
41
- })
42
- let { EnvList = [] } = res
43
- // 过滤为指定 source 环境
44
- if (source && Array.isArray(source)) {
45
- EnvList = EnvList.filter((item) => source.includes(item.Source))
46
- }
47
- return EnvList
48
- }
49
-
50
- // 修改环境信息
51
- export async function updateEnvInfo({ envId, alias }) {
52
- await tcbService.request('ModifyEnv', {
53
- EnvId: envId,
54
- Alias: alias
55
- })
56
- }
57
-
58
- // 获取 Qcloud 环境数量上限
59
- export async function getEnvLimit(source = 'qcloud') {
60
- return tcbService.request('DescribeEnvLimit', {
61
- Source: source
62
- })
63
- }
1
+ import { CloudApiService, getMangerService } from '../utils/net'
2
+ export * from './domain'
3
+ export * from './login'
4
+
5
+ const tcbService = CloudApiService.getInstance('tcb')
6
+
7
+ // 初始化云开发服务
8
+ // 当用户没开通云开发服务时,需要调用此接口初始化云开发服务
9
+ export async function initTcb(skey: string) {
10
+ const res: any = await tcbService.request('InitTcb', {
11
+ Skey: skey
12
+ })
13
+ return res
14
+ }
15
+
16
+ // 创建新环境
17
+ export async function createEnv({ alias, paymentMode }) {
18
+ const { env } = await getMangerService()
19
+
20
+ return env.createEnv({
21
+ paymentMode,
22
+ name: alias
23
+ })
24
+ }
25
+
26
+ // 获取环境信息
27
+ export async function getEnvInfo(envId: string) {
28
+ const { EnvList } = await tcbService.request('DescribeEnvs', {
29
+ EnvId: envId
30
+ })
31
+
32
+ return EnvList?.length ? EnvList[0] : {}
33
+ }
34
+
35
+ // 列出所有环境
36
+ export async function listEnvs(options: { source?: string[] } = {}): Promise<any[]> {
37
+ const { source } = options
38
+ const res: any = await tcbService.request('DescribeEnvs', {
39
+ IsVisible: false,
40
+ Channels: ['dcloud']
41
+ })
42
+ let { EnvList = [] } = res
43
+ // 过滤为指定 source 环境
44
+ if (source && Array.isArray(source)) {
45
+ EnvList = EnvList.filter((item) => source.includes(item.Source))
46
+ }
47
+ return EnvList
48
+ }
49
+
50
+ // 修改环境信息
51
+ export async function updateEnvInfo({ envId, alias }) {
52
+ await tcbService.request('ModifyEnv', {
53
+ EnvId: envId,
54
+ Alias: alias
55
+ })
56
+ }
57
+
58
+ // 获取 Qcloud 环境数量上限
59
+ export async function getEnvLimit(source = 'qcloud') {
60
+ return tcbService.request('DescribeEnvLimit', {
61
+ Source: source
62
+ })
63
+ }
package/src/env/login.ts CHANGED
@@ -1,80 +1,80 @@
1
- import crypto from 'crypto'
2
- import { CloudApiService } from '../utils/net'
3
- import { CloudBaseError } from '../error'
4
-
5
- const publicRsaKey = `
6
- -----BEGIN PUBLIC KEY-----
7
- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0ZLB0ZpWWFsHPnDDw++Nc2wI3
8
- nl2uyOrIJ5FUfxt4GAmt1Faf5pgMxAnL9exEUrrUDUX8Ri1R0KyfnHQQwCvKt8T8
9
- bgILIJe9UB8e9dvFqgqH2oA8Vqwi0YqDcvFLFJk2BJbm/0QYtZ563FumW8LEXAgu
10
- UeHi/0OZN9vQ33jWMQIDAQAB
11
- -----END PUBLIC KEY-----
12
- `
13
- function rsaEncrypt(data: string): string {
14
- const buffer = Buffer.from(data)
15
- const encrypted = crypto.publicEncrypt(
16
- {
17
- key: publicRsaKey,
18
- padding: crypto.constants.RSA_PKCS1_PADDING
19
- },
20
- buffer
21
- )
22
- return encrypted.toString('base64')
23
- }
24
-
25
- const tcbService = CloudApiService.getInstance('tcb')
26
-
27
- // 拉取登录配置列表
28
- export async function getLoginConfigList({ envId }) {
29
- const { ConfigList = [] }: any = await tcbService.request('DescribeLoginConfigs', {
30
- EnvId: envId
31
- })
32
-
33
- return ConfigList
34
- }
35
-
36
- // 创建登录方式
37
- export async function createLoginConfig({ envId, platform, appId, appSecret }) {
38
- const validPlatform = ['WECHAT-OPEN', 'WECHAT-PUBLIC', 'ANONYMOUS']
39
- if (!validPlatform.includes(platform)) {
40
- throw new CloudBaseError(
41
- `Invalid platform value: ${platform}. Now only support 'WECHAT-OPEN', 'WECHAT-PUBLIC', 'ANONYMOUS`
42
- )
43
- }
44
- const params: any = {
45
- EnvId: envId,
46
- // 平台 “ANONYMOUS" "WECHAT-OPEN" "WECHAT-PUBLIC"
47
- Platform: platform,
48
- PlatformId: appId,
49
- PlatformSecret: rsaEncrypt(appSecret),
50
- Status: 'ENABLE'
51
- }
52
-
53
- await tcbService.request('CreateLoginConfig', params)
54
- }
55
-
56
- // 更新登录方式
57
- export async function updateLoginConfig({
58
- configId,
59
- envId,
60
- status = 'ENABLE',
61
- appId = '',
62
- appSecret = ''
63
- }) {
64
- const validStatus = ['ENABLE', 'DISABLE']
65
- if (!validStatus.includes(status)) {
66
- throw new CloudBaseError(
67
- `Invalid status value: ${status}. Only support 'ENABLE', 'DISABLE'`
68
- )
69
- }
70
- const params: any = {
71
- EnvId: envId,
72
- ConfigId: configId,
73
- Status: status
74
- }
75
-
76
- appId && (params.PlatformId = appId)
77
- appSecret && (params.PlatformSecret = rsaEncrypt(appSecret))
78
-
79
- await tcbService.request('UpdateLoginConfig', params)
80
- }
1
+ import crypto from 'crypto'
2
+ import { CloudApiService } from '../utils/net'
3
+ import { CloudBaseError } from '../error'
4
+
5
+ const publicRsaKey = `
6
+ -----BEGIN PUBLIC KEY-----
7
+ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0ZLB0ZpWWFsHPnDDw++Nc2wI3
8
+ nl2uyOrIJ5FUfxt4GAmt1Faf5pgMxAnL9exEUrrUDUX8Ri1R0KyfnHQQwCvKt8T8
9
+ bgILIJe9UB8e9dvFqgqH2oA8Vqwi0YqDcvFLFJk2BJbm/0QYtZ563FumW8LEXAgu
10
+ UeHi/0OZN9vQ33jWMQIDAQAB
11
+ -----END PUBLIC KEY-----
12
+ `
13
+ function rsaEncrypt(data: string): string {
14
+ const buffer = Buffer.from(data)
15
+ const encrypted = crypto.publicEncrypt(
16
+ {
17
+ key: publicRsaKey,
18
+ padding: crypto.constants.RSA_PKCS1_PADDING
19
+ },
20
+ buffer
21
+ )
22
+ return encrypted.toString('base64')
23
+ }
24
+
25
+ const tcbService = CloudApiService.getInstance('tcb')
26
+
27
+ // 拉取登录配置列表
28
+ export async function getLoginConfigList({ envId }) {
29
+ const { ConfigList = [] }: any = await tcbService.request('DescribeLoginConfigs', {
30
+ EnvId: envId
31
+ })
32
+
33
+ return ConfigList
34
+ }
35
+
36
+ // 创建登录方式
37
+ export async function createLoginConfig({ envId, platform, appId, appSecret }) {
38
+ const validPlatform = ['WECHAT-OPEN', 'WECHAT-PUBLIC', 'ANONYMOUS']
39
+ if (!validPlatform.includes(platform)) {
40
+ throw new CloudBaseError(
41
+ `Invalid platform value: ${platform}. Now only support 'WECHAT-OPEN', 'WECHAT-PUBLIC', 'ANONYMOUS`
42
+ )
43
+ }
44
+ const params: any = {
45
+ EnvId: envId,
46
+ // 平台 “ANONYMOUS" "WECHAT-OPEN" "WECHAT-PUBLIC"
47
+ Platform: platform,
48
+ PlatformId: appId,
49
+ PlatformSecret: rsaEncrypt(appSecret),
50
+ Status: 'ENABLE'
51
+ }
52
+
53
+ await tcbService.request('CreateLoginConfig', params)
54
+ }
55
+
56
+ // 更新登录方式
57
+ export async function updateLoginConfig({
58
+ configId,
59
+ envId,
60
+ status = 'ENABLE',
61
+ appId = '',
62
+ appSecret = ''
63
+ }) {
64
+ const validStatus = ['ENABLE', 'DISABLE']
65
+ if (!validStatus.includes(status)) {
66
+ throw new CloudBaseError(
67
+ `Invalid status value: ${status}. Only support 'ENABLE', 'DISABLE'`
68
+ )
69
+ }
70
+ const params: any = {
71
+ EnvId: envId,
72
+ ConfigId: configId,
73
+ Status: status
74
+ }
75
+
76
+ appId && (params.PlatformId = appId)
77
+ appSecret && (params.PlatformSecret = rsaEncrypt(appSecret))
78
+
79
+ await tcbService.request('UpdateLoginConfig', params)
80
+ }
package/src/error.ts CHANGED
@@ -1,36 +1,36 @@
1
- interface Options {
2
- exit?: number
3
- original?: Error | undefined
4
- code?: string | number
5
- requestId?: string
6
- action?: string
7
- meta?: Record<string, any>
8
- }
9
-
10
- export class CloudBaseError extends Error {
11
- readonly exit: number
12
- readonly message: string
13
- readonly name = 'CloudBaseError'
14
- readonly original: Error | undefined
15
- readonly code: string | number
16
- readonly requestId: string
17
- readonly action: string
18
- readonly meta: any
19
-
20
- constructor(message: string, options: Options = {}) {
21
- super()
22
- this.message = message
23
- const {
24
- code = '',
25
- action = '',
26
- original = null,
27
- requestId = '',
28
- meta = {}
29
- } = options
30
- this.original = original
31
- this.code = code
32
- this.requestId = requestId
33
- this.action = action
34
- this.meta = meta
35
- }
36
- }
1
+ interface Options {
2
+ exit?: number
3
+ original?: Error | undefined
4
+ code?: string | number
5
+ requestId?: string
6
+ action?: string
7
+ meta?: Record<string, any>
8
+ }
9
+
10
+ export class CloudBaseError extends Error {
11
+ readonly exit: number
12
+ readonly message: string
13
+ readonly name = 'CloudBaseError'
14
+ readonly original: Error | undefined
15
+ readonly code: string | number
16
+ readonly requestId: string
17
+ readonly action: string
18
+ readonly meta: any
19
+
20
+ constructor(message: string, options: Options = {}) {
21
+ super()
22
+ this.message = message
23
+ const {
24
+ code = '',
25
+ action = '',
26
+ original = null,
27
+ requestId = '',
28
+ meta = {}
29
+ } = options
30
+ this.original = original
31
+ this.code = code
32
+ this.requestId = requestId
33
+ this.action = action
34
+ this.meta = meta
35
+ }
36
+ }
@@ -1,43 +1,43 @@
1
- import { CloudBaseError } from '../error'
2
- import { IUpdateFunctionAliasConfig, IGetFunctionAlias, IGetFunctionAliasRes } from '../types'
3
- import { getFunctionService } from './base'
4
-
5
- // 设置函数流量配置信息(ALIAS 配置)
6
- export async function setFunctionAliasConfig(options: IUpdateFunctionAliasConfig) {
7
- const { envId, functionName, name, functionVersion, description, routingConfig } = options
8
-
9
- const scfService = await getFunctionService(envId)
10
-
11
- try {
12
- await scfService.updateFunctionAliasConfig({
13
- functionName,
14
- name,
15
- functionVersion,
16
- description,
17
- routingConfig
18
- })
19
- } catch (e) {
20
- throw new CloudBaseError(`[${functionName}] 设置函数流量配置失败: ${e.message}`, {
21
- code: e.code
22
- })
23
- }
24
- }
25
-
26
- // 查询函数别名配置信息
27
- export async function getFunctionAliasConfig(options: IGetFunctionAlias): Promise<IGetFunctionAliasRes> {
28
- const { envId, functionName, name } = options
29
-
30
- const scfService = await getFunctionService(envId)
31
-
32
- try {
33
- return scfService.getFunctionAlias({
34
- functionName,
35
- name
36
- })
37
- } catch (e) {
38
- throw new CloudBaseError(`[${functionName}] 查询函数别名配置失败: ${e.message}`, {
39
- code: e.code
40
- })
41
- }
42
- }
43
-
1
+ import { CloudBaseError } from '../error'
2
+ import { IUpdateFunctionAliasConfig, IGetFunctionAlias, IGetFunctionAliasRes } from '../types'
3
+ import { getFunctionService } from './base'
4
+
5
+ // 设置函数流量配置信息(ALIAS 配置)
6
+ export async function setFunctionAliasConfig(options: IUpdateFunctionAliasConfig) {
7
+ const { envId, functionName, name, functionVersion, description, routingConfig } = options
8
+
9
+ const scfService = await getFunctionService(envId)
10
+
11
+ try {
12
+ await scfService.updateFunctionAliasConfig({
13
+ functionName,
14
+ name,
15
+ functionVersion,
16
+ description,
17
+ routingConfig
18
+ })
19
+ } catch (e) {
20
+ throw new CloudBaseError(`[${functionName}] 设置函数流量配置失败: ${e.message}`, {
21
+ code: e.code
22
+ })
23
+ }
24
+ }
25
+
26
+ // 查询函数别名配置信息
27
+ export async function getFunctionAliasConfig(options: IGetFunctionAlias): Promise<IGetFunctionAliasRes> {
28
+ const { envId, functionName, name } = options
29
+
30
+ const scfService = await getFunctionService(envId)
31
+
32
+ try {
33
+ return scfService.getFunctionAlias({
34
+ functionName,
35
+ name
36
+ })
37
+ } catch (e) {
38
+ throw new CloudBaseError(`[${functionName}] 查询函数别名配置失败: ${e.message}`, {
39
+ code: e.code
40
+ })
41
+ }
42
+ }
43
+