Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class InternalDistributionArchiveSetupPluginFuncTest extends AbstractGradleFuncT
def setup() {
buildFile << """
import org.elasticsearch.gradle.tar.SymbolicLinkPreservingTar

plugins {
id 'elasticsearch.internal-distribution-archive-setup'
}
Expand All @@ -60,7 +60,6 @@ class InternalDistributionArchiveSetupPluginFuncTest extends AbstractGradleFuncT

where:
buildTaskName | expectedOutputArchivePath
"buildDarwinTar" | "darwin-tar/build/distributions/elasticsearch.tar.gz"
"buildOssDarwinTar" | "oss-darwin-tar/build/distributions/elasticsearch-oss.tar.gz"
}

Expand Down Expand Up @@ -111,23 +110,23 @@ class InternalDistributionArchiveSetupPluginFuncTest extends AbstractGradleFuncT
}
}
}

project('consumer') { p ->
configurations {
consumeArchive {}
consumeDir {}
}

dependencies {
consumeDir project(path: ':producer-tar', configuration:'extracted')
consumeArchive project(path: ':producer-tar', configuration:'default' )
}

tasks.register("copyDir", Copy) {
from(configurations.consumeDir)
into('build/dir')
}

tasks.register("copyArchive", Copy) {
from(configurations.consumeArchive)
into('build/archives')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,56 +57,56 @@ class InternalDistributionBwcSetupPluginFuncTest extends AbstractGradleFuncTest
result.output.contains("[8.0.1] > Task :distribution:archives:oss-darwin-tar:assemble")
}

// def "bwc distribution archives can be resolved as bwc project artifact"() {
// setup:
// new File(testProjectDir.root, 'remote/build.gradle') << """
//
// configurations {
// dists
// }
//
// dependencies {
// dists project(path: ":distribution:bwc:bugfix", configuration:"oss-darwin-tar")
// }
//
// tasks.register("resolveDistributionArchive") {
// inputs.files(configurations.dists)
// doLast {
// configurations.dists.files.each {
// println "distfile " + (it.absolutePath - project.rootDir.absolutePath)
// }
// }
// }
// """
// when:
// def result = gradleRunner(new File(testProjectDir.root, "remote"),
// ":resolveDistributionArchive",
// "-DtestRemoteRepo=" + remoteGitRepo,
// "-Dbwc.remote=origin")
// .build()
// then:
// result.task(":resolveDistributionArchive").outcome == TaskOutcome.SUCCESS
// result.task(":distribution:bwc:bugfix:buildBwcOssDarwinTar").outcome == TaskOutcome.SUCCESS
//
// and: "assemble task triggered"
// result.output.contains("[8.0.1] > Task :distribution:archives:oss-darwin-tar:assemble")
// normalizedOutput(result.output)
// .contains("distfile /distribution/bwc/bugfix/build/bwc/checkout-8.0/distribution/archives/oss-darwin-tar/" +
// "build/distributions/elasticsearch-8.0.1-SNAPSHOT-oss-darwin-x86_64.tar.gz")
// }
def "bwc distribution archives can be resolved as bwc project artifact"() {
setup:
new File(testProjectDir.root, 'remote/build.gradle') << """

configurations {
dists
}

dependencies {
dists project(path: ":distribution:bwc:bugfix", configuration:"oss-darwin-tar")
}

tasks.register("resolveDistributionArchive") {
inputs.files(configurations.dists)
doLast {
configurations.dists.files.each {
println "distfile " + (it.absolutePath - project.rootDir.absolutePath)
}
}
}
"""
when:
def result = gradleRunner(new File(testProjectDir.root, "remote"),
":resolveDistributionArchive",
"-DtestRemoteRepo=" + remoteGitRepo,
"-Dbwc.remote=origin")
.build()
then:
result.task(":resolveDistributionArchive").outcome == TaskOutcome.SUCCESS
result.task(":distribution:bwc:bugfix:buildBwcOssDarwinTar").outcome == TaskOutcome.SUCCESS

and: "assemble task triggered"
result.output.contains("[8.0.1] > Task :distribution:archives:oss-darwin-tar:assemble")
normalizedOutput(result.output)
.contains("distfile /distribution/bwc/bugfix/build/bwc/checkout-8.0/distribution/archives/oss-darwin-tar/" +
"build/distributions/elasticsearch-oss-8.0.1-SNAPSHOT-darwin-x86_64.tar.gz")
}

def "bwc expanded distribution folder can be resolved as bwc project artifact"() {
setup:
new File(testProjectDir.root, 'remote/build.gradle') << """

configurations {
expandedDist
}

dependencies {
expandedDist project(path: ":distribution:bwc:bugfix", configuration:"expanded-oss-darwin-tar")
}

tasks.register("resolveExpandedDistribution") {
inputs.files(configurations.expandedDist)
doLast {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ public static void configureRepositories(Project project) {
throw new GradleException("Malformed lucene snapshot version: " + luceneVersion);
}
String revision = matcher.group(1);
// TODO(cleanup) - Setup own lucene snapshot repo
MavenArtifactRepository luceneRepo = repos.maven(repo -> {
repo.setName("lucene-snapshots");
repo.setUrl("https://s3.amazonaws.com/download.elasticsearch.org/lucenesnapshots/" + revision);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ private void registerBwcArtifacts(Project bwcProject, DistributionProject distri

private void registerDistributionArchiveArtifact(Project bwcProject, DistributionProject distributionProject, String buildBwcTask) {
String artifactFileName = distributionProject.getDistFile().getName();
String artifactName = artifactFileName.contains("oss") ? "elasticsearch-oss" : "elasticsearch";
String artifactName = "elasticsearch-oss";

String suffix = artifactFileName.endsWith("tar.gz") ? "tar.gz" : artifactFileName.substring(artifactFileName.length() - 3);
int archIndex = artifactFileName.indexOf("x86_64");
Expand Down Expand Up @@ -157,7 +157,7 @@ private static List<DistributionProject> resolveArchiveProjects(File checkoutDir
if (bwcVersion.onOrAfter("7.0.0")) {
if (name.contains("zip") || name.contains("tar")) {
int index = name.lastIndexOf('-');
String baseName = name.startsWith("oss-") ? name.substring(4, index) : name.substring(0, index);
String baseName = name.substring(4, index); // oss-
classifier = "-" + baseName + "-x86_64";
extension = name.substring(index + 1);
if (extension.equals("tar")) {
Expand All @@ -168,7 +168,7 @@ private static List<DistributionProject> resolveArchiveProjects(File checkoutDir
} else if (name.contains("rpm")) {
classifier = "-x86_64";
}
} else if (name.contains("oss-")) {
} else {
extension = name.substring(4);
}
return new DistributionProject(name, baseDir, bwcVersion, classifier, extension, checkoutDir);
Expand Down Expand Up @@ -228,16 +228,7 @@ private static class DistributionProject {
this.projectPath = baseDir + "/" + name;
this.distFile = new File(
checkoutDir,
baseDir
+ "/"
+ name
+ "/build/distributions/elasticsearch-"
+ (name.startsWith("oss") ? "oss-" : "")
+ version
+ "-SNAPSHOT"
+ classifier
+ "."
+ extension
baseDir + "/" + name + "/build/distributions/elasticsearch-oss-" + version + "-SNAPSHOT" + classifier + "." + extension
);
// we only ported this down to the 7.x branch.
if (version.onOrAfter("7.10.0") && (name.endsWith("zip") || name.endsWith("tar"))) {
Expand Down