Use SystemCommand.run instead of custom wrapper.

There is an existing `SystemCommand.run` that executes command with
`sudo`.  Use that instead of yet another custom wrapper.
This commit is contained in:
Yoshimasa Niwa 2016-10-15 15:18:51 -07:00
parent d51cd15e0c
commit 5d606dd0a2

View File

@ -13,7 +13,7 @@ module Hbc
FileUtils.mv repo_caskroom, Hbc.caskroom FileUtils.mv repo_caskroom, Hbc.caskroom
else else
opoo "#{Hbc.caskroom.parent} is not writable, sudo is needed to move the Caskroom." opoo "#{Hbc.caskroom.parent} is not writable, sudo is needed to move the Caskroom."
command "/bin/mv", repo_caskroom, Hbc.caskroom.parent, :use_sudo => true SystemCommand.run("/bin/mv", :args => [repo_caskroom, Hbc.caskroom.parent], :sudo => true)
end end
end end
@ -22,23 +22,12 @@ module Hbc
ohai "Creating Caskroom at #{Hbc.caskroom}" ohai "Creating Caskroom at #{Hbc.caskroom}"
ohai "We'll set permissions properly so we won't need sudo in the future" ohai "We'll set permissions properly so we won't need sudo in the future"
use_sudo = !Hbc.caskroom.parent.writable? sudo = !Hbc.caskroom.parent.writable?
command "/bin/mkdir", "-p", Hbc.caskroom, :use_sudo => use_sudo SystemCommand.run("/bin/mkdir", :args => ["-p", Hbc.caskroom], :sudo => sudo)
command "/bin/chmod", "g+rwx", Hbc.caskroom, :use_sudo => use_sudo SystemCommand.run("/bin/chmod", :args => ["g+rwx", Hbc.caskroom], :sudo => sudo)
command "/usr/sbin/chown", Utils.current_user, Hbc.caskroom, :use_sudo => use_sudo SystemCommand.run("/usr/sbin/chown", :args => [Utils.current_user, Hbc.caskroom], :sudo => sudo)
command "/usr/bin/chgrp", "admin", Hbc.caskroom, :use_sudo => use_sudo SystemCommand.run("/usr/bin/chgrp", :args => ["admin", Hbc.caskroom], :sudo => sudo)
end
def command(*args)
options = args.last.is_a?(Hash) ? args.pop : {}
if options[:use_sudo]
args.unshift "/usr/bin/sudo"
end
ohai args.join(" ")
system *args
end end
end end
end end