Skip to content

Commit 2f32220

Browse files
committed
Use TAR instead of DOCKER build type before 6.7.0 (#40723)
In 6.7.0 (#39378) we added a build type of DOCKER for the docker images, but unfortunately earlier versions do not understand this and will reject any transport messages that mention this build type. This commit fixes this by reporting TAR instead of DOCKER when talking to older nodes. Relates (but does not fix) #40511 Relates #39378 This commit is the changes that were supposed to be included in the preceding one, abe509a, but weren't because of a missing `git add`.
1 parent abe509a commit 2f32220

File tree

1 file changed

+12
-25
lines changed

1 file changed

+12
-25
lines changed

server/src/test/java/org/elasticsearch/BuildTests.java

Lines changed: 12 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -115,65 +115,52 @@ private static String randomStringExcept(final String s) {
115115
public void testSerialization() {
116116
EqualsHashCodeTestUtils.checkEqualsAndHashCode(new WriteableBuild(new Build(
117117
randomFrom(Build.Flavor.values()), randomFrom(Build.Type.values()),
118-
randomAlphaOfLength(6), randomAlphaOfLength(6), randomBoolean(), randomAlphaOfLength(6))),
118+
randomAlphaOfLength(6), randomAlphaOfLength(6), randomBoolean())),
119119
b -> copyWriteable(b, writableRegistry(), WriteableBuild::new, Version.CURRENT),
120120
b -> {
121-
switch (randomIntBetween(1, 6)) {
121+
switch (randomIntBetween(1, 5)) {
122122
case 1:
123123
return new WriteableBuild(new Build(
124124
randomValueOtherThan(b.build.flavor(), () -> randomFrom(Build.Flavor.values())), b.build.type(),
125-
b.build.shortHash(), b.build.date(), b.build.isSnapshot(), b.build.getQualifiedVersion()));
125+
b.build.shortHash(), b.build.date(), b.build.isSnapshot()));
126126
case 2:
127127
return new WriteableBuild(new Build(b.build.flavor(),
128128
randomValueOtherThan(b.build.type(), () -> randomFrom(Build.Type.values())),
129-
b.build.shortHash(), b.build.date(), b.build.isSnapshot(), b.build.getQualifiedVersion()));
129+
b.build.shortHash(), b.build.date(), b.build.isSnapshot()));
130130
case 3:
131131
return new WriteableBuild(new Build(b.build.flavor(), b.build.type(),
132-
randomStringExcept(b.build.shortHash()), b.build.date(), b.build.isSnapshot(), b.build.getQualifiedVersion()));
132+
randomStringExcept(b.build.shortHash()), b.build.date(), b.build.isSnapshot()));
133133
case 4:
134134
return new WriteableBuild(new Build(b.build.flavor(), b.build.type(),
135-
b.build.shortHash(), randomStringExcept(b.build.date()), b.build.isSnapshot(), b.build.getQualifiedVersion()));
135+
b.build.shortHash(), randomStringExcept(b.build.date()), b.build.isSnapshot()));
136136
case 5:
137137
return new WriteableBuild(new Build(b.build.flavor(), b.build.type(),
138-
b.build.shortHash(), b.build.date(), b.build.isSnapshot() == false, b.build.getQualifiedVersion()));
139-
case 6:
140-
return new WriteableBuild(new Build(b.build.flavor(), b.build.type(),
141-
b.build.shortHash(), b.build.date(), b.build.isSnapshot(), randomStringExcept(b.build.getQualifiedVersion())));
138+
b.build.shortHash(), b.build.date(), b.build.isSnapshot() == false));
142139
}
143140
throw new AssertionError();
144141
});
145142
}
146143

147144
public void testSerializationBWC() throws IOException {
148145
final WriteableBuild dockerBuild = new WriteableBuild(new Build(randomFrom(Build.Flavor.values()), Build.Type.DOCKER,
149-
randomAlphaOfLength(6), randomAlphaOfLength(6), randomBoolean(), randomAlphaOfLength(6)));
146+
randomAlphaOfLength(6), randomAlphaOfLength(6), randomBoolean()));
150147

151148
final List<Version> versions = Version.getDeclaredVersions(Version.class);
152149
final Version pre63Version = randomFrom(versions.stream().filter(v -> v.before(Version.V_6_3_0)).collect(Collectors.toList()));
153150
final Version post63Pre67Version = randomFrom(versions.stream()
154151
.filter(v -> v.onOrAfter(Version.V_6_3_0) && v.before(Version.V_6_7_0)).collect(Collectors.toList()));
155-
final Version post67Pre70Version = randomFrom(versions.stream()
156-
.filter(v -> v.onOrAfter(Version.V_6_7_0) && v.before(Version.V_7_0_0)).collect(Collectors.toList()));
157-
final Version post70Version = randomFrom(versions.stream().filter(v -> v.onOrAfter(Version.V_7_0_0)).collect(Collectors.toList()));
152+
final Version post67Version = randomFrom(versions.stream().filter(v -> v.onOrAfter(Version.V_6_7_0)).collect(Collectors.toList()));
158153

159154
final WriteableBuild pre63 = copyWriteable(dockerBuild, writableRegistry(), WriteableBuild::new, pre63Version);
160155
final WriteableBuild post63pre67 = copyWriteable(dockerBuild, writableRegistry(), WriteableBuild::new, post63Pre67Version);
161-
final WriteableBuild post67pre70 = copyWriteable(dockerBuild, writableRegistry(), WriteableBuild::new, post67Pre70Version);
162-
final WriteableBuild post70 = copyWriteable(dockerBuild, writableRegistry(), WriteableBuild::new, post70Version);
156+
final WriteableBuild post67 = copyWriteable(dockerBuild, writableRegistry(), WriteableBuild::new, post67Version);
163157

164158
assertThat(pre63.build.flavor(), equalTo(Build.Flavor.OSS));
165159
assertThat(post63pre67.build.flavor(), equalTo(dockerBuild.build.flavor()));
166-
assertThat(post67pre70.build.flavor(), equalTo(dockerBuild.build.flavor()));
167-
assertThat(post70.build.flavor(), equalTo(dockerBuild.build.flavor()));
160+
assertThat(post67.build.flavor(), equalTo(dockerBuild.build.flavor()));
168161

169162
assertThat(pre63.build.type(), equalTo(Build.Type.UNKNOWN));
170163
assertThat(post63pre67.build.type(), equalTo(Build.Type.TAR));
171-
assertThat(post67pre70.build.type(), equalTo(dockerBuild.build.type()));
172-
assertThat(post70.build.type(), equalTo(dockerBuild.build.type()));
173-
174-
assertThat(pre63.build.getQualifiedVersion(), equalTo(pre63Version.toString()));
175-
assertThat(post63pre67.build.getQualifiedVersion(), equalTo(post63Pre67Version.toString()));
176-
assertThat(post67pre70.build.getQualifiedVersion(), equalTo(post67Pre70Version.toString()));
177-
assertThat(post70.build.getQualifiedVersion(), equalTo(dockerBuild.build.getQualifiedVersion()));
164+
assertThat(post67.build.type(), equalTo(dockerBuild.build.type()));
178165
}
179166
}

0 commit comments

Comments
 (0)