簡體   English   中英

Cloudformation 參數 map 並使用 !join 加入 API 網關 uri

[英]Cloudformation Parameter map and using !join to join API Gateway uri

我正在使用映射到 map API 網關 uri wrt 區域和環境。 在使用策略中,FindInMap[KensisAPIMap: :Ref "AWS,:Region", !Ref envname]]]

使用以下模板片段創建堆棧時出現“模板錯誤:每個 Fn::Join object 都需要兩個參數,(1) 字符串定界符和 (2) 要連接的字符串列表或返回字符串列表的 function (例如 Fn::GetAZs)被加入。” 錯誤

Mappings: 
 DataAPIMap: 
  us-west-2: 
    DevOne: "09lvg5kd1l/*/PUT/*/*/*/v2"
    TestOne: "default"
  eu-central-1: 
    devTwo: "sixv6a77sg/*/PUT/*/*/*/v2"
    TestTwo: "default" 
 KensisAPIMap: 
  us-west-2: 
    devOne:
        - !Join ["", [!Sub '${AWS::Region}:${AWS::AccountId}:we4x5ulbsl/*/PUT/s']]
  eu-central-1: 
    devTwo: 
        - !Join ["", [!Sub 'us-west-2', !Ref KensisActId ,':we4x5ulbsl/*/PUT/s']]
Resources:
   ----

謝謝

在 us-west-2: devOne 中,您似乎根本不需要加入。 所以:

KensisAPIMap: 
  us-west-2: 
    devOne: !Sub '${AWS::Region}:${AWS::AccountId}:we4x5ulbsl/*/PUT/s'

關於 devTwo 嘗試這樣嗎? 小心縮進

devTwo: 
    Fn::Join: 
     - ""
     - - us-west-2 
       - !Ref KensisActId 
       - :we4x5ulbsl/*/PUT/s

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM