Переглянути джерело

Added gradle wrapper upgrading instructions

Vadik Sirekanyan 2 роки тому
батько
коміт
2c60f41702

+ 7 - 3
src/main/kotlin/org/sirekanyan/versionchecker/VersionCheckerPlugin.kt

@@ -52,9 +52,13 @@ class VersionCheckerPlugin : Plugin<Project> {
     private fun executeGradleVersionChecker(project: Project) {
         val checker = GradleVersionChecker()
         val current = project.gradle.gradleVersion
-        val max = checker.getMaxVersion()
+        val (max, sum) = checker.getMaxVersion()
         if (current != max) {
-            println("gradle $current => $max")
+            println(
+                "gradle wrapper $current => $max, use the following command to upgrade:\n"
+                    .plus("./gradlew wrapper --gradle-version $max --distribution-type bin")
+                    .plus(" --gradle-distribution-sha256-sum $sum")
+            )
         }
     }
 
@@ -62,7 +66,7 @@ class VersionCheckerPlugin : Plugin<Project> {
         val checker = ComposeVersionChecker()
         val max = checker.getMaxVersion()
         if (current != max) {
-            println("compose $current => $max")
+            println("jetpack compose compiler $current => $max")
         }
     }
 

+ 5 - 2
src/main/kotlin/org/sirekanyan/versionchecker/gradlechecker/GradleVersionChecker.kt

@@ -4,6 +4,7 @@ import io.ktor.client.*
 import io.ktor.client.call.*
 import io.ktor.client.plugins.contentnegotiation.*
 import io.ktor.client.request.*
+import io.ktor.client.statement.*
 import io.ktor.serialization.kotlinx.json.*
 import kotlinx.coroutines.runBlocking
 import kotlinx.serialization.json.Json
@@ -19,8 +20,10 @@ class GradleVersionChecker {
         }
     }
 
-    fun getMaxVersion(): String = runBlocking {
-        httpClient.get(CURRENT_URL).body<GradleVersion>().version
+    fun getMaxVersion(): Pair<String, String> = runBlocking {
+        val current = httpClient.get(CURRENT_URL).body<GradleVersion>()
+        val checksum = httpClient.get(current.checksumUrl).bodyAsText()
+        current.version to checksum
     }
 
 }

+ 1 - 1
src/main/kotlin/org/sirekanyan/versionchecker/gradlechecker/model/GradleVersion.kt

@@ -3,4 +3,4 @@ package org.sirekanyan.versionchecker.gradlechecker.model
 import kotlinx.serialization.Serializable
 
 @Serializable
-class GradleVersion(val version: String)
+class GradleVersion(val version: String, val checksumUrl: String)