Я использую Capistrano и Rails 2.3.4. Я уже сделал deploy:cold на удаленном сервере. Теперь в моем локальном ящике я изменил файл макета и передал его в репозиторий (я использую Netbeans 6 в качестве своей IDE). Я набираю cap deploy, и Capistrano выполняет свои команды и сообщает мне, что он проверил и развернул самую последнюю версию моего кода. Однако на сервере изменений нет, и когда я посмотрел файл макета, он использовал старую версию, а не ту, которую я только что зафиксировал и предположительно развернул.
Кто-нибудь испытывает это?
РЕДАКТИРОВАТЬ: Странно то, что я изменил некоторые файлы изображений, и эти были обновлены на сервере, но макет HTML, который я изменил, не был. Может проблема только в куках?
РЕДАКТИРОВАТЬ2: я проверил сам репозиторий (я использую ProjectLocker) и, конечно же, код там, измененный. Проблема только в том, что Capistrano НЕ проверяет это, хотя говорит, что это так, и не сообщает об ошибках.
Вот мой файл deploy.rb (конечно, очищенный):
# Application
set :application, "myapp"
set :deploy_to, "/var/www/html/#{application}"
# Settings
default_run_options[:pty] = true
set :use_sudo, true
# Servers
set :user, "deploy"
set :domain, "111.111.111.111"
set :runner, "deploy"
server domain, :app, :web
role :db, domain, :primary => true
# SVN
set :repository, "http://myhosting.com/svn/myapp/trunk"
set :scm_username, "[email protected]"
set :scm_password, "secret"
set :checkout, "export"
# Passenger
namespace :passenger do
desc "Restart Application"
task :restart do
run "touch #{current_path}/tmp/restart.txt"
end
end
after :deploy, "passenger:restart"
Иногда это работает, кажется. Например, я внес некоторые изменения в код ранее, и он проверил его нормально. У меня была проблема с тем, что он также не проверял мой файл database.yml; Я был вынужден редактировать его на сервере.