mirror of
				https://github.com/datahub-project/datahub.git
				synced 2025-10-31 18:59:23 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			98 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| plugins {
 | |
|   id 'java'
 | |
|   id 'org.hidetake.swagger.generator'
 | |
| }
 | |
| 
 | |
| apply from: '../../gradle/coverage/java-coverage.gradle'
 | |
| 
 | |
| dependencies {
 | |
| 
 | |
|   implementation project(':metadata-auth:auth-api')
 | |
|   implementation project(':metadata-service:auth-impl')
 | |
|   implementation project(':metadata-service:factories')
 | |
|   implementation project(':metadata-service:schema-registry-api')
 | |
|   implementation project (':metadata-service:openapi-servlet:models')
 | |
|   implementation project(':metadata-service:events-service')
 | |
| 
 | |
|   implementation externalDependency.reflections
 | |
|   implementation externalDependency.springBoot
 | |
|   implementation externalDependency.springCore
 | |
|   implementation externalDependency.springBootAutoconfigure
 | |
|   implementation(externalDependency.springDocUI) {
 | |
|     exclude group: 'org.springframework.boot'
 | |
|   }
 | |
|   implementation externalDependency.springWeb
 | |
|   implementation externalDependency.springWebMVC
 | |
|   implementation externalDependency.springBeans
 | |
|   implementation externalDependency.springContext
 | |
|   implementation externalDependency.swaggerCore
 | |
|   implementation externalDependency.servletApi
 | |
|   implementation externalDependency.slf4jApi
 | |
|   compileOnly externalDependency.lombok
 | |
|   implementation externalDependency.antlr4Runtime
 | |
|   implementation externalDependency.antlr4
 | |
|   implementation externalDependency.swaggerAnnotations
 | |
|   implementation externalDependency.guava
 | |
|   implementation('io.acryl:json-schema-avro:0.2.3')
 | |
|   implementation externalDependency.jsonSchemaValidator
 | |
|   implementation group: 'io.github.deblockt', name: 'json-diff', version: '1.1.0'
 | |
| 
 | |
|   annotationProcessor externalDependency.lombok
 | |
| 
 | |
|   implementation externalDependency.opentelemetryApi
 | |
|   implementation externalDependency.opentelemetrySdk
 | |
|   implementation externalDependency.opentelemetrySdkTrace
 | |
|   implementation externalDependency.opentelemetrySdkMetrics
 | |
| 
 | |
|   testImplementation externalDependency.springBootTest
 | |
|   testImplementation project(':mock-entity-registry')
 | |
|   testImplementation testFixtures(project(':metadata-io'))
 | |
|   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
 | |
|   testImplementation externalDependency.swaggerParser
 | |
|   testImplementation 'com.networknt:json-schema-validator:1.5.7'
 | |
| 
 | |
|   // 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
 | |
| 
 | |
|   implementation(externalDependency.mixpanel) {
 | |
|     exclude group: 'org.json', module: 'json'
 | |
|   }
 | |
| }
 | |
| 
 | |
| 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) | 
