@cloudbase/cli 2.0.12 → 2.0.13
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.
- package/.vscode/settings.json +3 -0
- package/lib/run/service/deployPackage.js +2 -9
- package/lib/utils/debug-logger.js +30 -0
- package/lib/utils/net/cloud-api-request.js +7 -1
- package/lib/utils/net/http-request.js +16 -5
- package/package.json +1 -1
- package/types/utils/debug-logger.d.ts +1 -0
- package/types/utils/net/http-request.d.ts +6 -2
- package/src/auth/index.ts +0 -2
- package/src/auth/login.ts +0 -91
- package/src/auth/logout.ts +0 -7
- package/src/commands/account/index.ts +0 -2
- package/src/commands/account/login.ts +0 -192
- package/src/commands/account/logout.ts +0 -24
- package/src/commands/common.ts +0 -246
- package/src/commands/env/base.ts +0 -90
- package/src/commands/env/create.ts +0 -92
- package/src/commands/env/domain.ts +0 -186
- package/src/commands/env/index.ts +0 -4
- package/src/commands/env/login.ts +0 -235
- package/src/commands/framework/index.ts +0 -124
- package/src/commands/functions/alias/getRoute.ts +0 -76
- package/src/commands/functions/alias/index.ts +0 -2
- package/src/commands/functions/alias/setRoute.ts +0 -82
- package/src/commands/functions/code-download.ts +0 -100
- package/src/commands/functions/code-update.ts +0 -62
- package/src/commands/functions/concurrency/delete.ts +0 -45
- package/src/commands/functions/concurrency/index.ts +0 -3
- package/src/commands/functions/concurrency/list.ts +0 -58
- package/src/commands/functions/concurrency/set.ts +0 -47
- package/src/commands/functions/config-update.ts +0 -76
- package/src/commands/functions/copy.ts +0 -62
- package/src/commands/functions/delete.ts +0 -79
- package/src/commands/functions/deploy.ts +0 -293
- package/src/commands/functions/detail.ts +0 -138
- package/src/commands/functions/index.ts +0 -16
- package/src/commands/functions/invoke.ts +0 -121
- package/src/commands/functions/layer/bind.ts +0 -182
- package/src/commands/functions/layer/common.ts +0 -8
- package/src/commands/functions/layer/create.ts +0 -49
- package/src/commands/functions/layer/delete.ts +0 -73
- package/src/commands/functions/layer/download.ts +0 -92
- package/src/commands/functions/layer/index.ts +0 -7
- package/src/commands/functions/layer/list.ts +0 -94
- package/src/commands/functions/layer/sort.ts +0 -76
- package/src/commands/functions/list.ts +0 -68
- package/src/commands/functions/log.ts +0 -148
- package/src/commands/functions/run.ts +0 -249
- package/src/commands/functions/trigger-create.ts +0 -79
- package/src/commands/functions/trigger-delete.ts +0 -105
- package/src/commands/functions/version/index.ts +0 -2
- package/src/commands/functions/version/list.ts +0 -73
- package/src/commands/functions/version/publish.ts +0 -43
- package/src/commands/gateway/create.ts +0 -109
- package/src/commands/gateway/delete.ts +0 -81
- package/src/commands/gateway/domain.ts +0 -159
- package/src/commands/gateway/index.ts +0 -5
- package/src/commands/gateway/list.ts +0 -76
- package/src/commands/gateway/switch.ts +0 -107
- package/src/commands/helpers/index.ts +0 -3
- package/src/commands/helpers/init.ts +0 -431
- package/src/commands/helpers/new.ts +0 -117
- package/src/commands/helpers/open.ts +0 -67
- package/src/commands/hosting/hosting.ts +0 -360
- package/src/commands/hosting/index.ts +0 -1
- package/src/commands/index.ts +0 -13
- package/src/commands/lowcode/app.ts +0 -34
- package/src/commands/lowcode/comps.ts +0 -325
- package/src/commands/lowcode/index.ts +0 -2
- package/src/commands/lowcode/utils.ts +0 -25
- package/src/commands/run/create.ts +0 -153
- package/src/commands/run/delete.ts +0 -77
- package/src/commands/run/image/common.ts +0 -8
- package/src/commands/run/image/delete.ts +0 -68
- package/src/commands/run/image/download.ts +0 -68
- package/src/commands/run/image/index.ts +0 -5
- package/src/commands/run/image/list.ts +0 -84
- package/src/commands/run/image/upload.ts +0 -76
- package/src/commands/run/index.ts +0 -7
- package/src/commands/run/list.ts +0 -83
- package/src/commands/run/service/config.ts +0 -81
- package/src/commands/run/service/create.ts +0 -122
- package/src/commands/run/service/deploy.ts +0 -125
- package/src/commands/run/service/index.ts +0 -5
- package/src/commands/run/service/list.ts +0 -94
- package/src/commands/run/service/update.ts +0 -108
- package/src/commands/run/standalonegateway/common.ts +0 -8
- package/src/commands/run/standalonegateway/create.ts +0 -85
- package/src/commands/run/standalonegateway/destroy.ts +0 -59
- package/src/commands/run/standalonegateway/index.ts +0 -5
- package/src/commands/run/standalonegateway/list.ts +0 -53
- package/src/commands/run/standalonegateway/package.ts +0 -62
- package/src/commands/run/standalonegateway/turn.ts +0 -63
- package/src/commands/run/version/common.ts +0 -8
- package/src/commands/run/version/create.ts +0 -369
- package/src/commands/run/version/delete.ts +0 -64
- package/src/commands/run/version/index.ts +0 -5
- package/src/commands/run/version/list.ts +0 -91
- package/src/commands/run/version/modify.ts +0 -137
- package/src/commands/run/version/update.ts +0 -398
- package/src/commands/smart.ts +0 -132
- package/src/commands/storage/index.ts +0 -1
- package/src/commands/storage/storage.ts +0 -464
- package/src/commands/third/index.ts +0 -1
- package/src/commands/third/thirdAttach.ts +0 -49
- package/src/completion/index.ts +0 -13
- package/src/constant.ts +0 -154
- package/src/decorators/captureError.ts +0 -25
- package/src/decorators/constants.ts +0 -12
- package/src/decorators/deprecate.ts +0 -25
- package/src/decorators/guard.ts +0 -42
- package/src/decorators/index.ts +0 -7
- package/src/decorators/injectParams.ts +0 -54
- package/src/decorators/params/common.ts +0 -28
- package/src/decorators/params/index.ts +0 -35
- package/src/env/domain.ts +0 -33
- package/src/env/index.ts +0 -63
- package/src/env/login.ts +0 -80
- package/src/error.ts +0 -36
- package/src/function/alias.ts +0 -43
- package/src/function/base.ts +0 -253
- package/src/function/code.ts +0 -55
- package/src/function/concurrency.ts +0 -57
- package/src/function/create.ts +0 -78
- package/src/function/delete.ts +0 -42
- package/src/function/index.ts +0 -11
- package/src/function/layer/attach.ts +0 -68
- package/src/function/layer/create.ts +0 -63
- package/src/function/layer/delete.ts +0 -21
- package/src/function/layer/download.ts +0 -54
- package/src/function/layer/index.ts +0 -7
- package/src/function/layer/list.ts +0 -32
- package/src/function/layer/sort.ts +0 -24
- package/src/function/trigger.ts +0 -97
- package/src/function/update.ts +0 -35
- package/src/function/version.ts +0 -39
- package/src/function/vpc.ts +0 -22
- package/src/gateway/index.ts +0 -137
- package/src/help.ts +0 -50
- package/src/hosting.ts +0 -212
- package/src/index.ts +0 -13
- package/src/logger.ts +0 -17
- package/src/run/create.ts +0 -23
- package/src/run/delete.ts +0 -15
- package/src/run/image/build.ts +0 -36
- package/src/run/image/delete.ts +0 -14
- package/src/run/image/index.ts +0 -4
- package/src/run/image/info.ts +0 -27
- package/src/run/image/list.ts +0 -23
- package/src/run/index.ts +0 -8
- package/src/run/list.ts +0 -30
- package/src/run/repo.ts +0 -25
- package/src/run/service/common.ts +0 -311
- package/src/run/service/config.ts +0 -77
- package/src/run/service/create.ts +0 -52
- package/src/run/service/deployPackage.ts +0 -65
- package/src/run/service/index.ts +0 -7
- package/src/run/service/list.ts +0 -29
- package/src/run/service/showLogs.ts +0 -98
- package/src/run/service/update.ts +0 -82
- package/src/run/standalonegateway/create.ts +0 -24
- package/src/run/standalonegateway/destroy.ts +0 -19
- package/src/run/standalonegateway/index.ts +0 -5
- package/src/run/standalonegateway/list.ts +0 -74
- package/src/run/standalonegateway/package/index.ts +0 -1
- package/src/run/standalonegateway/package/list.ts +0 -24
- package/src/run/standalonegateway/turn/index.ts +0 -2
- package/src/run/standalonegateway/turn/off.ts +0 -19
- package/src/run/standalonegateway/turn/on.ts +0 -19
- package/src/run/version/create.ts +0 -68
- package/src/run/version/delete.ts +0 -16
- package/src/run/version/index.ts +0 -6
- package/src/run/version/list.ts +0 -17
- package/src/run/version/modify.ts +0 -17
- package/src/run/version/repo.ts +0 -28
- package/src/run/version/update.ts +0 -59
- package/src/storage.ts +0 -114
- package/src/third/index.ts +0 -13
- package/src/types.ts +0 -672
- package/src/utils/auth.ts +0 -15
- package/src/utils/checkTcbrEnv.ts +0 -69
- package/src/utils/cli-table.ts +0 -23
- package/src/utils/commonParamsCheck.ts +0 -65
- package/src/utils/config.ts +0 -39
- package/src/utils/env.ts +0 -244
- package/src/utils/fs/del.ts +0 -5
- package/src/utils/fs/index.ts +0 -71
- package/src/utils/function-packer.ts +0 -97
- package/src/utils/index.ts +0 -25
- package/src/utils/log.ts +0 -82
- package/src/utils/net/cloud-api-request.ts +0 -62
- package/src/utils/net/credential.ts +0 -53
- package/src/utils/net/http-request.ts +0 -84
- package/src/utils/net/index.ts +0 -5
- package/src/utils/net/manager-service.ts +0 -36
- package/src/utils/net/proxy.ts +0 -6
- package/src/utils/notice.ts +0 -28
- package/src/utils/output/highlight.ts +0 -5
- package/src/utils/output/index.ts +0 -3
- package/src/utils/output/link.ts +0 -10
- package/src/utils/output/loading.ts +0 -82
- package/src/utils/parallel.ts +0 -82
- package/src/utils/platform/index.ts +0 -3
- package/src/utils/platform/mac.ts +0 -21
- package/src/utils/platform/os.ts +0 -64
- package/src/utils/platform/port.ts +0 -10
- package/src/utils/progress-bar.ts +0 -38
- package/src/utils/prompt/index.ts +0 -1
- package/src/utils/prompt/select.ts +0 -60
- package/src/utils/reporter/agree.ts +0 -20
- package/src/utils/reporter/download.ts +0 -26
- package/src/utils/reporter/index.ts +0 -3
- package/src/utils/reporter/usage.ts +0 -20
- package/src/utils/store/auth.ts +0 -49
- package/src/utils/store/common.ts +0 -8
- package/src/utils/store/db.ts +0 -68
- package/src/utils/store/index.ts +0 -5
- package/src/utils/store/usage.ts +0 -12
- package/src/utils/tcbrApi/callTcbrApi.ts +0 -28
- package/src/utils/tcbrApi/index.ts +0 -1
- package/src/utils/template.ts +0 -170
- package/src/utils/tools/encoding.ts +0 -8
- package/src/utils/tools/index.ts +0 -4
- package/src/utils/tools/object.ts +0 -33
- package/src/utils/tools/time.ts +0 -38
- package/src/utils/tools/uid.ts +0 -19
- package/src/utils/validator.ts +0 -65
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export const PARAM_METADATA = 'PARAM_METADATA'
|
|
2
|
-
|
|
3
|
-
export enum ParamTypes {
|
|
4
|
-
Credential = '__Credential__',
|
|
5
|
-
Log = '__Log__',
|
|
6
|
-
// 参数选项
|
|
7
|
-
CmdContext = '__CmdContext__',
|
|
8
|
-
EnvId = '__EnvId__',
|
|
9
|
-
Config = '__Config__',
|
|
10
|
-
ArgsOptions = '__ArgsOptions__',
|
|
11
|
-
ArgsParams = '__ArgsParams__'
|
|
12
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Logger } from '../utils'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 废弃命令
|
|
5
|
-
* @param tip
|
|
6
|
-
*/
|
|
7
|
-
export const Deprecate = (options: { tip: string; allowExecute: boolean }): MethodDecorator => (
|
|
8
|
-
target: any,
|
|
9
|
-
key: string,
|
|
10
|
-
descriptor: TypedPropertyDescriptor<any>
|
|
11
|
-
) => {
|
|
12
|
-
const { tip, allowExecute } = options
|
|
13
|
-
const rawFunc: Function = descriptor.value
|
|
14
|
-
|
|
15
|
-
descriptor.value = function (...args) {
|
|
16
|
-
const log = new Logger()
|
|
17
|
-
log.error(tip || '此命令已废弃!')
|
|
18
|
-
|
|
19
|
-
if (allowExecute) {
|
|
20
|
-
rawFunc.apply(this, args)
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return descriptor
|
|
25
|
-
}
|
package/src/decorators/guard.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { authSupevisor, getCloudBaseConfig } from '../utils'
|
|
2
|
-
|
|
3
|
-
export interface AuthGuardOptions {
|
|
4
|
-
// 无法通过 guard 认证时的提示信息
|
|
5
|
-
tips?: string
|
|
6
|
-
// 校验配置文件是否存在
|
|
7
|
-
ensureConfig?: boolean
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Auth 装饰器,用于在执行操作前检验是否登录
|
|
12
|
-
* 没有登录时,终止操作,显示登录提示
|
|
13
|
-
*/
|
|
14
|
-
export const AuthGuard = (options: AuthGuardOptions = {}): MethodDecorator => (
|
|
15
|
-
target: any,
|
|
16
|
-
key: string | symbol,
|
|
17
|
-
descriptor: TypedPropertyDescriptor<any>
|
|
18
|
-
) => {
|
|
19
|
-
const { tips, ensureConfig = true } = options
|
|
20
|
-
const rawFunc: Function = descriptor.value
|
|
21
|
-
// 修改原函数行为
|
|
22
|
-
descriptor.value = async function (...args) {
|
|
23
|
-
const credential = target?.credential
|
|
24
|
-
const loginState = await authSupevisor.getLoginState()
|
|
25
|
-
|
|
26
|
-
// 未登录,终止运行
|
|
27
|
-
if (!credential && !loginState) {
|
|
28
|
-
return
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
if (ensureConfig) {
|
|
32
|
-
const config = await getCloudBaseConfig()
|
|
33
|
-
if (!config?.envId) {
|
|
34
|
-
return
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
return rawFunc.apply(this, args)
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return descriptor
|
|
42
|
-
}
|
package/src/decorators/index.ts
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { PARAM_METADATA, ParamTypes } from './constants'
|
|
2
|
-
import { ICommandContext } from '../types'
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* 在方法中注入 params 中定义的各种参数
|
|
6
|
-
*/
|
|
7
|
-
export function InjectParams(): MethodDecorator {
|
|
8
|
-
return function (target: any, key: string | symbol, descriptor: TypedPropertyDescriptor<any>) {
|
|
9
|
-
const rawFunc: Function = descriptor.value
|
|
10
|
-
|
|
11
|
-
// 解析需要注入的参数
|
|
12
|
-
const paramMetadata = Reflect.getMetadata(PARAM_METADATA, target[key])
|
|
13
|
-
|
|
14
|
-
if (paramMetadata) {
|
|
15
|
-
descriptor.value = async function (...args) {
|
|
16
|
-
// 命令 context
|
|
17
|
-
const ctx: ICommandContext = args[0] || {}
|
|
18
|
-
|
|
19
|
-
for (const paramKey in paramMetadata) {
|
|
20
|
-
if (Object.prototype.hasOwnProperty.call(paramMetadata, paramKey)) {
|
|
21
|
-
const { getter, index } = paramMetadata[paramKey]
|
|
22
|
-
switch (paramKey) {
|
|
23
|
-
// 从 context 中注入命令行参数
|
|
24
|
-
case ParamTypes.CmdContext:
|
|
25
|
-
args[index] = ctx
|
|
26
|
-
break
|
|
27
|
-
case ParamTypes.Config:
|
|
28
|
-
args[index] = ctx.config
|
|
29
|
-
break
|
|
30
|
-
case ParamTypes.ArgsParams:
|
|
31
|
-
args[index] = ctx.params
|
|
32
|
-
break
|
|
33
|
-
case ParamTypes.ArgsOptions:
|
|
34
|
-
args[index] = ctx.options
|
|
35
|
-
break
|
|
36
|
-
case ParamTypes.EnvId:
|
|
37
|
-
args[index] = ctx.envId
|
|
38
|
-
break
|
|
39
|
-
default: {
|
|
40
|
-
// 注入其他与命令行不相关的参数
|
|
41
|
-
const injectValue = await getter(target)
|
|
42
|
-
args[index] = injectValue
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
return rawFunc.apply(this, args)
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
return descriptor
|
|
53
|
-
}
|
|
54
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { ParamTypes, PARAM_METADATA } from '../constants'
|
|
2
|
-
|
|
3
|
-
type GetterFunction = (target: any) => Promise<any> | any
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* 创建参数装饰器
|
|
7
|
-
* @param paramtype 参数类型名
|
|
8
|
-
* @param getter decorator 取值函数
|
|
9
|
-
*/
|
|
10
|
-
export const createParamDecorator = (paramtype: ParamTypes, getter: GetterFunction) => {
|
|
11
|
-
return () => {
|
|
12
|
-
return (target: any, key: string | symbol, index: number) => {
|
|
13
|
-
const data = Reflect.getMetadata(PARAM_METADATA, target[key]) || {}
|
|
14
|
-
|
|
15
|
-
Reflect.defineMetadata(
|
|
16
|
-
PARAM_METADATA,
|
|
17
|
-
{
|
|
18
|
-
...data,
|
|
19
|
-
[paramtype]: {
|
|
20
|
-
index,
|
|
21
|
-
getter
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
target[key]
|
|
25
|
-
)
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { createParamDecorator } from './common'
|
|
2
|
-
import { ParamTypes } from '../constants'
|
|
3
|
-
import { authSupevisor, getArgs, Logger } from '../../utils'
|
|
4
|
-
|
|
5
|
-
const EmptyValue = () => {}
|
|
6
|
-
|
|
7
|
-
// 注入登录态信息
|
|
8
|
-
export const Credential = createParamDecorator(ParamTypes.Credential, async () => {
|
|
9
|
-
const credential = await authSupevisor.getLoginState()
|
|
10
|
-
return credential
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
// 日志打印
|
|
14
|
-
export const Log = createParamDecorator(ParamTypes.Log, () => {
|
|
15
|
-
const args = getArgs()
|
|
16
|
-
const verbose = process.VERBOSE || args.verbose
|
|
17
|
-
const log = new Logger({
|
|
18
|
-
verbose
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
return log
|
|
22
|
-
})
|
|
23
|
-
|
|
24
|
-
// 命令行相关
|
|
25
|
-
export const CmdContext = createParamDecorator(ParamTypes.CmdContext, EmptyValue)
|
|
26
|
-
|
|
27
|
-
export const ArgsOptions = createParamDecorator(ParamTypes.ArgsOptions, EmptyValue)
|
|
28
|
-
|
|
29
|
-
export const ArgsParams = createParamDecorator(ParamTypes.ArgsParams, EmptyValue)
|
|
30
|
-
|
|
31
|
-
// 获取环境 Id
|
|
32
|
-
export const EnvId = createParamDecorator(ParamTypes.EnvId, EmptyValue)
|
|
33
|
-
|
|
34
|
-
// 注入环境配置
|
|
35
|
-
export const Config = createParamDecorator(ParamTypes.Config, EmptyValue)
|
package/src/env/domain.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { CloudApiService } from '../utils/net'
|
|
2
|
-
|
|
3
|
-
const tcbService = CloudApiService.getInstance('tcb')
|
|
4
|
-
|
|
5
|
-
// 拉取安全域名列表
|
|
6
|
-
export async function getEnvAuthDomains({ envId }) {
|
|
7
|
-
const { Domains = [] }: any = await tcbService.request(
|
|
8
|
-
'DescribeAuthDomains',
|
|
9
|
-
{
|
|
10
|
-
EnvId: envId
|
|
11
|
-
}
|
|
12
|
-
)
|
|
13
|
-
|
|
14
|
-
return Domains
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
// 添加环境安全域名
|
|
18
|
-
export async function createEnvDomain({ envId, domains }) {
|
|
19
|
-
await tcbService.request('CreateAuthDomain', {
|
|
20
|
-
EnvId: envId,
|
|
21
|
-
Domains: domains
|
|
22
|
-
})
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
// 删除环境安全域名
|
|
26
|
-
export async function deleteEnvDomain({ envId, domainIds }) {
|
|
27
|
-
const { Deleted }: any = await tcbService.request('DeleteAuthDomain', {
|
|
28
|
-
EnvId: envId,
|
|
29
|
-
DomainIds: domainIds
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
return Deleted
|
|
33
|
-
}
|
package/src/env/index.ts
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
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
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
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
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
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
|
-
}
|
package/src/function/alias.ts
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
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
|
-
|