Skip to content

别名

alias 命令是对函数别名操作的命令:主要包括别名的查看、发布、修改、删除等功能。

命令解析

当执行命令alias -h/alias --help时,可以获取帮助文档。

alias get 命令

alias get 命令,是获取函数指定别名详情的命令。

当执行命令alias get -h/alias get --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地域名称,取值范围参见函数计算开服地域
function-name-选填必填函数名
alias-name-必填必填别名

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s alias get --alias-name aliasName进行指定的别名详情获取;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定函数所在地区以及函数名称,例如s cli fc3 alias get --region cn-hangzhou --function-name test-function --alias-name pre -a default

上述命令的执行结果示例:

fc3-deploy-test:
aliasName: pre
createdTime: 2023-09-25T08:00:29Z
description:
lastModifiedTime: 2023-09-25T08:00:29Z
versionId: 1

alias list 命令

alias list 命令,是进列举别名列表的命令。

当执行命令alias list -h/alias list --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地域名称,取值范围参见函数计算开服地域
function-name-选填必填函数名
table-选填选填是否以表格形式输出, --table 表示以表格形式输出

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s alias list获取别名列表;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定函数所在地区以及函数名称,例如s cli fc3 alias list --region cn-hangzhou --function-name test-function -a default

上述命令的执行结果示例:

fc3-deploy-test:
-
aliasName: pre
createdTime: 2023-09-25T08:00:29Z
description:
lastModifiedTime: 2023-09-25T08:00:29Z
versionId: 1

如果指定了--table参数,输出示例:

aliasNameversionIddescriptionadditionalVersionWeight
pre1this is a demo

alias publish 命令

alias publish 命令,是对别名进行发布和更新的命令。

当执行命令alias publish -h/alias publish --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地域名称,取值范围参见函数计算开服地域
function-name-选填必填函数名
description-选填选填别名描述
alias-name-必填必填别名
version-id-选填选填版本 Id, 可以使用 latest 使用最新的 version
additional-version-weight-选填选填灰度版本权重。灰度版本 Id 填写时必填, 示例 ”{\“2\“:0.2}“

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s alias publish进行版本的发布或者更新;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定函数所在地区以及函数名称,例如s cli fc3 alias publish --region cn-hangzhou --function-name test-function --alias-name pre --version-id 1 -a default

上述命令的执行结果示例:

fc3-deploy-test:
aliasName: pre
versionId: 1
description:
createdTime: 2023-09-25T08:00:29Z
lastModifiedTime: 2023-09-25T08:00:29Z

如果需要对别名进行升级,只需要指定别名之后,进行相对应的参数更新,例如针对上述的pre别名,指定--description参数后再次执行上述命令,执行示例:

fc3-deploy-test:
aliasName: pre
versionId: 1
description: test publish version
createdTime: 2023-09-25T08:00:29Z
lastModifiedTime: 2023-09-25T08:00:29Z

Publish 主版本获取逻辑

  • 指定 version-id:直接使用指定的 version-id
  • 未指定 version-id,但是指定了 latest:获取版本列表,取下标 0 的版本号(版本列表默认倒序,下标 0 就是最大的版本号)

alias remove 命令

alias remove 命令,是用户删除指定别名。

当执行命令alias remove -h时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地域名称,取值范围参见函数计算开服地域
function-name-选填必填函数名
alias-name-必填必填别名
assume-yesy选填选填在交互时,默认选择y

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s remove alias --alias-name aliasName删除指定别名;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定函数所在地区以及函数名称,例如s cli fc3 alias remove --region cn-hangzhou --function-name test-function --alias-name pre -a default

权限与策略说明

  • alias listalias get 命令所需要的权限策略: AliyunFCReadOnlyAccess

  • alias publish 命令所需要的权限策略:

{
"Version": "1",
"Statement": [
{
"Action": ["fc:CreateAlias", "fc:UpdateAlias"],
"Effect": "Allow",
"Resource": "acs:fc:{region}:{uid}:functions/{functionName}/aliases/*"
}
]
}
  • alias remove 命令所需要的权限策略: AliyunFCReadOnlyAccess
{
"Version": "1",
"Statement": [
{
"Action": "fc:DeleteAlias",
"Effect": "Allow",
"Resource": "acs:fc:{region}:{uid}:functions/{functionName}/aliases/*"
}
]
}