使用以下命令安装无服务器时 sls plugin install -n serverless-alexa-skills --stage dev
我收到类似Your serverless.yml has an invalid value with key: "Ref"
的错误
以下是我的示例无服务器.yml文件
plugins:
- serverless-webpack
- serverless-s3-sync
- serverless-plugin-git-variables
- serverless-alexa-skills
functions: ${file(./deploy/${opt:stage}.yml):functions}
resources: ${file(./deploy/${opt:stage}.yml):resources}
custom: ${file(./deploy/${opt:stage}.yml):custom}
outputs:
DialogflowFunctionArn:
Value:
Ref:
这里有一个块。 有人可以在这里帮助我吗?
Ref 是一个 Cloudformation 内在函数。它需要引用资源。整个outputs
部分也是可选的,仅当您需要引用另一个堆栈中的资源时才使用它。
它基本上是说 Ref: 期待一个值。您已经定义了它,但尚未为其分配任何值。如果没有用,那么你应该从代码中删除这部分:
outputs:
DialogflowFunctionArn:
Value:
Ref:
Ref 希望引用某些内容,现在您没有传递任何要引用的内容。
因此,假设您想要 DialogflowFunction 的 ARN,并且该函数配置在您的函数文件中如下所示:
DialogflowFunction:
description: get the flow
handler: src/functions/dialog-controller.flow
events:
- http:
path: '/dialog/flow'
method: get
cors: true
那么你的引用看起来像这样:
outputs:
DialogflowFunctionArn:
Value:
Ref: DialogflowFunction
Ref
获取要引用的资源的逻辑 ID(在本例中为 DialogflowFunction
),并将返回该资源的 ARN。