Travis CIからs3にデプロイした時に、詰まったのでメモ。
Travis CIとは
「継続的インテグレーション(CI)」ツール。
あらかじめ指定したgithubのレポジトリに、コードをpushすると、自動でテストを行ってくれる。
テストが成功すれば指定したホスティングサービスにデプロイもしてくれる。失敗するとメール等で通知してくれる、テスト自動化ツール。
手順
前提条件
・GitHub のアカウントを持っている
・GitHub にリポジトリを持っている
・Travis CI のアカウントを持っている
・Travis CI の CLI をインストールしている (gem install travis)
・AWS のアカウントを持っている
・s3の更新権限を持ったアクセスIDとSecrete keyをIAMで作っている。
・s3のバケットを、静的サイトをしてホスティングしている。
1.https://travis-ci.org/ にログインして当該リポジトリをONにする。
2.ローカルのプロジェクトフォルダで、$ touch .travis.yml
3.$Travis encrypt "アクセスキーID"
と$Travis encrypt "シークレットアクセスキー"
で、ターミナルに出てきた、secure: "..."
を.travis.ymlに貼り付ける。
language: node_js
script: echo "do nothing"
deploy:
provider: s3
access_key_id:
secure: "アクセスキーID"
secret_access_key:
secure: "シークレットアクセスキー"
bucket: s3-website.shikumi-zukuri.com
region: us-east-1
endpoint: s3.amazonaws.com
on:
branch: master
4.git add .
、git commit
、git push
する。
これで、Travis CIが、自動でテストを実行してくれ指定したs3バケットに、htmlとかのファイルをデプロイしてくれる。
参考
公式ドキュメント
Travis CIs3 Deployment
Travis CI for Complete Beginners
その他
# travis-ciからAmazon S3へファイルをデプロイする
GitHub + Travis CI + Amazon S3 で git push で更新されるサイトをつくった