69276


lambda をデプロイする sam deploy コマンドのテンプレートにタグを設定したいのですが

[code]

    Resources:
      LambdaTest:
        Type: AWS::Serverless::Function
        Properties:
            :
          Tags: 
            Name: name-test
    
[/code]

のように書いても

[code]

    CREATE_FAILED                                    AWS::Lambda::Function                            LambdaTest                                            Encountered unsupported property Tags
    
[/code]

となってしまいます

<https://docs.aws.amazon.com/ja_jp/serverless-application-
model/latest/developerguide/sam-resource-function.html#sam-function-tags>  
ドキュメントを読むと

> タイプ: マップ  
>  CloudFormation の互換性: このプロパティは、AWS::Lambda::Function の Tags プロパティに似ています。SAM
> のタグプロパティは、キーと値のペアで構成されています。

となっていてどうも形式が違うみたいなんですが  
タイプ: マップというのはどういう記述方法なんでしょうか

CloudFormation だと

[code]

    Tags:
      Key: Name
      Value: name-test 
    
[/code]

と書くみたいなのですがこれだともっと前の段階で sam deploy が失敗します


CC BY-SA 4.0
2020-07-22T12:02:21.693
68833
2020-08-05T10:35:04.360
2020-07-23T06:39:04.273
19110
question
aws-lambda aws-cloudformation
sam テンプレートの serverless function の tags の書き方


[AWS::Serverless::Function](https://docs.aws.amazon.com/ja_jp/serverless-
application-model/latest/developerguide/sam-resource-function.html#sam-
function-tags) の説明に

> Tags
>
> Lambda 関数に追加されるタグおよび対応する IAM 実行ロールを指定するマップ (文字列から文字列)。キーと値に使用できるのは **英数字のみ**
> です。キーの長さは 1～127 文字の Unicode 文字です。「aws:」をプレフィックスとして使用することはできません。値の長さは 1～255
> 文字の Unicode 文字です。

とありますが、「name-test」だとハイフンを含むためエラーが起こるのではないでしょうか


CC BY-SA 4.0
2020-08-02T07:09:41.210
69181
2020-08-02T07:09:41.210
4715
68833
answer


ソースのしたの方の  
Event リソースの中の Tags というのがダメだったみたいで  
CloudFormation では任意のリソースに Tags がかけるみたいなんですが  
sam の場合は AWS::Serverless::Function の中しか Tags は使えないみたいで  
これを消したところ成功しました

テンプレートソースの全文がかなり長かったので省略してしまったために  
回答不可能な質問をしてしまって申し訳ありません


CC BY-SA 4.0
2020-08-05T10:35:04.360
69276
2020-08-05T10:35:04.360
68833
answer