Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <git@zjvandeweg.nl>2020-05-29 14:47:15 +0300
committerZeger-Jan van de Weg <git@zjvandeweg.nl>2020-05-29 14:47:15 +0300
commitbc1516d2f09e96771957cd762aba11a14e500815 (patch)
tree7d4f1272f732f204468608e3315859b021d8f1b1
parentcec69e9bcf3b716c7809e451818b6c88da698d6f (diff)
parent430ca4a0a5e8cd95a97501ce6fc531fe29465a66 (diff)
Merge branch 'ps-remove-model-pkg' into 'master'
Praefect: move of models package Closes #2613 See merge request gitlab-org/gitaly!2228
-rw-r--r--cmd/praefect/main_test.go5
-rw-r--r--internal/praefect/auth_test.go5
-rw-r--r--internal/praefect/config/config.go6
-rw-r--r--internal/praefect/config/config_test.go17
-rw-r--r--internal/praefect/config/node.go27
-rw-r--r--internal/praefect/config/node_test.go22
-rw-r--r--internal/praefect/consistencycheck_test.go3
-rw-r--r--internal/praefect/coordinator_test.go19
-rw-r--r--internal/praefect/dataloss_check_test.go3
-rw-r--r--internal/praefect/helper_test.go7
-rw-r--r--internal/praefect/info_service_test.go3
-rw-r--r--internal/praefect/models/node.go46
-rw-r--r--internal/praefect/models/node_test.go52
-rw-r--r--internal/praefect/nodes/local_elector_test.go6
-rw-r--r--internal/praefect/nodes/manager.go5
-rw-r--r--internal/praefect/nodes/manager_test.go15
-rw-r--r--internal/praefect/nodes/sql_elector_test.go19
-rw-r--r--internal/praefect/replicator_test.go23
-rw-r--r--internal/praefect/server_test.go57
-rw-r--r--internal/testhelper/testserver.go3
20 files changed, 139 insertions, 204 deletions
diff --git a/cmd/praefect/main_test.go b/cmd/praefect/main_test.go
index f73cdd816..7ca079675 100644
--- a/cmd/praefect/main_test.go
+++ b/cmd/praefect/main_test.go
@@ -6,7 +6,6 @@ import (
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
)
func TestNoConfigFlag(t *testing.T) {
@@ -27,7 +26,7 @@ func TestFlattenNodes(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "meow",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "foo",
Address: "tcp://example.com",
@@ -38,7 +37,7 @@ func TestFlattenNodes(t *testing.T) {
},
{
Name: "woof",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "bar",
Address: "tcp://example.com",
diff --git a/internal/praefect/auth_test.go b/internal/praefect/auth_test.go
index cc5f35bbb..fe5922701 100644
--- a/internal/praefect/auth_test.go
+++ b/internal/praefect/auth_test.go
@@ -13,7 +13,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
"gitlab.com/gitlab-org/gitaly/internal/praefect/mock"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/praefect/nodes"
"gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
"gitlab.com/gitlab-org/gitaly/internal/praefect/transactions"
@@ -150,8 +149,8 @@ func runServer(t *testing.T, token string, required bool) (*Server, string, func
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Storage: "praefect-internal-0",
DefaultPrimary: true,
Address: backend,
diff --git a/internal/praefect/config/config.go b/internal/praefect/config/config.go
index 1057b9c1d..c69104cd9 100644
--- a/internal/praefect/config/config.go
+++ b/internal/praefect/config/config.go
@@ -12,7 +12,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/config/log"
"gitlab.com/gitlab-org/gitaly/internal/config/prometheus"
"gitlab.com/gitlab-org/gitaly/internal/config/sentry"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
)
type Failover struct {
@@ -26,7 +25,6 @@ type Config struct {
ListenAddr string `toml:"listen_addr"`
SocketPath string `toml:"socket_path"`
VirtualStorages []*VirtualStorage `toml:"virtual_storage"`
- Nodes []*models.Node `toml:"node"`
Logging log.Config `toml:"logging"`
Sentry sentry.Config `toml:"sentry"`
PrometheusListenAddr string `toml:"prometheus_listen_addr"`
@@ -42,8 +40,8 @@ type Config struct {
// VirtualStorage represents a set of nodes for a storage
type VirtualStorage struct {
- Name string `toml:"name"`
- Nodes []*models.Node `toml:"node"`
+ Name string `toml:"name"`
+ Nodes []*Node `toml:"node"`
}
// FromFile loads the config for the passed file path
diff --git a/internal/praefect/config/config_test.go b/internal/praefect/config/config_test.go
index a597efd3e..aa78dae87 100644
--- a/internal/praefect/config/config_test.go
+++ b/internal/praefect/config/config_test.go
@@ -12,17 +12,16 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/config/log"
gitaly_prometheus "gitlab.com/gitlab-org/gitaly/internal/config/prometheus"
"gitlab.com/gitlab-org/gitaly/internal/config/sentry"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
)
func TestConfigValidation(t *testing.T) {
- vs1Nodes := []*models.Node{
+ vs1Nodes := []*Node{
{Storage: "internal-1.0", Address: "localhost:23456", Token: "secret-token-1", DefaultPrimary: true},
{Storage: "internal-2.0", Address: "localhost:23457", Token: "secret-token-1"},
{Storage: "internal-3.0", Address: "localhost:23458", Token: "secret-token-1"},
}
- vs2Nodes := []*models.Node{
+ vs2Nodes := []*Node{
// storage can have same name as storage in another virtual storage, but all addresses must be unique
{Storage: "internal-1.0", Address: "localhost:33456", Token: "secret-token-2", DefaultPrimary: true},
{Storage: "internal-2.1", Address: "localhost:33457", Token: "secret-token-2"},
@@ -75,7 +74,7 @@ func TestConfigValidation(t *testing.T) {
VirtualStorages: []*VirtualStorage{
{
Name: "default",
- Nodes: append(vs1Nodes, &models.Node{
+ Nodes: append(vs1Nodes, &Node{
Storage: vs1Nodes[0].Storage,
Address: vs1Nodes[1].Address,
}),
@@ -102,7 +101,7 @@ func TestConfigValidation(t *testing.T) {
{
Name: "default",
Nodes: append(vs1Nodes,
- &models.Node{
+ &Node{
Storage: "internal-4",
Address: "localhost:23459",
Token: "secret-token",
@@ -120,7 +119,7 @@ func TestConfigValidation(t *testing.T) {
VirtualStorages: []*VirtualStorage{
{
Name: "default",
- Nodes: []*models.Node{
+ Nodes: []*Node{
{
Storage: "",
Address: "localhost:23456",
@@ -140,7 +139,7 @@ func TestConfigValidation(t *testing.T) {
VirtualStorages: []*VirtualStorage{
{
Name: "default",
- Nodes: []*models.Node{
+ Nodes: []*Node{
{
Storage: "internal",
Address: "",
@@ -233,8 +232,8 @@ func TestConfigParsing(t *testing.T) {
VirtualStorages: []*VirtualStorage{
&VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*Node{
+ &Node{
Address: "tcp://gitaly-internal-1.example.com",
Storage: "praefect-internal-1",
DefaultPrimary: true,
diff --git a/internal/praefect/config/node.go b/internal/praefect/config/node.go
new file mode 100644
index 000000000..f122dd8e6
--- /dev/null
+++ b/internal/praefect/config/node.go
@@ -0,0 +1,27 @@
+package config
+
+import (
+ "encoding/json"
+ "fmt"
+)
+
+// Node describes an address that serves a storage
+type Node struct {
+ Storage string `toml:"storage"`
+ Address string `toml:"address"`
+ Token string `toml:"token"`
+ DefaultPrimary bool `toml:"primary"`
+}
+
+func (n Node) MarshalJSON() ([]byte, error) {
+ return json.Marshal(map[string]interface{}{
+ "storage": n.Storage,
+ "address": n.Address,
+ "primary": n.DefaultPrimary,
+ })
+}
+
+// String prints out the node attributes but hiding the token
+func (n Node) String() string {
+ return fmt.Sprintf("storage_name: %s, address: %s, primary: %v", n.Storage, n.Address, n.DefaultPrimary)
+}
diff --git a/internal/praefect/config/node_test.go b/internal/praefect/config/node_test.go
new file mode 100644
index 000000000..de16a209b
--- /dev/null
+++ b/internal/praefect/config/node_test.go
@@ -0,0 +1,22 @@
+package config
+
+import (
+ "encoding/json"
+ "testing"
+
+ "github.com/stretchr/testify/require"
+)
+
+func TestNode_MarshalJSON(t *testing.T) {
+ token := "secretToken"
+ node := &Node{
+ Storage: "storage",
+ Address: "address",
+ Token: token,
+ DefaultPrimary: true,
+ }
+
+ b, err := json.Marshal(node)
+ require.NoError(t, err)
+ require.JSONEq(t, `{"storage":"storage","address":"address","primary":true}`, string(b))
+}
diff --git a/internal/praefect/consistencycheck_test.go b/internal/praefect/consistencycheck_test.go
index 69c923603..739a7db82 100644
--- a/internal/praefect/consistencycheck_test.go
+++ b/internal/praefect/consistencycheck_test.go
@@ -10,7 +10,6 @@ import (
"github.com/stretchr/testify/require"
gconfig "gitlab.com/gitlab-org/gitaly/internal/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/proto/go/gitalypb"
)
@@ -23,7 +22,7 @@ func TestConsistencyCheck(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "praefect",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
0: {
DefaultPrimary: true,
Storage: "gitaly-0",
diff --git a/internal/praefect/coordinator_test.go b/internal/praefect/coordinator_test.go
index f104e55b1..457673808 100644
--- a/internal/praefect/coordinator_test.go
+++ b/internal/praefect/coordinator_test.go
@@ -15,7 +15,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/middleware/metadatahandler"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/praefect/nodes"
"gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
"gitlab.com/gitlab-org/gitaly/internal/praefect/transactions"
@@ -100,8 +99,8 @@ func TestStreamDirectorReadOnlyEnforcement(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Address: "tcp://gitaly-primary.example.com",
Storage: "praefect-internal-1",
DefaultPrimary: true,
@@ -153,13 +152,13 @@ func TestStreamDirectorMutator(t *testing.T) {
healthSrv1.SetServingStatus("", grpc_health_v1.HealthCheckResponse_SERVING)
primaryAddress, secondaryAddress := "unix://"+gitalySocket0, "unix://"+gitalySocket1
- primaryNode := &models.Node{Address: primaryAddress, Storage: "praefect-internal-1", DefaultPrimary: true}
- secondaryNode := &models.Node{Address: secondaryAddress, Storage: "praefect-internal-2"}
+ primaryNode := &config.Node{Address: primaryAddress, Storage: "praefect-internal-1", DefaultPrimary: true}
+ secondaryNode := &config.Node{Address: secondaryAddress, Storage: "praefect-internal-2"}
conf := config.Config{
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{primaryNode, secondaryNode},
+ Nodes: []*config.Node{primaryNode, secondaryNode},
},
},
}
@@ -257,7 +256,7 @@ func TestStreamDirectorAccessor(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "praefect",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Address: primaryAddress,
Storage: "praefect-internal-1",
@@ -345,13 +344,13 @@ func TestAbsentCorrelationID(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Address: primaryAddress,
Storage: "praefect-internal-1",
DefaultPrimary: true,
},
- &models.Node{
+ &config.Node{
Address: secondaryAddress,
Storage: "praefect-internal-2",
}},
diff --git a/internal/praefect/dataloss_check_test.go b/internal/praefect/dataloss_check_test.go
index 26daba4b6..ccb9b741a 100644
--- a/internal/praefect/dataloss_check_test.go
+++ b/internal/praefect/dataloss_check_test.go
@@ -8,7 +8,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
"gitlab.com/gitlab-org/gitaly/internal/praefect/mock"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/proto/go/gitalypb"
)
@@ -19,7 +18,7 @@ func TestDatalossCheck(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: virtualStorage,
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
DefaultPrimary: true,
Storage: "not-needed",
diff --git a/internal/praefect/helper_test.go b/internal/praefect/helper_test.go
index e7059bae2..abf0ea485 100644
--- a/internal/praefect/helper_test.go
+++ b/internal/praefect/helper_test.go
@@ -18,7 +18,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
"gitlab.com/gitlab-org/gitaly/internal/praefect/grpc-proxy/proxy"
"gitlab.com/gitlab-org/gitaly/internal/praefect/mock"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/praefect/nodes"
"gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
"gitlab.com/gitlab-org/gitaly/internal/praefect/transactions"
@@ -47,10 +46,10 @@ func waitUntil(t *testing.T, ch <-chan struct{}, timeout time.Duration) {
// generates a praefect configuration with the specified number of backend
// nodes
func testConfig(backends int) config.Config {
- var nodes []*models.Node
+ var nodes []*config.Node
for i := 0; i < backends; i++ {
- n := &models.Node{
+ n := &config.Node{
Storage: fmt.Sprintf("praefect-internal-%d", i),
Token: fmt.Sprintf("%d", i),
}
@@ -75,7 +74,7 @@ func testConfig(backends int) config.Config {
func assertPrimariesExist(t testing.TB, conf config.Config) {
for _, vs := range conf.VirtualStorages {
- var defaultNode *models.Node
+ var defaultNode *config.Node
for _, n := range vs.Nodes {
if n.DefaultPrimary {
defaultNode = n
diff --git a/internal/praefect/info_service_test.go b/internal/praefect/info_service_test.go
index 5ee9d96cd..82d0de08d 100644
--- a/internal/praefect/info_service_test.go
+++ b/internal/praefect/info_service_test.go
@@ -8,7 +8,6 @@ import (
"github.com/stretchr/testify/require"
gconfig "gitlab.com/gitlab-org/gitaly/internal/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/proto/go/gitalypb"
)
@@ -18,7 +17,7 @@ func TestInfoService_RepositoryReplicas(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "default",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "praefect-internal-1",
DefaultPrimary: true,
diff --git a/internal/praefect/models/node.go b/internal/praefect/models/node.go
deleted file mode 100644
index 57cf3ac46..000000000
--- a/internal/praefect/models/node.go
+++ /dev/null
@@ -1,46 +0,0 @@
-package models
-
-import (
- "encoding/json"
- "fmt"
-)
-
-// Node describes an address that serves a storage
-type Node struct {
- Storage string `toml:"storage"`
- Address string `toml:"address"`
- Token string `toml:"token"`
- DefaultPrimary bool `toml:"primary"`
-}
-
-func (n Node) MarshalJSON() ([]byte, error) {
- return json.Marshal(&struct {
- Storage string `json:"storage"`
- Address string `json:"address"`
- Primary bool `json:"primary"`
- }{
- Storage: n.Storage,
- Address: n.Address,
- Primary: n.DefaultPrimary,
- })
-}
-
-// String prints out the node attributes but hiding the token
-func (n Node) String() string {
- return fmt.Sprintf("storage_name: %s, address: %s, primary: %v", n.Storage, n.Address, n.DefaultPrimary)
-}
-
-// Repository describes a repository's relative path and its primary and list of secondaries
-type Repository struct {
- RelativePath string
- Primary Node
- Replicas []Node
-}
-
-// Clone returns deep copy of the Repository
-func (r Repository) Clone() Repository {
- clone := r
- clone.Replicas = make([]Node, len(r.Replicas))
- copy(clone.Replicas, r.Replicas)
- return clone
-}
diff --git a/internal/praefect/models/node_test.go b/internal/praefect/models/node_test.go
deleted file mode 100644
index 7cefdf7f1..000000000
--- a/internal/praefect/models/node_test.go
+++ /dev/null
@@ -1,52 +0,0 @@
-package models
-
-import (
- "encoding/json"
- "testing"
-
- "github.com/stretchr/testify/require"
-)
-
-func TestRepository_Clone(t *testing.T) {
- src := Repository{
- RelativePath: "a/b",
- Primary: Node{
- Storage: "s1",
- Address: "0.0.0.0",
- Token: "$ecret",
- },
- Replicas: []Node{
- {
- Storage: "s2",
- Address: "0.0.0.1",
- Token: "$ecret",
- },
- {
- Storage: "s3",
- Address: "0.0.0.2",
- Token: "$ecret",
- },
- },
- }
-
- clone := src.Clone()
- require.Equal(t, src, clone)
-
- clone.Replicas[0].Address = "0.0.0.3"
- require.Equal(t, "0.0.0.1", src.Replicas[0].Address)
-}
-
-func TestNode_MarshalJSON(t *testing.T) {
- token := "secretToken"
- node := &Node{
- Storage: "storage",
- Address: "address",
- Token: token,
- DefaultPrimary: true,
- }
-
- b, err := json.Marshal(node)
- require.NoError(t, err)
- require.NotContains(t, string(b), "token")
- require.NotContains(t, string(b), token)
-}
diff --git a/internal/praefect/nodes/local_elector_test.go b/internal/praefect/nodes/local_elector_test.go
index 3b8e40f46..6689936a1 100644
--- a/internal/praefect/nodes/local_elector_test.go
+++ b/internal/praefect/nodes/local_elector_test.go
@@ -6,7 +6,7 @@ import (
"time"
"github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
+ "gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/internal/testhelper/promtest"
"google.golang.org/grpc"
@@ -26,8 +26,8 @@ func setupElector(t *testing.T) (*localElector, []*nodeStatus, *grpc.ClientConn,
storageName := "default"
mockHistogramVec0, mockHistogramVec1 := promtest.NewMockHistogramVec(), promtest.NewMockHistogramVec()
- cs := newConnectionStatus(models.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec0)
- secondary := newConnectionStatus(models.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec1)
+ cs := newConnectionStatus(config.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec0)
+ secondary := newConnectionStatus(config.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec1)
ns := []*nodeStatus{cs, secondary}
logger := testhelper.NewTestLogger(t).WithField("test", t.Name())
strategy := newLocalElector(storageName, true, true, logger, ns)
diff --git a/internal/praefect/nodes/manager.go b/internal/praefect/nodes/manager.go
index 91f2c1d97..defc1cd90 100644
--- a/internal/praefect/nodes/manager.go
+++ b/internal/praefect/nodes/manager.go
@@ -19,7 +19,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
"gitlab.com/gitlab-org/gitaly/internal/praefect/grpc-proxy/proxy"
"gitlab.com/gitlab-org/gitaly/internal/praefect/metrics"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
prommetrics "gitlab.com/gitlab-org/gitaly/internal/prometheus/metrics"
correlation "gitlab.com/gitlab-org/labkit/correlation/grpc"
grpctracing "gitlab.com/gitlab-org/labkit/tracing/grpc"
@@ -229,7 +228,7 @@ func (n *Mgr) GetSyncedNode(ctx context.Context, virtualStorageName, repoPath st
return shard.Primary, nil // there is no matched secondaries, maybe because of re-configuration
}
-func newConnectionStatus(node models.Node, cc *grpc.ClientConn, l *logrus.Entry, latencyHist prommetrics.HistogramVec) *nodeStatus {
+func newConnectionStatus(node config.Node, cc *grpc.ClientConn, l *logrus.Entry, latencyHist prommetrics.HistogramVec) *nodeStatus {
return &nodeStatus{
Node: node,
ClientConn: cc,
@@ -239,7 +238,7 @@ func newConnectionStatus(node models.Node, cc *grpc.ClientConn, l *logrus.Entry,
}
type nodeStatus struct {
- models.Node
+ config.Node
*grpc.ClientConn
log *logrus.Entry
latencyHist prommetrics.HistogramVec
diff --git a/internal/praefect/nodes/manager_test.go b/internal/praefect/nodes/manager_test.go
index e2b318a59..f3d743203 100644
--- a/internal/praefect/nodes/manager_test.go
+++ b/internal/praefect/nodes/manager_test.go
@@ -11,7 +11,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/internal/testhelper/promtest"
"google.golang.org/grpc"
@@ -34,7 +33,7 @@ func TestNodeStatus(t *testing.T) {
mockHistogramVec := promtest.NewMockHistogramVec()
storageName := "default"
- cs := newConnectionStatus(models.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec)
+ cs := newConnectionStatus(config.Node{Storage: storageName}, cc, testhelper.DiscardTestEntry(t), mockHistogramVec)
var expectedLabels [][]string
for i := 0; i < healthcheckThreshold; i++ {
@@ -63,7 +62,7 @@ func TestManagerFailoverDisabledElectionStrategySQL(t *testing.T) {
socket0, socket1 := testhelper.GetTemporaryGitalySocketFileName(), testhelper.GetTemporaryGitalySocketFileName()
virtualStorage := &config.VirtualStorage{
Name: virtualStorageName,
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: primaryStorage,
Address: "unix://" + socket0,
@@ -113,7 +112,7 @@ func TestPrimaryIsSecond(t *testing.T) {
virtualStorages := []*config.VirtualStorage{
{
Name: "virtual-storage-0",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "praefect-internal-0",
Address: "unix://" + gitalySocket0,
@@ -164,7 +163,7 @@ func TestBlockingDial(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: storageName,
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "internal-storage",
Address: "unix://" + gitalySocket,
@@ -206,7 +205,7 @@ func TestNodeManager(t *testing.T) {
virtualStorages := []*config.VirtualStorage{
{
Name: "virtual-storage-0",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "praefect-internal-0",
Address: "unix://" + internalSocket0,
@@ -333,7 +332,7 @@ func TestMgr_GetSyncedNode(t *testing.T) {
virtualStorages := []*config.VirtualStorage{
{
Name: "virtual-storage-0",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "gitaly-0",
Address: vs0Primary,
@@ -348,7 +347,7 @@ func TestMgr_GetSyncedNode(t *testing.T) {
{
// second virtual storage needed to check there is no intersections between two even with same storage names
Name: "virtual-storage-1",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
// same storage name as in other virtual storage is used intentionally
Storage: "gitaly-1",
diff --git a/internal/praefect/nodes/sql_elector_test.go b/internal/praefect/nodes/sql_elector_test.go
index adc602952..6d4be1bd5 100644
--- a/internal/praefect/nodes/sql_elector_test.go
+++ b/internal/praefect/nodes/sql_elector_test.go
@@ -11,7 +11,6 @@ import (
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore/glsql"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/internal/testhelper/promtest"
"google.golang.org/grpc"
@@ -43,7 +42,7 @@ func TestGetPrimaryAndSecondaries(t *testing.T) {
storageName := "default"
mockHistogramVec0 := promtest.NewMockHistogramVec()
- cs0 := newConnectionStatus(models.Node{Storage: storageName + "-0"}, cc0, testhelper.DiscardTestEntry(t), mockHistogramVec0)
+ cs0 := newConnectionStatus(config.Node{Storage: storageName + "-0"}, cc0, testhelper.DiscardTestEntry(t), mockHistogramVec0)
ns := []*nodeStatus{cs0}
elector := newSQLElector(shardName, conf, 1, defaultActivePraefectSeconds, db.DB, logger, ns)
@@ -98,8 +97,8 @@ func TestBasicFailover(t *testing.T) {
storageName := "default"
mockHistogramVec0, mockHistogramVec1 := promtest.NewMockHistogramVec(), promtest.NewMockHistogramVec()
- cs0 := newConnectionStatus(models.Node{Storage: storageName + "-0"}, cc0, testhelper.DiscardTestEntry(t), mockHistogramVec0)
- cs1 := newConnectionStatus(models.Node{Storage: storageName + "-1"}, cc1, testhelper.DiscardTestEntry(t), mockHistogramVec1)
+ cs0 := newConnectionStatus(config.Node{Storage: storageName + "-0"}, cc0, testhelper.DiscardTestEntry(t), mockHistogramVec0)
+ cs1 := newConnectionStatus(config.Node{Storage: storageName + "-1"}, cc1, testhelper.DiscardTestEntry(t), mockHistogramVec1)
ns := []*nodeStatus{cs0, cs1}
failoverTimeSeconds := 1
@@ -177,7 +176,7 @@ func TestBasicFailover(t *testing.T) {
func TestElectDemotedPrimary(t *testing.T) {
db := getDB(t)
- node := models.Node{Storage: "gitaly-0"}
+ node := config.Node{Storage: "gitaly-0"}
elector := newSQLElector(
shardName,
config.Config{},
@@ -227,17 +226,17 @@ func TestElectNewPrimary(t *testing.T) {
db := getDB(t)
ns := []*nodeStatus{{
- Node: models.Node{
+ Node: config.Node{
Storage: "gitaly-0",
DefaultPrimary: true,
},
}, {
- Node: models.Node{
+ Node: config.Node{
Storage: "gitaly-1",
DefaultPrimary: true,
},
}, {
- Node: models.Node{
+ Node: config.Node{
Storage: "gitaly-2",
DefaultPrimary: true,
},
@@ -247,13 +246,13 @@ func TestElectNewPrimary(t *testing.T) {
candidates := []*sqlCandidate{
{
&nodeStatus{
- Node: models.Node{
+ Node: config.Node{
Storage: "gitaly-1",
},
},
}, {
&nodeStatus{
- Node: models.Node{
+ Node: config.Node{
Storage: "gitaly-2",
},
},
diff --git a/internal/praefect/replicator_test.go b/internal/praefect/replicator_test.go
index d35ab8d4a..f658dc92e 100644
--- a/internal/praefect/replicator_test.go
+++ b/internal/praefect/replicator_test.go
@@ -19,7 +19,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/middleware/metadatahandler"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/praefect/nodes"
"gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
"gitlab.com/gitlab-org/gitaly/internal/praefect/transactions"
@@ -72,14 +71,14 @@ func TestProcessReplicationJob(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "default",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Storage: "default",
Address: srvSocketPath,
Token: gitaly_config.Config.Auth.Token,
DefaultPrimary: true,
},
- &models.Node{
+ &config.Node{
Storage: backupStorageName,
Address: srvSocketPath,
Token: gitaly_config.Config.Auth.Token,
@@ -198,7 +197,7 @@ func TestPropagateReplicationJob(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "default",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: primaryStorage,
Address: primarySocketPath,
@@ -415,13 +414,13 @@ func TestProcessBacklog_FailedJobs(t *testing.T) {
defer os.RemoveAll(backupDir)
- primary := models.Node{
+ primary := config.Node{
Storage: "default",
Address: "unix://" + primarySocket,
DefaultPrimary: true,
}
- secondary := models.Node{
+ secondary := config.Node{
Storage: backupStorageName,
Address: "unix://" + primarySocket,
}
@@ -430,7 +429,7 @@ func TestProcessBacklog_FailedJobs(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "praefect",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
&primary,
&secondary,
},
@@ -534,13 +533,13 @@ func TestProcessBacklog_Success(t *testing.T) {
testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
defer cleanupFn()
- primary := models.Node{
+ primary := config.Node{
Storage: "default",
Address: "unix://" + primarySocket,
DefaultPrimary: true,
}
- secondary := models.Node{
+ secondary := config.Node{
Storage: "backup",
Address: "unix://" + primarySocket,
}
@@ -549,7 +548,7 @@ func TestProcessBacklog_Success(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "default",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
&primary,
&secondary,
},
@@ -683,7 +682,7 @@ func TestProcessBacklog_ReplicatesToReadOnlyPrimary(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: virtualStorage,
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{Storage: primaryStorage},
{Storage: secondaryStorage},
},
diff --git a/internal/praefect/server_test.go b/internal/praefect/server_test.go
index 9feaf3d7a..c4dd3be1d 100644
--- a/internal/praefect/server_test.go
+++ b/internal/praefect/server_test.go
@@ -22,7 +22,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
"gitlab.com/gitlab-org/gitaly/internal/praefect/datastore"
"gitlab.com/gitlab-org/gitaly/internal/praefect/mock"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/internal/version"
"gitlab.com/gitlab-org/gitaly/proto/go/gitalypb"
@@ -84,13 +83,13 @@ func TestGitalyServerInfo(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "virtual-storage-1",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Storage: "praefect-internal-1",
DefaultPrimary: true,
Token: "abc",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-2",
Token: "abc",
},
@@ -148,8 +147,8 @@ func TestGitalyServerInfoBadNode(t *testing.T) {
conf := config.Config{
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "unix://" + gitalySocket,
DefaultPrimary: true,
@@ -177,7 +176,7 @@ func TestGitalyDiskStatistics(t *testing.T) {
conf := config.Config{
VirtualStorages: []*config.VirtualStorage{
{
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
{
Storage: "praefect-internal-1",
DefaultPrimary: true,
@@ -225,8 +224,8 @@ func TestRejectBadStorage(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp::/this-doesnt-matter",
@@ -258,13 +257,13 @@ func TestWarnDuplicateAddrs(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "default",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp://abc",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "tcp://xyz",
},
@@ -272,13 +271,13 @@ func TestWarnDuplicateAddrs(t *testing.T) {
},
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp://abc",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "tcp://xyz",
},
@@ -304,13 +303,13 @@ func TestWarnDuplicateAddrs(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp::/samesies",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "tcp::/samesies",
},
@@ -341,13 +340,13 @@ func TestWarnDuplicateAddrs(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "default",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp://abc",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "tcp://xyz",
},
@@ -355,13 +354,13 @@ func TestWarnDuplicateAddrs(t *testing.T) {
},
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: "praefect-internal-0",
Address: "tcp://abc",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-2",
Address: "tcp://xyz",
},
@@ -388,17 +387,17 @@ func TestRepoRemoval(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
&config.VirtualStorage{
Name: "praefect",
- Nodes: []*models.Node{
- &models.Node{
+ Nodes: []*config.Node{
+ &config.Node{
DefaultPrimary: true,
Storage: gconfig.Config.Storages[0].Name,
Address: "tcp::/samesies",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-1",
Address: "tcp::/this-doesnt-matter",
},
- &models.Node{
+ &config.Node{
Storage: "praefect-internal-2",
Address: "tcp::/this-doesnt-matter",
},
@@ -512,7 +511,7 @@ func TestRepoRename(t *testing.T) {
VirtualStorages: []*config.VirtualStorage{
{
Name: "praefect",
- Nodes: []*models.Node{
+ Nodes: []*config.Node{
0: {
DefaultPrimary: true,
Storage: gconfig.Config.Storages[0].Name,
diff --git a/internal/testhelper/testserver.go b/internal/testhelper/testserver.go
index e7672c5e1..26f990aa7 100644
--- a/internal/testhelper/testserver.go
+++ b/internal/testhelper/testserver.go
@@ -33,7 +33,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/gitlabshell"
"gitlab.com/gitlab-org/gitaly/internal/helper/fieldextractors"
praefectconfig "gitlab.com/gitlab-org/gitaly/internal/praefect/config"
- "gitlab.com/gitlab-org/gitaly/internal/praefect/models"
serverauth "gitlab.com/gitlab-org/gitaly/internal/server/auth"
"gitlab.com/gitlab-org/gitaly/proto/go/gitalypb"
"google.golang.org/grpc"
@@ -171,7 +170,7 @@ func (p *TestServer) Start() error {
c.VirtualStorages = append(c.VirtualStorages, &praefectconfig.VirtualStorage{
Name: storage,
- Nodes: []*models.Node{
+ Nodes: []*praefectconfig.Node{
{
Storage: storage,
Address: "unix:/" + gitalyServerSocketPath,