nebashitaito-web

CodepipelineでGitHubとS3同期させてみた

画像

パイプラインをそれっぽく作ってみる

画像 画像 画像 画像

GitHubへpushする

s3は空にしておく

画像

test1.txtをpushする

画像

パイプラインの動作を確認する

画像

S3にtest1.txtがアップロードされていることを確認する

画像

問題発生

test1.txtを削除し、test2.txtをpushするとtest1.txtがS3から削除されない。理由は、デプロイであって、同期ではないため

画像 画像

解決方法

CodePipelineのビルドステージでコマンド実行にしてみる

画像

名前空間の変更と、リージョンの変数出力を推奨されているのでやっておく

画像

エラー

画像

S3のオブジェクト削除権限(コマンドでやっているところ)の権限がないので追加し、パイプラインを再実行し、成功を確認した。バケットもtest1.txtが削除され、test2.txtだけになっている!

画像 画像
参考