Outputセクションの追加手順


この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

Outputセクションの追加手順今回は、セキュリティグループのスタック作成の際に、VPCを指定するとエラーが発生したためOutoutセクションでVPCをセキュリティグループのスタックから参照できるように設定しエラー解決しました。

問題定義

既存のVpcIdをセキュリティグループに参照し、スタックの作成をします。
下記のエラーが発生しました。

エラー内容

・Template format error: Unresolved resource dependencies [hebiishiVPC] in the Resources block of the template
和訳:テンプレートフォーマットエラー:テンプレートのResourcesブロックにある未解決のリソース依存関係[hebiishiVPC]

対処方

今回は、VPCのスタックからセキュリティグループのスタックへのリソースをエクスポートするために、「クロススタック」の参照を作成します。
クロススタックとは、1つのスタックに全てのリソースを含める代わりに、別のスタックに関連したAWSリソースを作成、必要なリソース出力を他のスタックに参照できます。

  • 下記のコードはOutputセクションをVPCのスタックの最下部にOutputを記述しております。

    Outputs:
     VpcOutput: ←別のスタックで値を参照
     Value: !Ref hebiishiVPC ←参照元(VPCのスタック)を記述します。
     Export:
       Name: VpcFromStack1 ←参照元の内容VpcFromStack1でエクスポートします。
  • 下記のコードは参照先スタック(セキュリティグループ)に記述。
    各セクションの "VpcId:"に下記のコードを記述します。

    VpcId: !ImportValue VpcFromStack1 

    参照ドキュメント(クロススタック出力)

  • 問題なくセキュリティグループが作成できました。
    file

これで、Outputセクションを利用し”未解決のリソース依存関係のエラー”の解決ができました。
ご清聴ありがとうございました。

Last modified: 2022-06-08

Author