module Hoe::RakeHelpers

def run( *cmd )

## fails. Doesn't invoke a subshell (unlike 'sh').
## Run the specified command +cmd+ with system(), failing if the execution
def run( *cmd )
	cmd.flatten!
	if cmd.length > 1
		trace( "Running:", quotelist(*cmd) )
	else
		trace( "Running:", cmd )
	end
	if Rake.application.options.dryrun
		log "(dry run mode)"
	else
		system( *cmd )
		unless $?.success?
			fail "Command failed: [%s]" % [cmd.join(' ')]
		end
	end
end