はじめに
こんばんは。
めっちゃ簡単というか、小ネタです。
なので、下書きもありません。
やってみた
実際のコマンド
$ aws cloudfront create-invalidation --distribution-id $DISTRIBUTION_ID --paths 'パス'
今入っている現場では、jenkins経由で beanstalkにdeployを行ってます。
deploy対象のディレクトリがgitレポジトリという状況になっているので、例えばjsのオブジェクトを削除したいならば
MODIFY_JS_FILE_COUNT=`git log --name-status -n 1 --oneline | tail -n +1 | grep .js | awk '{print $1}' | grep 'M' | wc -l` if [ $MODIFY_JS_FILE_COUNT -ne 0 ]; then aws cloudfront create-invalidation --distribution-id $DISTRIBUTION_ID --paths '$JS_PATH' --profile=$DEPLOY_USER fi
みたいな感じで、編集があった場合のみ、まるっと消してます。 作り込んだら各ファイルごとに消すことも可能ですが、規模的に全体の削除にしています。
終わりに
こんな泥臭い方法しか思い浮かばなかったので、ほかにもっとスマートにやれる方法があればぜひ教えてください。。。
まじですぐ終わった。