0
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?

AWS CLIでCloudFrontの設定を変更するスクリプト

Posted at

CloudFrontの設定は、ちょっぴり面倒くさい

CloudFrontの設定をする場合、特定の項目のみを設定するのではなく、設定用のjsonを丸ごと流し込む方式を取ります。

更新コマンド。オプションでjsonを読み込んでいる
aws cloudfront update-distribution \
  --id $DISTRIBUTION_ID \
  --distribution-config file://updated-config.json \
  --if-match $ETAG

jsonを作り込むのが面倒くさいので、スクリプトにして実行する方法を紹介します。

前提

AWS CLIコマンド、jqコマンドが使える環境であることを前提とします。

設定スクリプト

以下のように実行します。jqコマンドは抽出の他、フィールド編集も簡単にできるので良いですね。

# 設定対象の指定
DISTRIBUTION_ID=<CloudFrontディストリビューションID>

# 設定取得
aws cloudfront get-distribution-config --id $DISTRIBUTION_ID > dist-config.json

# アップデート用設定ファイルを作成
# ※WebACLIdフィールド (WAF設定) を変更する例です。更新したい内容に応じて編集してください
jq '.DistributionConfig | .WebACLId = "<WAF_ARN>"' dist-config.json > updated-config.json

# ETag取得
ETAG=$(jq -r '.ETag' dist-config.json)

# 設定変更の実行
aws cloudfront update-distribution \
  --id $DISTRIBUTION_ID \
  --distribution-config file://updated-config.json \
  --if-match $ETAG

参考

0
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
0
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?