Skip to content

Commit 66ce431

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

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
@@ -222,6 +222,22 @@ tasks.register("verifyVersions") {
222222
}
223223
}
224224

225+
def generateUpgradeCompatibilityFile = tasks.register("generateUpgradeCompatibilityFile") {
226+
def outputFile = project.layout.buildDirectory.file("rolling-upgrade-compatible-${VersionProperties.elasticsearch}.json")
227+
def rollingUpgradeCompatibleVersions = buildParams.bwcVersions.wireCompatible - VersionProperties.elasticsearchVersion
228+
inputs.property("rollingUpgradeCompatibleVersions", rollingUpgradeCompatibleVersions)
229+
outputs.file(outputFile)
230+
doLast {
231+
def versionsString = rollingUpgradeCompatibleVersions.collect { "\"${it.toString()}\"" }.join(', ')
232+
outputFile.get().asFile.write("""{"rolling_upgrade_compatible_versions" : [${versionsString}]}""")
233+
}
234+
}
235+
236+
def upgradeCompatibilityZip = tasks.register("upgradeCompatibilityZip", Zip) {
237+
archiveFile.set(project.layout.buildDirectory.file("rolling-upgrade-compatible-${VersionProperties.elasticsearch}.zip"))
238+
from(generateUpgradeCompatibilityFile)
239+
}
240+
225241
/*
226242
* When adding backcompat behavior that spans major versions, temporarily
227243
* disabling the backcompat tests is necessary. This flag controls
@@ -490,6 +506,7 @@ tasks.register("buildReleaseArtifacts").configure {
490506
}
491507
.collect { GradleUtils.findByName(it.tasks, 'assemble') }
492508
.findAll { it != null }
509+
dependsOn upgradeCompatibilityZip
493510
}
494511

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

0 commit comments

Comments
 (0)