diff --git a/build-resources.gradle b/build-resources.gradle index 7ae715ffef..f9d1dc578c 100644 --- a/build-resources.gradle +++ b/build-resources.gradle @@ -11,5 +11,10 @@ ext.versionMap = [ opensearchVersion : '1.1.0' ] -ext.coreProjects = [project(':data-prepper-api'), project(':data-prepper-core'), project('data-prepper-plugins:common')] +ext.coreProjects = [ + project(':data-prepper-api'), + project(':data-prepper-core'), + project('data-prepper-plugins:common'), + project(':data-prepper-logstash-configuration') +] ext.mavenArtifactProjects = [project(':data-prepper-api')] diff --git a/data-prepper-logstash-configuration/build.gradle b/data-prepper-logstash-configuration/build.gradle index 524afac26a..ccf0de9af0 100644 --- a/data-prepper-logstash-configuration/build.gradle +++ b/data-prepper-logstash-configuration/build.gradle @@ -8,6 +8,10 @@ plugins { id 'idea' } +ext { + antlrGeneratedPackageDirectory = "org/opensearch/dataprepper/logstash/" +} + dependencies { antlr 'org.antlr:antlr4:4.9.2' implementation project(':data-prepper-api') @@ -23,7 +27,23 @@ dependencies { generateGrammarSource { maxHeapSize = '128m' arguments += ['-listener', '-visitor'] - outputDirectory = new File('build/generated-src/antlr/main/org/opensearch/dataprepper/logstash/') + outputDirectory = new File("build/generated-src/antlr/main/${antlrGeneratedPackageDirectory}") } compileJava.dependsOn generateGrammarSource + +jacocoTestCoverageVerification { + dependsOn jacocoTestReport + violationRules { + rule { //in addition to core projects rule - this one checks for 100% code coverage for this project + limit { + minimum = 1.0 //keep this at 100% + } + } + } + afterEvaluate { + classDirectories.setFrom(files(classDirectories.files.collect { + fileTree(dir: it, exclude: ["${antlrGeneratedPackageDirectory}/**"]) + })) + } +}