Add 'sdk/java-v2/' from commit '55f103e336ca9fb8bf1720d2ef4ee8dd4e221118'
[arvados.git] / lib / controller / server_test.go
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 package controller
6
7 import (
8         "net/http"
9         "os"
10         "path/filepath"
11
12         "git.curoverse.com/arvados.git/sdk/go/arvados"
13         "git.curoverse.com/arvados.git/sdk/go/ctxlog"
14         "git.curoverse.com/arvados.git/sdk/go/httpserver"
15         check "gopkg.in/check.v1"
16 )
17
18 func integrationTestCluster() *arvados.Cluster {
19         cfg, err := arvados.GetConfig(filepath.Join(os.Getenv("WORKSPACE"), "tmp", "arvados.yml"))
20         if err != nil {
21                 panic(err)
22         }
23         cc, err := cfg.GetCluster("zzzzz")
24         if err != nil {
25                 panic(err)
26         }
27         return cc
28 }
29
30 // Return a new unstarted controller server, using the Rails API
31 // provided by the integration-testing environment.
32 func newServerFromIntegrationTestEnv(c *check.C) *httpserver.Server {
33         log := ctxlog.TestLogger(c)
34
35         nodeProfile := arvados.NodeProfile{
36                 Controller: arvados.SystemServiceInstance{Listen: ":"},
37                 RailsAPI:   arvados.SystemServiceInstance{Listen: os.Getenv("ARVADOS_TEST_API_HOST"), TLS: true, Insecure: true},
38         }
39         handler := &Handler{Cluster: &arvados.Cluster{
40                 ClusterID:  "zzzzz",
41                 PostgreSQL: integrationTestCluster().PostgreSQL,
42                 NodeProfiles: map[string]arvados.NodeProfile{
43                         "*": nodeProfile,
44                 },
45         }, NodeProfile: &nodeProfile}
46
47         srv := &httpserver.Server{
48                 Server: http.Server{
49                         Handler: httpserver.AddRequestIDs(httpserver.LogRequests(log, handler)),
50                 },
51                 Addr: nodeProfile.Controller.Listen,
52         }
53         return srv
54 }