Reenable Docker tests again (#48936)

Backport of #48898.

We no longer configure distributions for prior versions for Docker. This
is because doing so prompts Gradle to try and resolve the Docker
dependencies, which doesn't work as they can't be downloaded via Ivy
(configured in DistributionDownloadPlugin). Since we need these for the
BATS upgrade tests, and those tests only cover .rpm and .deb, it's OK to
omit creating such distributions in the first place. We may need to
revisit this in the future, to allow upgrade testing using Docker
containers.
This commit is contained in:
Rory Hunter 2019-11-11 11:43:32 +00:00 committed by GitHub
parent e33a1b7942
commit 35e21f85f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 8 deletions

View File

@ -353,8 +353,7 @@ public class DistroTestPlugin implements Plugin<Project> {
List<ElasticsearchDistribution> currentDistros = new ArrayList<>();
List<ElasticsearchDistribution> upgradeDistros = new ArrayList<>();
// Disable DOCKER due to https://github.com/elastic/infra/issues/15864
for (Type type : Arrays.asList(Type.DEB, Type.RPM /*, Type.DOCKER */)) {
for (Type type : Arrays.asList(Type.DEB, Type.RPM, Type.DOCKER)) {
for (Flavor flavor : Flavor.values()) {
for (boolean bundledJdk : Arrays.asList(true, false)) {
// All our Docker images include a bundled JDK so it doesn't make sense to test without one
@ -365,12 +364,21 @@ public class DistroTestPlugin implements Plugin<Project> {
}
}
}
// upgrade version is always bundled jdk
// NOTE: this is mimicking the old VagrantTestPlugin upgrade behavior. It will eventually be replaced
// witha dedicated upgrade test from every bwc version like other bwc tests
addDistro(distributions, type, null, Flavor.DEFAULT, true, upgradeVersion.toString(), upgradeDistros);
if (upgradeVersion.onOrAfter("6.3.0")) {
addDistro(distributions, type, null, Flavor.OSS, true, upgradeVersion.toString(), upgradeDistros);
// We don't configure distributions for prior versions for Docker. This is because doing
// so prompts Gradle to try and resolve the Docker dependencies, which doesn't work as
// they can't be downloaded via Ivy (configured in DistributionDownloadPlugin). Since we
// need these for the BATS upgrade tests, and those tests only cover .rpm and .deb, it's
// OK to omit creating such distributions in the first place. We may need to revisit
// this in the future, so allow upgrade testing using Docker containers.
if (type != Type.DOCKER) {
// upgrade version is always bundled jdk
// NOTE: this is mimicking the old VagrantTestPlugin upgrade behavior. It will eventually be replaced
// witha dedicated upgrade test from every bwc version like other bwc tests
addDistro(distributions, type, null, Flavor.DEFAULT, true, upgradeVersion.toString(), upgradeDistros);
if (upgradeVersion.onOrAfter("6.3.0")) {
addDistro(distributions, type, null, Flavor.OSS, true, upgradeVersion.toString(), upgradeDistros);
}
}
}