forked from neowu/core-ng-project
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
124 lines (112 loc) · 4.68 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
apply from: file("${rootDir}/gradle/project.gradle")
subprojects {
group = 'core.framework'
version = '8.0.6'
repositories {
maven {
url 'https://neowu.github.io/maven-repo/'
content {
includeGroupByRegex 'core\\.framework.*' // for elasticsearch modules dependencies
}
}
}
}
def elasticVersion = '8.4.1'
def kafkaVersion = '3.2.1'
def jacksonVersion = '2.13.3'
def junitVersion = '5.9.0'
def mockitoVersion = '4.6.1'
def assertjVersion = '3.23.1'
def mysqlVersion = '8.0.29'
project('core-ng-api') {
apply from: file("${rootDir}/gradle/lib.gradle")
}
project('core-ng') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
api project(':core-ng-api')
api 'org.slf4j:slf4j-api:1.8.0-beta4'
implementation 'org.javassist:javassist:3.29.1-GA'
implementation "com.fasterxml.jackson.module:jackson-module-afterburner:${jacksonVersion}"
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:${jacksonVersion}"
implementation 'com.squareup.okhttp3:okhttp:4.10.0'
implementation 'io.undertow:undertow-core:2.2.19.Final'
implementation "org.apache.kafka:kafka-clients:${kafkaVersion}@jar"
implementation 'org.xerial.snappy:snappy-java:1.1.8.4' // used by kafka message compression
compileOnly "mysql:mysql-connector-java:${mysqlVersion}"
compileOnly 'org.jboss.logging:jboss-logging-annotations:2.2.1.Final'
testImplementation "org.junit.jupiter:junit-jupiter-api:${junitVersion}"
testImplementation "org.mockito:mockito-junit-jupiter:${mockitoVersion}"
testImplementation "org.mockito:mockito-inline:${mockitoVersion}"
testImplementation "org.assertj:assertj-core:${assertjVersion}"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${junitVersion}"
testRuntimeOnly 'org.hsqldb:hsqldb:2.7.0'
}
}
project('core-ng-test') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
api "org.junit.jupiter:junit-jupiter-api:${junitVersion}"
api "org.mockito:mockito-junit-jupiter:${mockitoVersion}"
api "org.mockito:mockito-inline:${mockitoVersion}"
api "org.assertj:assertj-core:${assertjVersion}"
implementation project(":core-ng")
implementation "org.junit.jupiter:junit-jupiter-engine:${junitVersion}"
testRuntimeOnly 'org.hsqldb:hsqldb:2.7.0'
}
}
project('core-ng-mongo') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
api project(":core-ng")
api 'org.mongodb:mongodb-driver-sync:4.7.1'
testImplementation project(":core-ng-test")
}
}
project('core-ng-mongo-test') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
implementation project(':core-ng-test')
implementation project(':core-ng-mongo')
implementation 'de.bwaldvogel:mongo-java-server:1.40.0'
}
}
project('core-ng-search') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
api project(':core-ng')
api "co.elastic.clients:elasticsearch-java:${elasticVersion}"
implementation "com.fasterxml.jackson.core:jackson-databind:${jacksonVersion}"
testImplementation project(':core-ng-test')
}
}
project('core-ng-search-test') {
apply from: file("${rootDir}/gradle/lib.gradle")
dependencies {
implementation project(':core-ng-test')
implementation project(':core-ng-search')
implementation "org.elasticsearch:elasticsearch:${elasticVersion}"
implementation "core.framework.elasticsearch.module:transport-netty4:${elasticVersion}"
implementation "core.framework.elasticsearch.module:mapper-extras:${elasticVersion}" // used by elasticsearch scaled_float
implementation "core.framework.elasticsearch.module:lang-painless:${elasticVersion}"
implementation "core.framework.elasticsearch.module:analysis-common:${elasticVersion}" // used by elasticsearch stemmer
implementation "core.framework.elasticsearch.module:reindex:${elasticVersion}" // used by elasticsearch deleteByQuery
}
}
def mavenURL = hasProperty('mavenURL') ? mavenURL : null // usage: "gradlew -PmavenURL=/path clean publish"
configure(subprojects.findAll { it.name.startsWith('core-ng') }) {
apply plugin: 'maven-publish'
if (mavenURL != null) {
assert project.file(mavenURL).exists()
publishing {
publications {
maven(MavenPublication) {
from components.java
}
}
repositories {
maven { url mavenURL }
}
}
}
}