@cloudbase/cli 2.0.0 → 2.0.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.
Files changed (206) 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 +6 -4
  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/lib/run/service/deployPackage.js +6 -4
  16. package/lib/utils/net/http-request.js +4 -4
  17. package/lib/utils/tcbrApi/tcbr-cloud-api/request.js +3 -3
  18. package/package.json +16 -16
  19. package/post-install.js +61 -61
  20. package/runtime/nodejs/bootstrap.js +255 -255
  21. package/runtime/nodejs/runtime.js +183 -183
  22. package/src/auth/index.ts +1 -1
  23. package/src/auth/login.ts +91 -91
  24. package/src/auth/logout.ts +7 -7
  25. package/src/commands/account/index.ts +2 -2
  26. package/src/commands/account/login.ts +192 -192
  27. package/src/commands/account/logout.ts +24 -24
  28. package/src/commands/common.ts +246 -246
  29. package/src/commands/env/base.ts +90 -90
  30. package/src/commands/env/create.ts +92 -92
  31. package/src/commands/env/domain.ts +186 -186
  32. package/src/commands/env/index.ts +4 -4
  33. package/src/commands/env/login.ts +235 -235
  34. package/src/commands/framework/index.ts +124 -124
  35. package/src/commands/functions/alias/getRoute.ts +76 -76
  36. package/src/commands/functions/alias/index.ts +2 -2
  37. package/src/commands/functions/alias/setRoute.ts +82 -82
  38. package/src/commands/functions/code-download.ts +100 -100
  39. package/src/commands/functions/code-update.ts +62 -62
  40. package/src/commands/functions/concurrency/delete.ts +45 -45
  41. package/src/commands/functions/concurrency/index.ts +2 -2
  42. package/src/commands/functions/concurrency/list.ts +58 -58
  43. package/src/commands/functions/concurrency/set.ts +47 -47
  44. package/src/commands/functions/config-update.ts +76 -76
  45. package/src/commands/functions/copy.ts +62 -62
  46. package/src/commands/functions/delete.ts +79 -79
  47. package/src/commands/functions/deploy.ts +293 -293
  48. package/src/commands/functions/detail.ts +138 -138
  49. package/src/commands/functions/index.ts +16 -16
  50. package/src/commands/functions/invoke.ts +121 -121
  51. package/src/commands/functions/layer/bind.ts +182 -182
  52. package/src/commands/functions/layer/common.ts +8 -8
  53. package/src/commands/functions/layer/create.ts +49 -49
  54. package/src/commands/functions/layer/delete.ts +73 -73
  55. package/src/commands/functions/layer/download.ts +92 -92
  56. package/src/commands/functions/layer/index.ts +7 -7
  57. package/src/commands/functions/layer/list.ts +94 -94
  58. package/src/commands/functions/layer/sort.ts +76 -76
  59. package/src/commands/functions/list.ts +68 -68
  60. package/src/commands/functions/log.ts +148 -148
  61. package/src/commands/functions/run.ts +249 -249
  62. package/src/commands/functions/trigger-create.ts +79 -79
  63. package/src/commands/functions/trigger-delete.ts +105 -105
  64. package/src/commands/functions/version/index.ts +1 -1
  65. package/src/commands/functions/version/list.ts +73 -73
  66. package/src/commands/functions/version/publish.ts +43 -43
  67. package/src/commands/gateway/create.ts +109 -109
  68. package/src/commands/gateway/delete.ts +81 -81
  69. package/src/commands/gateway/domain.ts +159 -159
  70. package/src/commands/gateway/index.ts +5 -5
  71. package/src/commands/gateway/list.ts +76 -76
  72. package/src/commands/gateway/switch.ts +107 -107
  73. package/src/commands/helpers/index.ts +2 -2
  74. package/src/commands/helpers/init.ts +431 -431
  75. package/src/commands/helpers/new.ts +117 -117
  76. package/src/commands/helpers/open.ts +67 -67
  77. package/src/commands/hosting/hosting.ts +360 -360
  78. package/src/commands/index.ts +13 -13
  79. package/src/commands/lowcode/app.ts +34 -34
  80. package/src/commands/lowcode/comps.ts +322 -322
  81. package/src/commands/lowcode/index.ts +1 -1
  82. package/src/commands/lowcode/utils.ts +24 -24
  83. package/src/commands/run/image/index.ts +4 -4
  84. package/src/commands/run/standalonegateway/common.ts +7 -7
  85. package/src/commands/run/standalonegateway/create.ts +85 -85
  86. package/src/commands/run/standalonegateway/destroy.ts +59 -59
  87. package/src/commands/run/standalonegateway/index.ts +4 -4
  88. package/src/commands/run/standalonegateway/list.ts +53 -53
  89. package/src/commands/run/standalonegateway/package.ts +62 -62
  90. package/src/commands/run/standalonegateway/turn.ts +63 -63
  91. package/src/commands/run/version/index.ts +4 -4
  92. package/src/commands/smart.ts +132 -132
  93. package/src/commands/storage/storage.ts +464 -464
  94. package/src/commands/third/thirdAttach.ts +49 -49
  95. package/src/completion/index.ts +13 -13
  96. package/src/decorators/captureError.ts +25 -25
  97. package/src/decorators/constants.ts +12 -12
  98. package/src/decorators/deprecate.ts +25 -25
  99. package/src/decorators/guard.ts +42 -42
  100. package/src/decorators/index.ts +7 -7
  101. package/src/decorators/injectParams.ts +54 -54
  102. package/src/decorators/params/common.ts +28 -28
  103. package/src/decorators/params/index.ts +35 -35
  104. package/src/env/domain.ts +33 -33
  105. package/src/env/index.ts +63 -63
  106. package/src/env/login.ts +80 -80
  107. package/src/error.ts +36 -36
  108. package/src/function/alias.ts +43 -43
  109. package/src/function/base.ts +253 -253
  110. package/src/function/code.ts +55 -55
  111. package/src/function/concurrency.ts +57 -57
  112. package/src/function/create.ts +78 -78
  113. package/src/function/delete.ts +42 -42
  114. package/src/function/index.ts +10 -10
  115. package/src/function/layer/attach.ts +68 -68
  116. package/src/function/layer/create.ts +63 -63
  117. package/src/function/layer/delete.ts +21 -21
  118. package/src/function/layer/download.ts +54 -54
  119. package/src/function/layer/index.ts +7 -7
  120. package/src/function/layer/list.ts +32 -32
  121. package/src/function/layer/sort.ts +24 -24
  122. package/src/function/trigger.ts +97 -97
  123. package/src/function/update.ts +35 -35
  124. package/src/function/version.ts +38 -38
  125. package/src/function/vpc.ts +22 -22
  126. package/src/gateway/index.ts +137 -137
  127. package/src/hosting.ts +212 -212
  128. package/src/index.ts +13 -13
  129. package/src/logger.ts +17 -17
  130. package/src/run/create.ts +23 -23
  131. package/src/run/delete.ts +15 -15
  132. package/src/run/image/build.ts +36 -36
  133. package/src/run/image/delete.ts +13 -13
  134. package/src/run/image/index.ts +3 -3
  135. package/src/run/image/info.ts +26 -26
  136. package/src/run/list.ts +29 -29
  137. package/src/run/repo.ts +24 -24
  138. package/src/run/service/deployPackage.ts +6 -4
  139. package/src/run/standalonegateway/create.ts +24 -24
  140. package/src/run/standalonegateway/destroy.ts +19 -19
  141. package/src/run/standalonegateway/index.ts +4 -4
  142. package/src/run/standalonegateway/list.ts +74 -74
  143. package/src/run/standalonegateway/package/list.ts +24 -24
  144. package/src/run/standalonegateway/turn/index.ts +1 -1
  145. package/src/run/standalonegateway/turn/off.ts +19 -19
  146. package/src/run/standalonegateway/turn/on.ts +19 -19
  147. package/src/run/version/create.ts +68 -68
  148. package/src/run/version/delete.ts +15 -15
  149. package/src/run/version/index.ts +5 -5
  150. package/src/run/version/list.ts +16 -16
  151. package/src/run/version/modify.ts +16 -16
  152. package/src/run/version/repo.ts +27 -27
  153. package/src/run/version/update.ts +58 -58
  154. package/src/storage.ts +114 -114
  155. package/src/third/index.ts +12 -12
  156. package/src/utils/auth.ts +15 -15
  157. package/src/utils/cli-table.ts +23 -23
  158. package/src/utils/config.ts +39 -39
  159. package/src/utils/env.ts +244 -244
  160. package/src/utils/fs/del.ts +5 -5
  161. package/src/utils/fs/index.ts +71 -71
  162. package/src/utils/function-packer.ts +97 -97
  163. package/src/utils/log.ts +81 -81
  164. package/src/utils/net/cloud-api-request.ts +62 -62
  165. package/src/utils/net/credential.ts +53 -53
  166. package/src/utils/net/http-request.ts +84 -84
  167. package/src/utils/net/index.ts +4 -4
  168. package/src/utils/net/manager-service.ts +36 -36
  169. package/src/utils/net/proxy.ts +6 -6
  170. package/src/utils/notice.ts +28 -28
  171. package/src/utils/output/highlight.ts +5 -5
  172. package/src/utils/output/index.ts +2 -2
  173. package/src/utils/output/link.ts +10 -10
  174. package/src/utils/output/loading.ts +82 -82
  175. package/src/utils/parallel.ts +82 -82
  176. package/src/utils/platform/index.ts +2 -2
  177. package/src/utils/platform/mac.ts +21 -21
  178. package/src/utils/platform/os.ts +64 -64
  179. package/src/utils/platform/port.ts +10 -10
  180. package/src/utils/progress-bar.ts +38 -38
  181. package/src/utils/prompt/select.ts +59 -59
  182. package/src/utils/reporter/agree.ts +20 -20
  183. package/src/utils/reporter/download.ts +26 -26
  184. package/src/utils/reporter/index.ts +3 -3
  185. package/src/utils/reporter/usage.ts +20 -20
  186. package/src/utils/store/auth.ts +49 -49
  187. package/src/utils/store/common.ts +8 -8
  188. package/src/utils/store/db.ts +68 -68
  189. package/src/utils/store/index.ts +4 -4
  190. package/src/utils/store/usage.ts +12 -12
  191. package/src/utils/tcbrApi/tcbr-cloud-api/request.ts +13 -13
  192. package/src/utils/template.ts +170 -170
  193. package/src/utils/tools/encoding.ts +8 -8
  194. package/src/utils/tools/index.ts +4 -4
  195. package/src/utils/tools/object.ts +33 -33
  196. package/src/utils/tools/time.ts +38 -38
  197. package/src/utils/tools/uid.ts +19 -19
  198. package/templates/html/loginFail.html +90 -90
  199. package/templates/html/loginSuccess.html +86 -86
  200. package/templates/server/node/_gitignore +54 -54
  201. package/templates/server/node/cloudbaserc.json +10 -10
  202. package/templates/server/node/index.js +5 -5
  203. package/templates/server/node/package.json +9 -9
  204. package/tsconfig.json +19 -19
  205. package/tsconfig.test.json +13 -13
  206. package/.vscode/settings.json +0 -3
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
+