实例名-{stage}-应用名
的方式生成资源。这样我们在不同阶段只要定义不同的 stage 就可以生成不同的资源,达到环境隔离的目的。#应用信息app: myAppstage: dev #定义了环境为dev#组件信息component: scfname: scfdemo#组件参数inputs:name: ${name}-${stage}-${app} #函数名称,以变量${stage}作为资源名称的一部分src: ./handler: index.main_handlerruntime: Nodejs10.15region: ap-guangzhouevents:- apigw:parameters:endpoints:- path: /method: GET
${name}-${stage}-${app}
。dev
,部署后云函数为 scfdemo-dev-myApp。pro
,部署后云函数为 scfdemo-pro-myApp。sls deploy --stage dev
直接传参。{"version": "2.0","statement": [{"action": ["sls:*"],"resource": "qcs::sls:ap-guangzhou::appname/myApp/stagename/dev", #app为myApp,stage为dev"effect": "allow"}]}
对比项 | 配置 | 流量规则设置 | 适用组件 |
默认别名 | 配置简单 | 只能在最后一次发布的函数版本和 $latest 版本间进行。 | 云函数组件 涉及云函的相关组件 |
自定义别名 | 配置灵活 | 可以在两个任意函数版本间进行。 | 云函数组件 |
#初始化项目sls#下载模板项目scf-demo,模板支持可通过sls registry查询sls init scf-demo#下载模板项目scf-demo,并初始化该项目为myappsls init scf-demo --name my-app#部署应用sls deploy#部署应用,指定stage为devsls deploy --stage dev#部署应用,并打印部署信息sls deploy --debug#部署并发布函数版本sls deploy --inputs publish=trues#部署并切换20%流量到 $latest 版本sls deploy --inputs traffic=0.2
本页内容是否解决了您的问题?