我想用Capistrano 3编写一个配方,用sudo在远程服务器上执行任务.
使用Capistrano 2,可以这样做:
default_run_options[:pty] = true
task :hello do
run "#{sudo} cp ~/something /something"
end
Run Code Online (Sandbox Code Playgroud)
有了Capistrano 3,我发现:
set :pty, true
Run Code Online (Sandbox Code Playgroud)
但我无法执行使用sudo运行的任务.
如何使用sudo运行任务?
在使用MySql的Rails 4.0应用程序中,我们将rspec与使用strategy:transaction配置的database_cleaner gem一起使用,以清理每个测试用例的数据库.如果我们有自定义事务,应该回滚,它不起作用.
没有database_cleaner gem并且只使用标准方式:
config.use_transactional_fixtures = true
Run Code Online (Sandbox Code Playgroud)
一切都如预期的那样.但是对于使用JavaScript运行功能测试,我们需要database_cleaner将夹具删除策略更改为:截断.
我们如何将database_cleaner与自定义事务一起使用?为什么它与标准的rspec事务策略不同?