我使用无服务器和无服务器本地进行本地开发。在serverless.yml中设置来自外部文件的环境变量
我有一个外部文件,它保存了我在我的应用程序中从node.env
中检索到的环境变量的引用。
据我了解,我应该能为我设置环境变量,比如
dev:
AWS_KEY: 'key',
SECRET: 'secret
test:
AWS_KEY: 'test-key',
SECRET: 'test-secret',
etc:
...
,并有通过我的serverless.yml以下行包括在我的应用程序的环境变量
provider:
name: aws
runtime: nodejs4.3
stage: ${opt:stage, self:custom.default_stage}
deploymentBucket: serverless-deploy-packages/${opt:stage, self:custom.default_stage}
environment:
${file(./serverless-env.yml):${opt:stage, self:custom.default_stage}}
然后在命令行,我称之为
serverless offline --stage dev --port 9000
我认为这会在我的应用中包含正确的变量,但它不起作用。这不是它应该如何工作?我在这里做错了什么?
文档是不完整的,虽然它可以按照您描述的那样完成,但是比所需的更冗长。将值直接传递给yaml中的环境条目确实起作用,我只是在文件指向的位置出现错误,这显然不会导致yaml中的错误。 – pedalpete