From ffc431753bfe258cdd4b3299eafe0a6c5feb5735 Mon Sep 17 00:00:00 2001 From: Nastya Smirnova Date: Sat, 21 Oct 2017 04:46:29 +0300 Subject: [PATCH 1/8] Create TurbineClustersProvider Extract separate class TurbineClustersProvider to be able to provide custom solution for retrieving configured clusters (#2219) --- .../main/asciidoc/spring-cloud-netflix.adoc | 3 + ...igurationBasedTurbineClustersProvider.java | 44 +++++++++++++ .../EurekaBasedTurbineClustersProvider.java | 53 +++++++++++++++ .../turbine/SpringAggregatorFactory.java | 30 ++------- .../turbine/TurbineAggregatorProperties.java | 65 +++++++++++++++++++ .../turbine/TurbineClustersProvider.java | 29 +++++++++ .../turbine/TurbineHttpConfiguration.java | 27 +++++++- .../netflix/turbine/TurbineLifecycle.java | 9 ++- ...ationBasedTurbineClustersProviderTest.java | 32 +++++++++ ...urekaBasedTurbineClustersProviderTest.java | 42 ++++++++++++ .../TurbineAggregatorPropertiesTest.java | 55 ++++++++++++++++ 11 files changed, 361 insertions(+), 28 deletions(-) create mode 100644 spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProvider.java create mode 100644 spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProvider.java create mode 100644 spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorProperties.java create mode 100644 spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineClustersProvider.java create mode 100644 spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProviderTest.java create mode 100644 spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProviderTest.java create mode 100644 spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorPropertiesTest.java diff --git a/docs/src/main/asciidoc/spring-cloud-netflix.adoc b/docs/src/main/asciidoc/spring-cloud-netflix.adoc index 6cbcb783e..4d735c2fc 100644 --- a/docs/src/main/asciidoc/spring-cloud-netflix.adoc +++ b/docs/src/main/asciidoc/spring-cloud-netflix.adoc @@ -688,6 +688,9 @@ turbine: appConfig: customers ---- +If you need to customize which cluster names should be used by Turbine (you don't want to store cluster names in +`turbine.aggregator.clusterConfig` configuration) provide a bean of type `TurbineClustersProvider`. + The `clusterName` can be customized by a SPEL expression in `turbine.clusterNameExpression` with root an instance of `InstanceInfo`. The default value is `appName`, which means that the Eureka serviceId ends up as the cluster key (i.e. the `InstanceInfo` for customers has an `appName` of "CUSTOMERS"). A different example would be `turbine.clusterNameExpression=aSGName`, which would get the cluster name from the AWS ASG name. Another example: ---- diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProvider.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProvider.java new file mode 100644 index 000000000..74c5baf6c --- /dev/null +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProvider.java @@ -0,0 +1,44 @@ +/* + * Copyright 2013-2017 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 + * + * http://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.netflix.turbine; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.List; + +/** + * Provides clusters names for Turbine based on configuration value. + * + * @author Anastasiia Smirnova + */ +public class ConfigurationBasedTurbineClustersProvider implements TurbineClustersProvider { + + private static final Log log = LogFactory.getLog(ConfigurationBasedTurbineClustersProvider.class); + private final TurbineAggregatorProperties properties; + + public ConfigurationBasedTurbineClustersProvider(TurbineAggregatorProperties turbineAggregatorProperties) { + this.properties = turbineAggregatorProperties; + } + + @Override + public List getClusterNames() { + List clusterNames = properties.getClusterConfig(); + log.trace("Using clusters names: " + clusterNames); + return clusterNames; + } +} diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProvider.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProvider.java new file mode 100644 index 000000000..879275105 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProvider.java @@ -0,0 +1,53 @@ +/* + * Copyright 2013-2017 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 + * + * http://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.netflix.turbine; + +import com.netflix.discovery.EurekaClient; +import com.netflix.discovery.shared.Application; +import com.netflix.discovery.shared.Applications; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.ArrayList; +import java.util.List; + +/** + * Provides clusters names for Turbine based on applications names registered in Eureka. + * + * @author Anastasiia Smirnova + */ +public class EurekaBasedTurbineClustersProvider implements TurbineClustersProvider { + + private static final Log log = LogFactory.getLog(EurekaBasedTurbineClustersProvider.class); + private final EurekaClient eurekaClient; + + public EurekaBasedTurbineClustersProvider(EurekaClient eurekaClient) { + this.eurekaClient = eurekaClient; + } + + @Override + public List getClusterNames() { + Applications applications = eurekaClient.getApplications(); + List registeredApplications = applications.getRegisteredApplications(); + List appNames = new ArrayList<>(registeredApplications.size()); + for (Application application : registeredApplications) { + appNames.add(application.getName()); + } + log.trace("Using clusters names: " + appNames); + return appNames; + } +} diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/SpringAggregatorFactory.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/SpringAggregatorFactory.java index badcb9f00..efc53e524 100644 --- a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/SpringAggregatorFactory.java +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/SpringAggregatorFactory.java @@ -16,12 +16,8 @@ package org.springframework.cloud.netflix.turbine; -import java.util.ArrayList; import java.util.Collection; -import java.util.List; -import com.netflix.config.DynamicPropertyFactory; -import com.netflix.config.DynamicStringProperty; import com.netflix.turbine.data.AggDataFromCluster; import com.netflix.turbine.discovery.Instance; import com.netflix.turbine.handler.PerformanceCriteria; @@ -43,8 +39,11 @@ public class SpringAggregatorFactory implements ClusterMonitorFactory clusterMonitor = (ClusterMonitor) findOrRegisterAggregateMonitor(clusterName); clusterMonitor.registerListenertoClusterMonitor(this.StaticListener); try { @@ -87,27 +86,12 @@ public class SpringAggregatorFactory implements ClusterMonitorFactory getClusterNames() { - List clusters = new ArrayList(); - String clusterNames = aggClusters.get(); - if (clusterNames == null || clusterNames.trim().length() == 0) { - clusters.add("default"); - } - else { - String[] parts = aggClusters.get().split(","); - for (String s : parts) { - clusters.add(s); - } - } - return clusters; - } - /** * shutdown all configured cluster monitors */ @Override public void shutdownClusterMonitors() { - for (String clusterName : getClusterNames()) { + for (String clusterName : clustersProvider.getClusterNames()) { ClusterMonitor clusterMonitor = (ClusterMonitor) AggregateClusterMonitor .findOrRegisterAggregateMonitor(clusterName); clusterMonitor.stopMonitor(); diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorProperties.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorProperties.java new file mode 100644 index 000000000..e7f7e9d22 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorProperties.java @@ -0,0 +1,65 @@ +/* + * Copyright 2013-2017 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 + * + * http://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.netflix.turbine; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +import java.util.Collections; +import java.util.List; +import java.util.Objects; + +/** + * @author Anastasiia Smirnova + */ +@ConfigurationProperties("turbine.aggregator") +public class TurbineAggregatorProperties { + + private static final String DEFAULT = "default"; + /** + * The list of cluster names. + */ + private List clusterConfig = Collections.singletonList(DEFAULT); + + public List getClusterConfig() { + return clusterConfig; + } + + public void setClusterConfig(List clusterConfig) { + this.clusterConfig = clusterConfig; + } + + @Override + public boolean equals(Object o) { + if (this == o) + return true; + if (o == null || getClass() != o.getClass()) + return false; + TurbineAggregatorProperties that = (TurbineAggregatorProperties) o; + return Objects.equals(clusterConfig, that.clusterConfig); + } + + @Override + public int hashCode() { + return Objects.hash(clusterConfig); + } + + @Override + public String toString() { + return "TurbineAggregatorProperties{" + "clusterConfig='" + clusterConfig + '\'' + + '}'; + } +} diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineClustersProvider.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineClustersProvider.java new file mode 100644 index 000000000..1e17cccc6 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineClustersProvider.java @@ -0,0 +1,29 @@ +/* + * Copyright 2013-2017 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 + * + * http://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.netflix.turbine; + +import java.util.List; + +/** + * Interface that gives possibility to customize which clusters names Turbine will use. + * + * @author Anastasiia Smirnova + */ +public interface TurbineClustersProvider { + + List getClusterNames(); +} diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineHttpConfiguration.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineHttpConfiguration.java index 26eaf9ca9..23ca5969d 100644 --- a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineHttpConfiguration.java +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineHttpConfiguration.java @@ -16,6 +16,7 @@ package org.springframework.cloud.netflix.turbine; +import com.netflix.turbine.monitor.cluster.ClusterMonitorFactory; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass; @@ -43,18 +44,40 @@ public class TurbineHttpConfiguration { } @Bean + @ConditionalOnMissingBean(name = "turbineStreamServlet") public ServletRegistrationBean turbineStreamServlet() { return new ServletRegistrationBean(new TurbineStreamServlet(), "/turbine.stream"); } @Bean + @ConditionalOnMissingBean public TurbineProperties turbineProperties() { return new TurbineProperties(); } @Bean - public TurbineLifecycle turbineLifecycle(InstanceDiscovery instanceDiscovery) { - return new TurbineLifecycle(instanceDiscovery); + @ConditionalOnMissingBean + public TurbineAggregatorProperties turbineAggregatorProperties() { + return new TurbineAggregatorProperties(); + } + + @Bean + @ConditionalOnMissingBean + public TurbineLifecycle turbineLifecycle(InstanceDiscovery instanceDiscovery, + ClusterMonitorFactory factory) { + return new TurbineLifecycle(instanceDiscovery, factory); + } + + @Bean + @ConditionalOnMissingBean + public ClusterMonitorFactory clusterMonitorFactory(TurbineClustersProvider clustersProvider) { + return new SpringAggregatorFactory(clustersProvider); + } + + @Bean + @ConditionalOnMissingBean + public TurbineClustersProvider clustersProvider(TurbineAggregatorProperties turbineAggregatorProperties) { + return new ConfigurationBasedTurbineClustersProvider(turbineAggregatorProperties); } @Configuration diff --git a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineLifecycle.java b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineLifecycle.java index 1651ef6f3..019a8ce75 100644 --- a/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineLifecycle.java +++ b/spring-cloud-netflix-turbine/src/main/java/org/springframework/cloud/netflix/turbine/TurbineLifecycle.java @@ -16,6 +16,7 @@ package org.springframework.cloud.netflix.turbine; +import com.netflix.turbine.monitor.cluster.ClusterMonitorFactory; import org.springframework.context.SmartLifecycle; import org.springframework.core.Ordered; @@ -29,11 +30,13 @@ import com.netflix.turbine.plugins.PluginsFactory; public class TurbineLifecycle implements SmartLifecycle, Ordered { private final InstanceDiscovery instanceDiscovery; + private final ClusterMonitorFactory factory; - private boolean running; + private volatile boolean running; - public TurbineLifecycle(InstanceDiscovery instanceDiscovery) { + public TurbineLifecycle(InstanceDiscovery instanceDiscovery, ClusterMonitorFactory factory) { this.instanceDiscovery = instanceDiscovery; + this.factory = factory; } @Override @@ -48,7 +51,7 @@ public class TurbineLifecycle implements SmartLifecycle, Ordered { @Override public void start() { - PluginsFactory.setClusterMonitorFactory(new SpringAggregatorFactory()); + PluginsFactory.setClusterMonitorFactory(factory); PluginsFactory.setInstanceDiscovery(instanceDiscovery); TurbineInit.init(); } diff --git a/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProviderTest.java b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProviderTest.java new file mode 100644 index 000000000..5115f3421 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/ConfigurationBasedTurbineClustersProviderTest.java @@ -0,0 +1,32 @@ +package org.springframework.cloud.netflix.turbine; + +import org.junit.Test; + +import java.util.Arrays; +import java.util.List; + +import static org.assertj.core.api.Assertions.assertThat; + +public class ConfigurationBasedTurbineClustersProviderTest { + + @Test + public void shouldReturnDefaultClusterIfConfigurationIsEmpty() throws Exception { + TurbineAggregatorProperties properties = new TurbineAggregatorProperties(); + TurbineClustersProvider provider = new ConfigurationBasedTurbineClustersProvider( + properties); + List clusterNames = provider.getClusterNames(); + + assertThat(clusterNames).containsOnly("default"); + } + + @Test + public void shouldReturnConfiguredClusters() throws Exception { + TurbineAggregatorProperties properties = new TurbineAggregatorProperties(); + properties.setClusterConfig(Arrays.asList("cluster1", "cluster2", "cluster3")); + TurbineClustersProvider provider = new ConfigurationBasedTurbineClustersProvider( + properties); + List clusterNames = provider.getClusterNames(); + + assertThat(clusterNames).containsOnly("cluster1", "cluster2", "cluster3"); + } +} \ No newline at end of file diff --git a/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProviderTest.java b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProviderTest.java new file mode 100644 index 000000000..1b7ebcf71 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/EurekaBasedTurbineClustersProviderTest.java @@ -0,0 +1,42 @@ +package org.springframework.cloud.netflix.turbine; + +import com.netflix.discovery.EurekaClient; +import com.netflix.discovery.shared.Application; +import com.netflix.discovery.shared.Applications; +import org.junit.Test; + +import java.util.List; + +import static java.util.Arrays.asList; +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +public class EurekaBasedTurbineClustersProviderTest { + + EurekaClient eurekaClient = mock(EurekaClient.class); + TurbineClustersProvider provider = new EurekaBasedTurbineClustersProvider(eurekaClient); + + @Test + public void shouldProvideAllClustersNames() throws Exception { + Applications applications = registeredApplications(asList(application("service1"), + application("service2"), application("service3"))); + when(eurekaClient.getApplications()).thenReturn(applications); + + List clusterNames = provider.getClusterNames(); + + assertThat(clusterNames).containsOnly("service1", "service2", "service3"); + } + + private Applications registeredApplications(List registered) { + Applications applications = mock(Applications.class); + when(applications.getRegisteredApplications()).thenReturn(registered); + return applications; + } + + private Application application(String name) { + Application application = mock(Application.class); + when(application.getName()).thenReturn(name); + return application; + } +} \ No newline at end of file diff --git a/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorPropertiesTest.java b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorPropertiesTest.java new file mode 100644 index 000000000..80ceb1b29 --- /dev/null +++ b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineAggregatorPropertiesTest.java @@ -0,0 +1,55 @@ +package org.springframework.cloud.netflix.turbine; + +import org.junit.After; +import org.junit.Test; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.annotation.Configuration; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.springframework.boot.test.util.EnvironmentTestUtils.addEnvironment; + +public class TurbineAggregatorPropertiesTest { + + private AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); + + @After + public void clear() { + if (this.context != null) { + this.context.close(); + } + } + + @Test + public void shouldHaveDefaultConfiguration() throws Exception { + setupContext(); + + TurbineAggregatorProperties actual = getProperties(); + assertThat(actual.getClusterConfig()).containsOnly("default"); + } + + @Test + public void shouldLoadCustomProperties() { + addEnvironment(this.context, + "turbine.aggregator.clusterConfig=cluster1, cluster2, cluster3"); + setupContext(); + + TurbineAggregatorProperties actual = getProperties(); + assertThat(actual.getClusterConfig()).containsOnly("cluster1", "cluster2", + "cluster3"); + } + + private void setupContext() { + this.context.register(TestConfiguration.class); + this.context.refresh(); + } + + private TurbineAggregatorProperties getProperties() { + return this.context.getBean(TurbineAggregatorProperties.class); + } + + @Configuration + @EnableConfigurationProperties(TurbineAggregatorProperties.class) + static class TestConfiguration { + } +} \ No newline at end of file From de16cb71f1ac49860714ed4d1cc908d113b7a18f Mon Sep 17 00:00:00 2001 From: Gregor Zurowski Date: Mon, 23 Oct 2017 20:08:00 +0200 Subject: [PATCH 2/8] Add new filters actuator endpoint (#2244) * Add new Zuul filters endpoint and refactor routes endpoint * Refactor FiltersEndpoint - Extend from AbstractEndpoint and simplify code - Move tests classes into package endpoint - Remove usage of Lombok * Conditionally enable Zuul routes and filters endpoints * Provide FilterRegistry to FiltersEndpoint via constructor --- .../main/asciidoc/spring-cloud-netflix.adoc | 20 ++++- .../cloud/netflix/zuul/FiltersEndpoint.java | 57 ++++++++++++ .../zuul/ZuulProxyAutoConfiguration.java | 17 +++- .../netflix/zuul/FiltersEndpointTests.java | 89 +++++++++++++++++++ .../zuul/RoutesEndpointIntegrationTests.java | 3 + .../netflix/zuul/RoutesEndpointTests.java | 1 + .../netflix/zuul/RoutesMvcEndpointTests.java | 3 + .../zuul/SimpleZuulProxyApplicationTests.java | 1 - .../filters/CustomHostRoutingFilterTests.java | 4 - 9 files changed, 183 insertions(+), 12 deletions(-) create mode 100644 spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/FiltersEndpoint.java create mode 100644 spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/FiltersEndpointTests.java diff --git a/docs/src/main/asciidoc/spring-cloud-netflix.adoc b/docs/src/main/asciidoc/spring-cloud-netflix.adoc index 4d735c2fc..9052cc3d7 100644 --- a/docs/src/main/asciidoc/spring-cloud-netflix.adoc +++ b/docs/src/main/asciidoc/spring-cloud-netflix.adoc @@ -1700,11 +1700,17 @@ Security. The assumption in this case is that the downstream services might add these headers too, and we want the values from the proxy. To not discard these well known security headers in case Spring Security is on the classpath you can set `zuul.ignoreSecurityHeaders` to `false`. This can be useful if you disabled the HTTP Security response headers in Spring Security and want the values provided by downstream services -=== The Routes Endpoint +=== Management Endpoints -If you are using `@EnableZuulProxy` with tha Spring Boot Actuator you -will enable (by default) an additional endpoint, available via HTTP as -`/routes`. A GET to this endpoint will return a list of the mapped +If you are using `@EnableZuulProxy` with the Spring Boot Actuator you +will enable (by default) two additional endpoints: + +* Routes +* Filters + +==== Routes Endpoint + +A GET to the routes endpoint at `/routes` will return a list of the mapped routes: .GET /routes @@ -1743,6 +1749,12 @@ NOTE: the routes should respond automatically to changes in the service catalog, but the POST to /routes is a way to force the change to happen immediately. +==== Filters Endpoint + +A GET to the filters endpoint at `/filters` will return a map of Zuul +filters by type. For each filter type in the map, you will find a list +of all the filters of that type, along with their details. + === Strangulation Patterns and Local Forwards A common pattern when migrating an existing application or API is to diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/FiltersEndpoint.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/FiltersEndpoint.java new file mode 100644 index 000000000..a57d98d07 --- /dev/null +++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/FiltersEndpoint.java @@ -0,0 +1,57 @@ +package org.springframework.cloud.netflix.zuul; + +import com.netflix.zuul.ZuulFilter; +import com.netflix.zuul.filters.FilterRegistry; +import org.springframework.boot.actuate.endpoint.AbstractEndpoint; +import org.springframework.jmx.export.annotation.ManagedAttribute; +import org.springframework.jmx.export.annotation.ManagedResource; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.TreeMap; + +/** + * Endpoint for listing Zuul filters. + * + * @author Daryl Robbins + * @author Gregor Zurowski + */ +@ManagedResource(description = "List Zuul filters") +public class FiltersEndpoint extends AbstractEndpoint>>> { + + private static final String ID = "filters"; + + private final FilterRegistry filterRegistry; + + public FiltersEndpoint(FilterRegistry filterRegistry) { + super(ID, true); + this.filterRegistry = filterRegistry; + } + + @ManagedAttribute + @Override + public Map>> invoke() { + // Map of filters by type + final Map>> filterMap = new TreeMap<>(); + + for (ZuulFilter filter : this.filterRegistry.getAllFilters()) { + // Ensure that we have a list to store filters of each type + if (!filterMap.containsKey(filter.filterType())) { + filterMap.put(filter.filterType(), new ArrayList>()); + } + + final Map filterInfo = new LinkedHashMap<>(); + filterInfo.put("class", filter.getClass().getName()); + filterInfo.put("order", filter.filterOrder()); + filterInfo.put("disabled", filter.isFilterDisabled()); + filterInfo.put("static", filter.isStaticFilter()); + + filterMap.get(filter.filterType()).add(filterInfo); + } + + return filterMap; + } + +} diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java index 40dee955a..dbdc47708 100644 --- a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java +++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java @@ -19,8 +19,10 @@ package org.springframework.cloud.netflix.zuul; import java.util.Collections; import java.util.List; +import com.netflix.zuul.filters.FilterRegistry; import org.apache.http.impl.client.CloseableHttpClient; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.actuate.condition.ConditionalOnEnabledEndpoint; import org.springframework.boot.actuate.endpoint.Endpoint; import org.springframework.boot.actuate.trace.TraceRepository; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; @@ -158,22 +160,31 @@ public class ZuulProxyAutoConfiguration extends ZuulServerAutoConfiguration { @Configuration @ConditionalOnClass(Endpoint.class) - protected static class RoutesEndpointConfiguration { + protected static class EndpointConfiguration { @Autowired(required = false) private TraceRepository traces; + @ConditionalOnEnabledEndpoint("routes") @Bean - public RoutesEndpoint zuulEndpoint(RouteLocator routeLocator) { + public RoutesEndpoint routesEndpoint(RouteLocator routeLocator) { return new RoutesEndpoint(routeLocator); } + @ConditionalOnEnabledEndpoint("routes") @Bean - public RoutesMvcEndpoint zuulMvcEndpoint(RouteLocator routeLocator, + public RoutesMvcEndpoint routesMvcEndpoint(RouteLocator routeLocator, RoutesEndpoint endpoint) { return new RoutesMvcEndpoint(endpoint, routeLocator); } + @ConditionalOnEnabledEndpoint("filters") + @Bean + public FiltersEndpoint filtersEndpoint() { + FilterRegistry filterRegistry = FilterRegistry.instance(); + return new FiltersEndpoint(filterRegistry); + } + @Bean public ProxyRequestHelper proxyRequestHelper(ZuulProperties zuulProperties) { TraceProxyRequestHelper helper = new TraceProxyRequestHelper(); diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/FiltersEndpointTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/FiltersEndpointTests.java new file mode 100644 index 000000000..6fc984305 --- /dev/null +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/FiltersEndpointTests.java @@ -0,0 +1,89 @@ +package org.springframework.cloud.netflix.zuul; + +import com.netflix.zuul.ZuulFilter; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.Map; + +import static org.hibernate.validator.internal.util.Contracts.assertTrue; +import static org.junit.Assert.assertEquals; + +/** + * Tests for Filters endpoint + */ +@RunWith(SpringJUnit4ClassRunner.class) +@SpringBootTest(classes = FiltersEndpointApplication.class, + webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, + value = { "server.contextPath: /app" }) +public class FiltersEndpointTests { + + @Autowired + private FiltersEndpoint endpoint; + + @Test + public void getFilters() { + final Map>> filters = endpoint.invoke(); + + boolean foundFilter = false; + + if (filters.containsKey("sample")) { + for (Map filterInfo : filters.get("sample")) { + if (TestFilter.class.getName().equals(filterInfo.get("class"))) { + foundFilter = true; + + // Verify filter's attributes + assertEquals(0, filterInfo.get("order")); + + break; // the search is over + } + } + } + + assertTrue(foundFilter, "Could not find expected sample filter from filters endpoint"); + } + +} + +@Configuration +@EnableAutoConfiguration +@RestController +@EnableZuulProxy +class FiltersEndpointApplication { + + @Bean + public ZuulFilter sampleFilter() { + return new TestFilter(); + } + +} + +class TestFilter extends ZuulFilter { + @Override + public String filterType() { + return "sample"; + } + + @Override + public boolean shouldFilter() { + return true; + } + + @Override + public Object run() { + return null; + } + + @Override + public int filterOrder() { + return 0; + } +} \ No newline at end of file diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointIntegrationTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointIntegrationTests.java index d2386d23b..be11e19c9 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointIntegrationTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointIntegrationTests.java @@ -25,6 +25,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.web.client.TestRestTemplate; +import org.springframework.cloud.netflix.zuul.EnableZuulProxy; +import org.springframework.cloud.netflix.zuul.RoutesEndpoint; +import org.springframework.cloud.netflix.zuul.RoutesRefreshedEvent; import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Configuration; import org.springframework.core.ParameterizedTypeReference; diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointTests.java index 53a90fbc3..ab0d20bfe 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesEndpointTests.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Map; import org.junit.Before; import org.junit.Test; +import org.springframework.cloud.netflix.zuul.RoutesEndpoint; import org.springframework.cloud.netflix.zuul.filters.Route; import org.springframework.cloud.netflix.zuul.filters.RouteLocator; diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesMvcEndpointTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesMvcEndpointTests.java index 248ecad65..7ea13129e 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesMvcEndpointTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/RoutesMvcEndpointTests.java @@ -30,6 +30,9 @@ import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.cloud.netflix.zuul.RoutesEndpoint; +import org.springframework.cloud.netflix.zuul.RoutesRefreshedEvent; +import org.springframework.cloud.netflix.zuul.RoutesMvcEndpoint; import org.springframework.cloud.netflix.zuul.filters.Route; import org.springframework.cloud.netflix.zuul.filters.RouteLocator; import org.springframework.context.ApplicationEventPublisher; diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/SimpleZuulProxyApplicationTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/SimpleZuulProxyApplicationTests.java index 8221655cf..cefa9f1d0 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/SimpleZuulProxyApplicationTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/SimpleZuulProxyApplicationTests.java @@ -25,7 +25,6 @@ import com.netflix.zuul.context.RequestContext; import org.junit.After; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/filters/CustomHostRoutingFilterTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/filters/CustomHostRoutingFilterTests.java index 413f64c1f..b25e5a978 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/filters/CustomHostRoutingFilterTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/zuul/filters/CustomHostRoutingFilterTests.java @@ -23,12 +23,9 @@ import com.netflix.zuul.context.RequestContext; import org.apache.http.client.config.CookieSpecs; import org.apache.http.client.config.RequestConfig; -import org.apache.http.conn.HttpClientConnectionManager; import org.apache.http.impl.client.BasicCookieStore; import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClients; -import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -42,7 +39,6 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; -import org.springframework.cloud.commons.httpclient.ApacheHttpClientConnectionManagerFactory; import org.springframework.cloud.commons.httpclient.ApacheHttpClientFactory; import org.springframework.cloud.commons.httpclient.DefaultApacheHttpClientFactory; import org.springframework.cloud.netflix.feign.ribbon.FeignRibbonClientAutoConfiguration; From bd2473a7bf95bf5b75ef7e97042ea023af48699d Mon Sep 17 00:00:00 2001 From: mg Date: Fri, 4 Aug 2017 17:22:56 -0500 Subject: [PATCH 3/8] Update spring-cloud-netflix.adoc Update documentation to reflect https://github.com/spring-cloud/spring-cloud-netflix/issues/1048 --- .../main/asciidoc/spring-cloud-netflix.adoc | 37 +++++++++++++++++-- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/docs/src/main/asciidoc/spring-cloud-netflix.adoc b/docs/src/main/asciidoc/spring-cloud-netflix.adoc index 9052cc3d7..60728853a 100644 --- a/docs/src/main/asciidoc/spring-cloud-netflix.adoc +++ b/docs/src/main/asciidoc/spring-cloud-netflix.adoc @@ -833,6 +833,7 @@ To set the `IRule` for a service name `users` you could set the following: ---- users: ribbon: + NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList NFLoadBalancerRuleClassName: com.netflix.loadbalancer.WeightedResponseTimeRule ---- @@ -1500,9 +1501,39 @@ The location of the backend can be specified as either a "serviceId" url: http://example.com/users_service ---- -These simple url-routes don't get executed as a `HystrixCommand` nor can you loadbalance multiple URLs with Ribbon. -To achieve this, specify a service-route and configure a Ribbon client for the -serviceId (this currently requires disabling Eureka support in Ribbon: +These simple url-routes don't get executed as a `HystrixCommand` nor do they loadbalance multiple URLs with Ribbon. +To achieve this, you can specify a `serviceId` with a static list of servers: + +.application.yml +[source,yaml] +---- +zuul: + routes: + echo: + path: /myusers/** + serviceId: myusers-service + stripPrefix: true + +hystrix: + command: + myusers-service: + execution: + isolation: + thread: + timeoutInMilliseconds: ... + +myusers-service: + ribbon: + NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList + ListOfServers: http://example1.com,http://example2.com + ConnectTimeout: 1000 + ReadTimeout: 3000 + MaxTotalHttpConnections: 500 + MaxConnectionsPerHost: 100 +---- + +Another method is specifiying a service-route and configure a Ribbon client for the +serviceId (this requires disabling Eureka support in Ribbon: see <>), e.g. .application.yml From b57dedb74af145b01a74c2d06ea64f38fe93ba96 Mon Sep 17 00:00:00 2001 From: Raiyan Date: Wed, 27 Sep 2017 23:08:35 +0530 Subject: [PATCH 4/8] - Eureka client auto configures the secure port when secure port is enabled - The eureka instance auto registration also changes the secure port when the server port is random (0) Fixes gh-2303 --- .../eureka/CloudEurekaInstanceConfig.java | 1 + .../eureka/EurekaClientAutoConfiguration.java | 9 +++++++ .../EurekaAutoServiceRegistration.java | 13 +++++++--- .../serviceregistry/EurekaRegistration.java | 8 +++++++ .../EurekaClientAutoConfigurationTests.java | 24 +++++++++++++++++++ 5 files changed, 52 insertions(+), 3 deletions(-) diff --git a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/CloudEurekaInstanceConfig.java b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/CloudEurekaInstanceConfig.java index 0156ac8c5..6ea3e8892 100644 --- a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/CloudEurekaInstanceConfig.java +++ b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/CloudEurekaInstanceConfig.java @@ -24,5 +24,6 @@ import com.netflix.appinfo.InstanceInfo; */ public interface CloudEurekaInstanceConfig extends EurekaInstanceConfig { void setNonSecurePort(int port); + void setSecurePort(int securePort); InstanceInfo.InstanceStatus getInitialStatus(); } diff --git a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.java b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.java index a49ead99a..30f00ab8e 100644 --- a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.java +++ b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.java @@ -126,13 +126,21 @@ public class EurekaClientAutoConfiguration { String hostname = eurekaPropertyResolver.getProperty("hostname"); boolean preferIpAddress = Boolean.parseBoolean(eurekaPropertyResolver.getProperty("preferIpAddress")); + boolean isSecurePortEnabled = Boolean.parseBoolean(eurekaPropertyResolver.getProperty("securePortEnabled")); int nonSecurePort = Integer.valueOf(propertyResolver.getProperty("server.port", propertyResolver.getProperty("port", "8080"))); + int managementPort = Integer.valueOf(propertyResolver.getProperty("management.port", String.valueOf(nonSecurePort))); String managementContextPath = propertyResolver.getProperty("management.contextPath", propertyResolver.getProperty("server.contextPath", "/")); EurekaInstanceConfigBean instance = new EurekaInstanceConfigBean(inetUtils); instance.setNonSecurePort(nonSecurePort); instance.setInstanceId(getDefaultInstanceId(propertyResolver)); instance.setPreferIpAddress(preferIpAddress); + + if(isSecurePortEnabled) { + int securePort = Integer.valueOf(propertyResolver.getProperty("server.port", propertyResolver.getProperty("port", "8080"))); + instance.setSecurePort(securePort); + } + if (managementPort != nonSecurePort && managementPort != 0) { if (StringUtils.hasText(hostname)) { instance.setHostname(hostname); @@ -148,6 +156,7 @@ public class EurekaClientAutoConfiguration { if (StringUtils.hasText(healthCheckUrlPath)) { instance.setHealthCheckUrlPath(healthCheckUrlPath); } + String scheme = instance.getSecurePortEnabled() ? "https" : "http"; URL base = new URL(scheme, instance.getHostname(), managementPort, managementContextPath); instance.setStatusPageUrl(new URL(base, StringUtils.trimLeadingCharacter(instance.getStatusPageUrlPath(), '/')).toString()); diff --git a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaAutoServiceRegistration.java b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaAutoServiceRegistration.java index 548e9aacb..26ac1c4bc 100644 --- a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaAutoServiceRegistration.java +++ b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaAutoServiceRegistration.java @@ -36,6 +36,7 @@ import org.springframework.core.Ordered; * @author Spencer Gibb * @author Jon Schneider * @author Jakub Narloch + * @author raiyan */ public class EurekaAutoServiceRegistration implements AutoServiceRegistration, SmartLifecycle, Ordered { @@ -61,9 +62,15 @@ public class EurekaAutoServiceRegistration implements AutoServiceRegistration, S @Override public void start() { - // only set the port if the nonSecurePort is 0 and this.port != 0 - if (this.port.get() != 0 && this.registration.getNonSecurePort() == 0) { - this.registration.setNonSecurePort(this.port.get()); + // only set the port if the nonSecurePort or securePort is 0 and this.port != 0 + if (this.port.get() != 0) { + if (this.registration.getNonSecurePort() == 0) { + this.registration.setNonSecurePort(this.port.get()); + } + + if (this.registration.getSecurePort() == 0 && this.registration.isSecure()) { + this.registration.setSecurePort(this.port.get()); + } } // only initialize if nonSecurePort is greater than 0 and it isn't already running diff --git a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaRegistration.java b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaRegistration.java index 7f2adc55f..dd9f991a3 100644 --- a/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaRegistration.java +++ b/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/serviceregistry/EurekaRegistration.java @@ -193,6 +193,14 @@ public class EurekaRegistration implements Registration, Closeable { return this.instanceConfig.getNonSecurePort(); } + public void setSecurePort(int port) { + this.instanceConfig.setSecurePort(port); + } + + public int getSecurePort() { + return this.instanceConfig.getSecurePort(); + } + @Override public void close() throws IOException { this.eurekaClient.shutdown(); diff --git a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfigurationTests.java b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfigurationTests.java index cddd720e2..3de661c76 100644 --- a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfigurationTests.java +++ b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/EurekaClientAutoConfigurationTests.java @@ -91,6 +91,23 @@ public class EurekaClientAutoConfigurationTests { this.context.getBeanDefinition("eurekaClient").getFactoryMethodName()); } + @Test + public void securePortPeriods() { + testSecurePort("server.port"); + } + + @Test + public void securePortUnderscores() { + testSecurePort("SERVER_PORT"); + } + + @Test + public void securePort() { + testSecurePort("PORT"); + assertEquals("eurekaClient", + this.context.getBeanDefinition("eurekaClient").getFactoryMethodName()); + } + @Test public void managementPort() { EnvironmentTestUtils.addEnvironment(this.context, "server.port=8989", @@ -331,6 +348,13 @@ public class EurekaClientAutoConfigurationTests { assertEquals(8888, getInstanceConfig().getNonSecurePort()); } + private void testSecurePort(String propName) { + EnvironmentTestUtils.addEnvironment(this.context, "eureka.instance.securePortEnabled=true"); + addEnvironment(this.context, propName + ":8443"); + setupContext(); + assertEquals(8443, getInstanceConfig().getSecurePort()); + } + private EurekaInstanceConfigBean getInstanceConfig() { return this.context.getBean(EurekaInstanceConfigBean.class); } From 8701060355454894849c547961726c3e1425f695 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 23 Oct 2017 17:05:30 -0400 Subject: [PATCH 5/8] Add workaround for locally failing test. --- ...bbonAutoConfigurationIntegrationTests.java | 6 ++-- .../cloud/netflix/test/TestUtils.java | 33 +++++++++++++++++++ 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/test/TestUtils.java diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonAutoConfigurationIntegrationTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonAutoConfigurationIntegrationTests.java index 1ad9d4305..23e2b09f2 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonAutoConfigurationIntegrationTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonAutoConfigurationIntegrationTests.java @@ -16,8 +16,6 @@ package org.springframework.cloud.netflix.ribbon; -import static org.junit.Assert.assertEquals; - import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -25,6 +23,7 @@ import org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoCon import org.springframework.boot.test.context.SpringBootTest; import org.springframework.cloud.netflix.archaius.ArchaiusAutoConfiguration; import org.springframework.cloud.netflix.ribbon.RibbonAutoConfigurationIntegrationTests.TestConfiguration; +import org.springframework.cloud.netflix.test.TestUtils; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; import org.springframework.test.annotation.DirtiesContext; @@ -33,6 +32,8 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.netflix.client.config.CommonClientConfigKey; import com.netflix.client.config.IClientConfig; +import static org.junit.Assert.assertEquals; + /** * @author Dave Syer */ @@ -46,6 +47,7 @@ public class RibbonAutoConfigurationIntegrationTests { @Test public void serverListIsConfigured() throws Exception { + TestUtils.assumeTestIgnored(RibbonAutoConfigurationIntegrationTests.class); IClientConfig config = this.factory.getClientConfig("client"); assertEquals(25000, config.getPropertyAsInteger(CommonClientConfigKey.ConnectTimeout, 3000)); diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/test/TestUtils.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/test/TestUtils.java new file mode 100644 index 000000000..60f6af54c --- /dev/null +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/test/TestUtils.java @@ -0,0 +1,33 @@ +/* + * Copyright 2013-2017 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 + * + * http://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.netflix.test; + +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.not; +import static org.junit.Assume.assumeThat; + +public class TestUtils { + public static void assumeTestIgnored(Class clazz) { + assumeTestIgnored(clazz.getSimpleName()); + } + + public static void assumeTestIgnored(String name) { + assumeThat("Test ignored", + System.getenv("SPRING_CLOUD_NETFLIX_IGNORE_TESTS"), + not(containsString(name))); + } +} From 1368f059bbeb01c5e92575ef8185bf7115d22692 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 23 Oct 2017 17:16:32 -0400 Subject: [PATCH 6/8] Change contract property name --- pom.xml | 4 ++-- spring-cloud-netflix-hystrix-contract/pom.xml | 4 ++-- spring-cloud-netflix-hystrix-stream/pom.xml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index db6e7d6fc..3fef8412d 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ 1.4.0.BUILD-SNAPSHOT Ditmars.BUILD-SNAPSHOT - 1.1.2.RELEASE + 1.1.2.RELEASE 3.6.1 @@ -116,7 +116,7 @@ org.springframework.cloud spring-cloud-contract-dependencies - ${spring-cloud-contract.version} + ${donotreplacespring-cloud-contract.version} pom import diff --git a/spring-cloud-netflix-hystrix-contract/pom.xml b/spring-cloud-netflix-hystrix-contract/pom.xml index ac9b1b13e..0f743e4ab 100644 --- a/spring-cloud-netflix-hystrix-contract/pom.xml +++ b/spring-cloud-netflix-hystrix-contract/pom.xml @@ -15,7 +15,7 @@ Spring Cloud Netflix Hystrix Contract ${basedir}/.. - 1.1.2.RELEASE + 1.1.2.RELEASE @@ -30,7 +30,7 @@ org.springframework.cloud spring-cloud-contract-verifier - ${spring-cloud-contract.version} + ${donotreplacespring-cloud-contract.version} diff --git a/spring-cloud-netflix-hystrix-stream/pom.xml b/spring-cloud-netflix-hystrix-stream/pom.xml index 9f183c40e..4bc1e8f3b 100644 --- a/spring-cloud-netflix-hystrix-stream/pom.xml +++ b/spring-cloud-netflix-hystrix-stream/pom.xml @@ -96,7 +96,7 @@ org.springframework.cloud spring-cloud-contract-maven-plugin - ${spring-cloud-contract.version} + ${donotreplacespring-cloud-contract.version} true From fa9524f9c98420c0ed5fb29383b2a9099a977c6d Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 23 Oct 2017 17:39:56 -0400 Subject: [PATCH 7/8] Update SNAPSHOT to 1.4.0.RC1 --- docs/pom.xml | 2 +- pom.xml | 8 ++++---- spring-cloud-netflix-core/pom.xml | 2 +- spring-cloud-netflix-dependencies/pom.xml | 4 ++-- spring-cloud-netflix-eureka-client/pom.xml | 2 +- spring-cloud-netflix-eureka-server/pom.xml | 2 +- spring-cloud-netflix-hystrix-amqp/pom.xml | 2 +- spring-cloud-netflix-hystrix-contract/pom.xml | 4 ++-- spring-cloud-netflix-hystrix-dashboard/pom.xml | 2 +- spring-cloud-netflix-hystrix-stream/pom.xml | 2 +- spring-cloud-netflix-sidecar/pom.xml | 2 +- spring-cloud-netflix-spectator/pom.xml | 2 +- spring-cloud-netflix-turbine-stream/pom.xml | 2 +- spring-cloud-netflix-turbine/pom.xml | 2 +- spring-cloud-starter-archaius/pom.xml | 2 +- spring-cloud-starter-atlas/pom.xml | 2 +- spring-cloud-starter-eureka-server/pom.xml | 2 +- spring-cloud-starter-eureka/pom.xml | 2 +- spring-cloud-starter-feign/pom.xml | 2 +- spring-cloud-starter-hystrix-dashboard/pom.xml | 2 +- spring-cloud-starter-hystrix/pom.xml | 2 +- spring-cloud-starter-netflix/pom.xml | 2 +- .../spring-cloud-starter-netflix-archaius/pom.xml | 2 +- .../spring-cloud-starter-netflix-atlas/pom.xml | 2 +- .../spring-cloud-starter-netflix-eureka-client/pom.xml | 2 +- .../spring-cloud-starter-netflix-eureka-server/pom.xml | 2 +- .../pom.xml | 2 +- .../spring-cloud-starter-netflix-hystrix/pom.xml | 2 +- .../spring-cloud-starter-netflix-ribbon/pom.xml | 2 +- .../spring-cloud-starter-netflix-spectator/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine-amqp/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine-stream/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine/pom.xml | 2 +- .../spring-cloud-starter-netflix-zuul/pom.xml | 2 +- .../spring-cloud-starter-openfeign/pom.xml | 2 +- spring-cloud-starter-ribbon/pom.xml | 2 +- spring-cloud-starter-spectator/pom.xml | 2 +- spring-cloud-starter-turbine-amqp/pom.xml | 2 +- spring-cloud-starter-turbine-stream/pom.xml | 2 +- spring-cloud-starter-turbine/pom.xml | 2 +- spring-cloud-starter-zuul/pom.xml | 2 +- 41 files changed, 46 insertions(+), 46 deletions(-) diff --git a/docs/pom.xml b/docs/pom.xml index 9691d4c34..98dd827fe 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-netflix-docs pom diff --git a/pom.xml b/pom.xml index 3fef8412d..06f1d7178 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 pom Spring Cloud Netflix Spring Cloud Netflix @@ -24,9 +24,9 @@ ${basedir} 4.0.27.Final 2.7.3 - 1.3.0.BUILD-SNAPSHOT - 1.4.0.BUILD-SNAPSHOT - Ditmars.BUILD-SNAPSHOT + 1.3.0.RC1 + 1.4.0.RC1 + Ditmars.RELEASE 1.1.2.RELEASE diff --git a/spring-cloud-netflix-core/pom.xml b/spring-cloud-netflix-core/pom.xml index f6c95ea2a..f43432ce3 100644 --- a/spring-cloud-netflix-core/pom.xml +++ b/spring-cloud-netflix-core/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-core diff --git a/spring-cloud-netflix-dependencies/pom.xml b/spring-cloud-netflix-dependencies/pom.xml index d136670fb..e84690fbb 100644 --- a/spring-cloud-netflix-dependencies/pom.xml +++ b/spring-cloud-netflix-dependencies/pom.xml @@ -5,11 +5,11 @@ spring-cloud-dependencies-parent org.springframework.cloud - 1.3.5.BUILD-SNAPSHOT + 1.3.5.RELEASE spring-cloud-netflix-dependencies - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 pom spring-cloud-netflix-dependencies Spring Cloud Netflix Dependencies diff --git a/spring-cloud-netflix-eureka-client/pom.xml b/spring-cloud-netflix-eureka-client/pom.xml index bd93e3ab9..16988a266 100644 --- a/spring-cloud-netflix-eureka-client/pom.xml +++ b/spring-cloud-netflix-eureka-client/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-eureka-client diff --git a/spring-cloud-netflix-eureka-server/pom.xml b/spring-cloud-netflix-eureka-server/pom.xml index 3e34f9c7e..861cf0b86 100644 --- a/spring-cloud-netflix-eureka-server/pom.xml +++ b/spring-cloud-netflix-eureka-server/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-eureka-server diff --git a/spring-cloud-netflix-hystrix-amqp/pom.xml b/spring-cloud-netflix-hystrix-amqp/pom.xml index c85428e72..8e0d8d86c 100644 --- a/spring-cloud-netflix-hystrix-amqp/pom.xml +++ b/spring-cloud-netflix-hystrix-amqp/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-hystrix-amqp diff --git a/spring-cloud-netflix-hystrix-contract/pom.xml b/spring-cloud-netflix-hystrix-contract/pom.xml index 0f743e4ab..c5896045a 100644 --- a/spring-cloud-netflix-hystrix-contract/pom.xml +++ b/spring-cloud-netflix-hystrix-contract/pom.xml @@ -5,11 +5,11 @@ org.springframework.cloud spring-cloud-build - 1.3.3.RELEASE + 1.3.5.RELEASE spring-cloud-netflix-hystrix-contract - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 jar spring-cloud-netflix-hystrix-contract Spring Cloud Netflix Hystrix Contract diff --git a/spring-cloud-netflix-hystrix-dashboard/pom.xml b/spring-cloud-netflix-hystrix-dashboard/pom.xml index e100a85ec..6573bd626 100644 --- a/spring-cloud-netflix-hystrix-dashboard/pom.xml +++ b/spring-cloud-netflix-hystrix-dashboard/pom.xml @@ -8,7 +8,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. diff --git a/spring-cloud-netflix-hystrix-stream/pom.xml b/spring-cloud-netflix-hystrix-stream/pom.xml index 4bc1e8f3b..3a4e65115 100644 --- a/spring-cloud-netflix-hystrix-stream/pom.xml +++ b/spring-cloud-netflix-hystrix-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-hystrix-stream diff --git a/spring-cloud-netflix-sidecar/pom.xml b/spring-cloud-netflix-sidecar/pom.xml index 6958eec0f..54ae68ce5 100644 --- a/spring-cloud-netflix-sidecar/pom.xml +++ b/spring-cloud-netflix-sidecar/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-sidecar diff --git a/spring-cloud-netflix-spectator/pom.xml b/spring-cloud-netflix-spectator/pom.xml index da2791d92..c86d6d658 100644 --- a/spring-cloud-netflix-spectator/pom.xml +++ b/spring-cloud-netflix-spectator/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-spectator diff --git a/spring-cloud-netflix-turbine-stream/pom.xml b/spring-cloud-netflix-turbine-stream/pom.xml index 01f3e0c64..8d6ee745c 100644 --- a/spring-cloud-netflix-turbine-stream/pom.xml +++ b/spring-cloud-netflix-turbine-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-turbine-stream diff --git a/spring-cloud-netflix-turbine/pom.xml b/spring-cloud-netflix-turbine/pom.xml index e651d6d40..2f973f7cb 100644 --- a/spring-cloud-netflix-turbine/pom.xml +++ b/spring-cloud-netflix-turbine/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-netflix-turbine diff --git a/spring-cloud-starter-archaius/pom.xml b/spring-cloud-starter-archaius/pom.xml index d54193a6a..f92d13a8c 100644 --- a/spring-cloud-starter-archaius/pom.xml +++ b/spring-cloud-starter-archaius/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-archaius diff --git a/spring-cloud-starter-atlas/pom.xml b/spring-cloud-starter-atlas/pom.xml index 31816567e..4cade870d 100644 --- a/spring-cloud-starter-atlas/pom.xml +++ b/spring-cloud-starter-atlas/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-atlas diff --git a/spring-cloud-starter-eureka-server/pom.xml b/spring-cloud-starter-eureka-server/pom.xml index 4b0e7d880..f16c30ac0 100644 --- a/spring-cloud-starter-eureka-server/pom.xml +++ b/spring-cloud-starter-eureka-server/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-eureka-server diff --git a/spring-cloud-starter-eureka/pom.xml b/spring-cloud-starter-eureka/pom.xml index 8f90dfeb3..caf4eadc4 100644 --- a/spring-cloud-starter-eureka/pom.xml +++ b/spring-cloud-starter-eureka/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-eureka diff --git a/spring-cloud-starter-feign/pom.xml b/spring-cloud-starter-feign/pom.xml index c18030c6b..eb10d0c0d 100644 --- a/spring-cloud-starter-feign/pom.xml +++ b/spring-cloud-starter-feign/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-feign diff --git a/spring-cloud-starter-hystrix-dashboard/pom.xml b/spring-cloud-starter-hystrix-dashboard/pom.xml index 66799065d..ab6de6553 100644 --- a/spring-cloud-starter-hystrix-dashboard/pom.xml +++ b/spring-cloud-starter-hystrix-dashboard/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-hystrix-dashboard diff --git a/spring-cloud-starter-hystrix/pom.xml b/spring-cloud-starter-hystrix/pom.xml index 6119e439a..e033492aa 100644 --- a/spring-cloud-starter-hystrix/pom.xml +++ b/spring-cloud-starter-hystrix/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-hystrix diff --git a/spring-cloud-starter-netflix/pom.xml b/spring-cloud-starter-netflix/pom.xml index 222430923..7bd9a76f3 100644 --- a/spring-cloud-starter-netflix/pom.xml +++ b/spring-cloud-starter-netflix/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-netflix diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml index f8c9e399e..c8f24830a 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-archaius Spring Cloud Starter Netflix Archaius diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml index 4e8b8b9cb..1e11d61cc 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-atlas Spring Cloud Starter Netflix Atlas diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml index 7e2a15b78..4b50cc875 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-eureka-client Spring Cloud Starter Netflix Eureka Client diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml index 267254e21..7c03f456d 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml @@ -3,7 +3,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-eureka-server Spring Cloud Starter Netflix Eureka Server diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml index 658584aa8..4c417437d 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-hystrix-dashboard Spring Cloud Starter Netflix Hystrix Dashboard diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml index de2e7bd64..37fc818f8 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-hystrix Spring Cloud Starter Netflix Hystrix diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml index 73949fbc3..d3faedefa 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-ribbon Spring Cloud Starter Netflix Ribbon diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml index d7218ea03..b156c817f 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-spectator Spring Cloud Starter Netflix Spectator diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml index 509171a5a..c469f1ca9 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml @@ -3,7 +3,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-turbine-amqp Spring Cloud Starter Netflix Turbine AMQP diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml index 6d0536f45..6a79a70c3 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-turbine-stream Spring Cloud Starter Netflix Turbine Stream diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml index 0b930c899..11a2d37ba 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-turbine Spring Cloud Starter Netflix Turbine diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml index b894180fe..5f6774882 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-netflix-zuul Spring Cloud Starter Netflix Zuul diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml index e15ef0090..07ef3baf2 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 spring-cloud-starter-openfeign Spring Cloud Starter OpenFeign diff --git a/spring-cloud-starter-ribbon/pom.xml b/spring-cloud-starter-ribbon/pom.xml index 5a1fd0a99..ad9900580 100644 --- a/spring-cloud-starter-ribbon/pom.xml +++ b/spring-cloud-starter-ribbon/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-ribbon diff --git a/spring-cloud-starter-spectator/pom.xml b/spring-cloud-starter-spectator/pom.xml index f62aa00a8..bd5abee10 100644 --- a/spring-cloud-starter-spectator/pom.xml +++ b/spring-cloud-starter-spectator/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-spectator diff --git a/spring-cloud-starter-turbine-amqp/pom.xml b/spring-cloud-starter-turbine-amqp/pom.xml index 1f29a3a94..8c7d142a7 100644 --- a/spring-cloud-starter-turbine-amqp/pom.xml +++ b/spring-cloud-starter-turbine-amqp/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-turbine-amqp diff --git a/spring-cloud-starter-turbine-stream/pom.xml b/spring-cloud-starter-turbine-stream/pom.xml index b5feee434..82995d54a 100644 --- a/spring-cloud-starter-turbine-stream/pom.xml +++ b/spring-cloud-starter-turbine-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-turbine-stream diff --git a/spring-cloud-starter-turbine/pom.xml b/spring-cloud-starter-turbine/pom.xml index a0c666c3f..b6bdf49f2 100644 --- a/spring-cloud-starter-turbine/pom.xml +++ b/spring-cloud-starter-turbine/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-turbine diff --git a/spring-cloud-starter-zuul/pom.xml b/spring-cloud-starter-zuul/pom.xml index aaeea73a1..57a750b9d 100644 --- a/spring-cloud-starter-zuul/pom.xml +++ b/spring-cloud-starter-zuul/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.BUILD-SNAPSHOT + 1.4.0.RC1 .. spring-cloud-starter-zuul From df7f31098ccf087c282181482a18a8caae8073d8 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 23 Oct 2017 17:44:26 -0400 Subject: [PATCH 8/8] Going back to snapshots --- docs/pom.xml | 2 +- pom.xml | 8 ++++---- spring-cloud-netflix-core/pom.xml | 2 +- spring-cloud-netflix-dependencies/pom.xml | 4 ++-- spring-cloud-netflix-eureka-client/pom.xml | 2 +- spring-cloud-netflix-eureka-server/pom.xml | 2 +- spring-cloud-netflix-hystrix-amqp/pom.xml | 2 +- spring-cloud-netflix-hystrix-contract/pom.xml | 4 ++-- spring-cloud-netflix-hystrix-dashboard/pom.xml | 2 +- spring-cloud-netflix-hystrix-stream/pom.xml | 2 +- spring-cloud-netflix-sidecar/pom.xml | 2 +- spring-cloud-netflix-spectator/pom.xml | 2 +- spring-cloud-netflix-turbine-stream/pom.xml | 2 +- spring-cloud-netflix-turbine/pom.xml | 2 +- spring-cloud-starter-archaius/pom.xml | 2 +- spring-cloud-starter-atlas/pom.xml | 2 +- spring-cloud-starter-eureka-server/pom.xml | 2 +- spring-cloud-starter-eureka/pom.xml | 2 +- spring-cloud-starter-feign/pom.xml | 2 +- spring-cloud-starter-hystrix-dashboard/pom.xml | 2 +- spring-cloud-starter-hystrix/pom.xml | 2 +- spring-cloud-starter-netflix/pom.xml | 2 +- .../spring-cloud-starter-netflix-archaius/pom.xml | 2 +- .../spring-cloud-starter-netflix-atlas/pom.xml | 2 +- .../spring-cloud-starter-netflix-eureka-client/pom.xml | 2 +- .../spring-cloud-starter-netflix-eureka-server/pom.xml | 2 +- .../pom.xml | 2 +- .../spring-cloud-starter-netflix-hystrix/pom.xml | 2 +- .../spring-cloud-starter-netflix-ribbon/pom.xml | 2 +- .../spring-cloud-starter-netflix-spectator/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine-amqp/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine-stream/pom.xml | 2 +- .../spring-cloud-starter-netflix-turbine/pom.xml | 2 +- .../spring-cloud-starter-netflix-zuul/pom.xml | 2 +- .../spring-cloud-starter-openfeign/pom.xml | 2 +- spring-cloud-starter-ribbon/pom.xml | 2 +- spring-cloud-starter-spectator/pom.xml | 2 +- spring-cloud-starter-turbine-amqp/pom.xml | 2 +- spring-cloud-starter-turbine-stream/pom.xml | 2 +- spring-cloud-starter-turbine/pom.xml | 2 +- spring-cloud-starter-zuul/pom.xml | 2 +- 41 files changed, 46 insertions(+), 46 deletions(-) diff --git a/docs/pom.xml b/docs/pom.xml index 98dd827fe..9691d4c34 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-netflix-docs pom diff --git a/pom.xml b/pom.xml index 06f1d7178..3fef8412d 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT pom Spring Cloud Netflix Spring Cloud Netflix @@ -24,9 +24,9 @@ ${basedir} 4.0.27.Final 2.7.3 - 1.3.0.RC1 - 1.4.0.RC1 - Ditmars.RELEASE + 1.3.0.BUILD-SNAPSHOT + 1.4.0.BUILD-SNAPSHOT + Ditmars.BUILD-SNAPSHOT 1.1.2.RELEASE diff --git a/spring-cloud-netflix-core/pom.xml b/spring-cloud-netflix-core/pom.xml index f43432ce3..f6c95ea2a 100644 --- a/spring-cloud-netflix-core/pom.xml +++ b/spring-cloud-netflix-core/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-core diff --git a/spring-cloud-netflix-dependencies/pom.xml b/spring-cloud-netflix-dependencies/pom.xml index e84690fbb..d136670fb 100644 --- a/spring-cloud-netflix-dependencies/pom.xml +++ b/spring-cloud-netflix-dependencies/pom.xml @@ -5,11 +5,11 @@ spring-cloud-dependencies-parent org.springframework.cloud - 1.3.5.RELEASE + 1.3.5.BUILD-SNAPSHOT spring-cloud-netflix-dependencies - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT pom spring-cloud-netflix-dependencies Spring Cloud Netflix Dependencies diff --git a/spring-cloud-netflix-eureka-client/pom.xml b/spring-cloud-netflix-eureka-client/pom.xml index 16988a266..bd93e3ab9 100644 --- a/spring-cloud-netflix-eureka-client/pom.xml +++ b/spring-cloud-netflix-eureka-client/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-eureka-client diff --git a/spring-cloud-netflix-eureka-server/pom.xml b/spring-cloud-netflix-eureka-server/pom.xml index 861cf0b86..3e34f9c7e 100644 --- a/spring-cloud-netflix-eureka-server/pom.xml +++ b/spring-cloud-netflix-eureka-server/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-eureka-server diff --git a/spring-cloud-netflix-hystrix-amqp/pom.xml b/spring-cloud-netflix-hystrix-amqp/pom.xml index 8e0d8d86c..c85428e72 100644 --- a/spring-cloud-netflix-hystrix-amqp/pom.xml +++ b/spring-cloud-netflix-hystrix-amqp/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-hystrix-amqp diff --git a/spring-cloud-netflix-hystrix-contract/pom.xml b/spring-cloud-netflix-hystrix-contract/pom.xml index c5896045a..0f743e4ab 100644 --- a/spring-cloud-netflix-hystrix-contract/pom.xml +++ b/spring-cloud-netflix-hystrix-contract/pom.xml @@ -5,11 +5,11 @@ org.springframework.cloud spring-cloud-build - 1.3.5.RELEASE + 1.3.3.RELEASE spring-cloud-netflix-hystrix-contract - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT jar spring-cloud-netflix-hystrix-contract Spring Cloud Netflix Hystrix Contract diff --git a/spring-cloud-netflix-hystrix-dashboard/pom.xml b/spring-cloud-netflix-hystrix-dashboard/pom.xml index 6573bd626..e100a85ec 100644 --- a/spring-cloud-netflix-hystrix-dashboard/pom.xml +++ b/spring-cloud-netflix-hystrix-dashboard/pom.xml @@ -8,7 +8,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. diff --git a/spring-cloud-netflix-hystrix-stream/pom.xml b/spring-cloud-netflix-hystrix-stream/pom.xml index 3a4e65115..4bc1e8f3b 100644 --- a/spring-cloud-netflix-hystrix-stream/pom.xml +++ b/spring-cloud-netflix-hystrix-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-hystrix-stream diff --git a/spring-cloud-netflix-sidecar/pom.xml b/spring-cloud-netflix-sidecar/pom.xml index 54ae68ce5..6958eec0f 100644 --- a/spring-cloud-netflix-sidecar/pom.xml +++ b/spring-cloud-netflix-sidecar/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-sidecar diff --git a/spring-cloud-netflix-spectator/pom.xml b/spring-cloud-netflix-spectator/pom.xml index c86d6d658..da2791d92 100644 --- a/spring-cloud-netflix-spectator/pom.xml +++ b/spring-cloud-netflix-spectator/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-spectator diff --git a/spring-cloud-netflix-turbine-stream/pom.xml b/spring-cloud-netflix-turbine-stream/pom.xml index 8d6ee745c..01f3e0c64 100644 --- a/spring-cloud-netflix-turbine-stream/pom.xml +++ b/spring-cloud-netflix-turbine-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-turbine-stream diff --git a/spring-cloud-netflix-turbine/pom.xml b/spring-cloud-netflix-turbine/pom.xml index 2f973f7cb..e651d6d40 100644 --- a/spring-cloud-netflix-turbine/pom.xml +++ b/spring-cloud-netflix-turbine/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-netflix-turbine diff --git a/spring-cloud-starter-archaius/pom.xml b/spring-cloud-starter-archaius/pom.xml index f92d13a8c..d54193a6a 100644 --- a/spring-cloud-starter-archaius/pom.xml +++ b/spring-cloud-starter-archaius/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-archaius diff --git a/spring-cloud-starter-atlas/pom.xml b/spring-cloud-starter-atlas/pom.xml index 4cade870d..31816567e 100644 --- a/spring-cloud-starter-atlas/pom.xml +++ b/spring-cloud-starter-atlas/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-atlas diff --git a/spring-cloud-starter-eureka-server/pom.xml b/spring-cloud-starter-eureka-server/pom.xml index f16c30ac0..4b0e7d880 100644 --- a/spring-cloud-starter-eureka-server/pom.xml +++ b/spring-cloud-starter-eureka-server/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-eureka-server diff --git a/spring-cloud-starter-eureka/pom.xml b/spring-cloud-starter-eureka/pom.xml index caf4eadc4..8f90dfeb3 100644 --- a/spring-cloud-starter-eureka/pom.xml +++ b/spring-cloud-starter-eureka/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-eureka diff --git a/spring-cloud-starter-feign/pom.xml b/spring-cloud-starter-feign/pom.xml index eb10d0c0d..c18030c6b 100644 --- a/spring-cloud-starter-feign/pom.xml +++ b/spring-cloud-starter-feign/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-feign diff --git a/spring-cloud-starter-hystrix-dashboard/pom.xml b/spring-cloud-starter-hystrix-dashboard/pom.xml index ab6de6553..66799065d 100644 --- a/spring-cloud-starter-hystrix-dashboard/pom.xml +++ b/spring-cloud-starter-hystrix-dashboard/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-hystrix-dashboard diff --git a/spring-cloud-starter-hystrix/pom.xml b/spring-cloud-starter-hystrix/pom.xml index e033492aa..6119e439a 100644 --- a/spring-cloud-starter-hystrix/pom.xml +++ b/spring-cloud-starter-hystrix/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-hystrix diff --git a/spring-cloud-starter-netflix/pom.xml b/spring-cloud-starter-netflix/pom.xml index 7bd9a76f3..222430923 100644 --- a/spring-cloud-starter-netflix/pom.xml +++ b/spring-cloud-starter-netflix/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-netflix diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml index c8f24830a..f8c9e399e 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-archaius/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-archaius Spring Cloud Starter Netflix Archaius diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml index 1e11d61cc..4e8b8b9cb 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-atlas/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-atlas Spring Cloud Starter Netflix Atlas diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml index 4b50cc875..7e2a15b78 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-client/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-eureka-client Spring Cloud Starter Netflix Eureka Client diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml index 7c03f456d..267254e21 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-eureka-server/pom.xml @@ -3,7 +3,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-eureka-server Spring Cloud Starter Netflix Eureka Server diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml index 4c417437d..658584aa8 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix-dashboard/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-hystrix-dashboard Spring Cloud Starter Netflix Hystrix Dashboard diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml index 37fc818f8..de2e7bd64 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-hystrix/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-hystrix Spring Cloud Starter Netflix Hystrix diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml index d3faedefa..73949fbc3 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-ribbon/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-ribbon Spring Cloud Starter Netflix Ribbon diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml index b156c817f..d7218ea03 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-spectator/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-spectator Spring Cloud Starter Netflix Spectator diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml index c469f1ca9..509171a5a 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-amqp/pom.xml @@ -3,7 +3,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-turbine-amqp Spring Cloud Starter Netflix Turbine AMQP diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml index 6a79a70c3..6d0536f45 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine-stream/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-turbine-stream Spring Cloud Starter Netflix Turbine Stream diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml index 11a2d37ba..0b930c899 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-turbine/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-turbine Spring Cloud Starter Netflix Turbine diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml index 5f6774882..b894180fe 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-netflix-zuul/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-netflix-zuul Spring Cloud Starter Netflix Zuul diff --git a/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml b/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml index 07ef3baf2..e15ef0090 100644 --- a/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml +++ b/spring-cloud-starter-netflix/spring-cloud-starter-openfeign/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-starter-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT spring-cloud-starter-openfeign Spring Cloud Starter OpenFeign diff --git a/spring-cloud-starter-ribbon/pom.xml b/spring-cloud-starter-ribbon/pom.xml index ad9900580..5a1fd0a99 100644 --- a/spring-cloud-starter-ribbon/pom.xml +++ b/spring-cloud-starter-ribbon/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-ribbon diff --git a/spring-cloud-starter-spectator/pom.xml b/spring-cloud-starter-spectator/pom.xml index bd5abee10..f62aa00a8 100644 --- a/spring-cloud-starter-spectator/pom.xml +++ b/spring-cloud-starter-spectator/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-spectator diff --git a/spring-cloud-starter-turbine-amqp/pom.xml b/spring-cloud-starter-turbine-amqp/pom.xml index 8c7d142a7..1f29a3a94 100644 --- a/spring-cloud-starter-turbine-amqp/pom.xml +++ b/spring-cloud-starter-turbine-amqp/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-turbine-amqp diff --git a/spring-cloud-starter-turbine-stream/pom.xml b/spring-cloud-starter-turbine-stream/pom.xml index 82995d54a..b5feee434 100644 --- a/spring-cloud-starter-turbine-stream/pom.xml +++ b/spring-cloud-starter-turbine-stream/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-turbine-stream diff --git a/spring-cloud-starter-turbine/pom.xml b/spring-cloud-starter-turbine/pom.xml index b6bdf49f2..a0c666c3f 100644 --- a/spring-cloud-starter-turbine/pom.xml +++ b/spring-cloud-starter-turbine/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-turbine diff --git a/spring-cloud-starter-zuul/pom.xml b/spring-cloud-starter-zuul/pom.xml index 57a750b9d..aaeea73a1 100644 --- a/spring-cloud-starter-zuul/pom.xml +++ b/spring-cloud-starter-zuul/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-netflix - 1.4.0.RC1 + 1.4.0.BUILD-SNAPSHOT .. spring-cloud-starter-zuul