X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/a6439c7ddc3407193889386051f06df2a1e74ea9..9aa380dbc94f9fb8be43e3fb691dadfcbefff94c:/services/api/app/controllers/static_controller.rb diff --git a/services/api/app/controllers/static_controller.rb b/services/api/app/controllers/static_controller.rb index c71b85052b..4b2b985e02 100644 --- a/services/api/app/controllers/static_controller.rb +++ b/services/api/app/controllers/static_controller.rb @@ -1,18 +1,31 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class StaticController < ApplicationController respond_to :json, :html - skip_before_filter :find_object_by_uuid - skip_before_filter :render_404_if_no_object - skip_before_filter :require_auth_scope, :only => [ :home, :login_failure ] + skip_before_action :find_object_by_uuid + skip_before_action :render_404_if_no_object + skip_before_action :require_auth_scope, only: [:home, :empty, :login_failure] def home - if Rails.configuration.respond_to? :workbench_address - redirect_to Rails.configuration.workbench_address - else - render json: { - error: ('This is the API server; you probably want to be at the workbench for this installation. Unfortunately, config.workbench_address is not set so I can not redirect you there automatically') - } + respond_to do |f| + f.html do + if !Rails.configuration.Services.Workbench1.ExternalURL.to_s.empty? + redirect_to Rails.configuration.Services.Workbench1.ExternalURL.to_s + else + render_not_found "Oops, this is an API endpoint. You probably want to point your browser to an Arvados Workbench site instead." + end + end + f.json do + render_not_found "Path not found." + end end end + def empty + render plain: "" + end + end