From 48dd30c4c261afe2661887abe1478ca55a68518e Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Wed, 8 Apr 2020 19:20:43 +0100 Subject: [PATCH 01/12] fix http test --- api/handler/http/http_test.go | 35 +++++++++++++---------------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/api/handler/http/http_test.go b/api/handler/http/http_test.go index 6f094874..d80fdf18 100644 --- a/api/handler/http/http_test.go +++ b/api/handler/http/http_test.go @@ -13,7 +13,7 @@ import ( "github.com/micro/go-micro/v2/registry/memory" ) -func testHttp(t *testing.T, path, service, ns string) { +func testHttp(t *testing.T, path, service string) { r := memory.NewRegistry() l, err := net.Listen("tcp", "127.0.0.1:0") @@ -54,7 +54,6 @@ func testHttp(t *testing.T, path, service, ns string) { // initialise the handler rt := regRouter.NewRouter( router.WithHandler("http"), - router.WithNamespace(ns), router.WithRegistry(r), ) @@ -74,48 +73,40 @@ func testHttp(t *testing.T, path, service, ns string) { func TestHttpHandler(t *testing.T) { testData := []struct { - path string - service string - namespace string + path string + service string }{ { "/test/foo", - "go.micro.api.test", - "go.micro.api", + "test", }, { "/test/foo/baz", - "go.micro.api.test", - "go.micro.api", + "test", }, { "/v1/foo", - "go.micro.api.v1.foo", - "go.micro.api", + "v1.foo", }, { "/v1/foo/bar", - "go.micro.api.v1.foo", - "go.micro.api", + "v1.foo", }, { "/v2/baz", - "go.micro.api.v2.baz", - "go.micro.api", - }, - { - "/v2/baz/bar", - "go.micro.api.v2.baz", - "go.micro.api", + "v2.baz", + }, + { + "/v2/baz/bar", + "v2.baz", }, { "/v2/baz/bar", "v2.baz", - "", }, } for _, d := range testData { - testHttp(t, d.path, d.service, d.namespace) + testHttp(t, d.path, d.service) } } From 45700eaabe84f1f7296c5a8f06e9db7ce39fdfd1 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Wed, 8 Apr 2020 19:25:57 +0100 Subject: [PATCH 02/12] set database/table in header --- store/service/service.go | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/store/service/service.go b/store/service/service.go index f3829e9a..f812082b 100644 --- a/store/service/service.go +++ b/store/service/service.go @@ -16,18 +16,15 @@ import ( type serviceStore struct { options store.Options - // Namespace to use - Namespace string + // The database to use + Database string + + // The table to use + Table string // Addresses of the nodes Nodes []string - // Prefix to use - Prefix string - - // Suffix to use - Suffix string - // store service client Client pb.StoreService } @@ -40,8 +37,8 @@ func (s *serviceStore) Init(opts ...store.Option) error { for _, o := range opts { o(&s.options) } - s.Namespace = s.options.Database - s.Prefix = s.options.Table + s.Database = s.options.Database + s.Table = s.options.Table s.Nodes = s.options.Nodes return nil @@ -52,12 +49,12 @@ func (s *serviceStore) Context() context.Context { md := make(metadata.Metadata) - if len(s.Namespace) > 0 { - md["Micro-Namespace"] = s.Namespace + if len(s.Database) > 0 { + md["Micro-Database"] = s.Database } - if len(s.Prefix) > 0 { - md["Micro-Prefix"] = s.Prefix + if len(s.Table) > 0 { + md["Micro-Table"] = s.Table } return metadata.NewContext(ctx, md) @@ -168,11 +165,11 @@ func NewStore(opts ...store.Option) store.Store { } service := &serviceStore{ - options: options, - Namespace: options.Database, - Prefix: options.Table, - Nodes: options.Nodes, - Client: pb.NewStoreService("go.micro.store", client.DefaultClient), + options: options, + Database: options.Database, + Table: options.Table, + Nodes: options.Nodes, + Client: pb.NewStoreService("go.micro.store", client.DefaultClient), } return service From bf41d8d28e630eeffd2c7a9848888e7976fe557d Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Wed, 8 Apr 2020 19:44:49 +0100 Subject: [PATCH 03/12] fix store table env var --- config/cmd/cmd.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/cmd/cmd.go b/config/cmd/cmd.go index 34e417dd..674affba 100644 --- a/config/cmd/cmd.go +++ b/config/cmd/cmd.go @@ -231,7 +231,7 @@ var ( }, &cli.StringFlag{ Name: "store_table", - EnvVars: []string{"MICRO_STORE_Table"}, + EnvVars: []string{"MICRO_STORE_TABLE"}, Usage: "Table option for the underlying store", }, &cli.StringFlag{ From 1768958af7d37c2e9c9cdcd3c68fda51bb30a380 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Wed, 8 Apr 2020 22:50:56 +0100 Subject: [PATCH 04/12] fix typo --- server/grpc/grpc.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/grpc/grpc.go b/server/grpc/grpc.go index dd711d3f..393f4f99 100644 --- a/server/grpc/grpc.go +++ b/server/grpc/grpc.go @@ -713,7 +713,7 @@ func (g *grpcServer) Register() error { } if logger.V(logger.DebugLevel, logger.DefaultLogger) { - logger.Debug("Subscribing to topic: %s", sb.Topic()) + logger.Debugf("Subscribing to topic: %s", sb.Topic()) } sub, err := config.Broker.Subscribe(sb.Topic(), handler, opts...) if err != nil { From bf8ebf8ad2f5c5d3afdb235bda04b8dc2432430e Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Wed, 8 Apr 2020 23:27:32 +0100 Subject: [PATCH 05/12] add namespace --- api/resolver/micro/micro.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/api/resolver/micro/micro.go b/api/resolver/micro/micro.go index 9d940887..bacbcbac 100644 --- a/api/resolver/micro/micro.go +++ b/api/resolver/micro/micro.go @@ -27,6 +27,11 @@ func (r *Resolver) Resolve(req *http.Request) (*resolver.Endpoint, error) { name = proxyRoute(req.URL.Path) } + // set the namespace if it exists + if len(r.Options.Namespace) > 0 { + name = r.Options.Namespace + "." + name + } + return &resolver.Endpoint{ Name: name, Method: method, From 1e7cd8c484b598e71df0f491fc7e12722b66bf39 Mon Sep 17 00:00:00 2001 From: Jake Sanders Date: Wed, 8 Apr 2020 23:52:35 +0100 Subject: [PATCH 06/12] Make the constraint explicit rather than inferred (#1506) --- store/cockroach/cockroach.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/store/cockroach/cockroach.go b/store/cockroach/cockroach.go index 4aa68ac5..47038639 100644 --- a/store/cockroach/cockroach.go +++ b/store/cockroach/cockroach.go @@ -277,9 +277,9 @@ func (s *sqlStore) initDB() error { s.readOffset = readOffset write, err := s.db.Prepare(fmt.Sprintf(`INSERT INTO %s.%s(key, value, expiry) VALUES ($1, $2::bytea, $3) - ON CONFLICT (key) + ON CONFLICT ON CONSTRAINT %s_pkey DO UPDATE - SET value = EXCLUDED.value, expiry = EXCLUDED.expiry;`, s.database, s.table)) + SET value = EXCLUDED.value, expiry = EXCLUDED.expiry;`, s.database, s.table, s.table)) if err != nil { return errors.Wrap(err, "Write statement couldn't be prepared") } From c1ad6d6c7c112b9afdf80dc38a73f0a25f550234 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Thu, 9 Apr 2020 09:41:50 +0100 Subject: [PATCH 07/12] set service name in web --- web/service.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/web/service.go b/web/service.go index cff7e113..069a53e2 100644 --- a/web/service.go +++ b/web/service.go @@ -370,6 +370,10 @@ func (s *service) Init(opts ...Option) error { return nil })) + // pass in own name and version + serviceOpts = append(serviceOpts, micro.Name(s.opts.Name)) + serviceOpts = append(serviceOpts, micro.Version(s.opts.Version)) + s.opts.Service.Init(serviceOpts...) srv := s.genSrv() srv.Endpoints = s.srv.Endpoints From f2dd091ec07970556f7e6c1ca5bdb63fda8d082d Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Thu, 9 Apr 2020 10:28:16 +0100 Subject: [PATCH 08/12] strip log --- runtime/default.go | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime/default.go b/runtime/default.go index 614319d3..a0ea161b 100644 --- a/runtime/default.go +++ b/runtime/default.go @@ -204,7 +204,6 @@ func (r *runtime) Create(s *Service, opts ...CreateOption) error { service := newService(s, options) f, err := os.OpenFile(logFile(service.Name), os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) - logger.Info(f, err) if err != nil { log.Fatal(err) } From bc1c8223e6797d0c070f0b80ba6689e6e4ff29bf Mon Sep 17 00:00:00 2001 From: Janos Dobronszki Date: Thu, 9 Apr 2020 11:50:12 +0200 Subject: [PATCH 09/12] Remove ugly unneeded log in runtime local (#1507) From 1063b954de0d41e6d052f2ddb00b53d31c9e5dfc Mon Sep 17 00:00:00 2001 From: Vasiliy Tolstov Date: Thu, 9 Apr 2020 14:05:46 +0300 Subject: [PATCH 10/12] dont display t.Log/t.Logf as errors in github actions (#1508) * fix tests and github action annotations Signed-off-by: Vasiliy Tolstov --- api/server/acme/certmagic/certmagic_test.go | 10 ++++++- client/selector/default_test.go | 5 +++- client/selector/strategy_test.go | 5 +++- config/source/file/file_test.go | 2 +- registry/memory/memory_test.go | 5 +++- registry/util_test.go | 9 +++++-- router/default_test.go | 21 +++++++++++---- store/cloudflare/cloudflare_test.go | 8 +++++- store/cockroach/cockroach_test.go | 7 ++++- store/file/file_test.go | 15 ++++++----- store/memory/memory_test.go | 29 ++++++++++++++++----- transport/memory/memory_test.go | 9 +++++-- tunnel/tunnel_test.go | 14 ++++++---- web/service.go | 4 +-- web/service_test.go | 16 +++++++++--- 15 files changed, 118 insertions(+), 41 deletions(-) diff --git a/api/server/acme/certmagic/certmagic_test.go b/api/server/acme/certmagic/certmagic_test.go index 30d698c8..12893dfe 100644 --- a/api/server/acme/certmagic/certmagic_test.go +++ b/api/server/acme/certmagic/certmagic_test.go @@ -18,7 +18,7 @@ import ( func TestCertMagic(t *testing.T) { if len(os.Getenv("IN_TRAVIS_CI")) != 0 { - t.Skip("Travis doesn't let us bind :443") + t.Skip() } l, err := NewProvider().Listen() if err != nil { @@ -52,6 +52,10 @@ func TestCertMagic(t *testing.T) { } func TestStorageImplementation(t *testing.T) { + if len(os.Getenv("IN_TRAVIS_CI")) != 0 { + t.Skip() + } + apiToken, accountID := os.Getenv("CF_API_TOKEN"), os.Getenv("CF_ACCOUNT_ID") kvID := os.Getenv("KV_NAMESPACE_ID") if len(apiToken) == 0 || len(accountID) == 0 || len(kvID) == 0 { @@ -189,6 +193,10 @@ func TestStorageImplementation(t *testing.T) { // Full test with a real zone, with against LE staging func TestE2e(t *testing.T) { + if len(os.Getenv("IN_TRAVIS_CI")) != 0 { + t.Skip() + } + apiToken, accountID := os.Getenv("CF_API_TOKEN"), os.Getenv("CF_ACCOUNT_ID") kvID := os.Getenv("KV_NAMESPACE_ID") if len(apiToken) == 0 || len(accountID) == 0 || len(kvID) == 0 { diff --git a/client/selector/default_test.go b/client/selector/default_test.go index d3b50003..60d10b1b 100644 --- a/client/selector/default_test.go +++ b/client/selector/default_test.go @@ -1,6 +1,7 @@ package selector import ( + "os" "testing" "github.com/micro/go-micro/v2/registry/memory" @@ -25,5 +26,7 @@ func TestRegistrySelector(t *testing.T) { counts[node.Id]++ } - t.Logf("Selector Counts %v", counts) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Selector Counts %v", counts) + } } diff --git a/client/selector/strategy_test.go b/client/selector/strategy_test.go index 07bf30b6..692c802f 100644 --- a/client/selector/strategy_test.go +++ b/client/selector/strategy_test.go @@ -1,6 +1,7 @@ package selector import ( + "os" "testing" "github.com/micro/go-micro/v2/registry" @@ -50,6 +51,8 @@ func TestStrategies(t *testing.T) { counts[node.Id]++ } - t.Logf("%s: %+v\n", name, counts) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("%s: %+v\n", name, counts) + } } } diff --git a/config/source/file/file_test.go b/config/source/file/file_test.go index 1d0a3ad0..e388a88a 100644 --- a/config/source/file/file_test.go +++ b/config/source/file/file_test.go @@ -59,8 +59,8 @@ func TestFile(t *testing.T) { if err != nil { t.Error(err) } - t.Logf("%+v", c) if string(c.Data) != string(data) { + t.Logf("%+v", c) t.Error("data from file does not match") } } diff --git a/registry/memory/memory_test.go b/registry/memory/memory_test.go index 9609b20c..0244a8da 100644 --- a/registry/memory/memory_test.go +++ b/registry/memory/memory_test.go @@ -2,6 +2,7 @@ package memory import ( "fmt" + "os" "testing" "time" @@ -205,7 +206,9 @@ func TestMemoryRegistryTTLConcurrent(t *testing.T) { } } - t.Logf("test will wait %v, then check TTL timeouts", waitTime) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("test will wait %v, then check TTL timeouts", waitTime) + } errChan := make(chan error, concurrency) syncChan := make(chan struct{}) diff --git a/registry/util_test.go b/registry/util_test.go index 75fd5133..e1a6e9a0 100644 --- a/registry/util_test.go +++ b/registry/util_test.go @@ -1,6 +1,7 @@ package registry import ( + "os" "testing" ) @@ -32,7 +33,9 @@ func TestRemove(t *testing.T) { if i := len(servs); i > 0 { t.Errorf("Expected 0 nodes, got %d: %+v", i, servs) } - t.Logf("Services %+v", servs) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Services %+v", servs) + } } func TestRemoveNodes(t *testing.T) { @@ -67,5 +70,7 @@ func TestRemoveNodes(t *testing.T) { if i := len(nodes); i != 1 { t.Errorf("Expected only 1 node, got %d: %+v", i, nodes) } - t.Logf("Nodes %+v", nodes) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Nodes %+v", nodes) + } } diff --git a/router/default_test.go b/router/default_test.go index 19d36423..4ed2f08e 100644 --- a/router/default_test.go +++ b/router/default_test.go @@ -2,6 +2,7 @@ package router import ( "fmt" + "os" "sync" "testing" "time" @@ -29,7 +30,9 @@ func TestRouterStartStop(t *testing.T) { if err := r.Stop(); err != nil { t.Errorf("failed to stop router: %v", err) } - t.Logf("TestRouterStartStop STOPPED") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("TestRouterStartStop STOPPED") + } } func TestRouterAdvertise(t *testing.T) { @@ -49,7 +52,9 @@ func TestRouterAdvertise(t *testing.T) { // receive announce event ann := <-ch - t.Logf("received announce advert: %v", ann) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("received announce advert: %v", ann) + } // Generate random unique routes nrRoutes := 5 @@ -81,9 +86,13 @@ func TestRouterAdvertise(t *testing.T) { wg.Done() defer close(createDone) for _, route := range routes { - t.Logf("Creating route %v", route) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Creating route %v", route) + } if err := r.Table().Create(route); err != nil { - t.Logf("Failed to create route: %v", err) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Failed to create route: %v", err) + } errChan <- err return } @@ -105,7 +114,9 @@ func TestRouterAdvertise(t *testing.T) { t.Errorf("failed advertising events: %v", advertErr) default: // do nothing for now - t.Logf("Router advert received: %v", advert) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Router advert received: %v", advert) + } adverts += len(advert.Events) } return diff --git a/store/cloudflare/cloudflare_test.go b/store/cloudflare/cloudflare_test.go index dbf78c26..9cc7a05b 100644 --- a/store/cloudflare/cloudflare_test.go +++ b/store/cloudflare/cloudflare_test.go @@ -11,6 +11,10 @@ import ( ) func TestCloudflare(t *testing.T) { + if len(os.Getenv("IN_TRAVIS_CI")) != 0 { + t.Skip() + } + apiToken, accountID := os.Getenv("CF_API_TOKEN"), os.Getenv("CF_ACCOUNT_ID") kvID := os.Getenv("KV_NAMESPACE_ID") if len(apiToken) == 0 || len(accountID) == 0 || len(kvID) == 0 { @@ -31,7 +35,9 @@ func TestCloudflare(t *testing.T) { if err != nil { t.Fatalf("List: %s\n", err.Error()) } else { - t.Log("Listed " + strconv.Itoa(len(records)) + " records") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Log("Listed " + strconv.Itoa(len(records)) + " records") + } } err = wkv.Write(&store.Record{ diff --git a/store/cockroach/cockroach_test.go b/store/cockroach/cockroach_test.go index f5b0077c..5bd6dc40 100644 --- a/store/cockroach/cockroach_test.go +++ b/store/cockroach/cockroach_test.go @@ -3,6 +3,7 @@ package cockroach import ( "database/sql" "fmt" + "os" "testing" "time" @@ -11,6 +12,10 @@ import ( ) func TestSQL(t *testing.T) { + if len(os.Getenv("IN_TRAVIS_CI")) != 0 { + t.Skip() + } + connection := fmt.Sprintf( "host=%s port=%d user=%s sslmode=disable dbname=%s", "localhost", @@ -23,7 +28,7 @@ func TestSQL(t *testing.T) { t.Fatal(err) } if err := db.Ping(); err != nil { - t.Skip(err) + t.Fatal(err) } db.Close() diff --git a/store/file/file_test.go b/store/file/file_test.go index 6dd58c64..fded4644 100644 --- a/store/file/file_test.go +++ b/store/file/file_test.go @@ -53,8 +53,9 @@ func TestFileStoreDatabaseTable(t *testing.T) { } func fileTest(s store.Store, t *testing.T) { - t.Logf("Options %s %v\n", s.String(), s.Options()) - + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Options %s %v\n", s.String(), s.Options()) + } // Read and Write an expiring Record if err := s.Write(&store.Record{ Key: "Hello", @@ -109,7 +110,7 @@ func fileTest(s store.Store, t *testing.T) { } else { if len(results) != 2 { t.Errorf("Expected 2 items, got %d", len(results)) - t.Logf("Table test: %v\n", spew.Sdump(results)) + //t.Logf("Table test: %v\n", spew.Sdump(results)) } } @@ -120,7 +121,7 @@ func fileTest(s store.Store, t *testing.T) { t.Errorf("Couldn't read all \"foo\" keys, got %# v (%s)", spew.Sdump(results), err) } else if len(results) != 1 { t.Errorf("Expected 1 item, got %d", len(results)) - t.Logf("Table test: %v\n", spew.Sdump(results)) + //t.Logf("Table test: %v\n", spew.Sdump(results)) } if err := s.Delete("foo"); err != nil { @@ -163,7 +164,7 @@ func fileTest(s store.Store, t *testing.T) { } else { if len(results) != 3 { t.Errorf("Expected 3 items, got %d", len(results)) - t.Logf("Table test: %v\n", spew.Sdump(results)) + //t.Logf("Table test: %v\n", spew.Sdump(results)) } } @@ -173,7 +174,7 @@ func fileTest(s store.Store, t *testing.T) { } else { if len(results) != 2 { t.Errorf("Expected 2 items, got %d", len(results)) - t.Logf("Table test: %v\n", spew.Sdump(results)) + //t.Logf("Table test: %v\n", spew.Sdump(results)) } } @@ -183,7 +184,7 @@ func fileTest(s store.Store, t *testing.T) { } else { if len(results) != 1 { t.Errorf("Expected 1 item, got %d", len(results)) - t.Logf("Table test: %# v\n", spew.Sdump(results)) + // t.Logf("Table test: %# v\n", spew.Sdump(results)) } } if err := s.Delete("foo"); err != nil { diff --git a/store/memory/memory_test.go b/store/memory/memory_test.go index 14ac49a6..8d51ea0d 100644 --- a/store/memory/memory_test.go +++ b/store/memory/memory_test.go @@ -2,6 +2,7 @@ package memory import ( "fmt" + "os" "testing" "time" @@ -42,7 +43,9 @@ func TestMemoryNamespacePrefix(t *testing.T) { } func basictest(s store.Store, t *testing.T) { - t.Logf("Testing store %s, with options %# v\n", s.String(), pretty.Formatter(s.Options())) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Testing store %s, with options %# v\n", s.String(), pretty.Formatter(s.Options())) + } // Read and Write an expiring Record if err := s.Write(&store.Record{ Key: "Hello", @@ -97,7 +100,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 3 { t.Errorf("Expected 3 items, got %d", len(results)) } - t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + } } time.Sleep(time.Millisecond * 100) if results, err := s.Read("foo", store.ReadPrefix()); err != nil { @@ -106,7 +111,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 2 { t.Errorf("Expected 2 items, got %d", len(results)) } - t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + } } time.Sleep(time.Millisecond * 100) if results, err := s.Read("foo", store.ReadPrefix()); err != nil { @@ -115,7 +122,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 1 { t.Errorf("Expected 1 item, got %d", len(results)) } - t.Logf("Prefix test: %# v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %# v\n", pretty.Formatter(results)) + } } if err := s.Delete("foo", func(d *store.DeleteOptions) {}); err != nil { t.Errorf("Delete failed (%v)", err) @@ -156,7 +165,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 3 { t.Errorf("Expected 3 items, got %d", len(results)) } - t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + } } time.Sleep(time.Millisecond * 100) if results, err := s.Read("foo", store.ReadSuffix()); err != nil { @@ -165,7 +176,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 2 { t.Errorf("Expected 2 items, got %d", len(results)) } - t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %v\n", pretty.Formatter(results)) + } } time.Sleep(time.Millisecond * 100) if results, err := s.Read("foo", store.ReadSuffix()); err != nil { @@ -174,7 +187,9 @@ func basictest(s store.Store, t *testing.T) { if len(results) != 1 { t.Errorf("Expected 1 item, got %d", len(results)) } - t.Logf("Prefix test: %# v\n", pretty.Formatter(results)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Prefix test: %# v\n", pretty.Formatter(results)) + } } if err := s.Delete("foo"); err != nil { t.Errorf("Delete failed (%v)", err) diff --git a/transport/memory/memory_test.go b/transport/memory/memory_test.go index 50e64aaf..1d46d401 100644 --- a/transport/memory/memory_test.go +++ b/transport/memory/memory_test.go @@ -1,6 +1,7 @@ package memory import ( + "os" "testing" "github.com/micro/go-micro/v2/transport" @@ -24,7 +25,9 @@ func TestMemoryTransport(t *testing.T) { if err := sock.Recv(&m); err != nil { return } - t.Logf("Server Received %s", string(m.Body)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Server Received %s", string(m.Body)) + } if err := sock.Send(&transport.Message{ Body: []byte(`pong`), }); err != nil { @@ -54,7 +57,9 @@ func TestMemoryTransport(t *testing.T) { if err := c.Recv(&m); err != nil { return } - t.Logf("Client Received %s", string(m.Body)) + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("Client Received %s", string(m.Body)) + } } } diff --git a/tunnel/tunnel_test.go b/tunnel/tunnel_test.go index 2e86baf0..1c620347 100644 --- a/tunnel/tunnel_test.go +++ b/tunnel/tunnel_test.go @@ -1,6 +1,7 @@ package tunnel import ( + "os" "sync" "testing" "time" @@ -288,12 +289,15 @@ func TestTunnelRTTRate(t *testing.T) { // wait until done wg.Wait() - for _, link := range tunA.Links() { - t.Logf("Link %s length %v rate %v", link.Id(), link.Length(), link.Rate()) - } + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + // only needed for debug + for _, link := range tunA.Links() { + t.Logf("Link %s length %v rate %v", link.Id(), link.Length(), link.Rate()) + } - for _, link := range tunB.Links() { - t.Logf("Link %s length %v rate %v", link.Id(), link.Length(), link.Rate()) + for _, link := range tunB.Links() { + t.Logf("Link %s length %v rate %v", link.Id(), link.Length(), link.Rate()) + } } } diff --git a/web/service.go b/web/service.go index 069a53e2..737f801b 100644 --- a/web/service.go +++ b/web/service.go @@ -226,8 +226,8 @@ func (s *service) start() error { ch <- l.Close() }() - if logger.V(logger.InfoLevel, log) { - log.Infof("Listening on %v", l.Addr().String()) + if logger.V(logger.DebugLevel, log) { + log.Debugf("Listening on %v", l.Addr().String()) } return nil } diff --git a/web/service_test.go b/web/service_test.go index 428f9424..0d033038 100644 --- a/web/service_test.go +++ b/web/service_test.go @@ -110,7 +110,9 @@ func TestService(t *testing.T) { t.Fatalf("service.Run():%v", err) } case <-time.After(time.Duration(time.Second)): - t.Logf("service.Run() survived a client request without an error") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("service.Run() survived a client request without an error") + } } ch := make(chan os.Signal, 1) @@ -125,10 +127,14 @@ func TestService(t *testing.T) { if err != nil { t.Fatalf("service.Run():%v", err) } else { - t.Log("service.Run() nil return on syscall.SIGTERM") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Log("service.Run() nil return on syscall.SIGTERM") + } } case <-time.After(time.Duration(time.Second)): - t.Logf("service.Run() survived a client request without an error") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("service.Run() survived a client request without an error") + } } eventually(func() bool { @@ -286,7 +292,9 @@ func TestTLS(t *testing.T) { t.Fatalf("service.Run():%v", err) } case <-time.After(time.Duration(time.Second)): - t.Logf("service.Run() survived a client request without an error") + if len(os.Getenv("IN_TRAVIS_CI")) == 0 { + t.Logf("service.Run() survived a client request without an error") + } } } From 2659215d5ea33e1250309c5a7ce52214ca75be89 Mon Sep 17 00:00:00 2001 From: Jake Sanders Date: Thu, 9 Apr 2020 12:11:24 +0100 Subject: [PATCH 11/12] cockroachDB doesn't support this syntax (#1509) --- store/cockroach/cockroach.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/store/cockroach/cockroach.go b/store/cockroach/cockroach.go index 47038639..e89c5281 100644 --- a/store/cockroach/cockroach.go +++ b/store/cockroach/cockroach.go @@ -277,7 +277,7 @@ func (s *sqlStore) initDB() error { s.readOffset = readOffset write, err := s.db.Prepare(fmt.Sprintf(`INSERT INTO %s.%s(key, value, expiry) VALUES ($1, $2::bytea, $3) - ON CONFLICT ON CONSTRAINT %s_pkey + ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, expiry = EXCLUDED.expiry;`, s.database, s.table, s.table)) if err != nil { From 2e379ca7d026a2b52f7a54d38b046ba9968e317e Mon Sep 17 00:00:00 2001 From: Jake Sanders Date: Thu, 9 Apr 2020 12:18:02 +0100 Subject: [PATCH 12/12] Don't break the build! --- store/cockroach/cockroach.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/store/cockroach/cockroach.go b/store/cockroach/cockroach.go index e89c5281..4aa68ac5 100644 --- a/store/cockroach/cockroach.go +++ b/store/cockroach/cockroach.go @@ -279,7 +279,7 @@ func (s *sqlStore) initDB() error { VALUES ($1, $2::bytea, $3) ON CONFLICT (key) DO UPDATE - SET value = EXCLUDED.value, expiry = EXCLUDED.expiry;`, s.database, s.table, s.table)) + SET value = EXCLUDED.value, expiry = EXCLUDED.expiry;`, s.database, s.table)) if err != nil { return errors.Wrap(err, "Write statement couldn't be prepared") }