Browse Source

Build: Add check on lucene version in docs (#25407)

This commit adds a version verifica†ion to ensure the lucene version in
the docs is up to date.
Ryan Ernst 8 years ago
parent
commit
5726d1394f
1 changed files with 27 additions and 1 deletions
  1. 27 1
      qa/verify-version-constants/build.gradle

+ 27 - 1
qa/verify-version-constants/build.gradle

@@ -17,7 +17,9 @@
  * under the License.
  */
 
+import java.util.Locale
 import org.elasticsearch.gradle.Version
+import org.elasticsearch.gradle.VersionProperties
 import org.elasticsearch.gradle.test.RestIntegTestTask
 
 apply plugin: 'elasticsearch.standalone-test'
@@ -58,4 +60,28 @@ task integTest {
     dependsOn = ["v${indexCompatVersions[-1]}#bwcTest"]
 }
 
-check.dependsOn(integTest)
+task verifyDocsLuceneVersion {
+  doFirst {
+    File docsVersionsFile = rootProject.file('docs/Versions.asciidoc')
+    List<String> versionLines = docsVersionsFile.readLines('UTF-8')
+    String docsLuceneVersion = null
+    for (String line : versionLines) {
+      if (line.startsWith(':lucene_version:')) {
+        docsLuceneVersion = line.split()[1]
+      }
+    }
+    if (docsLuceneVersion == null) {
+      throw new GradleException('Could not find lucene version in docs version file')
+    }
+    String expectedLuceneVersion = VersionProperties.lucene
+    if (expectedLuceneVersion.contains('-snapshot-')) {
+      expectedLuceneVersion = expectedLuceneVersion.substring(0, expectedLuceneVersion.lastIndexOf('-'))
+      expectedLuceneVersion = expectedLuceneVersion.toUpperCase(Locale.ROOT)
+    }
+    if (docsLuceneVersion != expectedLuceneVersion) {
+      throw new GradleException("Lucene version in docs [${expectedLuceneVersion}] does not match version.properties [${VersionProperties.lucene}]")
+    }
+  }
+}
+
+check.dependsOn integTest, verifyDocsLuceneVersion