19166: Set up tunnel for container gateway requests
[arvados.git] / lib / controller / router / router.go
index e42d9a555b5993e00e2a7ce3eff29ab174ab0b44..a87dbca92664254df43b12b73a2fd15917f137fe 100644 (file)
@@ -244,6 +244,13 @@ func (rtr *router) addRoutes() {
                                return rtr.backend.ContainerSSH(ctx, *opts.(*arvados.ContainerSSHOptions))
                        },
                },
+               {
+                       arvados.EndpointContainerGatewayTunnel,
+                       func() interface{} { return &arvados.ContainerGatewayTunnelOptions{} },
+                       func(ctx context.Context, opts interface{}) (interface{}, error) {
+                               return rtr.backend.ContainerGatewayTunnel(ctx, *opts.(*arvados.ContainerGatewayTunnelOptions))
+                       },
+               },
                {
                        arvados.EndpointGroupCreate,
                        func() interface{} { return &arvados.CreateOptions{} },
@@ -407,7 +414,7 @@ func (rtr *router) addRoutes() {
                },
                {
                        arvados.EndpointAPIClientAuthorizationList,
-                       func() interface{} { return &arvados.ListOptions{} },
+                       func() interface{} { return &arvados.ListOptions{Limit: -1} },
                        func(ctx context.Context, opts interface{}) (interface{}, error) {
                                return rtr.backend.APIClientAuthorizationList(ctx, *opts.(*arvados.ListOptions))
                        },
@@ -597,7 +604,11 @@ func (rtr *router) addRoute(endpoint arvados.APIEndpoint, defaultOpts func() int
                                        tokenUUIDs = append(tokenUUIDs, tokenParts[1])
                                }
                        } else {
-                               tokenUUIDs = append(tokenUUIDs, "v1 token ending in "+t[len(t)-5:])
+                               end := t
+                               if len(t) > 5 {
+                                       end = t[len(t)-5:]
+                               }
+                               tokenUUIDs = append(tokenUUIDs, "v1 token ending in "+end)
                        }
                }
                httpserver.SetResponseLogFields(req.Context(), logrus.Fields{"tokenUUIDs": tokenUUIDs})