rake taskを終了する時にexitを使ってLocalJumpError: unexpected returnを出さないようにする

returnでrake taskを終了しようとするとエラーが出る

namespace :hoge do
  desc 'fuga'
  task exit_rake_task: :environment do
     p "rake taskを終了する" and return if true
  end
end

> LocalJumpError: unexpected return

まぁ結果は終了するのだけど、エラーが出るのは良くない。

exitで終了する

namespace :hoge do
  desc 'fuga'
  task exit_rake_task: :environment do
     p "rake taskを終了する" and exit if true
  end
end

> "rake taskを終了する"

意図通り終了する。