Fix bug.
This commit is contained in:
parent
04623bcca1
commit
e60fe9212b
|
@ -35,7 +35,7 @@ namespace :exec_commands do
|
|||
@command_trans = {}
|
||||
@command_relations = {"upgrade_site"=>'git fetch origin && rails runner "a=Admin::SitesController.new;a.git_reset(%w(origin)[0],%w(update)[0]);while(1) do (Multithread.where(key: %w(update_manager)[0],status: %w(finish)[0]).count!=0 ? break : nil) end;sleep(5)"',
|
||||
"bundle_update"=>"bundle update && kill -s USR2 `cat tmp/pids/unicorn.pid`",
|
||||
"restart_site"=>"kill -s TERM `fuser tmp/pids/unicorn.sock tmp/sockets/unicorn.sock tmp/unicorn.sock`;bundle exec unicorn_rails -c config/unicorn.rb -D -E {{rails_env}}",
|
||||
"restart_site"=>"kill -s TERM `fuser tmp/pids/unicorn.sock tmp/sockets/unicorn.sock tmp/unicorn.sock`; {{rvm}} use `cat .ruby-version` && bundle exec unicorn_rails -c config/unicorn.rb -D -E {{rails_env}}",
|
||||
"get_template"=>"mongo --eval 'db.sites.find().pretty()[0][\"template\"]' {{db_name}} --quiet"}
|
||||
@preserve_output = ["get_template"]
|
||||
@command_relations.each do |k,v|
|
||||
|
@ -43,7 +43,7 @@ namespace :exec_commands do
|
|||
end
|
||||
rails_envs = ["production", "development"]
|
||||
rails_envs.each do |env|
|
||||
@command_relations["start_site_in_env,#{env}"] = "kill -s TERM `fuser tmp/pids/unicorn.sock tmp/sockets/unicorn.sock tmp/unicorn.sock`;bundle exec unicorn_rails -c config/unicorn.rb -D -E #{env}"
|
||||
@command_relations["start_site_in_env,#{env}"] = "kill -s TERM `fuser tmp/pids/unicorn.sock tmp/sockets/unicorn.sock tmp/unicorn.sock`; {{rvm}} use `cat .ruby-version` && bundle exec unicorn_rails -c config/unicorn.rb -D -E #{env}"
|
||||
@command_relations["start_site_in_env\\,#{env}"] = @command_relations["start_site_in_env,#{env}"]
|
||||
@command_trans["start_site_in_env,#{env}"] = I18n.t("client_management.start_site_in_env",{:env=>env})
|
||||
@command_trans["start_site_in_env\\,#{env}"] = @command_trans["start_site_in_env,#{env}"]
|
||||
|
@ -71,6 +71,10 @@ namespace :exec_commands do
|
|||
system("ssh-add \"$HOME/.ssh/id_rsa\"")
|
||||
end
|
||||
Net::SSH.start(ip , user , { password: password, port: server_port}) do |ssh|
|
||||
rvm_path = ssh.exec!("which rvm").to_s.strip
|
||||
if rvm_path.blank?
|
||||
rvm_path = "/home/#{args.user}/.rvm/bin/rvm"
|
||||
end
|
||||
@site_construct.update!(:infos=>[]) rescue nil
|
||||
if args.type == 'close_site'
|
||||
exec_ssh_command_by_sudo_and_see_output(ssh,"chmod 777 #{@site_construct.path}/#{@site_construct.site_name} -R",false)
|
||||
|
@ -97,7 +101,7 @@ namespace :exec_commands do
|
|||
@site_construct.update(:rails_env=>rails_env)
|
||||
update_infos_for_exec("Starting site to #{rails_env}")
|
||||
outputs = exec_ssh_command_by_sudo_and_see_output(ssh,"sudo -p 'sudo password:' chmod 777 #{@site_construct.path}/#{@site_construct.site_name} -R",false)
|
||||
output = exec_ssh_command_by_sudo_and_see_output(ssh,"bash -l -c 'cd #{@site_construct.path}/#{@site_construct.site_name}\nkill -s TERM `fuser tmp/unicorn.sock`\nsudo -p \"sudo password:\" kill -s TERM `sudo -p \"sudo password:\" fuser tmp/unicorn.sock`\nsudo -p \"sudo password:\" rm -f tmp/pids/unicorn.pid\nbundle exec unicorn_rails -c config/unicorn.rb -D -E #{rails_env}\n'",false)
|
||||
output = exec_ssh_command_by_sudo_and_see_output(ssh,"bash -l -c 'cd #{@site_construct.path}/#{@site_construct.site_name}\nkill -s TERM `fuser tmp/unicorn.sock`\nsudo -p \"sudo password:\" kill -s TERM `sudo -p \"sudo password:\" fuser tmp/unicorn.sock`\nsudo -p \"sudo password:\" rm -f tmp/pids/unicorn.pid\n '#{rvm_path}' use `cat .ruby-version`\nbundle exec unicorn_rails -c config/unicorn.rb -D -E #{rails_env}\n'",false)
|
||||
if output.include? "bundle install"
|
||||
update_infos_for_exec("Not yet bundle install")
|
||||
outputs = exec_ssh_command_by_sudo_and_see_output(ssh,"bash -l -c 'cd #{@site_construct.path}/#{@site_construct.site_name};bundle install'")
|
||||
|
@ -107,7 +111,7 @@ namespace :exec_commands do
|
|||
@site_construct.update(:status =>"error")
|
||||
break
|
||||
else
|
||||
exec_ssh_command_by_sudo_and_see_output(ssh,"bundle exec unicorn_rails -c config/unicorn.rb -D -E #{rails_env}",false)
|
||||
exec_ssh_command_by_sudo_and_see_output(ssh,"'#{rvm_path}' use `cat .ruby-version` && bundle exec unicorn_rails -c config/unicorn.rb -D -E #{rails_env}",false)
|
||||
end
|
||||
end
|
||||
update_infos_for_exec("Finish starting #{@site_construct.site_name}")
|
||||
|
@ -148,7 +152,7 @@ namespace :exec_commands do
|
|||
update_flag = 2 #Not logging commands result
|
||||
end
|
||||
end
|
||||
command = command.gsub("{{#{k}}}",v)
|
||||
command = command.gsub("{{#{k}}}",v).gsub('{{rvm}}', "'#{rvm_path}'")
|
||||
@command_i18n = @command_i18n.gsub("{{#{k}}}",@command_trans[k])
|
||||
end
|
||||
if @commands_i18n
|
||||
|
|
Loading…
Reference in New Issue