rake程序和回滚

时间:2011-11-25 09:20:06

标签: ruby-on-rails ruby

我将此命令序列放入Rake文件

  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

让我们假设其中一个命令生成异常,是否有办法对过去的命令执行回滚?

1 个答案:

答案 0 :(得分:0)

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