mirror of
https://github.com/datahub-project/datahub.git
synced 2025-07-24 18:10:11 +00:00
122 lines
4.3 KiB
Groovy
122 lines
4.3 KiB
Groovy
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/**'
|