mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-06-28 09:28:55 -04:00
[Gradle] Use variant aware resolution for deps on hfds-fixture (#128860)
This reworks the dependency resolution for hdfs fixture dependencies to use gradles variant aware dependency resolution instead of relying on outgoing configuration names.
This commit is contained in:
parent
f190a69f5f
commit
2856923ef0
5 changed files with 57 additions and 17 deletions
|
@ -7,15 +7,16 @@
|
||||||
* License v3.0 only", or the "Server Side Public License, v 1".
|
* License v3.0 only", or the "Server Side Public License, v 1".
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import org.elasticsearch.gradle.internal.test.RestIntegTestTask
|
|
||||||
import org.elasticsearch.gradle.OS
|
import org.elasticsearch.gradle.OS
|
||||||
|
import org.elasticsearch.gradle.internal.test.RestIntegTestTask
|
||||||
|
|
||||||
apply plugin: 'elasticsearch.internal-java-rest-test'
|
apply plugin: 'elasticsearch.internal-java-rest-test'
|
||||||
apply plugin: 'elasticsearch.internal-yaml-rest-test'
|
apply plugin: 'elasticsearch.internal-yaml-rest-test'
|
||||||
|
|
||||||
esplugin {
|
esplugin {
|
||||||
description = 'The HDFS repository plugin adds support for Hadoop Distributed File-System (HDFS) repositories.'
|
description = 'The HDFS repository plugin adds support for Hadoop Distributed File-System (HDFS) repositories.'
|
||||||
classname ='org.elasticsearch.repositories.hdfs.HdfsPlugin'
|
classname = 'org.elasticsearch.repositories.hdfs.HdfsPlugin'
|
||||||
}
|
}
|
||||||
|
|
||||||
versions << [
|
versions << [
|
||||||
|
@ -23,10 +24,19 @@ versions << [
|
||||||
]
|
]
|
||||||
|
|
||||||
def patched = Attribute.of('patched', Boolean)
|
def patched = Attribute.of('patched', Boolean)
|
||||||
|
def hdfsVersionAttr = Attribute.of('hdfs.major.version', Integer)
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
hdfsFixture2
|
hdfsFixture2 {
|
||||||
hdfsFixture3
|
attributes {
|
||||||
|
attribute(hdfsVersionAttr, 2)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
hdfsFixture3 {
|
||||||
|
attributes {
|
||||||
|
attribute(hdfsVersionAttr, 3)
|
||||||
|
}
|
||||||
|
}
|
||||||
compileClasspath {
|
compileClasspath {
|
||||||
attributes {
|
attributes {
|
||||||
attribute(patched, true)
|
attribute(patched, true)
|
||||||
|
@ -82,8 +92,8 @@ dependencies {
|
||||||
yamlRestTestRuntimeOnly "commons-cli:commons-cli:1.5.0"
|
yamlRestTestRuntimeOnly "commons-cli:commons-cli:1.5.0"
|
||||||
yamlRestTestRuntimeOnly "org.apache.logging.log4j:log4j-1.2-api:${versions.log4j}"
|
yamlRestTestRuntimeOnly "org.apache.logging.log4j:log4j-1.2-api:${versions.log4j}"
|
||||||
|
|
||||||
hdfsFixture2 project(path: ':test:fixtures:hdfs-fixture', configuration: 'shadowedHdfs2')
|
hdfsFixture2 project(':test:fixtures:hdfs-fixture')
|
||||||
hdfsFixture3 project(path: ':test:fixtures:hdfs-fixture', configuration: 'shadow')
|
hdfsFixture3 project(':test:fixtures:hdfs-fixture')
|
||||||
|
|
||||||
attributesSchema {
|
attributesSchema {
|
||||||
attribute(patched)
|
attribute(patched)
|
||||||
|
|
24
test/fixtures/hdfs-fixture/build.gradle
vendored
24
test/fixtures/hdfs-fixture/build.gradle
vendored
|
@ -15,6 +15,8 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||||
|
|
||||||
def hdfs2patched = Attribute.of('hdfs2-patched', Boolean)
|
def hdfs2patched = Attribute.of('hdfs2-patched', Boolean)
|
||||||
def hdfs3patched = Attribute.of('hdfs3-patched', Boolean)
|
def hdfs3patched = Attribute.of('hdfs3-patched', Boolean)
|
||||||
|
def hdfsVersionAttr = Attribute.of('hdfs.major.version', Integer)
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
hdfs2 {
|
hdfs2 {
|
||||||
attributes {
|
attributes {
|
||||||
|
@ -26,7 +28,26 @@ configurations {
|
||||||
attribute(hdfs3patched, true)
|
attribute(hdfs3patched, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
consumable("shadowedHdfs2")
|
consumable("shadowedHdfs2") {
|
||||||
|
attributes {
|
||||||
|
attribute(hdfsVersionAttr, 2)
|
||||||
|
attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.LIBRARY))
|
||||||
|
attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, Usage.JAVA_RUNTIME))
|
||||||
|
attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, Integer.parseInt(buildParams.minimumRuntimeVersion.getMajorVersion()))
|
||||||
|
attribute(LibraryElements.LIBRARY_ELEMENTS_ATTRIBUTE, objects.named(LibraryElements, LibraryElements.JAR))
|
||||||
|
attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
consumable("shadowedHdfs3") {
|
||||||
|
attributes {
|
||||||
|
attribute(hdfsVersionAttr, 3)
|
||||||
|
attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.LIBRARY))
|
||||||
|
attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, Usage.JAVA_RUNTIME))
|
||||||
|
attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, Integer.parseInt(buildParams.minimumRuntimeVersion.getMajorVersion()))
|
||||||
|
attribute(LibraryElements.LIBRARY_ELEMENTS_ATTRIBUTE, objects.named(LibraryElements, LibraryElements.JAR))
|
||||||
|
attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
@ -165,4 +186,5 @@ tasks.withType(ShadowJar).configureEach {
|
||||||
|
|
||||||
artifacts {
|
artifacts {
|
||||||
shadowedHdfs2(hdfs2Jar)
|
shadowedHdfs2(hdfs2Jar)
|
||||||
|
shadowedHdfs3(tasks.named("shadowJar"))
|
||||||
}
|
}
|
||||||
|
|
8
test/fixtures/krb5kdc-fixture/build.gradle
vendored
8
test/fixtures/krb5kdc-fixture/build.gradle
vendored
|
@ -25,14 +25,6 @@ configurations {
|
||||||
all {
|
all {
|
||||||
exclude group: 'org.hamcrest', module: 'hamcrest-core'
|
exclude group: 'org.hamcrest', module: 'hamcrest-core'
|
||||||
}
|
}
|
||||||
krb5ConfHdfsFile {
|
|
||||||
canBeConsumed = true
|
|
||||||
canBeResolved = false
|
|
||||||
}
|
|
||||||
krb5KeytabsHdfsDir {
|
|
||||||
canBeConsumed = true
|
|
||||||
canBeResolved = false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
|
|
@ -9,11 +9,19 @@ apply plugin: 'elasticsearch.internal-java-rest-test'
|
||||||
apply plugin: 'elasticsearch.rest-resources'
|
apply plugin: 'elasticsearch.rest-resources'
|
||||||
apply plugin: 'elasticsearch.internal-available-ports'
|
apply plugin: 'elasticsearch.internal-available-ports'
|
||||||
|
|
||||||
|
configurations {
|
||||||
|
javaRestTestRuntimeClasspath {
|
||||||
|
attributes {
|
||||||
|
attribute(Attribute.of('hdfs.major.version', Integer), 2)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
clusterPlugins project(':plugins:repository-hdfs')
|
clusterPlugins project(':plugins:repository-hdfs')
|
||||||
javaRestTestImplementation(testArtifact(project(xpackModule('searchable-snapshots'))))
|
javaRestTestImplementation(testArtifact(project(xpackModule('searchable-snapshots'))))
|
||||||
javaRestTestCompileOnly project(path: ':test:fixtures:hdfs-fixture')
|
javaRestTestCompileOnly project(path: ':test:fixtures:hdfs-fixture')
|
||||||
javaRestTestRuntimeOnly project(path: ':test:fixtures:hdfs-fixture', configuration:"shadowedHdfs2")
|
javaRestTestRuntimeOnly project(path: ':test:fixtures:hdfs-fixture')
|
||||||
javaRestTestImplementation project(':test:fixtures:krb5kdc-fixture')
|
javaRestTestImplementation project(':test:fixtures:krb5kdc-fixture')
|
||||||
javaRestTestRuntimeOnly "com.google.guava:guava:16.0.1"
|
javaRestTestRuntimeOnly "com.google.guava:guava:16.0.1"
|
||||||
javaRestTestRuntimeOnly "commons-cli:commons-cli:1.2"
|
javaRestTestRuntimeOnly "commons-cli:commons-cli:1.2"
|
||||||
|
|
|
@ -8,10 +8,18 @@
|
||||||
apply plugin: 'elasticsearch.internal-java-rest-test'
|
apply plugin: 'elasticsearch.internal-java-rest-test'
|
||||||
apply plugin: 'elasticsearch.rest-resources'
|
apply plugin: 'elasticsearch.rest-resources'
|
||||||
|
|
||||||
|
configurations {
|
||||||
|
javaRestTestRuntimeClasspath {
|
||||||
|
attributes {
|
||||||
|
attribute(Attribute.of('hdfs.major.version', Integer), 3)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
javaRestTestImplementation testArtifact(project(xpackModule('snapshot-repo-test-kit')))
|
javaRestTestImplementation testArtifact(project(xpackModule('snapshot-repo-test-kit')))
|
||||||
javaRestTestCompileOnly project(path: ':test:fixtures:hdfs-fixture')
|
javaRestTestCompileOnly project(path: ':test:fixtures:hdfs-fixture')
|
||||||
javaRestTestRuntimeOnly project(path: ':test:fixtures:hdfs-fixture', configuration:"shadow")
|
javaRestTestRuntimeOnly project(path: ':test:fixtures:hdfs-fixture')
|
||||||
javaRestTestImplementation project(':test:fixtures:krb5kdc-fixture')
|
javaRestTestImplementation project(':test:fixtures:krb5kdc-fixture')
|
||||||
javaRestTestImplementation "org.slf4j:slf4j-api:${versions.slf4j}"
|
javaRestTestImplementation "org.slf4j:slf4j-api:${versions.slf4j}"
|
||||||
javaRestTestImplementation "org.slf4j:slf4j-simple:${versions.slf4j}"
|
javaRestTestImplementation "org.slf4j:slf4j-simple:${versions.slf4j}"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue