14345: Use "." placeholder to persist empty directories.
[arvados.git] / lib / controller / fed_containers.go
index fc627d3fafeb7000e5e3d78eb0efed257b92abe3..5c5501d22c73767f87f74d5b5439927c4c4282bb 100644 (file)
@@ -9,8 +9,8 @@ import (
        "encoding/json"
        "fmt"
        "io/ioutil"
-       "log"
        "net/http"
+       "strings"
 
        "git.curoverse.com/arvados.git/sdk/go/auth"
        "git.curoverse.com/arvados.git/sdk/go/httpserver"
@@ -64,8 +64,6 @@ func remoteContainerRequestCreate(
 
        // If runtime_token is not set, create a new token
        if _, ok := containerRequest["runtime_token"]; !ok {
-               log.Printf("ok %v", ok)
-
                // First make sure supplied token is valid.
                creds := auth.NewCredentials()
                creds.LoadTokensFromHTTPRequest(req)
@@ -82,7 +80,7 @@ func remoteContainerRequestCreate(
                }
 
                // Must be home cluster for this authorization
-               if currentUser.Authorization.UUID[0:5] == h.handler.Cluster.ClusterID {
+               if strings.HasPrefix(currentUser.Authorization.UUID, h.handler.Cluster.ClusterID) {
                        newtok, err := h.handler.createAPItoken(req, currentUser.UUID, nil)
                        if err != nil {
                                httpserver.Error(w, err.Error(), http.StatusForbidden)
@@ -98,10 +96,7 @@ func remoteContainerRequestCreate(
        req.ContentLength = int64(buf.Len())
        req.Header.Set("Content-Length", fmt.Sprintf("%v", buf.Len()))
 
-       resp, cancel, err := h.handler.remoteClusterRequest(*clusterId, req)
-       if cancel != nil {
-               defer cancel()
-       }
+       resp, err := h.handler.remoteClusterRequest(*clusterId, req)
        h.handler.proxy.ForwardResponse(w, resp, err)
        return true
 }