hibernate-orm/gradle/gradle-enterprise.gradle

55 lines
1.6 KiB
Groovy

/*
* Hibernate, Relational Persistence for Idiomatic Java
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
*/
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Applies details for `https://ge.hibernate.org`
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ext {
isCiEnvironment = isJenkins() || isGitHubActions() || isGenericCi()
populateRemoteBuildCache = getSetting( "POPULATE_REMOTE" ).isPresent()
}
private static boolean isJenkins() {
return getSetting( "JENKINS_URL" ).isPresent()
}
private static boolean isGitHubActions() {
return getSetting( "GITHUB_ACTIONS" ).isPresent()
}
private static boolean isGenericCi() {
return System.getenv("CI") != null || System.getProperty("CI") != null
}
static java.util.Optional<String> getSetting(String name) {
def envVar = System.getenv(name)
if ( envVar != null ) {
return java.util.Optional.of(envVar);
}
def sysProp = System.getProperty(name)
return java.util.Optional.ofNullable(sysProp);
}
gradleEnterprise {
server = 'https://ge.hibernate.org'
buildScan {
captureTaskInputFiles = true
publishAlways()
publishIfAuthenticated()
uploadInBackground = !settings.ext.isCiEnvironment
if ( settings.ext.isCiEnvironment ) {
tag "JOB ${System.getenv('JOB_NAME')}"
}
tag "JDK ${JavaVersion.current().toString()}"
value 'database', rootProject.hasProperty( 'db' ) ? rootProject.properties.db : 'h2'
}
}