This is an automated email from the ASF dual-hosted git repository. victory pushed a commit to branch apache_develop in repository https://gitbox.apache.org/repos/asf/dubbo-go.git
commit 8f9802ef6dc0a7277bc6cb4a0d346076253b3c15 Merge: 070604773 2aa489a3b Author: cvictory <[email protected]> AuthorDate: Thu Jan 7 11:12:59 2021 +0800 merge latest develop of community .github/workflows/github-actions.yml | 52 +--- .golangci.yml | 63 ++++ .travis.yml | 28 -- cluster/cluster_impl/failback_cluster_invoker.go | 10 +- cluster/loadbalance/random_test.go | 3 + cluster/router/chain/chain.go | 7 +- cluster/router/chain/chain_test.go | 39 ++- cluster/router/condition/app_router_test.go | 21 +- cluster/router/condition/file_test.go | 9 + cluster/router/condition/listenable_router.go | 4 +- cluster/router/condition/router.go | 11 +- cluster/router/condition/router_test.go | 2 + .../healthcheck/default_health_check_test.go | 3 + cluster/router/tag/file.go | 2 +- cluster/router/tag/router_rule.go | 18 +- cluster/router/tag/tag_router.go | 4 +- cluster/router/tag/tag_router_test.go | 8 +- common/config/environment.go | 4 +- common/constant/key.go | 17 +- .../extension/config_post_processor.go | 38 ++- common/logger/logger.go | 5 +- common/proxy/proxy.go | 11 +- common/proxy/proxy_test.go | 8 +- common/rpc_service.go | 10 +- common/rpc_service_test.go | 13 +- common/url.go | 91 ++++-- common/url_test.go | 100 ++++++- common/yaml/yaml_test.go | 2 +- config/base_config.go | 2 +- config/base_config_test.go | 5 +- config/config_center_config.go | 6 +- config/config_loader.go | 4 +- config/config_loader_test.go | 25 +- .../interfaces/config_post_processor.go | 22 +- config/reference_config.go | 15 + config/registry_config_test.go | 5 +- config/service_config.go | 29 +- config/service_config_test.go | 3 +- config_center/apollo/impl.go | 5 +- config_center/apollo/impl_test.go | 10 +- config_center/apollo/listener.go | 2 +- config_center/file/impl.go | 2 +- config_center/file/impl_test.go | 4 + config_center/nacos/client.go | 6 +- config_center/nacos/impl_test.go | 7 +- config_center/nacos/listener.go | 9 +- config_center/zookeeper/impl.go | 2 +- config_center/zookeeper/impl_test.go | 23 +- filter/access_key.go | 2 +- filter/filter.go | 1 + filter/filter_impl/access_log_filter_test.go | 2 +- filter/filter_impl/active_filter_test.go | 4 +- filter/filter_impl/auth/default_authenticator.go | 2 +- .../filter_impl/auth/default_authenticator_test.go | 9 +- filter/filter_impl/auth/sign_util.go | 10 +- filter/filter_impl/execute_limit_filter.go | 2 +- filter/filter_impl/execute_limit_filter_test.go | 6 +- filter/filter_impl/generic_service_filter_test.go | 4 +- .../filter_impl/graceful_shutdown_filter_test.go | 9 +- filter/filter_impl/seata_filter.go | 9 +- filter/filter_impl/seata_filter_test.go | 2 +- filter/filter_impl/sentinel_filter.go | 43 ++- filter/filter_impl/sentinel_filter_test.go | 6 +- filter/filter_impl/token_filter_test.go | 8 +- .../tps/tps_limit_sliding_window_strategy.go | 2 +- .../tps/tps_limiter_method_service_test.go | 8 +- filter/filter_impl/tps_limit_filter_test.go | 6 +- filter/filter_impl/tracing_filter.go | 2 +- filter/filter_impl/tracing_filter_test.go | 2 +- go.mod | 18 +- go.sum | 333 ++------------------- .../mapping/dynamic/service_name_mapping_test.go | 1 + metadata/report/consul/report_test.go | 4 +- metadata/report/delegate/delegate_report.go | 19 +- metadata/report/delegate/delegate_report_test.go | 22 +- metadata/report/etcd/report_test.go | 5 +- metadata/report/zookeeper/report_test.go | 5 +- metadata/service/inmemory/service_proxy.go | 10 +- metadata/service/inmemory/service_proxy_test.go | 40 ++- metadata/service/inmemory/service_test.go | 41 ++- metadata/service/remote/service.go | 6 +- metadata/service/remote/service_proxy.go | 2 +- metadata/service/remote/service_proxy_test.go | 34 ++- metadata/service/remote/service_test.go | 2 +- protocol/dubbo/dubbo_codec.go | 10 +- protocol/dubbo/dubbo_invoker_test.go | 2 +- protocol/dubbo/dubbo_protocol.go | 4 +- protocol/dubbo/hessian2/const.go | 17 +- protocol/dubbo/hessian2/hessian_dubbo.go | 8 +- protocol/dubbo/hessian2/hessian_dubbo_test.go | 2 + protocol/dubbo/hessian2/hessian_request.go | 30 +- protocol/dubbo/hessian2/hessian_response.go | 24 +- protocol/dubbo/impl/codec.go | 2 +- protocol/dubbo/impl/const.go | 17 +- protocol/dubbo/impl/hessian.go | 37 ++- protocol/dubbo/opentracing.go | 8 - protocol/grpc/grpc_invoker.go | 2 +- protocol/grpc/protoc-gen-dubbo/main.go | 2 +- .../grpc/protoc-gen-dubbo/plugin/dubbo/dubbo.go | 16 +- protocol/invocation/rpcinvocation.go | 14 +- protocol/jsonrpc/http.go | 24 +- protocol/jsonrpc/http_test.go | 2 +- protocol/jsonrpc/json.go | 12 +- protocol/jsonrpc/server.go | 8 +- protocol/protocolwrapper/mock_protocol_filter.go | 1 - protocol/rest/server/rest_server.go | 2 + registry/base_configuration_listener.go | 12 +- registry/base_registry.go | 7 +- registry/consul/registry.go | 2 +- registry/consul/service_discovery.go | 17 +- registry/consul/service_discovery_test.go | 8 +- registry/consul/utils_test.go | 27 +- registry/directory/directory.go | 20 +- registry/etcdv3/service_discovery.go | 17 +- .../event_publishing_service_deiscovery_test.go | 2 +- .../event/event_publishing_service_discovery.go | 2 +- registry/file/service_discovery.go | 12 +- registry/file/service_discovery_test.go | 12 +- registry/kubernetes/listener_test.go | 132 -------- registry/kubernetes/registry.go | 10 +- registry/kubernetes/registry_test.go | 2 +- registry/mock_registry.go | 5 +- registry/nacos/listener.go | 4 +- registry/nacos/registry_test.go | 4 +- registry/nacos/service_discovery.go | 8 +- registry/nacos/service_discovery_test.go | 3 +- registry/protocol/protocol.go | 6 +- registry/service_discovery.go | 2 +- registry/service_instance.go | 2 +- .../servicediscovery/service_discovery_registry.go | 2 +- .../service_discovery_registry_test.go | 7 +- .../rest/rest_subscribed_urls_synthesizer.go | 7 +- registry/zookeeper/registry.go | 17 +- registry/zookeeper/registry_test.go | 77 +++-- registry/zookeeper/service_discovery.go | 14 +- registry/zookeeper/service_discovery_test.go | 21 +- remoting/etcdv3/client.go | 4 +- remoting/etcdv3/client_test.go | 9 +- remoting/getty/dubbo_codec_for_test.go | 10 +- remoting/getty/getty_client.go | 13 +- remoting/getty/getty_client_test.go | 10 +- remoting/getty/getty_server.go | 38 +-- remoting/getty/listener.go | 16 +- remoting/getty/listener_test.go | 8 +- remoting/getty/opentracing.go | 8 - remoting/getty/pool.go | 85 +++--- remoting/kubernetes/client.go | 8 +- remoting/kubernetes/client_test.go | 9 +- remoting/kubernetes/facade_test.go | 7 +- remoting/kubernetes/registry_controller.go | 2 +- remoting/kubernetes/watch.go | 26 +- remoting/kubernetes/watch_test.go | 9 +- remoting/nacos/builder_test.go | 2 + remoting/zookeeper/client.go | 18 +- remoting/zookeeper/client_test.go | 25 +- remoting/zookeeper/facade_test.go | 6 +- remoting/zookeeper/listener.go | 20 +- remoting/zookeeper/listener_test.go | 6 +- 158 files changed, 1228 insertions(+), 1266 deletions(-) diff --cc config/service_config.go index 1021306d0,fd49390aa..df022b79a --- a/config/service_config.go +++ b/config/service_config.go @@@ -7,7 -7,7 +7,7 @@@ * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 -- * ++ *service_config.go * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@@ -146,7 -146,7 +149,7 @@@ func getRandomPort(protocolConfigs []*P return ports } --// Export exports the service ++// Export exports the servicerpcinvocation.go func (c *ServiceConfig) Export() error { // TODO: config center start here @@@ -337,16 -347,9 +351,23 @@@ func (c *ServiceConfig) GetExportedUrls return nil } +func PublishServiceDefinition(url *common.URL) { + if remoteMetadataService == nil { + var err error + if remoteMetadataService, err = extension.GetMetadataService("remote"); err != nil { + logger.Warnf("get remote metadataService fail. %v", err) + return + } else if remoteMetadataService == nil { + logger.Info("get remote metadataService will nil.") + return + } + } + remoteMetadataService.PublishServiceDefinition(url) +} ++ + // postProcessConfig asks registered ConfigPostProcessor to post-process the current ServiceConfig. + func (c *ServiceConfig) postProcessConfig(url *common.URL) { + for _, p := range extension.GetConfigPostProcessors() { + p.PostProcessServiceConfig(url) + } + }
