今までは、手動でデプロイしていましたが、やはりナウイ感じにしようと思いAWSのサービスを使ってgit push
すると自動でデプロイできるように設定します。
今回は、CodeBuild,CodePipelineの設定をメモしておきます。
使うもの
まずはbuildspec.yml
を作成します。buildspec.yml
はフォルダ直下におきます。
僕の場合は、以下のようにしました。CloudFrontのキャッシュ削除もしようと思ったのですが、CloudFrontはキャッシュを削除する度にお金がかかるのでやめました。
オペレーティングシステムはUbuntu
です。
|
|
コンソールからCodeBuildにいきます。プロジェクトの作成を選択。
以下のように作成します。
S3でbuildするのですが、その際にCodeBuildがS3にアクセスできるようにcodebuild-blog-service-role
にポリシーのアタッチをします。
コンソールからIAMを選択します。
ロールに先ほど作ったcodebuild-blog-service-role
があると思います。
codebuild-blog-service-role
を選択すると以下のような詳細が出てきます。
ポリシーのアタッチを選択し、AmazonS3FullAccess
を追加します。
CodeBuildに戻り、ビルドをすると成功するはずです。
次はCodePipelineの設定を行います。
コンソールからCodePipelineに移動し、パイプラインの作成を選択。以下のように設定していきます。
これでCodeCommitにpushすると自動でデプロイできるようになりました。
個人のブログ程度ですとAWSの無料枠の範囲で収まると思います。そんなに更新しないし。
有料になったとしてもたかがしれてるのでHugoでメディア運営をするというのも面白いかもしれません。ライターの人にgitを覚えてもらえばいいわけですから。
gitで管理できるのでWordPressとかよりも効率的な運営ができそうです。