Skip to content

#43 AWS CLIのインストールステップを追加し、Terraformの設定を整理 #20

#43 AWS CLIのインストールステップを追加し、Terraformの設定を整理

#43 AWS CLIのインストールステップを追加し、Terraformの設定を整理 #20

Workflow file for this run

name: Terraform Drift Detection
on:
schedule:
- cron: '0 3 * * *' # 毎日03:00 JST(=18:00 UTC)
workflow_dispatch: # 手動実行も可能にする
push:
branches:
- '43-drift' # テスト用に43-driftブランチでも実行
jobs:
drift-detection:
runs-on: arc-runner-set
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: ap-northeast-2
- name: Install AWS CLI
run: |
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
aws --version
- name: Set up Terraform
uses: hashicorp/setup-terraform@v3
with:
terraform_version: 1.11.3
terraform_wrapper: false
- name: Terraform Init
run: |
cd example/actions/terraform
terraform init -input=false
- name: Terraform Plan
id: plan
run: |
cd example/actions/terraform
terraform plan -detailed-exitcode
- name: Send SNS Notification on Plan Failure
if: ${{ failure() }}
run: |
aws sns publish \
--topic-arn "arn:aws:sns:ap-northeast-2:456247443832:cn-practice-drift-notification" \
--subject "Terraform Plan Failed - Drift Detection" \
--message "Terraform plan failed during drift detection. Please check the GitHub Actions logs for details. Workflow: ${{ github.workflow }}, Run ID: ${{ github.run_id }}"