X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/da51b9328abab2df757ed13eadc7c3557315094b..42c20b25e1325124b88e3b9b285544dc41122b56:/apps/workbench/app/controllers/virtual_machines_controller.rb diff --git a/apps/workbench/app/controllers/virtual_machines_controller.rb b/apps/workbench/app/controllers/virtual_machines_controller.rb index c3512e2e4d..c743773141 100644 --- a/apps/workbench/app/controllers/virtual_machines_controller.rb +++ b/apps/workbench/app/controllers/virtual_machines_controller.rb @@ -1,7 +1,8 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class VirtualMachinesController < ApplicationController - def index_pane_list - %w(recent help) - end def index @objects ||= model_class.all @vm_logins = {} @@ -9,7 +10,7 @@ class VirtualMachinesController < ApplicationController Link.where(tail_uuid: current_user.uuid, head_uuid: @objects.collect(&:uuid), link_class: 'permission', - name: 'can_login'). + name: 'can_login').with_count("none"). each do |perm_link| if perm_link.properties.andand[:username] @vm_logins[perm_link.head_uuid] ||= [] @@ -22,4 +23,17 @@ class VirtualMachinesController < ApplicationController end super end + + def webshell + return render_not_found if Rails.configuration.Services.WebShell.ExternalURL == URI("") + webshell_url = URI(Rails.configuration.Services.WebShell.ExternalURL) + if webshell_url.host.index("*") != nil + webshell_url.host = webshell_url.host.sub("*", @object.hostname) + else + webshell_url.path = "/#{@object.hostname}" + end + @webshell_url = webshell_url.to_s + render layout: false + end + end