2015-03-14 3 views
0

Мне нужно скомпилировать пользовательский c-кодированный двоичный файл, используемый нашим приложением rails. эта настройка хранится в пользовательском файле rake (нашapp.rake, внизу) running cap v2 я заметил, что make был неудачным, но развертывание не «провалилось». я так просто сделали задачуcapistrano v2 не работает/откатывается при сбое пользовательской задачи

system "cd #{thedir} && exit 1" # simulate failing of custom task 

но развёртывание: холод не неудачу, отладочный вывод (ниже) ясно показывает, сделать неудачу

я упускаю что-то? Я попытался

  • поиска кодов ошибок/отсутствие сценария Капистранны - ничего (много упоминаний о попытке запуска пользовательских скриптов на неудачу)
  • системы v запуска v вызвать

помощи оценил , код ниже

# ourapp.rake 

namespace :ourapp do 
    desc "Compile and Install Performant Parser" 
    task :compile_performant_parser do 
    thedir=File.join(Rails.root, 'parser') 
    system "cd #{thedir} && make clean && make && make install" 
    end # compile 

    desc "Compile and Install Compareplans process" 
    task :compile_binary do 
    thedir=File.join(Rails.root, 'compareplans_process/src') 
    #system "cd #{thedir} && make clean && make && make install" 
    system "exit 1" 
    end # compile 

    task :install => [:compile_performant_parser, :compile_binary ] do 
    puts "Preparing Ourapp for run" 
    end 
end 

дополнений deploy.rb

namespace :deploy do 
    desc "setup ourapp dependencies, dir, binaries and (later data)" 
    task :setup_ourapp do 
    run "cd #{current_release} && /usr/bin/env bundle exec rake our app:install RAILS_ENV=#{rails_env}" 
    end 
    after 'deploy:update_code', 'deploy:setup_ourapp' 
end 

ответ

Смежные вопросы