Rocketeer テストサーバーと本番サーバーでやることをわける
前回RocketeerをLinux初心者が導入する]]に引き続き、[[Rocketeerです。
今回は、ちょっと非常にあっさりしたネタですが、誰もがやりたいテストサーバーと本番サーバーでの設定わけです。
testing→テストサーバー
production→本番サーバー
という前提です。
前回説明した、Rocketeerの設定ファイルたちの中から、config.phpを開きます。
下記のあたりを変更します。
//config.php内 //デフォルトどっちかというと、多分テストの方がいいですよね 'default' => array('testing'), 'connections' => array( 'production' => array( 'host' => '116.***.***.***',//リポジトリのサーバーのIPアドレス等 'username' => 'user1', 'password' => 'password', 'key' => '', 'keyphrase' => '', 'agent' => '', 'db_role' => true, ), 'testing' => array( 'host' =>'192.***.***.****', 'username' => 'user2', 'password' =>'password', ), ),
次はstages.phpを開き、次のようにしておきます。
//stages.php内 'stages' => array('testing', 'production'), 'default' => 'testing',
次はついにタスクを作ります!ワクワクですね。
connectionsというディレクトリを作り、中にまたproductionとtestingというサブディレクトリを作ります。
productionの中に、hooks.phpというファイルを作り、testingの中にhooks.phpというファイルを作ります。
もはや察しておられると思いますが、production/hooks.phpには本番サーバーでやりたいこと、testing/hooks.phpにはテストサーバーでやりたいことを書いておきます。
こっから先は企業秘密!なのであっさりと書きますが、一例を載せておきます。
//testing/hooks.php内 'after' => array( 'setup' => array(), 'deploy' => array( 'testing' => array( 'mv test_config.php config.php', ), ),
ちなみに、デフォルトでtestingを指定したいので、デプロイ自体のコマンドは
rocketeer deploy
でtestingを実行し、
rocketeer deploy --on="production"
でproduction用の設定を実行します。