Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

0xf

日記だよ

TerraformとCursor

プライベートのAWSアカウントを一つ設定しなおしている。Terraform管理にしようかなと思って、せっかくなのでCursorに用意してもらうことにした。

まず新しいフォルダ作って、最初の設定をさせる。

AWSのリソースを管理するterraform を作成します。
バックエンドをS3のterraformstate-hogehoge/account.tfstateにします。
バックエンドとプロパイダのAWS Profileはaws-sso-adminにします。

provider.tf が生成される。

terraform initして、続いて、

default vpcにS3のVPCエンドポイントを作ります

とすると、

こういう感じに vpc.tf を生成してくれる。

みた感じ問題ない。planとapply通った。便利。

StepFunctions作ってくれ!!!

以下の内容のStepFunctions の workflow を作ります。名前を sf-s3-list にします。

- S3 バケットの一覧を取得し、結果をJSONで出力する

関連するリソースも作成してください。
リソースの種類ごとに tf ファイルを分割してください。

こういうことを依頼すると、

mkdir -p ./asl/ して、そこに aslファイルを作成し、ワークフローの定義とIAM Roleの作成までやってくれる。

aslの中身はこんな感じだった。

{
  "Comment": "List S3 buckets workflow",
  "StartAt": "ListBuckets",
  "States": {
    "ListBuckets": {
      "Type": "Task",
      "Resource": "arn:aws:states:::aws-sdk:s3:listBuckets",
      "Parameters": {
      },
      "End": true
    }
  }
} 

リソースとしてS3インテグレーションを使っていて、Lambdaとかが挟まってない!

一通り終わったらこんなふうにまとめコメントが入る。

最初は apply したら asl の定義がちょっと変だよ、と怒られたのだけど、修正しとけというと適当に修正してくれた。(上のコードは修正後)

とはいえ

ちょっと複雑なワークフローを要求すると書いてみて失敗して書いてみて失敗して...となってしまう。惜しい。

できなさそうな時に適当なことを書くのは生成AI一般の特徴という感じがする。