https://github.com/Anahkiasen/rocketeer
http://madroom-project.blogspot.jp/search/label/rocketeer
今回は、PHP製SSHツールのenvoyを使って、プロジェクトをデプロイしてみます。
https://github.com/laravel/envoy
使い方は、非常にシンプルです。
envoy.phar をダウンロードします。
$ wget https://github.com/laravel/envoy/raw/master/envoy.phar設定ファイルを生成します。尚、この例の192.168.33.10には鍵認証ができる前提です。
$ php envoy.phar init 192.168.33.10Envoy.blade.phpというファイルが作成されるので、cdするディレクトリをサーバのプロジェクトルートに変更します。
@servers(['web' => '192.168.33.10']) @task('deploy') cd /xxx/yyy/my_project git pull origin master @endtaskデプロイを実行します。(実行結果のurlは適当に書き換えています。)
$ php envoy.phar run deploy [vagrant]: From https://github.com/mamor/my_project * branch master -> FETCH_HEAD [vagrant]: Already up-to-date.簡単ですね。初回のclone等は、別途対応する必要がありますが。README.mdを見ると、1タスクをNサーバに対して実行することもできるみたいです。
envoyと比べると、Rocketeerは設定が多いですが、例えばPHPUnitの実行結果によりデプロイの続行/中止を制御してくれたりするので、一概にどちらが優れているとは言えないと思います。envoyでそれをやろうとすると、symlinkの貼替えとか、かえって面倒そうですし。プロジェクトの性質によって使い分けていきたいなと思います。
No comments:
Post a Comment