s3へファイルアップロード時、メール通知
本記事では、s3にファイルをアップロードした際に、メール通知が自動で実行する仕組みをTerraformを用いて構築する手順を紹介します。
手順
① Terraformを使用できるよう事前準備をする
- Terraformがローカル環境にインストールされていることを確認
- AWS CLIの設定が完了していることを確認
- 適切なIAM権限を持つユーザーで操作すること
② git を cloneする。
git clone https://github.com/tsubasa-akiyama/s3_notification
cd <リポジトリディレクトリ>
③ /envs/prod/terraform.tfvars に任意の値を設定する
環境変数やメールアドレス、S3バケット名などを設定
例:
# 環境
env = "prod" #環境名(prod,stg,dev) 同一環境を複数使用する時に、使用する
# SNSモジュール用
email_address = "example@example.com" #通知を受け取るメールアドレス
# 識別子
common_name = "taro.tanaka" #アップロード用のs3に名前をつける時に使用します。s3の名前がグローバルで一意である必要があるため。一旦、個人の名前を使用する。```
④ Terraformで環境を構築する
cd envs/prod
terraform init
terraform plan
terraform apply
⑤ メール認証を行う
③で指定したメールアドレス宛に確認メールが届く。
メール内のリンクをクリックしてサブスクリプションを有効化する
これにより、Lambdaからの通知を受信可能になります
⑥ 挙動の確認
作成された、s3へファイルをアップロード時、メールが届くか確認する。