diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosConfigModifier.java b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosConfigModifier.java index 6a3b9444e..7abd027f6 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosConfigModifier.java +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosConfigModifier.java @@ -70,6 +70,10 @@ public class NacosConfigModifier implements PolarisConfigModifier { * nacos cluster. */ public static final String NACOS_CLUSTER = "nacos.cluster"; + /** + * nacos ephemeral. + */ + public static final String NACOS_EPHEMERAL = "nacos.ephemeral"; private static final Logger LOGGER = LoggerFactory.getLogger(NacosConfigModifier.class); private static final String ID = "nacos"; private final NacosContextProperties nacosContextProperties; @@ -143,6 +147,7 @@ public class NacosConfigModifier implements PolarisConfigModifier { if (StringUtils.isNotBlank(nacosContextProperties.getServiceName())) { metadata.put(NACOS_SERVICE, nacosContextProperties.getServiceName()); } + metadata.put(NACOS_EPHEMERAL, String.valueOf(nacosContextProperties.isEphemeral())); configuration.getGlobal().getServerConnectors().add(serverConnectorConfig); DiscoveryConfigImpl discoveryConfig = new DiscoveryConfigImpl(); discoveryConfig.setServerConnectorId(ID); diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosContextProperties.java b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosContextProperties.java index fba9e8da6..00e1e067d 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosContextProperties.java +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/java/com/tencent/cloud/polaris/extend/nacos/NacosContextProperties.java @@ -60,6 +60,11 @@ public class NacosContextProperties { */ @Value("${spring.cloud.nacos.discovery.server-addr:}") private String serverAddr; + /** + * nacos discovery server address. + */ + @Value("${spring.cloud.nacos.discovery.ephemeral:false}") + private boolean ephemeral; /** * the nacos authentication username. @@ -177,7 +182,13 @@ public class NacosContextProperties { this.namespace = namespace; } + public boolean isEphemeral() { + return ephemeral; + } + public void setEphemeral(boolean ephemeral) { + this.ephemeral = ephemeral; + } String getServiceName() { return serviceName; } diff --git a/spring-cloud-starter-tencent-polaris-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-cloud-starter-tencent-polaris-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 39760f66e..f078959eb 100644 --- a/spring-cloud-starter-tencent-polaris-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-cloud-starter-tencent-polaris-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -114,6 +114,12 @@ "sourceType": "com.tencent.cloud.polaris.extend.nacos.NacosContextProperties", "defaultValue": false }, + { + "name": "spring.cloud.nacos.discovery.ephemeral", + "type": "java.lang.Boolean", + "sourceType": "com.tencent.cloud.polaris.extend.nacos.NacosContextProperties", + "defaultValue": false + }, { "name": "spring.cloud.nacos.discovery.group", "type": "java.lang.String", diff --git a/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/config/properties/PolarisMetadataRouterProperties.java b/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/config/properties/PolarisMetadataRouterProperties.java index 0cbf2b07e..4ff6e244a 100644 --- a/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/config/properties/PolarisMetadataRouterProperties.java +++ b/spring-cloud-starter-tencent-polaris-router/src/main/java/com/tencent/cloud/polaris/router/config/properties/PolarisMetadataRouterProperties.java @@ -17,7 +17,6 @@ package com.tencent.cloud.polaris.router.config.properties; -import com.tencent.polaris.api.rpc.MetadataFailoverType; import com.tencent.polaris.plugins.router.metadata.FailOverType; import org.springframework.boot.context.properties.ConfigurationProperties;