我有一个rake任务,它依赖于另一个任务,它解析其输出以确定失败或成功。
目前我这样做:
task :foo do
puts "OK"
end
task :bar do
if `bundle exec rake foo`.split(/\n/)[-1] == "OK" then
puts "Everything went fine"
else
puts "Something went wrong"
exit 1
end
end
但是我宁愿不在子shell中运行依赖项,但是在task bar: :foo do
中正确指定它,然后检查它的输出,这样可能吗?
答案 0 :(得分:1)
按照这个,它从其他任务调用一个任务。它会有所帮助。
namespace :abc do
task :aa do
"ok"
end
task :bb do
op = Rake::Task["abc:aa"].enhance(["abc:aa"])
p "op=> #{op}"
end
end