elasticsearch/test/immutable-collections-patch/build.gradle
Rene Groeschke 13c8aaeffa
[Gradle] Remove static use of BuildParams (#115122)
Static fields dont do well in Gradle with configuration cache enabled.

- Use buildParams extension in build scripts
- Keep BuildParams.ci for now for easy serverless migration
-  Tweak testing doc
2024-11-15 17:58:57 +01:00

50 lines
1.8 KiB
Groovy

/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the "Elastic License
* 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side
* Public License v 1"; you may not use this file except in compliance with, at
* your election, the "Elastic License 2.0", the "GNU Affero General Public
* License v3.0 only", or the "Server Side Public License, v 1".
*/
import org.elasticsearch.gradle.OS
import org.elasticsearch.gradle.VersionProperties
import org.elasticsearch.gradle.internal.info.BuildParams
apply plugin: 'elasticsearch.java'
configurations {
patch
}
dependencies {
implementation 'org.ow2.asm:asm:9.7'
implementation 'org.ow2.asm:asm-tree:9.7'
}
def outputDir = layout.buildDirectory.dir("jdk-patches")
def generatePatch = tasks.register("generatePatch", JavaExec)
generatePatch.configure {
dependsOn tasks.named("compileJava")
inputs.property("java-home-set", buildParams.getIsRuntimeJavaHomeSet())
inputs.property("java-version", buildParams.runtimeJavaVersion)
outputs.dir(outputDir)
classpath = sourceSets.main.runtimeClasspath
mainClass = 'org.elasticsearch.jdk.patch.ImmutableCollectionsPatcher'
if (buildParams.getIsRuntimeJavaHomeSet()) {
executable = "${buildParams.runtimeJavaHome.get()}/bin/java" + (OS.current() == OS.WINDOWS ? '.exe' : '')
} else {
javaLauncher = javaToolchains.launcherFor {
languageVersion = JavaLanguageVersion.of(VersionProperties.bundledJdkMajorVersion)
vendor = VersionProperties.bundledJdkVendor == "openjdk" ?
JvmVendorSpec.ORACLE :
JvmVendorSpec.matching(VersionProperties.bundledJdkVendor)
}
}
doFirst {
args outputDir.get().getAsFile().toString()
}
}
artifacts.add("patch", generatePatch);