X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/4108407c6664b6f22a5ccf8eb864b656595499e9..b96d5caa0056472fe67b82bd5305448d85c7d0cd:/services/keep-web/handler.go?ds=sidebyside diff --git a/services/keep-web/handler.go b/services/keep-web/handler.go index 728fdb0a35..643ca4f587 100644 --- a/services/keep-web/handler.go +++ b/services/keep-web/handler.go @@ -18,13 +18,13 @@ import ( "strings" "sync" - "git.curoverse.com/arvados.git/sdk/go/arvados" - "git.curoverse.com/arvados.git/sdk/go/arvadosclient" - "git.curoverse.com/arvados.git/sdk/go/auth" - "git.curoverse.com/arvados.git/sdk/go/ctxlog" - "git.curoverse.com/arvados.git/sdk/go/health" - "git.curoverse.com/arvados.git/sdk/go/httpserver" - "git.curoverse.com/arvados.git/sdk/go/keepclient" + "git.arvados.org/arvados.git/sdk/go/arvados" + "git.arvados.org/arvados.git/sdk/go/arvadosclient" + "git.arvados.org/arvados.git/sdk/go/auth" + "git.arvados.org/arvados.git/sdk/go/ctxlog" + "git.arvados.org/arvados.git/sdk/go/health" + "git.arvados.org/arvados.git/sdk/go/httpserver" + "git.arvados.org/arvados.git/sdk/go/keepclient" "github.com/sirupsen/logrus" "golang.org/x/net/webdav" ) @@ -76,7 +76,9 @@ func parseCollectionIDFromURL(s string) string { } func (h *handler) setup() { - h.clientPool = arvadosclient.MakeClientPool() + // Errors will be handled at the client pool. + arv, _ := arvados.NewClientFromConfig(h.Config.cluster) + h.clientPool = arvadosclient.MakeClientPoolWith(arv) keepclient.RefreshServiceDiscoveryOnSIGHUP() keepclient.DefaultBlockCache.MaxBlocks = h.Config.cluster.Collections.WebDAVCache.MaxBlockEntries @@ -537,6 +539,7 @@ func (h *handler) serveSiteFS(w http.ResponseWriter, r *http.Request, tokens []s Insecure: arv.ApiInsecure, }).WithRequestID(r.Header.Get("X-Request-Id")) fs := client.SiteFileSystem(kc) + fs.ForwardSlashNameSubstitution(h.Config.cluster.Collections.ForwardSlashNameSubstitution) f, err := fs.Open(r.URL.Path) if os.IsNotExist(err) { http.Error(w, err.Error(), http.StatusNotFound) @@ -765,7 +768,7 @@ func (h *handler) seeOtherWithCookie(w http.ResponseWriter, r *http.Request, loc if location != "" { newu, err := u.Parse(location) if err != nil { - w.WriteHeader(http.StatusInternalServerError) + http.Error(w, "error resolving redirect target: "+err.Error(), http.StatusInternalServerError) return } u = newu