Introduce auto-fallback to routing function if more then one function is present and no definition is provided. Add explicit routing sample Add documentation
94 lines
2.5 KiB
Groovy
94 lines
2.5 KiB
Groovy
buildscript {
|
|
ext {
|
|
springBootVersion = '2.2.0.BUILD-SNAPSHOT'
|
|
wrapperVersion = '1.0.17.RELEASE'
|
|
shadowVersion = '5.1.0'
|
|
}
|
|
repositories {
|
|
mavenLocal()
|
|
jcenter()
|
|
mavenCentral()
|
|
maven { url "https://repo.spring.io/snapshot" }
|
|
maven { url "https://repo.spring.io/milestone" }
|
|
}
|
|
dependencies {
|
|
classpath "com.github.jengelman.gradle.plugins:shadow:${shadowVersion}"
|
|
classpath("org.springframework.boot.experimental:spring-boot-thin-gradle-plugin:${wrapperVersion}")
|
|
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
|
|
classpath("io.spring.gradle:dependency-management-plugin:1.0.8.RELEASE")
|
|
}
|
|
}
|
|
|
|
apply plugin: 'java'
|
|
apply plugin: 'maven'
|
|
apply plugin: 'eclipse'
|
|
apply plugin: 'com.github.johnrengelman.shadow'
|
|
apply plugin: 'org.springframework.boot'
|
|
apply plugin: 'org.springframework.boot.experimental.thin-launcher'
|
|
apply plugin: 'io.spring.dependency-management'
|
|
|
|
group = 'io.spring.sample'
|
|
version = '2.0.0.RELEASE'
|
|
sourceCompatibility = 1.8
|
|
targetCompatibility = 1.8
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
maven { url "https://repo.spring.io/snapshot" }
|
|
maven { url "https://repo.spring.io/milestone" }
|
|
}
|
|
|
|
ext {
|
|
springCloudFunctionVersion = "3.0.0.BUILD-SNAPSHOT"
|
|
awsLambdaEventsVersion = "2.0.2"
|
|
awsLambdaCoreVersion = "1.1.0"
|
|
}
|
|
ext['reactor.version'] = "3.1.7.RELEASE"
|
|
|
|
assemble.dependsOn = [shadowJar, thinJar]
|
|
|
|
jar {
|
|
manifest {
|
|
attributes 'Main-Class': 'example.Config'
|
|
}
|
|
}
|
|
|
|
import com.github.jengelman.gradle.plugins.shadow.transformers.*
|
|
|
|
shadowJar {
|
|
classifier = 'aws'
|
|
dependencies {
|
|
exclude(
|
|
dependency("org.springframework.cloud:spring-cloud-function-web:${springCloudFunctionVersion}"))
|
|
}
|
|
// Required for Spring
|
|
mergeServiceFiles()
|
|
append 'META-INF/spring.handlers'
|
|
append 'META-INF/spring.schemas'
|
|
append 'META-INF/spring.tooling'
|
|
transform(PropertiesFileTransformer) {
|
|
paths = ['META-INF/spring.factories']
|
|
mergeStrategy = "append"
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
testCompile.extendsFrom(compileOnly)
|
|
}
|
|
|
|
dependencyManagement {
|
|
imports {
|
|
mavenBom "org.springframework.cloud:spring-cloud-function-dependencies:${springCloudFunctionVersion}"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
compile("org.springframework.cloud:spring-cloud-function-adapter-aws")
|
|
compile("org.springframework.cloud:spring-cloud-starter-function-webflux")
|
|
compile("org.springframework.boot:spring-boot-configuration-processor")
|
|
compileOnly("com.amazonaws:aws-lambda-java-events:${awsLambdaEventsVersion}")
|
|
compileOnly("com.amazonaws:aws-lambda-java-core:${awsLambdaCoreVersion}")
|
|
testCompile('org.springframework.boot:spring-boot-starter-test')
|
|
}
|