2011-11-25 41 views
0

我有这样的命令序列到耙文件耙程序和回滚

task :compile => :environment do 
      system "bundle exec rake assets:clean" 
      system "bundle exec rake assets:precompile RAILS_ENV=production" 
      system "chmod 777 -R /var/www/app/tmp/cache/" 
      system "/etc/init.d/apache2 restart" 
    end 

让我们假设该命令的一个产生异常,有没有在过去的命令执行回滚的方法吗?

回答

0

这三个第一可以在Ruby中完成。例如,使用Rake::Task['assets:clean'].invoke。 对于最后一个,您可以根据退出状态引发异常(系统返回它)。