-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathbuild.gradle
126 lines (95 loc) · 3.7 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
import groovy.json.JsonSlurper
buildscript {
ext.kotlinVersion = '1.1.2'
ext.shadowVersion = '1.2.4'
repositories {
jcenter()
}
dependencies {
classpath group: 'com.github.jengelman.gradle.plugins', name: 'shadow', version: shadowVersion
classpath group: 'org.jetbrains.kotlin', name: 'kotlin-gradle-plugin', version: kotlinVersion
}
}
apply plugin: 'kotlin'
apply plugin: 'application'
apply plugin: 'com.github.johnrengelman.shadow'
if (!JavaVersion.current().java8Compatible) {
throw new IllegalArgumentException('''A Haiku:
| This needs Java 8,
| You are using something else,
| Upgrade. Try again.'''.stripMargin())
}
group = 'io.datawire.loom'
version = new BuildInfo().resolveVersion()
mainClassName = "io.datawire.loom.RunnerKt"
ext {
awsSdkVersion = '1.11.105'
jacksonVersion = '2.9.0.pr2'
junitVersion = '4.12'
logbackVersion = '1.1.7'
vertxVersion = '3.4.1'
}
apply plugin: 'kotlin'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
jcenter()
mavenLocal()
}
dependencies {
compile group: 'ch.qos.logback', name: 'logback-classic', version: logbackVersion
compile group: 'org.slf4j', name: 'jcl-over-slf4j', version: '1.7.24'
compile group: 'com.amazonaws', name: 'aws-java-sdk-core', version: awsSdkVersion
compile group: 'com.amazonaws', name: 'aws-java-sdk-s3', version: awsSdkVersion
compile group: 'com.amazonaws', name: 'aws-java-sdk-dynamodb', version: awsSdkVersion
compile group: 'com.amazonaws', name: 'aws-java-sdk-iam', version: awsSdkVersion
compile group: 'javax.el', name: 'javax.el-api', version: '2.2.4'
compile group: 'org.glassfish.web', name: 'el-impl', version: '2.2'
compile group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: jacksonVersion
compile group: 'com.fasterxml.jackson.module', name: 'jackson-module-kotlin', version: jacksonVersion
compile group: 'com.fasterxml.jackson.module', name: 'jackson-module-parameter-names', version: jacksonVersion
compile group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jdk8', version: jacksonVersion
compile group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: jacksonVersion
compile group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-yaml', version: jacksonVersion
compile group: 'io.fabric8', name: 'kubernetes-client', version: '2.1.2'
compile group: 'com.sparkjava', name: 'spark-core', version: '2.5.5'
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.5'
compile group: 'org.hibernate', name: 'hibernate-validator', version: '5.4.0.Final'
compile group: 'org.jetbrains.kotlin', name: 'kotlin-stdlib', version: kotlinVersion
compile group: 'org.jetbrains.kotlin', name: 'kotlin-reflect', version: kotlinVersion
compile group: 'org.zeroturnaround', name: 'zt-exec', version: '1.9'
testCompile group: 'org.assertj', name: 'assertj-core', version: '3.6.2'
testCompile group: 'junit', name: 'junit', version: junitVersion
}
tasks.withType(Tar) {
compression = Compression.GZIP
}
task version() {
println(this.version)
}
task wrapper(type: Wrapper) {
gradleVersion = '3.5'
}
kotlin {
experimental {
coroutines 'enable'
}
}
compileKotlin {
kotlinOptions {
jvmTarget = '1.8'
}
}
shadowJar {
classifier = 'fat'
manifest {
attributes 'Main-Class': mainClassName
}
}
applicationDistribution.from(projectDir) {
include 'LICENSE'
include 'NOTICE'
include 'README.md'
include 'config/'
into ''
}