1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IaC入門のメモ:Terraformを使ってみよう 第2回(API Gatewayの設定とAppSyncをエクスポートしたい)

Last updated at Posted at 2023-06-29

はじめに

座学では知っている物の、実体験をもってCloudFormationのテンプレ化をしてこなかったので、既存リソースをテンプレート化する所までを、「やってみた!」系のメモ書き(第2回)です。

TerraformとTerraformerのセットアップについては、前回の記事を参照ください。

初期化の実行

実行カレントに、main.tf(スクショの実行環境では、Work直下にmain.tfを保存)を置いて、コマンドを実行する。

terraform init

image.png

公式ドキュメント

image.png

対象としたいリソースは、この辺りです。

ポリシー用意

API Gateway用の読み取り専用ポリシー

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "apigateway:Get*"
            ],
            "Resource": "*"
        }
    ]
}

AppSync用の読み取り専用ポリシー

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "appsync:List*",
                "appsync:Get*",
                "appsync:EvaluateCode",
                "appsync:EvaluateMappingTemplate"
            ],
            "Resource": "*"
        }
    ]
}

エクスポート

API Gateway用のエクスポートコマンド

terraformer import aws --resources=api_gateway --regions=ap-northeast-1

AppSync用のエクスポートコマンド

terraformer import aws --resources=appsync --regions=ap-northeast-1

image.png

配下に

  • generated - aws - api_gateway
  • generated - aws - appsync

のフォルダ階層が作成されて、各種 tfファイルが出力されました。

まとめ

出力したTFファイルを確認してみたところ、API Gatewayの方は設定している大部分の情報を出力できているようです。
対して、AppSyncは、出力内容が、まだまだ足りないな、、、という感じでした。(今後のバージョンアップに期待)

AWSの相談・お困りごとありましたら、、、

AWSの活用方法や、お困りごとの相談、随時、お仕事の受付しております。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?