created: 2024-01-15T01:29:10.063Z
CloudFront の ID とドメインを一覧する
CloudFront のキャッシュをご破産にするのに、コマンドライン引数でリソースの ID を指示する必要があるが、この ID は E949NH1234567
みたいな形式の文字列なのでこれは憶えていられない。さりとてコマンドライン引数は --distribution-id
しかないので、それ(ID)を調べて指定するしかなさそう。毎回こんなコマンドを叩いている。という記録。
$ aws cloudfront create-invalidation help | head -20
CREATE-INVALIDATION() CREATE-INVALIDATION()
NAME
create-invalidation -
...
--distribution-id <value>
[--invalidation-batch <value>]
[--paths <value>]
CloudFront の ID とドメインを一覧する
aws cloudfront list-distributions | jq -r '
.DistributionList.Items[]
| [.Id, .Aliases.Items[0]]
| @tsv'
出力はこんな塩梅
E39UWG4JPA1234 static.n-t.jp
E3P7V3CYUV1234 blog.n-t.jp
...
キャッシュのご破算
aws cloudfront create-invalidation \
--distribution-id E3P7V3CYUV1234 \
--paths '/*'
その他
本当はプロジェクトの package.json なり .envrc とかでマメに変数にしておくとよいかもしれないが、CDN を作り直したりすること考えると絶妙に億劫。(マメでない)
export CLOUDFRONT_ID__ABCD_CO_JP=E949NH1234567
{
"scripts": "aws cloudfront create-invalidation\
--distribution-id $CLOUDFRONT_ID__ABCD_CO_JP\
--paths '/*'"
}