Class: YaQueenRoleFontana::Manage
- Inherits:
-
YaQueen::Base
- Object
- YaQueen::Base
- YaQueenRoleFontana::Manage
- Defined in:
- lib/ya_queen_role_fontana/manage.rb
Instance Method Summary collapse
- #define_common_task ⇒ Object
- #define_each_tasks ⇒ Object
- #define_manage_apisrv_task ⇒ Object
- #define_manage_gotool_task ⇒ Object
- #define_role_task ⇒ Object
Instance Method Details
#define_common_task ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/ya_queen_role_fontana/manage.rb', line 48 def define_common_task t = self config = self.config task :"@manage/common" do set :user, config['user'] set :scm, :git # set :scm_verbose, true # set :repository, config["repository"] # deploy.rbかステージファイルで指定される set :default_branch, "master" set :branch do tag = Capistrano::CLI.ui.ask "branch or tag : [#{default_branch}] " tag = default_branch if tag.empty? tag end role :web, config['server'] role :app, config['server'] #role :db , config['server'], :primary => true role :management, config['server'] # mongoid.yml のテンプレート # .erbが設定されている場合は、config/mongoid.ymlをこのテンプレートから生成します。 set :mongoid_yml_template, "config/mongoid.yml.production.erb" set :tengine_servers, t.root['tengine']['servers'] end end |
#define_each_tasks ⇒ Object
44 45 46 |
# File 'lib/ya_queen_role_fontana/manage.rb', line 44 def define_each_tasks # do nothing end |
#define_manage_apisrv_task ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/ya_queen_role_fontana/manage.rb', line 14 def define_manage_apisrv_task t = self config = self.config ## [ローカルPC->管理用サーバ] ローカルPCから、管理用サーバに ApiSrv としてデプロイするためのタスク task :"@manage/apisrv" do set :deploy_to, config['apisrv']['deploy_to'] set :gemfile_name, "ApiServer" ## deploy:assets:precompile をさせない ## assets_role を空にするだけでは no matching servers でエラーになる。HOSTFILTERをつけることで no matching servers でも先に進めるようになる。 set :assets_role, [] ENV['HOSTFILTER'] = config['server'] ## manage/apisrv 以外と混ざらないようにする t.set_deploy_target current_task.name end after :"@manage/apisrv", :"@manage/common" end |
#define_manage_gotool_task ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/ya_queen_role_fontana/manage.rb', line 31 def define_manage_gotool_task t = self config = self.config ## [ローカルPC->管理用サーバ] ローカルPCから、管理用サーバに GOTool としてデプロイするためのタスク task :"@manage/gotool" do set :deploy_to, config['gotool']['deploy_to'] set :gemfile_name, "GOTool" ## manage/apisrv 以外と混ざらないようにする t.set_deploy_target current_task.name end after :"@manage/gotool", :"@manage/common" end |
#define_role_task ⇒ Object
9 10 11 12 |
# File 'lib/ya_queen_role_fontana/manage.rb', line 9 def define_role_task define_manage_apisrv_task define_manage_gotool_task end |