114 lines
3.5 KiB
Groovy
Raw Permalink Normal View History

plugins {
id 'java-library'
id 'pegasus'
}
2019-08-31 20:51:14 -07:00
apply from: '../../gradle/coverage/java-coverage.gradle'
sourceSets {
integTest {
compileClasspath += sourceSets.main.output
runtimeClasspath += sourceSets.main.output
}
}
idea {
module {
testSourceDirs += file('src/integTest/java')
scopes.TEST.plus += [ configurations.integTestCompileOnly ]
}
}
configurations {
integTestImplementation.extendsFrom implementation
integTestRuntimeOnly.extendsFrom runtimeOnly
integTestCompileOnly {
extendsFrom compileOnly
canBeResolved = true
}
modelValidation
}
2019-08-31 20:51:14 -07:00
dependencies {
2021-12-10 20:07:55 +02:00
constraints {
implementation(externalDependency.log4jCore) {
because("previous versions are vulnerable to CVE-2021-45105")
2021-12-10 20:07:55 +02:00
}
implementation(externalDependency.log4jApi) {
because("previous versions are vulnerable to CVE-2021-45105")
2021-12-10 20:07:55 +02:00
}
}
implementation project(':metadata-service:restli-api')
implementation project(':metadata-auth:auth-api')
implementation project(path: ':metadata-service:restli-api', configuration: 'dataTemplate')
implementation project(':li-utils')
implementation project(':metadata-models')
implementation project(':metadata-utils')
implementation project(':metadata-io')
implementation spec.product.pegasus.restliServer
implementation externalDependency.slf4jApi
implementation externalDependency.dropwizardMetricsCore
implementation externalDependency.dropwizardMetricsJmx
implementation externalDependency.lombok
implementation externalDependency.neo4jJavaDriver
implementation externalDependency.opentelemetryAnnotations
2019-08-31 20:51:14 -07:00
runtimeOnly externalDependency.logbackClassic
annotationProcessor externalDependency.lombok
2019-08-31 20:51:14 -07:00
testImplementation project(':test-models')
testImplementation project(path: ':test-models', configuration: 'testDataTemplate')
testImplementation project(':mock-entity-registry')
testImplementation externalDependency.mockito
testImplementation externalDependency.mockitoInline
testImplementation externalDependency.testng
integTestImplementation externalDependency.junitJupiterApi
integTestRuntimeOnly externalDependency.junitJupiterEngine
integTestCompileOnly externalDependency.junitJupiterApi
integTestCompileOnly externalDependency.junitJupiterParams
modelValidation project(path: ':metadata-models-validator')
dataModel project(path: ':metadata-models', configuration: 'dataTemplate')
dataModel project(path: ':li-utils', configuration: 'dataTemplate')
}
task integrationTest(type: Test) {
description = 'Runs integration tests.'
group = 'verification'
useJUnitPlatform()
testClassesDirs = sourceSets.integTest.output.classesDirs
classpath = sourceSets.integTest.runtimeClasspath
shouldRunAfter test
2019-08-31 20:51:14 -07:00
}
task validateModels(type: JavaExec) {
main = 'com.linkedin.metadata.model.validation.ModelValidationTask'
args '../../metadata-models/src/main/pegasus/:' + '../../li-utils/src/main/pegasus/:' + configurations.dataModel.asPath, project.getProjectDir().getAbsolutePath() + "/../../metadata-models/src/main/pegasus",
classpath = project.configurations.modelValidation
debugOptions {
enabled = false
port = 5005
}
}
compileJava.dependsOn validateModels
check.dependsOn integrationTest
integrationTest.enabled = false
2019-08-31 20:51:14 -07:00
// Generate IDLs
pegasus.main.idlOptions.addIdlItem([
'com.linkedin.metadata.resources',
2019-08-31 20:51:14 -07:00
])
ext.apiProject = project(':metadata-service:restli-api')
spotlessJava.dependsOn generateTestDataTemplate
spotlessJava.dependsOn generateIntegTestDataTemplate