@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,235 +1,235 @@
1
- import inquirer from 'inquirer'
2
- import { Command, ICommand } from '../common'
3
- import { CloudBaseError } from '../../error'
4
- import { printHorizontalTable } from '../../utils'
5
- import { InjectParams, EnvId, Log, Logger } from '../../decorators'
6
- import { getLoginConfigList, updateLoginConfig, createLoginConfig } from '../../env'
7
-
8
- const platformMap = {
9
- 'WECHAT-OPEN': '微信开放平台',
10
- 'WECHAT-PUBLIC': '微信公众平台',
11
- ANONYMOUS: '匿名登录'
12
- }
13
-
14
- @ICommand()
15
- export class ListLoginCommand extends Command {
16
- get options() {
17
- return {
18
- cmd: 'env',
19
- childCmd: {
20
- cmd: 'login',
21
- desc: '登录授权管理'
22
- },
23
- childSubCmd: 'list',
24
- deprecateCmd: 'env:login:list',
25
- options: [
26
- {
27
- flags: '-e, --envId <envId>',
28
- desc: '环境 Id'
29
- }
30
- ],
31
- desc: '列出环境登录配置'
32
- }
33
- }
34
-
35
- @InjectParams()
36
- async execute(@EnvId() envId) {
37
- const configList = await getLoginConfigList({
38
- envId
39
- })
40
-
41
- const head = ['平台', '平台 Id', '创建时间', '状态']
42
- const tableData = configList.map((item) => [
43
- platformMap[item.Platform] ? platformMap[item.Platform] : item.Platform,
44
- item.PlatformId,
45
- item.CreateTime,
46
- item.Status === 'ENABLE' ? '启用' : '禁用'
47
- ])
48
- printHorizontalTable(head, tableData)
49
- }
50
- }
51
-
52
- @ICommand()
53
- export class CreateLoginCommand extends Command {
54
- get options() {
55
- return {
56
- cmd: 'env',
57
- childCmd: 'login',
58
- childSubCmd: 'create',
59
- deprecateCmd: 'env:login:create',
60
- options: [
61
- {
62
- flags: '-e, --envId <envId>',
63
- desc: '环境 Id'
64
- }
65
- ],
66
- desc: '添加环境登录方式配置'
67
- }
68
- }
69
-
70
- @InjectParams()
71
- async execute(@EnvId() envId, @Log() log: Logger) {
72
- const { platform } = await inquirer.prompt([
73
- {
74
- type: 'list',
75
- name: 'platform',
76
- choices: [
77
- {
78
- name: '微信公众平台',
79
- value: 'WECHAT-PUBLIC'
80
- },
81
- {
82
- name: '微信开放平台',
83
- value: 'WECHAT-OPEN'
84
- },
85
- {
86
- name: '匿名登录',
87
- value: 'ANONYMOUS'
88
- }
89
- ],
90
- message: '请选择登录方式:',
91
- default: 'WECHAT-PUBLIC'
92
- }
93
- ])
94
-
95
- let appId
96
- let appSecret
97
-
98
- // 微信登录,需要配置 AppId 和 AppSecret
99
- if (platform === 'WECHAT-OPEN' || platform === 'WECHAT-PUBLIC') {
100
- const input = await inquirer.prompt([
101
- {
102
- type: 'input',
103
- name: 'appId',
104
- message: '请输入 AppId:'
105
- },
106
- {
107
- type: 'input',
108
- name: 'appSecret',
109
- message: '请输入 AppSecret:'
110
- }
111
- ])
112
-
113
- appId = input?.appId
114
- appSecret = input?.appSecret
115
-
116
- if (!appId || !appSecret) {
117
- throw new CloudBaseError('appId 和 appSecret 不能为空!')
118
- }
119
- }
120
-
121
- // 匿名登录
122
- if (platform === 'ANONYMOUS') {
123
- appId = 'anonymous'
124
- appSecret = 'anonymous'
125
- }
126
-
127
- try {
128
- await createLoginConfig({
129
- envId,
130
- appId,
131
- appSecret,
132
- platform
133
- })
134
-
135
- log.success('创建登录方式成功!')
136
- } catch (e) {
137
- if (e.code === 'ResourceInUse') {
138
- log.error('登录方式已开启')
139
- }
140
- }
141
- }
142
- }
143
-
144
- @ICommand()
145
- export class UpdateLogin extends Command {
146
- get options() {
147
- return {
148
- cmd: 'env',
149
- childCmd: 'login',
150
- childSubCmd: 'update',
151
- deprecateCmd: 'env:login:update',
152
- options: [
153
- {
154
- flags: '-e, --envId <envId>',
155
- desc: '环境 Id'
156
- }
157
- ],
158
- desc: '更新环境登录方式配置'
159
- }
160
- }
161
-
162
- @InjectParams()
163
- async execute(@EnvId() envId, @Log() log: Logger) {
164
- const configList = await getLoginConfigList({
165
- envId
166
- })
167
-
168
- const configChoices = configList.map((item) => ({
169
- name: `${platformMap[item.Platform]}:${item.PlatformId} [${
170
- item.Status === 'ENABLE' ? '启用' : '禁用'
171
- }]`,
172
- value: item,
173
- short: `${platformMap[item.Platform]}:${item.PlatformId}`
174
- }))
175
-
176
- const { config, status } = await inquirer.prompt([
177
- {
178
- type: 'list',
179
- name: 'config',
180
- choices: configChoices,
181
- message: '请选择需要配置的条目:'
182
- },
183
- {
184
- type: 'list',
185
- name: 'status',
186
- choices: [
187
- {
188
- name: '启用',
189
- value: 'ENABLE'
190
- },
191
- {
192
- name: '禁用',
193
- value: 'DISABLE'
194
- }
195
- ],
196
- message: '请选择登录方式状态:',
197
- default: '启用'
198
- }
199
- ])
200
-
201
- const platform = config.Platform
202
-
203
- let appId
204
- let appSecret
205
-
206
- if (platform === 'WECHAT-OPEN' || platform === 'WECHAT-PUBLIC') {
207
- const input = await inquirer.prompt([
208
- {
209
- type: 'input',
210
- name: 'appId',
211
- message: '请输入 AppId(配置状态时可不填):'
212
- },
213
- {
214
- type: 'input',
215
- name: 'appSecret',
216
- message: '请输入 AppSecret(配置状态时可不填):'
217
- }
218
- ])
219
-
220
- appId = input?.appId
221
- appSecret = input?.appSecret
222
- }
223
-
224
- // 检查平台配置是否存在,若存在则更新配置,否则创建配置
225
- await updateLoginConfig({
226
- envId,
227
- configId: config.Id,
228
- appId,
229
- appSecret,
230
- status
231
- })
232
-
233
- log.success('更新登录方式成功!')
234
- }
235
- }
1
+ import inquirer from 'inquirer'
2
+ import { Command, ICommand } from '../common'
3
+ import { CloudBaseError } from '../../error'
4
+ import { printHorizontalTable } from '../../utils'
5
+ import { InjectParams, EnvId, Log, Logger } from '../../decorators'
6
+ import { getLoginConfigList, updateLoginConfig, createLoginConfig } from '../../env'
7
+
8
+ const platformMap = {
9
+ 'WECHAT-OPEN': '微信开放平台',
10
+ 'WECHAT-PUBLIC': '微信公众平台',
11
+ ANONYMOUS: '匿名登录'
12
+ }
13
+
14
+ @ICommand()
15
+ export class ListLoginCommand extends Command {
16
+ get options() {
17
+ return {
18
+ cmd: 'env',
19
+ childCmd: {
20
+ cmd: 'login',
21
+ desc: '登录授权管理'
22
+ },
23
+ childSubCmd: 'list',
24
+ deprecateCmd: 'env:login:list',
25
+ options: [
26
+ {
27
+ flags: '-e, --envId <envId>',
28
+ desc: '环境 Id'
29
+ }
30
+ ],
31
+ desc: '列出环境登录配置'
32
+ }
33
+ }
34
+
35
+ @InjectParams()
36
+ async execute(@EnvId() envId) {
37
+ const configList = await getLoginConfigList({
38
+ envId
39
+ })
40
+
41
+ const head = ['平台', '平台 Id', '创建时间', '状态']
42
+ const tableData = configList.map((item) => [
43
+ platformMap[item.Platform] ? platformMap[item.Platform] : item.Platform,
44
+ item.PlatformId,
45
+ item.CreateTime,
46
+ item.Status === 'ENABLE' ? '启用' : '禁用'
47
+ ])
48
+ printHorizontalTable(head, tableData)
49
+ }
50
+ }
51
+
52
+ @ICommand()
53
+ export class CreateLoginCommand extends Command {
54
+ get options() {
55
+ return {
56
+ cmd: 'env',
57
+ childCmd: 'login',
58
+ childSubCmd: 'create',
59
+ deprecateCmd: 'env:login:create',
60
+ options: [
61
+ {
62
+ flags: '-e, --envId <envId>',
63
+ desc: '环境 Id'
64
+ }
65
+ ],
66
+ desc: '添加环境登录方式配置'
67
+ }
68
+ }
69
+
70
+ @InjectParams()
71
+ async execute(@EnvId() envId, @Log() log: Logger) {
72
+ const { platform } = await inquirer.prompt([
73
+ {
74
+ type: 'list',
75
+ name: 'platform',
76
+ choices: [
77
+ {
78
+ name: '微信公众平台',
79
+ value: 'WECHAT-PUBLIC'
80
+ },
81
+ {
82
+ name: '微信开放平台',
83
+ value: 'WECHAT-OPEN'
84
+ },
85
+ {
86
+ name: '匿名登录',
87
+ value: 'ANONYMOUS'
88
+ }
89
+ ],
90
+ message: '请选择登录方式:',
91
+ default: 'WECHAT-PUBLIC'
92
+ }
93
+ ])
94
+
95
+ let appId
96
+ let appSecret
97
+
98
+ // 微信登录,需要配置 AppId 和 AppSecret
99
+ if (platform === 'WECHAT-OPEN' || platform === 'WECHAT-PUBLIC') {
100
+ const input = await inquirer.prompt([
101
+ {
102
+ type: 'input',
103
+ name: 'appId',
104
+ message: '请输入 AppId:'
105
+ },
106
+ {
107
+ type: 'input',
108
+ name: 'appSecret',
109
+ message: '请输入 AppSecret:'
110
+ }
111
+ ])
112
+
113
+ appId = input?.appId
114
+ appSecret = input?.appSecret
115
+
116
+ if (!appId || !appSecret) {
117
+ throw new CloudBaseError('appId 和 appSecret 不能为空!')
118
+ }
119
+ }
120
+
121
+ // 匿名登录
122
+ if (platform === 'ANONYMOUS') {
123
+ appId = 'anonymous'
124
+ appSecret = 'anonymous'
125
+ }
126
+
127
+ try {
128
+ await createLoginConfig({
129
+ envId,
130
+ appId,
131
+ appSecret,
132
+ platform
133
+ })
134
+
135
+ log.success('创建登录方式成功!')
136
+ } catch (e) {
137
+ if (e.code === 'ResourceInUse') {
138
+ log.error('登录方式已开启')
139
+ }
140
+ }
141
+ }
142
+ }
143
+
144
+ @ICommand()
145
+ export class UpdateLogin extends Command {
146
+ get options() {
147
+ return {
148
+ cmd: 'env',
149
+ childCmd: 'login',
150
+ childSubCmd: 'update',
151
+ deprecateCmd: 'env:login:update',
152
+ options: [
153
+ {
154
+ flags: '-e, --envId <envId>',
155
+ desc: '环境 Id'
156
+ }
157
+ ],
158
+ desc: '更新环境登录方式配置'
159
+ }
160
+ }
161
+
162
+ @InjectParams()
163
+ async execute(@EnvId() envId, @Log() log: Logger) {
164
+ const configList = await getLoginConfigList({
165
+ envId
166
+ })
167
+
168
+ const configChoices = configList.map((item) => ({
169
+ name: `${platformMap[item.Platform]}:${item.PlatformId} [${
170
+ item.Status === 'ENABLE' ? '启用' : '禁用'
171
+ }]`,
172
+ value: item,
173
+ short: `${platformMap[item.Platform]}:${item.PlatformId}`
174
+ }))
175
+
176
+ const { config, status } = await inquirer.prompt([
177
+ {
178
+ type: 'list',
179
+ name: 'config',
180
+ choices: configChoices,
181
+ message: '请选择需要配置的条目:'
182
+ },
183
+ {
184
+ type: 'list',
185
+ name: 'status',
186
+ choices: [
187
+ {
188
+ name: '启用',
189
+ value: 'ENABLE'
190
+ },
191
+ {
192
+ name: '禁用',
193
+ value: 'DISABLE'
194
+ }
195
+ ],
196
+ message: '请选择登录方式状态:',
197
+ default: '启用'
198
+ }
199
+ ])
200
+
201
+ const platform = config.Platform
202
+
203
+ let appId
204
+ let appSecret
205
+
206
+ if (platform === 'WECHAT-OPEN' || platform === 'WECHAT-PUBLIC') {
207
+ const input = await inquirer.prompt([
208
+ {
209
+ type: 'input',
210
+ name: 'appId',
211
+ message: '请输入 AppId(配置状态时可不填):'
212
+ },
213
+ {
214
+ type: 'input',
215
+ name: 'appSecret',
216
+ message: '请输入 AppSecret(配置状态时可不填):'
217
+ }
218
+ ])
219
+
220
+ appId = input?.appId
221
+ appSecret = input?.appSecret
222
+ }
223
+
224
+ // 检查平台配置是否存在,若存在则更新配置,否则创建配置
225
+ await updateLoginConfig({
226
+ envId,
227
+ configId: config.Id,
228
+ appId,
229
+ appSecret,
230
+ status
231
+ })
232
+
233
+ log.success('更新登录方式成功!')
234
+ }
235
+ }