# File lib/rake_remote_task.rb, line 43 def role role_name, host = nil, args = {} if block_given? then raise ArgumentError, 'host not allowed with block' unless host.nil? begin Rake::RemoteTask.current_roles << role_name yield ensure Rake::RemoteTask.current_roles.delete role_name end else raise ArgumentError, 'host required' if host.nil? Rake::RemoteTask.role role_name, host, args end end