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用の設定を実行します。
