OpenSearch/gradle/build-complete.gradle

59 lines
2.1 KiB
Groovy
Raw Normal View History

import java.nio.file.Files
import org.elasticsearch.gradle.OS
String buildNumber = System.getenv('BUILD_NUMBER')
if (buildNumber) {
File uploadFile = file("build/${buildNumber}.tar.bz2")
project.gradle.buildFinished { result ->
println "build complete, generating: $uploadFile"
if (uploadFile.exists()) {
project.delete(uploadFile)
}
OS.current()
.conditional()
.onUnix {
project.exec {
ignoreExitValue = true
workingDir projectDir
commandLine 'bash', '-c', 'journalctl --since "1 hour ago" 2>&1 > journalctl.log'
}
}
.onWindows {
}
.onMac {
}
ant.tar(destfile: uploadFile, compression: "bzip2", longfile: "gnu") {
fileTree(projectDir)
.include("**/*.hprof")
.include("**/reaper.log")
.include("**/journalctl.log")
.include("**/build/testclusters/**")
.exclude("**/build/testclusters/**/data/**")
.exclude("**/build/testclusters/**/distro/**")
.exclude("**/build/testclusters/**/repo/**")
.exclude("**/build/testclusters/**/extract/**")
.filter { Files.isRegularFile(it.toPath()) }
.each { fileset(file: it) }
fileset(dir: "${gradle.gradleUserHomeDir}/daemon/${gradle.gradleVersion}", followsymlinks: false) {
include(name: "**/daemon-${ProcessHandle.current().pid()}*.log")
}
if (Files.isReadable(file("/var/log/").toPath())) {
Files.list(file("/var/log/").toPath())
.filter { it.fileName.endsWith(".log") }
.filter { Files.isReadable(it) }
.filter { Files.isRegularFile(it) }
.forEach {
fileset(file: it)
}
}
}
}
}