For more information see <%= link_to raw('Arvados Docs → User Guide → SSH access'), "#{Rails.configuration.arvados_docsite}/user/getting_started/ssh-access-unix.html", target: "_blank"%>. A sample ~/.ssh/config entry is provided below.

<% if !@my_virtual_machines.any? %>
You do not have access to any virtual machines. Some Arvados features require using the command line. You may request access to a hosted virtual machine with the command line shell.    
<%= button_to('Send request for shell access', request_shell_access_user_url(id: current_user.uuid), id: 'request_shell_submit', class: 'btn btn-xs btn-primary', remote: true) %>

A request for shell access was sent eariler.

<% else %> <% @my_virtual_machines.andand.each do |vm| %> <% end %>
Host name Login name Command line
<%= vm[:hostname] %> <%= @my_vm_logins[vm[:uuid]].andand.compact.andand.join(", ") %> <% if @my_vm_logins[vm[:uuid]] %> <% @my_vm_logins[vm[:uuid]].each do |login| %> ssh <%= login %>@<%= vm[:hostname] %>.arvados <% end %> <% end %>

~/.ssh/config:

Host *.arvados
      TCPKeepAlive yes
      ServerAliveInterval 60
      ProxyCommand ssh -p2222 turnout@switchyard.<%= current_api_host || 'xyzzy.arvadosapi.com' %> -x -a $SSH_PROXY_FLAGS %h
    
<% end %>