在我的serverless.yml中,我有:
public-function:
handler: function.Handler
我想对公共职能部门进行参数化设置,但是我不确定如何做到这一点。我知道我可以在函数中添加name:属性,并使用https://www.serverless.com/framework/docs/providers/aws/guide/variables/中记录的$ {}语法,但这仅能解决我的问题因为Serverless使用public函数作为其他资源名称的基础,我也希望使用参数化名称。
资源名称中有使用变量的某种方法吗?
声明的功能键(即public-function
)只是堆栈中的引用。由于名称是任意的,因此无需在构建时进行更改。
如果要自定义已部署功能的详细信息,请更改其配置。
例如,使用环境变量将函数的名称更改为其他名称:
functions:
main:
handler: function.Handler
name: ${self:provider.stage}-${env:FUNCTION_NAME}
如果要将资源导出到另一个堆栈,则可以这样定义导出名称:
resources:
Outputs:
MainFunction:
Value:
Fn::GetAtt: [MainLambdaFunction, Arn]
Export:
Name: ${self:provider.stage}-${env:CUSTOM_EXPORT_NAME}
建议但不要求对这两个示例进行阶段范围界定;您可以命名函数,资源,并输出所需的任何内容。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句