You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2018/12/18 06:30:06 UTC

[GitHub] wujimin closed pull request #1029: [SCB-1073] InstanceCacheChecker should ignore StaticMicroserviceVersions

wujimin closed pull request #1029: [SCB-1073] InstanceCacheChecker should ignore StaticMicroserviceVersions
URL: https://github.com/apache/servicecomb-java-chassis/pull/1029
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/dynamic-config/config-cc/src/main/java/org/apache/servicecomb/config/client/ConfigCenterConfig.java b/dynamic-config/config-cc/src/main/java/org/apache/servicecomb/config/client/ConfigCenterConfig.java
index 3f570ba80..fa4900076 100644
--- a/dynamic-config/config-cc/src/main/java/org/apache/servicecomb/config/client/ConfigCenterConfig.java
+++ b/dynamic-config/config-cc/src/main/java/org/apache/servicecomb/config/client/ConfigCenterConfig.java
@@ -20,7 +20,6 @@
 import static org.apache.servicecomb.foundation.common.base.ServiceCombConstants.DEFAULT_SERVICECOMB_ENV;
 import static org.apache.servicecomb.foundation.common.base.ServiceCombConstants.SERVICECOMB_ENV;
 
-import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.servicecomb.deployment.Deployment;
@@ -138,11 +137,11 @@ public int getProxyPort() {
   }
 
   public String getProxyUsername() {
-    return finalConfig.getString(PROXY_USERNAME, "");
+    return finalConfig.getString(PROXY_USERNAME, null);
   }
 
   public String getProxyPasswd() {
-    return finalConfig.getString(PROXY_PASSWD, "");
+    return finalConfig.getString(PROXY_PASSWD, null);
   }
 
   @SuppressWarnings("unchecked")
diff --git a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/client/TestConfigCenterConfig.java b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/client/TestConfigCenterConfig.java
index 1624f5af8..dda2a214f 100644
--- a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/client/TestConfigCenterConfig.java
+++ b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/client/TestConfigCenterConfig.java
@@ -44,4 +44,13 @@ public void getEnvironment() {
     ConfigCenterConfig.setConcurrentCompositeConfiguration(ConfigUtil.createLocalConfig());
     Assert.assertEquals("development", ConfigCenterConfig.INSTANCE.getEnvironment());
   }
+
+  @Test
+  public void getProxyConfig() {
+    Assert.assertFalse(ConfigCenterConfig.INSTANCE.isProxyEnable());
+    Assert.assertEquals("127.0.0.1", ConfigCenterConfig.INSTANCE.getProxyHost());
+    Assert.assertEquals(8080, ConfigCenterConfig.INSTANCE.getProxyPort());
+    Assert.assertNull(ConfigCenterConfig.INSTANCE.getProxyUsername());
+    Assert.assertNull(ConfigCenterConfig.INSTANCE.getProxyPasswd());
+  }
 }
diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/config/ServiceRegistryConfig.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/config/ServiceRegistryConfig.java
index 6a7bc0022..c4eccdfe3 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/config/ServiceRegistryConfig.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/config/ServiceRegistryConfig.java
@@ -19,7 +19,6 @@
 
 import java.net.URI;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
 import org.apache.servicecomb.deployment.Deployment;
@@ -296,12 +295,12 @@ public int getProxyPort() {
   }
 
   public String getProxyUsername() {
-    String username = getProperty("user", PROXY_USERNAME);
+    String username = getProperty(null, PROXY_USERNAME);
     return username;
   }
 
   public String getProxyPasswd() {
-    String passwd = getProperty("passwd", PROXY_PASSWD);
+    String passwd = getProperty(null, PROXY_PASSWD);
     return passwd;
   }
 
diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
index 28fb4b662..ec27cb05e 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
@@ -28,6 +28,7 @@
 import org.apache.servicecomb.serviceregistry.consumer.AppManager;
 import org.apache.servicecomb.serviceregistry.consumer.MicroserviceManager;
 import org.apache.servicecomb.serviceregistry.consumer.MicroserviceVersions;
+import org.apache.servicecomb.serviceregistry.consumer.StaticMicroserviceVersions;
 import org.apache.servicecomb.serviceregistry.definition.DefinitionConst;
 import org.apache.servicecomb.serviceregistry.diagnosis.Status;
 import org.slf4j.Logger;
@@ -55,6 +56,9 @@ public InstanceCacheSummary check() {
 
     for (MicroserviceManager microserviceManager : appManager.getApps().values()) {
       for (MicroserviceVersions microserviceVersions : microserviceManager.getVersionsByName().values()) {
+        if (microserviceVersions instanceof StaticMicroserviceVersions) {
+          continue;
+        }
         InstanceCacheResult instanceCacheResult = check(microserviceVersions);
         addInstanceCacheResult(instanceCacheResult);
       }
@@ -103,11 +107,6 @@ protected InstanceCacheResult check(MicroserviceVersions microserviceVersions) {
 
     // compare all instances
     List<MicroserviceInstance> remoteInstances = microserviceInstances.getInstancesResponse().getInstances();
-//    if (RandomUtils.nextInt(0, 2) == 0) {
-//      MicroserviceInstance microserviceInstance = new MicroserviceInstance();
-//      microserviceInstance.setInstanceId("abc");
-//      remoteInstances.add(microserviceInstance);
-//    }
     remoteInstances.sort(Comparator.comparing(MicroserviceInstance::getInstanceId));
     String local = Json.encode(microserviceVersions.getPulledInstances());
     String remote = Json.encode(remoteInstances);
diff --git a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/config/TestServiceRegistryConfig.java b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/config/TestServiceRegistryConfig.java
index c6211636f..899cea84c 100644
--- a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/config/TestServiceRegistryConfig.java
+++ b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/config/TestServiceRegistryConfig.java
@@ -20,8 +20,8 @@
 import java.util.List;
 
 import org.apache.commons.configuration.Configuration;
-import org.apache.servicecomb.deployment.DefaultDeploymentProvider;
 import org.apache.servicecomb.config.ConfigUtil;
+import org.apache.servicecomb.deployment.DefaultDeploymentProvider;
 import org.apache.servicecomb.foundation.common.net.IpPort;
 import org.apache.servicecomb.foundation.test.scaffolding.config.ArchaiusUtils;
 import org.junit.AfterClass;
@@ -47,25 +47,30 @@ public static void teardownClass() {
   @Test
   public void testServiceRegistryConfig() {
     ServiceRegistryConfig oConfig = ServiceRegistryConfig.INSTANCE;
-    Assert.assertEquals(null, oConfig.getAccessKey());
+    Assert.assertNull(oConfig.getAccessKey());
     Assert.assertEquals(30000, oConfig.getConnectionTimeout());
     Assert.assertNotEquals(null, oConfig.getHeartbeatInterval());
     Assert.assertEquals("HTTP_1_1", oConfig.getHttpVersion().name());
     Assert.assertEquals("rest", oConfig.getTransport());
     Assert.assertEquals(1, oConfig.getWorkerPoolSize());
-    Assert.assertEquals(true, oConfig.isSsl());
+    Assert.assertTrue(oConfig.isSsl());
     Assert.assertEquals(30000, oConfig.getRequestTimeout());
     Assert.assertEquals(3000, oConfig.getHeartBeatRequestTimeout());
     Assert.assertNotEquals(null, oConfig.getResendHeartBeatTimes());
-    Assert.assertEquals(false, oConfig.isPreferIpAddress());
-    Assert.assertEquals(true, oConfig.isWatch());
-    Assert.assertEquals(false, oConfig.isClientAuthEnabled());
+    Assert.assertFalse(oConfig.isPreferIpAddress());
+    Assert.assertTrue(oConfig.isWatch());
+    Assert.assertFalse(oConfig.isClientAuthEnabled());
     Assert.assertEquals(ServiceRegistryConfig.NO_TENANT, oConfig.getTenantName());
-    Assert.assertEquals(null, oConfig.getSecretKey());
+    Assert.assertNull(oConfig.getSecretKey());
     Assert.assertNull(ServiceRegistryConfig.INSTANCE.getMicroserviceVersionFactory());
     List<IpPort> ipPorts = oConfig.getIpPort();
     Assert.assertEquals("127.0.0.1:80", ipPorts.get(0).toString());
     Assert.assertEquals("127.0.0.1:443", ipPorts.get(1).toString());
+    Assert.assertFalse(ServiceRegistryConfig.INSTANCE.isProxyEnable());
+    Assert.assertEquals("127.0.0.1", ServiceRegistryConfig.INSTANCE.getProxyHost());
+    Assert.assertEquals(8080, ServiceRegistryConfig.INSTANCE.getProxyPort());
+    Assert.assertNull(ServiceRegistryConfig.INSTANCE.getProxyUsername());
+    Assert.assertNull(ServiceRegistryConfig.INSTANCE.getProxyPasswd());
   }
 
   @Test
diff --git a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/TestInstanceCacheChecker.java b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/TestInstanceCacheChecker.java
index c84cc3e6b..b5f4a68f8 100644
--- a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/TestInstanceCacheChecker.java
+++ b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/TestInstanceCacheChecker.java
@@ -26,7 +26,9 @@
 import org.apache.servicecomb.serviceregistry.api.registry.MicroserviceInstance;
 import org.apache.servicecomb.serviceregistry.api.response.FindInstancesResponse;
 import org.apache.servicecomb.serviceregistry.client.http.MicroserviceInstances;
+import org.apache.servicecomb.serviceregistry.consumer.MicroserviceManager;
 import org.apache.servicecomb.serviceregistry.consumer.MicroserviceVersions;
+import org.apache.servicecomb.serviceregistry.consumer.StaticMicroserviceVersions;
 import org.apache.servicecomb.serviceregistry.definition.DefinitionConst;
 import org.apache.servicecomb.serviceregistry.diagnosis.Status;
 import org.apache.servicecomb.serviceregistry.registry.ServiceRegistryFactory;
@@ -239,4 +241,33 @@ MicroserviceInstances findServiceInstances(String appId, String serviceName,
     Assert.assertEquals(Json.encode(expectedSummary), Json.encode(instanceCacheSummary));
     Assert.assertNull(microserviceVersions.getRevision());
   }
+
+  @Test
+  public void check_StaticMicroservice() {
+    Holder<MicroserviceInstances> findHolder = new Holder<>(new MicroserviceInstances());
+
+    new MockUp<RegistryUtils>() {
+      @Mock
+      MicroserviceInstances findServiceInstances(String appId, String serviceName,
+          String versionRule, String revision) {
+        return findHolder.value;
+      }
+    };
+
+    MicroserviceManager microserviceManager = serviceRegistry.getAppManager()
+        .getOrCreateMicroserviceManager(RegistryUtils.getAppId());
+    microserviceManager.getVersionsByName().put(microserviceName,
+        new StaticMicroserviceVersions(serviceRegistry.getAppManager(), RegistryUtils.getAppId(), microserviceName,
+            ThirdPartyServiceForUT.class));
+
+    InstanceCacheSummary instanceCacheSummary = checker.check();
+
+    expectedSummary.setStatus(Status.NORMAL);
+
+    Assert.assertEquals(Json.encode(expectedSummary), Json.encode(instanceCacheSummary));
+  }
+
+  private interface ThirdPartyServiceForUT {
+    String sayHello(String name);
+  }
 }


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services