Я использую capistrano для установки nginx среди других сервисов, как описано Райаном Бейтсом в этом Railscasts. Файл nginx.rb, указанный ниже, копируется из исходного кода. Когда процесс установки дойдет до линииКак нажимать 'enter to continue' в автоматической установке с capistrano
* executing "sudo -p 'sudo password: ' add-apt-repository ppa:nginx/stable"
он бросает предупреждение и просит меня подтвердить, нажав ENTER или управления с, чтобы продолжить. Однако, поскольку это не ручная установка, я не могу нажать Enter для продолжения. Сценарий установки заморожен, ожидая команды, которую я не могу ввести вручную. Есть ли способ изменить файл nginx.rb ниже, чтобы справиться с этим типом ситуации?
triggering after callbacks for `deploy:install'
* 2013-07-11 10:17:36 executing `nginx:install'
* executing "sudo -p 'sudo password: ' add-apt-repository ppa:nginx/stable"
servers: ["192.XXX.XXX.XXX"]
[192.XXX.XXX.XXX] executing command
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] You are about to add the following PPA to your system:
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] Stable version of nginx.
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] The following are no longer updated past 1.2.7, due to PPA build restrictions:
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] * Maverick
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] The following will not be updated past 1.4.1, except for bugfixes which may have been missed:
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] * Lucid
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] * Natty
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] * Oneiric
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] More info: https://launchpad.net/~nginx/+archive/stable
** [out :: 192.XXX.XXX.XXX]
** [out :: 192.XXX.XXX.XXX] Press [ENTER] to continue or ctrl-c to cancel adding it
** [out :: 192.XXX.XXX.XXX]
nginx.rb
namespace :nginx do
desc "Install latest stable release of nginx"
task :install, roles: :web do
run "#{sudo} add-apt-repository ppa:nginx/stable"
run "#{sudo} apt-get -y update"
run "#{sudo} apt-get -y install nginx"
end
after "deploy:install", "nginx:install"
desc "Setup nginx configuration for this application"
task :setup, roles: :web do
template "nginx_unicorn.erb", "/tmp/nginx_conf"
run "#{sudo} mv /tmp/nginx_conf /etc/nginx/sites-enabled/#{application}"
run "#{sudo} rm -f /etc/nginx/sites-enabled/default"
restart
end
after "deploy:setup", "nginx:setup"
%w[start stop restart].each do |command|
desc "#{command} nginx"
task command, roles: :web do
run "#{sudo} service nginx #{command}"
end
end
end
Спасибо, я постараюсь это и принять ваш ответ, если он работает – Leahcim
@biomancer любая идея, как использовать это с capistrano 3? – Mohamad
@Mohamad У меня нет опыта работы с capistrano 3, извините. – biomancer