serverless 提供了一个很好的工作流程,可以在运行时函数代码以及 Lambda 函数和 API Gateway 路由的 AWS 配置中使用变量。这在http://docs.serverless.com/docs/templates-variables和How to define variables in a DRY way 中有描述。
当我在本地使用sls function run -s stage
. 当我通过包含该选项在 Lambda 上运行测试时,该函数运行良好-d
,但没有它会失败,因为尚未分配必要的变量。serverless 提供以下消息:
Serverless: WARNING: This variable is not defined: region
Serverless: WARNING: This variable is not defined: appEnv
我正在使用链接2中描述的 DRY 变量。具体来说:
s-变量-aguldman-useast1.json:
{
"appEnv": "qa"
}
函数/fn1/s-function.json:
{
...
"environment": {
"NODE_ENV": "${appEnv}"
}
...
}
函数/fn1/handler.js:
...
var foo = process.env.NODE_ENV;
...
有什么建议吗?
谢谢!