現在deployerで複数台のサーバーに対して、デプロイを実施しております。
deployerでオートスケーリングしたサーバーに対して、最新ソースをデプロイしたいと考え、
EC2のインスタンス情報をAPIで取得して、デプロイ対象のサーバーipアドレスを取得するところまではできました。
ただ、可変引数にその配列を渡して、実行することに対して、ハマっています。。。
現状は、以下のようになっております。
php
1namespace Deployer; 2require 'recipe/common.php'; 3 4$instance_group = array("333.333.333.333","444.444.444.444"); 5 6host(111.111.111.111,222.222.222.222) 7 ->user('ec2-user') 8 ->port(22) 9 ->identityFile('***') 10 ->stage('sample') 11 ->set('repository', '***') 12 ->set('branch', 'master') 13 ->set('deploy_path', '/home/sample') 14 ->set('shared_dirs', []) 15 ->set('shared_files', []) 16 ->set('writable_dirs', []) 17 ->set('http_user', 'apache'); 18 19task('deploy', [ 20 'deploy:prepare', 21 'deploy:lock', 22 'deploy:release', 23 'deploy:update_code', 24 'deploy:shared', 25 'deploy:writable', 26 'deploy:clear_paths', 27 'deploy:symlink', 28 'deploy:unlock', 29 'cleanup', 30 'success' 31]); 32 33after('deploy:failed', 'deploy:unlock'); 34
hostの引数にipアドレスを手動で設定して、以下のデプロイコマンドを実施した場合、問題なくデプロイが行えています。
bash
1$ dep deploy -v sample
配列に入っているipアドレスを可変引数に追加して実行する方法がわかりません。
call_user_func_arrayで渡すことも試したのですが、うまく動きませんでした。
解消方法がわかりましたら、ぜひご教授願います。
deployerのバージョン : 5.0.3
phpのバージョン : 7.0.16
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。