Skip to content

Commit abf3af9

Browse files
authored
Add build artifact containing json file of all wire compatible versions (#123740) (#124038)
(cherry picked from commit e54037b) # Conflicts: # build.gradle
1 parent 3801866 commit abf3af9

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

build.gradle

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,22 @@ tasks.register("verifyVersions") {
218218
}
219219
}
220220

221+
def generateUpgradeCompatibilityFile = tasks.register("generateUpgradeCompatibilityFile") {
222+
def outputFile = project.layout.buildDirectory.file("rolling-upgrade-compatible-${VersionProperties.elasticsearch}.json")
223+
def rollingUpgradeCompatibleVersions = buildParams.bwcVersions.wireCompatible - VersionProperties.elasticsearchVersion
224+
inputs.property("rollingUpgradeCompatibleVersions", rollingUpgradeCompatibleVersions)
225+
outputs.file(outputFile)
226+
doLast {
227+
def versionsString = rollingUpgradeCompatibleVersions.collect { "\"${it.toString()}\"" }.join(', ')
228+
outputFile.get().asFile.write("""{"rolling_upgrade_compatible_versions" : [${versionsString}]}""")
229+
}
230+
}
231+
232+
def upgradeCompatibilityZip = tasks.register("upgradeCompatibilityZip", Zip) {
233+
archiveFile.set(project.layout.buildDirectory.file("rolling-upgrade-compatible-${VersionProperties.elasticsearch}.zip"))
234+
from(generateUpgradeCompatibilityFile)
235+
}
236+
221237
/*
222238
* When adding backcompat behavior that spans major versions, temporarily
223239
* disabling the backcompat tests is necessary. This flag controls
@@ -486,6 +502,7 @@ tasks.register("buildReleaseArtifacts").configure {
486502
}
487503
.collect { GradleUtils.findByName(it.tasks, 'assemble') }
488504
.findAll { it != null }
505+
dependsOn upgradeCompatibilityZip
489506
}
490507

491508
tasks.register("spotlessApply").configure {

0 commit comments

Comments
 (0)