caarlos0
caarlos0

Reputation: 20633

Make a rake task fail if system call return error

I have a Rakefile that I use to automate some tasks in my project.

Inside some tasks, I call system, but, even if the process return an error, task continues without any issue.

How can I avoid that? I want to make rake exit when some subprocess return an error.

Thanks in advance

Upvotes: 4

Views: 2128

Answers (2)

Franklin Yu
Franklin Yu

Reputation: 9938

sh is the Rake way to call a command. It will fail with a neat message. Compared with system, sh prints out the command as well.

Upvotes: 2

Pablo Fernandez heelhook
Pablo Fernandez heelhook

Reputation: 12513

You can evaluate the return value of system

system('inexistent command') or exit!(1)
puts "This line is not reached"

Upvotes: 9

Related Questions