Rely on spring-cloud-deployer autoconfig
- Deployer core/local uses 2.0.0.BUILD-SNAPSHOT - Use pring-cloud-deployer-dependencies bom - Remove ResourceLoadingAutoConfiguration as that is now in deployer itself with a way to configure loaders. - spring-cloud-task-core now depends on spring-cloud-deployer-autoconfigure. - Rest of deployer modules like support/maven are still defined in deps as those are optional in spring-cloud-deployer-autoconfigure.
This commit is contained in:
22
pom.xml
22
pom.xml
@@ -63,8 +63,10 @@
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-deployer-spi</artifactId>
|
||||
<version>${spring-cloud-deployer-spi.version}</version>
|
||||
<artifactId>spring-cloud-deployer-dependencies</artifactId>
|
||||
<version>${spring-cloud-deployer.version}</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
@@ -72,11 +74,6 @@
|
||||
<version>${spring-cloud-deployer-local.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-deployer-resource-support</artifactId>
|
||||
<version>${spring-cloud-deployer-resource-support.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.batch</groupId>
|
||||
<artifactId>spring-batch-core</artifactId>
|
||||
@@ -92,11 +89,6 @@
|
||||
<artifactId>spring-batch-integration</artifactId>
|
||||
<version>${spring-batch.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-deployer-resource-maven</artifactId>
|
||||
<version>${spring-cloud-deployer-resource-maven.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-stream-test-support-internal</artifactId>
|
||||
@@ -133,11 +125,9 @@
|
||||
|
||||
<properties>
|
||||
<spring-cloud-stream.version>2.1.0.RC1</spring-cloud-stream.version>
|
||||
<spring-cloud-deployer-spi.version>1.3.4.RELEASE</spring-cloud-deployer-spi.version>
|
||||
<spring-cloud-deployer-local.version>1.3.9.RELEASE</spring-cloud-deployer-local.version>
|
||||
<spring-cloud-deployer-local.version>2.0.0.BUILD-SNAPSHOT</spring-cloud-deployer-local.version>
|
||||
<spring-cloud-stream-binder-rabbit.version>2.1.0.RC1</spring-cloud-stream-binder-rabbit.version>
|
||||
<spring-cloud-deployer-resource-support.version>1.3.4.RELEASE</spring-cloud-deployer-resource-support.version>
|
||||
<spring-cloud-deployer-resource-maven.version>1.3.4.RELEASE</spring-cloud-deployer-resource-maven.version>
|
||||
<spring-cloud-deployer.version>2.0.0.BUILD-SNAPSHOT</spring-cloud-deployer.version>
|
||||
<spring-batch.version>4.1.0.RELEASE</spring-batch.version>
|
||||
<commons-logging.version>1.1</commons-logging.version>
|
||||
<java-ee-api.version>8.0</java-ee-api.version>
|
||||
|
||||
@@ -19,6 +19,10 @@
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-autoconfigure</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-deployer-autoconfigure</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-deployer-resource-support</artifactId>
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* Copyright 2016 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.task.configuration;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.cloud.deployer.resource.maven.MavenProperties;
|
||||
import org.springframework.cloud.deployer.resource.maven.MavenResourceLoader;
|
||||
import org.springframework.cloud.deployer.resource.support.DelegatingResourceLoader;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.io.ResourceLoader;
|
||||
|
||||
/**
|
||||
* Autoconfiguration of a file or Maven based {@link ResourceLoader}.
|
||||
*
|
||||
* @author Michael Minella
|
||||
* @since 1.0.1
|
||||
*/
|
||||
@Configuration
|
||||
public class ResourceLoadingAutoConfiguration {
|
||||
|
||||
@Configuration
|
||||
@ConditionalOnClass(MavenResourceLoader.class)
|
||||
public static class MavenResourceLoadingAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
public MavenResourceLoader mavenResourceLoader(MavenProperties mavenProperties) {
|
||||
return new MavenResourceLoader(mavenProperties);
|
||||
}
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean
|
||||
public DelegatingResourceLoader delegatingResourceLoader(MavenResourceLoader mavenResourceLoader) {
|
||||
Map<String, ResourceLoader> loaders = new HashMap<>(1);
|
||||
loaders.put("maven", mavenResourceLoader);
|
||||
|
||||
return new DelegatingResourceLoader(loaders);
|
||||
}
|
||||
|
||||
@Bean
|
||||
public MavenProperties mavenProperties() {
|
||||
return new MavenConfigurationProperties();
|
||||
}
|
||||
|
||||
@ConfigurationProperties(prefix = "maven")
|
||||
public static class MavenConfigurationProperties extends MavenProperties {}
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ConditionalOnMissingClass("org.springframework.cloud.deployer.resource.maven.MavenResourceLoader")
|
||||
public static class LocalResourceLoadingAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean
|
||||
public DelegatingResourceLoader delegatingResourceLoader() {
|
||||
return new DelegatingResourceLoader();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,3 @@
|
||||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=org.springframework.cloud.task.configuration.SingleTaskConfiguration,\
|
||||
org.springframework.cloud.task.configuration.ResourceLoadingAutoConfiguration,\
|
||||
org.springframework.cloud.task.configuration.SimpleTaskAutoConfiguration\
|
||||
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
/*
|
||||
* Copyright 2016 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.task.configuration;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.cloud.deployer.resource.maven.MavenProperties;
|
||||
import org.springframework.cloud.deployer.resource.maven.MavenResourceLoader;
|
||||
import org.springframework.cloud.deployer.resource.support.DelegatingResourceLoader;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
/**
|
||||
* @author Glenn Renfro
|
||||
*/
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(classes = {ResourceLoadingAutoConfiguration.class})
|
||||
public class ResourceLoadingAutoConfigurationTests {
|
||||
|
||||
@Autowired
|
||||
ApplicationContext context;
|
||||
|
||||
@Test
|
||||
public void testTaskLauncher() {
|
||||
MavenResourceLoader mavenResourceLoader =
|
||||
context.getBean(MavenResourceLoader.class);
|
||||
assertNotNull(mavenResourceLoader);
|
||||
|
||||
DelegatingResourceLoader delegatingResourceLoader =
|
||||
context.getBean(DelegatingResourceLoader.class);
|
||||
assertNotNull(delegatingResourceLoader);
|
||||
|
||||
MavenProperties mavenProperties =
|
||||
context.getBean(MavenProperties.class);
|
||||
assertNotNull(mavenProperties);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user