/
build.gradle
137 lines (115 loc) · 4.19 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
127
128
129
130
131
132
133
134
135
136
137
group 'com.lykke.me'
version '0.1'
buildscript {
ext.spring_boot_version = '2.0.6.RELEASE'
ext.kotlin_version = '1.2.10'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.1'
classpath "org.springframework.boot:spring-boot-gradle-plugin:$spring_boot_version"
classpath "org.jetbrains.kotlin:kotlin-allopen:$kotlin_version"
}
}
apply plugin: "idea"
apply plugin: "kotlin"
apply plugin: "kotlin-spring"
apply plugin: "application"
apply plugin: "com.google.protobuf"
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
compileKotlin.dependsOn ':generateProto'
repositories {
mavenCentral()
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
}
ext {
kotlin_utils_version = '0.0.14-SNAPSHOT'
me_outgoing_contract_version = '1.0.0-SNAPSHOT'
protobuf_version = '3.6.0'
azure_storage_version = '4.0.0'
gson_version = '2.6.2'
module_kotlin_jackson_version = '2.9.6'
http_client_version = '4.5.2'
rabbit_mq_version = '5.3.0'
fst_version = '2.52'
junit_version = '4.12'
mockito_kotlin_version = '1.5.0'
jedis_version = '2.9.0'
big_math_version = '2.0.0'
lmax_disruptor_version = '3.4.2'
springfox_swagger2 = "2.9.2"
springfox_swagger_ui = "2.9.2"
}
dependencies {
// internal libs
compile "org.bitbucket.lykke:kotlin-utils:$kotlin_utils_version"
compile "org.bitbucket.lykke:me-outgoing-contract:$me_outgoing_contract_version"
// external libs
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
compile "com.google.protobuf:protobuf-java:$protobuf_version"
compile "com.microsoft.azure:azure-storage:$azure_storage_version"
compile "com.google.code.gson:gson:$gson_version"
compile "com.fasterxml.jackson.module:jackson-module-kotlin:$module_kotlin_jackson_version"
compile "org.apache.httpcomponents:httpclient:$http_client_version"
compile "com.rabbitmq:amqp-client:$rabbit_mq_version"
compile "de.ruedigermoeller:fst:$fst_version"
compile "redis.clients:jedis:$jedis_version"
compile "ch.obermuhlner:big-math:$big_math_version"
compile "com.lmax:disruptor:$lmax_disruptor_version"
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-log4j2")
compile "io.springfox:springfox-swagger2:$springfox_swagger2"
compile "io.springfox:springfox-swagger-ui:$springfox_swagger_ui"
testCompile('org.springframework.boot:spring-boot-starter-test')
testCompile "junit:junit:$junit_version"
testCompile "com.nhaarman:mockito-kotlin:$mockito_kotlin_version"
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
}
configurations {
compile.exclude module: 'spring-boot-starter-logging'
}
compileKotlin {
kotlinOptions {
freeCompilerArgs = ["-Xno-param-assertions", "-Xno-call-assertions"]
apiVersion = "1.2"
jvmTarget = "1.8"
}
}
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:$protobuf_version"
}
generateProtoTasks.generatedFilesBaseDir = 'src'
generateProtoTasks {
ofSourceSet('main')
}
}
task printProperties << {
teamcity.each { key, val ->
println "##tc-property name='${key}' value='${val}'"
}
}
bootJar {
if (project.hasProperty('teamcity')) {
manifest {
attributes 'Revision-number': teamcity['build.vcs.number'], 'Build-number': teamcity['build.number'], 'Version': version + '.' + teamcity['build.number']
}
} else {
manifest {
attributes 'Revision-number': 'localBuild', 'Build-number': 'localBuild', 'Version': version + '.000'
}
}
}
bootDistZip {
archiveName "${project.name}-${project.version}.zip"
into("${project.name}-${project.version}.zip") {
from "${rootProject.projectDir}/src/dist"
}
}
mainClassName = "com.lykke.matching.engine.AppStarterKt"
applicationDefaultJvmArgs = ["-Xms512m", "-Xmx1g"]
distTar.enabled = false