From cc555b7a7a2798b72ebf6ab397422cd4fa29814e Mon Sep 17 00:00:00 2001 From: buildmaster Date: Sat, 24 Sep 2022 04:00:45 +0000 Subject: [PATCH 1/3] Bumping versions --- docs/src/main/asciidoc/_configprops.adoc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index 78a66f9c..76b149db 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -54,8 +54,8 @@ |spring.cloud.kubernetes.config.labels | | |spring.cloud.kubernetes.config.name | | |spring.cloud.kubernetes.config.namespace | | -|spring.cloud.kubernetes.config.paths | | -|spring.cloud.kubernetes.config.retry.enabled | `+++true+++` | +|spring.cloud.kubernetes.config.paths | | +|spring.cloud.kubernetes.config.retry.enabled | `+++true+++` | |spring.cloud.kubernetes.config.retry.initial-interval | `+++1000+++` | Initial retry interval in milliseconds. |spring.cloud.kubernetes.config.retry.max-attempts | `+++6+++` | Maximum number of attempts. |spring.cloud.kubernetes.config.retry.max-interval | `+++2000+++` | Maximum interval for backoff. @@ -106,8 +106,8 @@ |spring.cloud.kubernetes.secrets.labels | | |spring.cloud.kubernetes.secrets.name | | |spring.cloud.kubernetes.secrets.namespace | | -|spring.cloud.kubernetes.secrets.paths | | -|spring.cloud.kubernetes.secrets.retry.enabled | `+++true+++` | +|spring.cloud.kubernetes.secrets.paths | | +|spring.cloud.kubernetes.secrets.retry.enabled | `+++true+++` | |spring.cloud.kubernetes.secrets.retry.initial-interval | `+++1000+++` | Initial retry interval in milliseconds. |spring.cloud.kubernetes.secrets.retry.max-attempts | `+++6+++` | Maximum number of attempts. |spring.cloud.kubernetes.secrets.retry.max-interval | `+++2000+++` | Maximum interval for backoff. @@ -115,4 +115,4 @@ |spring.cloud.kubernetes.secrets.sources | | |spring.cloud.kubernetes.secrets.use-name-as-prefix | `+++false+++` | -|=== +|=== \ No newline at end of file From 4f09c1b5522c59bb31da2afb3daa562408437a4a Mon Sep 17 00:00:00 2001 From: erabii Date: Mon, 26 Sep 2022 17:12:23 +0300 Subject: [PATCH 2/3] clean-up in discovery implementation - part 1 (#1082) --- .../KubernetesInformerDiscoveryClient.java | 12 ++--- .../KubernetesDiscoveryConstants.java | 50 +++++++++++++++++++ .../discovery/KubernetesServiceInstance.java | 19 +++---- .../discovery/KubernetesDiscoveryClient.java | 13 ++--- 4 files changed, 67 insertions(+), 27 deletions(-) create mode 100644 spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesDiscoveryConstants.java diff --git a/spring-cloud-kubernetes-client-discovery/src/main/java/org/springframework/cloud/kubernetes/client/discovery/KubernetesInformerDiscoveryClient.java b/spring-cloud-kubernetes-client-discovery/src/main/java/org/springframework/cloud/kubernetes/client/discovery/KubernetesInformerDiscoveryClient.java index 32a7d7f4..ca1010bf 100644 --- a/spring-cloud-kubernetes-client-discovery/src/main/java/org/springframework/cloud/kubernetes/client/discovery/KubernetesInformerDiscoveryClient.java +++ b/spring-cloud-kubernetes-client-discovery/src/main/java/org/springframework/cloud/kubernetes/client/discovery/KubernetesInformerDiscoveryClient.java @@ -45,6 +45,10 @@ import org.springframework.util.Assert; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTP; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTPS; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.PRIMARY_PORT_NAME_LABEL_KEY; + /** * @author Min Kim * @author Ryan Baxter @@ -54,12 +58,6 @@ public class KubernetesInformerDiscoveryClient implements DiscoveryClient, Initi private static final Log log = LogFactory.getLog(KubernetesInformerDiscoveryClient.class); - private static final String PRIMARY_PORT_NAME_LABEL_KEY = "primary-port-name"; - - private static final String HTTPS_PORT_NAME = "https"; - - private static final String HTTP_PORT_NAME = "http"; - private final SharedInformerFactory sharedInformerFactory; private final Lister serviceLister; @@ -182,7 +180,7 @@ public class KubernetesInformerDiscoveryClient implements DiscoveryClient, Initi // In case no port has been found return -1 to log a warning and fall back to // the first port in the list. int discoveredPort = ports.getOrDefault(primaryPortName, - ports.getOrDefault(HTTPS_PORT_NAME, ports.getOrDefault(HTTP_PORT_NAME, -1))); + ports.getOrDefault(HTTPS, ports.getOrDefault(HTTP, -1))); if (discoveredPort == -1) { if (StringUtils.hasText(primaryPortName)) { diff --git a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesDiscoveryConstants.java b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesDiscoveryConstants.java new file mode 100644 index 00000000..9fc7d084 --- /dev/null +++ b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesDiscoveryConstants.java @@ -0,0 +1,50 @@ +/* + * Copyright 2019-2022 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * 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. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.cloud.kubernetes.commons.discovery; + +/** + * Constants that are to be used across discovery implementations. + * + * @author wind57 + */ +public final class KubernetesDiscoveryConstants { + + private KubernetesDiscoveryConstants() { + + } + + /** + * Primary port label. + */ + public static final String PRIMARY_PORT_NAME_LABEL_KEY = "primary-port-name"; + + /** + * Https scheme. + */ + public static final String HTTPS = "https"; + + /** + * Http scheme. + */ + public static final String HTTP = "http"; + + /** + * Key of the namespace metadata. + */ + public static final String NAMESPACE_METADATA_KEY = "k8s_namespace"; + +} diff --git a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesServiceInstance.java b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesServiceInstance.java index 2dc40d5e..1399f9ed 100644 --- a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesServiceInstance.java +++ b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/discovery/KubernetesServiceInstance.java @@ -23,17 +23,12 @@ import java.util.Objects; import org.springframework.cloud.client.ServiceInstance; import org.springframework.core.style.ToStringCreator; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTP; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTPS; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.NAMESPACE_METADATA_KEY; + public final class KubernetesServiceInstance implements ServiceInstance { - /** - * Key of the namespace metadata. - */ - public static final String NAMESPACE_METADATA_KEY = "k8s_namespace"; - - private static final String HTTP_PREFIX = "http"; - - private static final String HTTPS_PREFIX = "https"; - private String instanceId; private String serviceId; @@ -68,7 +63,7 @@ public final class KubernetesServiceInstance implements ServiceInstance { this.port = port; this.metadata = metadata; this.secure = secure; - this.uri = createUri(secure ? HTTPS_PREFIX : HTTP_PREFIX, host, port); + this.uri = createUri(secure ? HTTPS : HTTP, host, port); this.namespace = null; this.cluster = null; } @@ -91,7 +86,7 @@ public final class KubernetesServiceInstance implements ServiceInstance { this.port = port; this.metadata = metadata; this.secure = secure; - this.uri = createUri(secure ? HTTPS_PREFIX : HTTP_PREFIX, host, port); + this.uri = createUri(secure ? HTTPS : HTTP, host, port); this.namespace = namespace; this.cluster = cluster; } @@ -136,7 +131,7 @@ public final class KubernetesServiceInstance implements ServiceInstance { @Override public String getScheme() { - return isSecure() ? HTTPS_PREFIX : HTTP_PREFIX; + return isSecure() ? HTTPS : HTTP; } private URI createUri(String scheme, String host, int port) { diff --git a/spring-cloud-kubernetes-fabric8-discovery/src/main/java/org/springframework/cloud/kubernetes/fabric8/discovery/KubernetesDiscoveryClient.java b/spring-cloud-kubernetes-fabric8-discovery/src/main/java/org/springframework/cloud/kubernetes/fabric8/discovery/KubernetesDiscoveryClient.java index bc6eb8b0..e36d9034 100644 --- a/spring-cloud-kubernetes-fabric8-discovery/src/main/java/org/springframework/cloud/kubernetes/fabric8/discovery/KubernetesDiscoveryClient.java +++ b/spring-cloud-kubernetes-fabric8-discovery/src/main/java/org/springframework/cloud/kubernetes/fabric8/discovery/KubernetesDiscoveryClient.java @@ -44,7 +44,10 @@ import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import static java.util.stream.Collectors.toMap; -import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesServiceInstance.NAMESPACE_METADATA_KEY; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTP; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.HTTPS; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.NAMESPACE_METADATA_KEY; +import static org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryConstants.PRIMARY_PORT_NAME_LABEL_KEY; /** * Kubernetes implementation of {@link DiscoveryClient}. @@ -56,12 +59,6 @@ public class KubernetesDiscoveryClient implements DiscoveryClient { private static final Log log = LogFactory.getLog(KubernetesDiscoveryClient.class); - private static final String PRIMARY_PORT_NAME_LABEL_KEY = "primary-port-name"; - - private static final String HTTPS_PORT_NAME = "https"; - - private static final String HTTP_PORT_NAME = "http"; - private final KubernetesDiscoveryProperties properties; private final ServicePortSecureResolver servicePortSecureResolver; @@ -231,7 +228,7 @@ public class KubernetesDiscoveryClient implements DiscoveryClient { // In case no port has been found return -1 to log a warning and fall back to // the first port in the list. int discoveredPort = ports.getOrDefault(primaryPortName, - ports.getOrDefault(HTTPS_PORT_NAME, ports.getOrDefault(HTTP_PORT_NAME, -1))); + ports.getOrDefault(HTTPS, ports.getOrDefault(HTTP, -1))); if (discoveredPort == -1) { if (StringUtils.hasText(primaryPortName)) { From b8ec208e3c95c1b54c487e53a654511e6de55338 Mon Sep 17 00:00:00 2001 From: erabii Date: Mon, 26 Sep 2022 22:08:49 +0300 Subject: [PATCH 3/3] simplify discovery starters (#1083) --- .../pom.xml | 24 ---------------- .../pom.xml | 26 +---------------- .../pom.xml | 28 +------------------ 3 files changed, 2 insertions(+), 76 deletions(-) diff --git a/spring-cloud-kubernetes-fabric8-discovery/pom.xml b/spring-cloud-kubernetes-fabric8-discovery/pom.xml index ecc43af0..d27450d0 100644 --- a/spring-cloud-kubernetes-fabric8-discovery/pom.xml +++ b/spring-cloud-kubernetes-fabric8-discovery/pom.xml @@ -1,21 +1,4 @@ - - @@ -34,7 +17,6 @@ org.springframework.cloud spring-cloud-kubernetes-fabric8-autoconfig - ${project.version} @@ -100,12 +82,6 @@ spring-boot-configuration-processor true - - org.codehaus.groovy - groovy-all - ${groovy.version} - test - org.springframework.cloud spring-cloud-test-support diff --git a/spring-cloud-starter-kubernetes-client/pom.xml b/spring-cloud-starter-kubernetes-client/pom.xml index c11f6164..c799e000 100644 --- a/spring-cloud-starter-kubernetes-client/pom.xml +++ b/spring-cloud-starter-kubernetes-client/pom.xml @@ -1,20 +1,4 @@ - @@ -26,21 +10,13 @@ 4.0.0 spring-cloud-starter-kubernetes-client + Spring Cloud Kubernetes :: Kubernetes Native Starter - - org.springframework.cloud - spring-cloud-kubernetes-commons - - - org.springframework.cloud - spring-cloud-kubernetes-client-autoconfig - org.springframework.cloud spring-cloud-kubernetes-client-discovery - diff --git a/spring-cloud-starter-kubernetes-fabric8/pom.xml b/spring-cloud-starter-kubernetes-fabric8/pom.xml index 2cb24500..8cb1aa5f 100644 --- a/spring-cloud-starter-kubernetes-fabric8/pom.xml +++ b/spring-cloud-starter-kubernetes-fabric8/pom.xml @@ -1,21 +1,4 @@ - - @@ -27,18 +10,9 @@ 4.0.0 spring-cloud-starter-kubernetes-fabric8 - Spring Cloud Kubernetes :: Starter + Spring Cloud Kubernetes :: Fabric8 Starter - - org.springframework.cloud - spring-cloud-kubernetes-commons - - - org.springframework.cloud - spring-cloud-kubernetes-fabric8-autoconfig - - org.springframework.cloud spring-cloud-kubernetes-fabric8-discovery