opentelemetry-java-instrume.../build.gradle

93 lines
2.3 KiB
Groovy

plugins {
id 'idea'
id "com.jfrog.artifactory" version "4.15.2" apply false
id 'com.jfrog.bintray' version '1.8.5' apply false
id "nebula.release" version "15.0.1"
id 'org.unbroken-dome.test-sets' version '3.0.1'
id 'com.github.ben-manes.versions' version '0.27.0'
id 'com.dorongold.task-tree' version '1.5'
id "com.github.johnrengelman.shadow" version "5.2.0"
id "com.diffplug.gradle.spotless" version "4.3.0"
id "com.github.spotbugs" version "4.0.1"
}
release {
defaultVersionStrategy = nebula.plugin.release.git.opinion.Strategies.SNAPSHOT
}
def isCI = System.getenv("CI") != null
allprojects {
group = 'io.opentelemetry.instrumentation.auto'
if (isCI) {
buildDir = "$rootDir/workspace/${projectDir.path.replace(rootDir.path, '')}/build/"
}
apply from: "$rootDir/gradle/dependencies.gradle"
apply from: "$rootDir/gradle/util.gradle"
}
repositories {
mavenLocal()
jcenter()
mavenCentral()
}
description = 'OpenTelemetry instrumentations for Java'
wrapper {
distributionType = Wrapper.DistributionType.ALL
}
allprojects {
apply plugin: 'idea'
idea {
module {
downloadJavadoc = false
downloadSources = false
}
}
tasks.withType(JavaForkOptions).configureEach {
maxHeapSize = System.properties["ota.forkedMaxHeapSize"]
minHeapSize = System.properties["ota.forkedMinHeapSize"]
jvmArgs "-XX:ErrorFile=/tmp/hs_err_pid%p.log"
}
}
// Writes tasks to file allowing us to leverage CircleCI's file based task parallelization
task writeMuzzleTasksToFile {
doLast {
def muzzleFile = file("${buildDir}/muzzleTasks")
assert muzzleFile.parentFile.mkdirs() || muzzleFile.parentFile.directory
muzzleFile.text = subprojects.findAll { subproject -> subproject.plugins.hasPlugin('muzzle') }
.collect { it.path + ":muzzle" }
.join('\n')
}
}
apply plugin: 'com.diffplug.gradle.spotless'
spotless {
// this formatting is applied at the root level, as some of these files are not in a submodules
// and would be missed otherwise
format 'misc', {
target '**/.gitignore', '**/*.md', '**/*.sh'
targetExclude 'smoke-tests/**/build/**'
indentWithSpaces()
trimTrailingWhitespace()
endWithNewline()
}
}
task formatCode(dependsOn: ['spotlessApply'])
check.dependsOn 'spotlessCheck'