forked from datahub-project/datahub
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
121 lines (106 loc) · 4.29 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
apply plugin: 'java'
apply plugin: 'org.hidetake.swagger.generator'
configurations {
enhance
}
dependencies {
implementation externalDependency.jsonPatch
compile project(':entity-registry')
compile project(':metadata-utils')
compile project(':metadata-events:mxe-avro-1.7')
compile project(':metadata-events:mxe-registration')
compile project(':metadata-events:mxe-utils-avro-1.7')
compile project(path: ':metadata-models')
compile project(':metadata-service:restli-client')
compile spec.product.pegasus.data
compile spec.product.pegasus.generator
compile externalDependency.dgraph4j exclude group: 'com.google.guava', module: 'guava'
implementation externalDependency.slf4jApi
runtime externalDependency.logbackClassic
compileOnly externalDependency.lombok
implementation externalDependency.commonsCollections
compile externalDependency.datastaxOssNativeProtocol
compile externalDependency.datastaxOssCore
compile externalDependency.datastaxOssQueryBuilder
compile externalDependency.elasticSearchRest
compile externalDependency.elasticSearchTransport
compile externalDependency.javatuples
compile externalDependency.javaxValidation
runtimeOnly externalDependency.jna
compile externalDependency.kafkaClients
compile externalDependency.ebean
enhance externalDependency.ebeanAgent
compile externalDependency.opentelemetryAnnotations
compile externalDependency.resilience4j
compile externalDependency.springContext
compile externalDependency.swaggerAnnotations
swaggerCodegen 'io.swagger.codegen.v3:swagger-codegen-cli:3.0.33'
compile externalDependency.mixpanel
annotationProcessor externalDependency.lombok
testCompile externalDependency.testng
testCompile externalDependency.h2
testCompile externalDependency.mysqlConnector
testCompile externalDependency.neo4jHarness
testCompile externalDependency.mockito
testCompile externalDependency.mockitoInline
testCompile externalDependency.iStackCommons
testCompile externalDependency.resilience4j
testCompile externalDependency.testContainers
testCompile externalDependency.testContainersJunit
testCompile externalDependency.testContainersElasticsearch
testCompile externalDependency.testContainersCassandra
testCompile externalDependency.lombok
testCompile project(':test-models')
testImplementation externalDependency.springBootTest
testAnnotationProcessor externalDependency.lombok
constraints {
implementation(externalDependency.log4jCore) {
because("previous versions are vulnerable to CVE-2021-45105")
}
implementation(externalDependency.log4jApi) {
because("previous versions are vulnerable to CVE-2021-45105")
}
implementation(externalDependency.commonsText) {
because("previous versions are vulnerable to CVE-2022-42889")
}
}
}
test {
// https://docs.gradle.org/current/userguide/performance.html
maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
testLogging.showStandardStreams = true
testLogging.exceptionFormat = 'full'
}
tasks.withType(Test) {
enableAssertions = false
}
project.compileJava {
doLast {
ant.taskdef(name: 'ebean', classname: 'io.ebean.enhance.ant.AntEnhanceTask',
classpath: project.configurations.enhance.asPath)
ant.ebean(classSource: "${project.buildDir}/classes/java/main", packages: 'com.linkedin.metadata.entity.ebean',
transformArgs: 'debug=1')
}
}
tasks.register('generateOpenApiPojos', GenerateSwaggerCode) {
it.setInputFile(
file(
"${project(':metadata-models').projectDir}/src/generatedJsonSchema/combined/open-api.yaml"
)
)
it.setOutputDir(file("$projectDir/generated"))
it.setLanguage("spring")
it.setComponents(['models'])
it.setTemplateDir(file("$projectDir/src/main/resources/JavaSpring"))
it.setAdditionalProperties([
"group-id" : "io.datahubproject",
"dateLibrary" : "java8",
"java11" : "true",
"modelPropertyNaming" : "original",
"modelPackage" : "io.datahubproject.openapi.generated"] as Map<String, String>)
dependsOn ':metadata-models:generateJsonSchema'
}
compileJava.dependsOn generateOpenApiPojos
sourceSets.main.java.srcDir "${generateOpenApiPojos.outputDir}/src/main/java"
sourceSets.main.resources.srcDir "${generateOpenApiPojos.outputDir}/src/main/resources"
checkstyleMain.exclude '**/generated/**'