2023-12-15 13:28:33 -06:00
|
|
|
plugins {
|
|
|
|
id 'java'
|
2024-03-01 16:31:21 +01:00
|
|
|
id 'org.hidetake.swagger.generator'
|
2023-12-15 13:28:33 -06:00
|
|
|
}
|
2022-02-24 19:40:55 -08:00
|
|
|
|
|
|
|
dependencies {
|
|
|
|
|
2023-09-01 09:06:01 -05:00
|
|
|
implementation project(':metadata-auth:auth-api')
|
|
|
|
implementation project(':metadata-service:auth-impl')
|
|
|
|
implementation project(':metadata-service:factories')
|
|
|
|
implementation project(':metadata-service:schema-registry-api')
|
2022-02-24 19:40:55 -08:00
|
|
|
|
2023-09-01 09:06:01 -05:00
|
|
|
implementation externalDependency.reflections
|
|
|
|
implementation externalDependency.springBoot
|
|
|
|
implementation externalDependency.springCore
|
|
|
|
implementation(externalDependency.springDocUI) {
|
2023-05-01 13:18:41 -05:00
|
|
|
exclude group: 'org.springframework.boot'
|
|
|
|
}
|
2023-09-01 09:06:01 -05:00
|
|
|
implementation externalDependency.springWeb
|
|
|
|
implementation externalDependency.springWebMVC
|
|
|
|
implementation externalDependency.springBeans
|
|
|
|
implementation externalDependency.springContext
|
2022-12-04 21:57:47 -06:00
|
|
|
implementation externalDependency.slf4jApi
|
|
|
|
compileOnly externalDependency.lombok
|
|
|
|
implementation externalDependency.antlr4Runtime
|
|
|
|
implementation externalDependency.antlr4
|
2023-09-01 09:06:01 -05:00
|
|
|
implementation externalDependency.swaggerAnnotations
|
2022-02-24 19:40:55 -08:00
|
|
|
|
|
|
|
annotationProcessor externalDependency.lombok
|
2022-05-03 19:38:05 -05:00
|
|
|
|
2023-05-01 13:18:41 -05:00
|
|
|
testImplementation externalDependency.springBootTest
|
2023-06-30 15:56:12 -05:00
|
|
|
testImplementation project(':mock-entity-registry')
|
2023-09-01 09:06:01 -05:00
|
|
|
testImplementation externalDependency.springBoot
|
|
|
|
testImplementation externalDependency.testContainers
|
|
|
|
testImplementation externalDependency.springKafka
|
|
|
|
testImplementation externalDependency.testng
|
|
|
|
testImplementation externalDependency.mockito
|
|
|
|
testImplementation externalDependency.logbackClassic
|
|
|
|
testImplementation externalDependency.jacksonCore
|
|
|
|
testImplementation externalDependency.jacksonDataBind
|
|
|
|
testImplementation externalDependency.springBootStarterWeb
|
2024-03-01 16:31:21 +01:00
|
|
|
|
|
|
|
// Openlineage Specific Dependencies
|
|
|
|
implementation "io.openlineage:openlineage-java:$openLineageVersion"
|
|
|
|
implementation project(':metadata-integration:java:openlineage-converter')
|
|
|
|
implementation project(':metadata-integration:java:datahub-event')
|
|
|
|
swaggerCodegen externalDependency.swaggerCli
|
|
|
|
}
|
|
|
|
|
|
|
|
sourceSets {
|
|
|
|
main {
|
|
|
|
java {
|
|
|
|
srcDirs = ["$buildDir/openapi/generated/src/main/java", 'src/main/java']
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// https://github.com/int128/gradle-swagger-generator-plugin#task-type-generateswaggercode
|
|
|
|
task openApiGenerate(type: GenerateSwaggerCode) {
|
|
|
|
inputFile = file("$projectDir/src/main/resources/openlineage/openlineage.json")
|
|
|
|
outputDir = file("$buildDir/openapi/generated")
|
|
|
|
language = "spring"
|
|
|
|
components = ["apis"]
|
|
|
|
additionalProperties = [
|
|
|
|
'group-id' : "io.datahubproject",
|
|
|
|
'dateLibrary' : "java8",
|
|
|
|
'java11' : "true",
|
|
|
|
'interfaceOnly' : 'true',
|
|
|
|
'modelPropertyNaming': "original",
|
|
|
|
'modelPackage' : "io.datahubproject.openlineage.model",
|
|
|
|
'apiPackage' : "io.datahubproject.openlineage.generated.controller",
|
|
|
|
'delegatePattern' : "true"
|
|
|
|
]
|
|
|
|
}
|
|
|
|
tasks.getByName("compileJava").dependsOn(openApiGenerate)
|