[解決済み] aws cloudformationはリストでFn::Joinを使用します。
2022-02-10 02:45:17
質問
私は、ラムダ関数によってバックアップされたカスタムリソースを使用するcloudformationテンプレートを持っています。ラムダ関数のパラメータの1つは、文字列のリストです。私はリストで渡す1つのアイテムだけを持っており、Fn:Joinを使用して文字列を連結して作成したいと思います。しかし、Fn::Joinを使用すると、無効なjsonにつながるため、エラーが発生します。どんな入力でも感謝します。
サブスクリプション": [ "Fn::Join"です。[":", ["a", "b", "c"]]] といった感じです。
<ブロッククオートCreateStackの呼び出し時にクライアントエラー(ValidationError)が発生しました。 operation : Template format error: JSON が正しくフォーマットされていません。
Cloudformationスニペット:-)
"Resources": {
"MyCustomRes": {
"Type": "Custom::CustomResource",
"Properties": {
"ServiceToken": { "Fn::Join": [ "", [
"arn:aws:lambda:",
{ "Ref": "AWS::Region" },
":",
{ "Ref": "AWS::AccountId" },
":function:LambdaFn"
] ] },
"Version": 1,
"ResourceName": { "Ref": "ResourceName" },
"Subscriptions" : [ "Fn::Join": [ "", [
"arn:aws:sns:",
{ "Ref": "AWS::Region" },
":",
{ "Ref": "AWS::AccountId" },
":Topic1"
] ] ]
}
} },
解決方法は?
その
Fn::Join
固有機能
の値を構築するために使用されます。
Subscriptions
プロパティは配列ではなく、オブジェクトである必要があります。
のような配列を使用することは、JSONの構文として無効です。
['Fn::Join' : [...]]
という形式でなければなりません。
{"Fn::Join" : [...]}
ドキュメントでは、この構文を次のように説明しています。
{ "Fn::Join" : [ "delimiter", [ comma-delimited list of values ] ] }
したがって、Cloud Formation テンプレートは次のように使用する必要があります。
"Subscriptions": {
"Fn::Join": [":", [
"arn:aws:sns",
{ "Ref": "AWS::Region"},
{ "Ref": "AWS::AccountId"},
"Topic1"]
]
}
関連
-
[解決済み】あなたのWSGIPathは、存在しないファイルを参照しています。
-
[解決済み】DynamoDB - キー要素がスキーマと一致しない
-
[解決済み] AzureにはAWSのCloudFormationのようなIaCツールはあるのでしょうか?[クローズド]
-
[解決済み] AMI保管コスト
-
[解決済み] RDS は、以下の組み合わせでの DB インスタンスの作成をサポートしていません。
-
[解決済み] アクセスポイントを経由してAmazon S3へのロールを認可する
-
[解決済み] AWS SNSとAWS SQSのFIFOキューを統合することは可能か?
-
[解決済み] API Gatewayにアクセスする際に認証トークンが見つからない?
-
[解決済み] s3バケットから複数ファイルをコピーする
-
[解決済み] "保護されていない秘密鍵ファイル!" Amazon EC2インスタンス(AWS)へのSSH利用時のエラーについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】DynamoDB - キー要素がスキーマと一致しない
-
[解決済み] s3 - HeadObject 操作を呼び出すときに、エラーが発生しました (403)。Forbidden
-
[解決済み] スケジュールされたイベントソースをトリガーとするラムダ関数を設定するには、terraformを使用します。
-
[解決済み] AWSストレージクラス解析とインテリジェントティアリングの比較
-
[解決済み] AWSです。CloudFormationのテンプレートでbooleanパラメータを指定する方法
-
[解決済み] AWS SNSとAWS SQSのFIFOキューを統合することは可能か?
-
[解決済み] AWSのロールを "アサイン "するとはどういうことですか?
-
[解決済み] AWSのstsは、1つのコマンドの役割を担う
-
[解決済み] AWS CLIツールからAWSアカウント番号を取得する簡単な方法とは?
-
[解決済み】LightsailとEC2の違いは何ですか?[クローズド]