首页 > 解决方案 > 该参数未应用于 sam 模板

问题描述

首先,我不熟悉英语,请您耐心等待。

我正在尝试通过 AWS 的 Codepipiline 功能部署无服务器应用程序。但是,在 codebuild 阶段,sam 模板无法正常工作。下面是我的一些模板。

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Parameters:
  filename:
    Type: String
    Default: test
Description: !Ref filename

显然,尽管声明了文件名参数,但我收到以下错误:

Template format error: Every Description member must be a string.

应用到堆栈的模板如下。

Description:
  Fn::Ref: filename

但我想要的是以下输出。

Description: test

sam deploy参数“--paramater-overrides”也有问题,但是这不起作用,所以没有进展。

标签: amazon-web-servicestemplatesamazon-cloudformationsam

解决方案


如果您查看AWS SAM Template Anatomy,您会发现:

描述(可选) 此部分直接对应于 AWS CloudFormation 模板的描述部分。

参数(可选) 此部分直接对应于 AWS CloudFormation 模板的参数部分。

随后,您无法在 Description 中引用参数。这是因为

您可以从同一模板的资源和输出部分引用参数。


推荐阅读