You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by as...@apache.org on 2018/01/10 08:03:26 UTC
[incubator-servicecomb-service-center] branch master updated:
SCB-160 Support empty environment scene (#247)
This is an automated email from the ASF dual-hosted git repository.
asifdxtreme pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-service-center.git
The following commit(s) were added to refs/heads/master by this push:
new fbbe180 SCB-160 Support empty environment scene (#247)
fbbe180 is described below
commit fbbe18037c66fd4b11e813dabe8e17d049daee05
Author: little-cui <su...@qq.com>
AuthorDate: Wed Jan 10 16:03:24 2018 +0800
SCB-160 Support empty environment scene (#247)
* SCB-160 Support empty environment scene
(cherry picked from commit 3644e13)
* SCB-160 Fix UT failure.
(cherry picked from commit e93aba6)
* SCB-160 Fix UT failure.
---
server/core/key_generator.go | 35 ++++--------------------
server/core/microservice.go | 6 ++--
server/service/event/dependency_event_handler.go | 9 ++----
server/service/instances.go | 2 +-
server/service/service_dependency.go | 2 --
server/service/service_dependency_test.go | 16 ++++++-----
server/service/util/dependency.go | 11 --------
server/service/util/microservice_util.go | 3 --
server/service/util/util_suite_test.go | 2 +-
9 files changed, 21 insertions(+), 65 deletions(-)
diff --git a/server/core/key_generator.go b/server/core/key_generator.go
index 4161343..cdd0e80 100644
--- a/server/core/key_generator.go
+++ b/server/core/key_generator.go
@@ -19,7 +19,6 @@ package core
import (
"github.com/apache/incubator-servicecomb-service-center/pkg/util"
pb "github.com/apache/incubator-servicecomb-service-center/server/core/proto"
- "strings"
)
const (
@@ -150,17 +149,9 @@ func GenerateRuleIndexKey(domainProject string, serviceId string, attr string, p
}
func GenerateServiceIndexKey(key *pb.MicroServiceKey) string {
- appId := key.AppId
- if len(strings.TrimSpace(appId)) == 0 {
- key.AppId = REGISTRY_APP_ID
- }
- env := key.Environment
- if len(strings.TrimSpace(env)) == 0 {
- env = pb.ENV_DEV
- }
return util.StringJoin([]string{
GetServiceIndexRootKey(key.Tenant),
- env,
+ key.Environment,
key.AppId,
key.ServiceName,
key.Version,
@@ -168,17 +159,9 @@ func GenerateServiceIndexKey(key *pb.MicroServiceKey) string {
}
func GenerateServiceAliasKey(key *pb.MicroServiceKey) string {
- appId := key.AppId
- if len(strings.TrimSpace(appId)) == 0 {
- key.AppId = REGISTRY_APP_ID
- }
- env := key.Environment
- if len(strings.TrimSpace(env)) == 0 {
- env = pb.ENV_DEV
- }
return util.StringJoin([]string{
GetServiceAliasRootKey(key.Tenant),
- env,
+ key.Environment,
key.AppId,
key.Alias,
key.Version,
@@ -242,27 +225,19 @@ func GenerateInstanceLeaseKey(domainProject string, serviceId string, instanceId
}
func GenerateServiceDependencyRuleKey(serviceType string, domainProject string, in *pb.MicroServiceKey) string {
- appId := in.AppId
- if len(strings.TrimSpace(appId)) == 0 {
- appId = REGISTRY_APP_ID
- }
- env := in.Environment
- if len(strings.TrimSpace(env)) == 0 {
- env = pb.ENV_DEV
- }
if in.ServiceName == "*" {
return util.StringJoin([]string{
GetServiceDependencyRuleRootKey(domainProject),
serviceType,
- env,
+ in.Environment,
in.ServiceName,
}, "/")
}
return util.StringJoin([]string{
GetServiceDependencyRuleRootKey(domainProject),
serviceType,
- env,
- appId,
+ in.Environment,
+ in.AppId,
in.ServiceName,
in.Version,
}, "/")
diff --git a/server/core/microservice.go b/server/core/microservice.go
index 73f885b..c357f54 100644
--- a/server/core/microservice.go
+++ b/server/core/microservice.go
@@ -28,7 +28,7 @@ import (
var (
Service *pb.MicroService
Instance *pb.MicroServiceInstance
- isAuth bool
+ isShared bool
)
const (
@@ -87,11 +87,11 @@ func IsDefaultDomainProject(domainProject string) bool {
}
func SetSharedMode(b bool) {
- isAuth = b
+ isShared = b
}
func IsShared(key *pb.MicroServiceKey) bool {
- if !isAuth {
+ if !isShared {
// shared micro-service only can be registered in auth mode.
return false
}
diff --git a/server/service/event/dependency_event_handler.go b/server/service/event/dependency_event_handler.go
index fb367e2..6789a14 100644
--- a/server/service/event/dependency_event_handler.go
+++ b/server/service/event/dependency_event_handler.go
@@ -117,12 +117,9 @@ func (h *DependencyEventHandler) Handle() error {
return nil
}
- var (
- r *pb.ConsumerDependency = &pb.ConsumerDependency{}
- ctx context.Context = context.Background()
- )
-
+ ctx := context.Background()
for _, kv := range resp.Kvs {
+ r := &pb.ConsumerDependency{}
consumerId, domainProject, data := pb.GetInfoFromDependencyQueueKV(kv)
err := json.Unmarshal(data, r)
@@ -136,8 +133,6 @@ func (h *DependencyEventHandler) Handle() error {
continue
}
- serviceUtil.SetDependencyDefaultValue(r)
-
consumerFlag := util.StringJoin([]string{r.Consumer.AppId, r.Consumer.ServiceName, r.Consumer.Version}, "/")
consumerInfo := pb.DependenciesToKeys([]*pb.MicroServiceKey{r.Consumer}, domainProject)[0]
providersInfo := pb.DependenciesToKeys(r.Providers, domainProject)
diff --git a/server/service/instances.go b/server/service/instances.go
index 8fdbd6a..e2838ec 100644
--- a/server/service/instances.go
+++ b/server/service/instances.go
@@ -572,7 +572,7 @@ func (s *InstanceService) Find(ctx context.Context, in *pb.FindInstancesRequest)
// only allow shared micro-service instances found in different domains.
util.SetTargetDomainProject(ctx, util.ParseDomain(ctx), util.ParseProject(ctx))
provider.Tenant = util.ParseTargetDomainProject(ctx)
- findFlag += "(" + provider.Environment + " services of the same domain)"
+ findFlag += "('" + provider.Environment + "' services of the same domain)"
}
// 版本规则
diff --git a/server/service/service_dependency.go b/server/service/service_dependency.go
index 1b36afa..c5857f1 100644
--- a/server/service/service_dependency.go
+++ b/server/service/service_dependency.go
@@ -55,8 +55,6 @@ func (s *MicroServiceService) AddOrUpdateDependencies(ctx context.Context, depen
return serviceUtil.BadParamsResponse("Provider is invalid").Response, nil
}
- serviceUtil.SetDependencyDefaultValue(dependencyInfo)
-
consumerFlag := util.StringJoin([]string{dependencyInfo.Consumer.AppId, dependencyInfo.Consumer.ServiceName, dependencyInfo.Consumer.Version}, "/")
consumerInfo := pb.DependenciesToKeys([]*pb.MicroServiceKey{dependencyInfo.Consumer}, domainProject)[0]
providersInfo := pb.DependenciesToKeys(dependencyInfo.Providers, domainProject)
diff --git a/server/service/service_dependency_test.go b/server/service/service_dependency_test.go
index 115dc45..719fd00 100644
--- a/server/service/service_dependency_test.go
+++ b/server/service/service_dependency_test.go
@@ -238,13 +238,6 @@ var _ = Describe("'Dependency' service", func() {
Expect(err).To(BeNil())
Expect(respCreateDependency.Response.Code).To(Equal(pb.Response_SUCCESS))
- respCon, err := serviceResource.GetConsumerDependencies(getContext(), &pb.GetDependenciesRequest{
- ServiceId: consumerId1,
- })
- Expect(err).To(BeNil())
- Expect(respCon.Response.Code).To(Equal(pb.Response_SUCCESS))
- Expect(len(respCon.Providers)).To(Equal(0))
-
By("consumer in diff env")
consumer.Environment = pb.ENV_PROD
respCreateDependency, err = serviceResource.CreateDependenciesForMicroServices(getContext(), &pb.CreateDependenciesRequest{
@@ -264,6 +257,15 @@ var _ = Describe("'Dependency' service", func() {
Expect(err).To(BeNil())
Expect(respCreateDependency.Response.Code).To(Equal(pb.Response_SUCCESS))
+ Expect(deh.Handle()).To(BeNil())
+
+ respCon, err := serviceResource.GetConsumerDependencies(getContext(), &pb.GetDependenciesRequest{
+ ServiceId: consumerId1,
+ })
+ Expect(err).To(BeNil())
+ Expect(respCon.Response.Code).To(Equal(pb.Response_SUCCESS))
+ Expect(len(respCon.Providers)).To(Equal(0))
+
respCon, err = serviceResource.GetConsumerDependencies(getContext(), &pb.GetDependenciesRequest{
ServiceId: consumerId2,
})
diff --git a/server/service/util/dependency.go b/server/service/util/dependency.go
index 3b1a118..bd4a3ac 100644
--- a/server/service/util/dependency.go
+++ b/server/service/util/dependency.go
@@ -1112,14 +1112,3 @@ func (dr *DependencyRelation) getConsumerOfSameServiceNameAndAppId(provider *pb.
}
return allConsumers, nil
}
-
-func SetDependencyDefaultValue(dep *pb.ConsumerDependency) {
- if len(dep.Consumer.Environment) == 0 {
- dep.Consumer.Environment = pb.ENV_DEV
- }
- for _, p := range dep.Providers {
- if len(p.Environment) == 0 {
- p.Environment = pb.ENV_DEV
- }
- }
-}
diff --git a/server/service/util/microservice_util.go b/server/service/util/microservice_util.go
index 433458c..4494295 100644
--- a/server/service/util/microservice_util.go
+++ b/server/service/util/microservice_util.go
@@ -284,9 +284,6 @@ func SetServiceDefaultValue(service *pb.MicroService) {
if len(service.Level) == 0 {
service.Level = "BACK"
}
- if len(service.Environment) == 0 {
- service.Environment = pb.ENV_DEV
- }
if len(service.RegisterBy) == 0 {
service.RegisterBy = pb.REGISTERBY_UNKNOWM
}
diff --git a/server/service/util/util_suite_test.go b/server/service/util/util_suite_test.go
index 6036d04..8cc05bd 100644
--- a/server/service/util/util_suite_test.go
+++ b/server/service/util/util_suite_test.go
@@ -179,7 +179,7 @@ func TestSetDefault(t *testing.T) {
service := &proto.MicroService{}
serviceUtil.SetServiceDefaultValue(service)
if len(service.Level) == 0 ||
- len(service.Environment) == 0 ||
+ //len(service.Environment) == 0 ||
len(service.RegisterBy) == 0 ||
service.Framework == nil ||
len(service.Framework.Name) == 0 ||
--
To stop receiving notification emails like this one, please contact
['"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>'].