apply plugin: 'java' apply plugin: 'pegasus' sourceSets { integTest { compileClasspath += sourceSets.main.output runtimeClasspath += sourceSets.main.output } } idea { module { testSourceDirs += file('src/integTest/java') scopes.TEST.plus += [ configurations.integTestCompile ] } } configurations { integTestImplementation.extendsFrom implementation integTestRuntimeOnly.extendsFrom runtimeOnly modelValidation } dependencies { compile project(':gms:api') compile project(path: ':gms:api', configuration: 'dataTemplate') compile project(':li-utils') compile project(':metadata-models') compile project(':metadata-testing:metadata-test-utils') compile project(':metadata-utils') compile project(':metadata-io') compile spec.product.pegasus.restliServer compile externalDependency.gmaDaoApi compile externalDependency.gmaDaoApiDataTemplate compile externalDependency.gmaEbeanDao compile externalDependency.gmaElasticsearchDao compile externalDependency.gmaNeo4jDao compile externalDependency.gmaRestliResources compile externalDependency.gmaRestliResourcesDataTemplate compile externalDependency.neo4jJavaDriver compileOnly externalDependency.lombok testCompile externalDependency.parseqTest testCompile externalDependency.mockito testCompile externalDependency.testng integTestImplementation externalDependency.junitJupiterApi integTestRuntimeOnly externalDependency.junitJupiterEngine integTestCompile externalDependency.gmaElasticsearchIntegTest integTestCompile externalDependency.junitJupiterApi integTestCompile 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 } 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 // Generate IDLs pegasus.main.idlOptions.addIdlItem([ 'com.linkedin.metadata.resources', ]) ext.apiProject = project(':gms:api')