mirror of
https://github.com/AsamK/signal-cli
synced 2025-08-29 10:30:38 +00:00
Extract checkLibVersions task to gradle plugin
This commit is contained in:
parent
c72aeed8bb
commit
4eaec83594
4 changed files with 57 additions and 33 deletions
|
@ -2,6 +2,7 @@ plugins {
|
|||
java
|
||||
application
|
||||
eclipse
|
||||
`check-lib-versions`
|
||||
}
|
||||
|
||||
version = "0.7.4"
|
||||
|
@ -57,39 +58,6 @@ tasks.withType<JavaExec> {
|
|||
}
|
||||
}
|
||||
|
||||
// Find any 3rd party libraries which have released new versions
|
||||
// to the central Maven repo since we last upgraded.
|
||||
val checkLibVersions by tasks.registering {
|
||||
doLast {
|
||||
val checked = kotlin.collections.HashSet<Dependency>()
|
||||
allprojects {
|
||||
configurations.forEach { configuration ->
|
||||
configuration.allDependencies.forEach { dependency ->
|
||||
val version = dependency.version
|
||||
if (!checked.contains(dependency)) {
|
||||
val group = dependency.group
|
||||
val path = group?.replace(".", "/") ?: ""
|
||||
val name = dependency.name
|
||||
val metaDataUrl = "https://repo1.maven.org/maven2/$path/$name/maven-metadata.xml"
|
||||
try {
|
||||
val url = org.codehaus.groovy.runtime.ResourceGroovyMethods.toURL(metaDataUrl)
|
||||
val metaDataText = org.codehaus.groovy.runtime.ResourceGroovyMethods.getText(url)
|
||||
val metadata = groovy.util.XmlSlurper().parseText(metaDataText)
|
||||
val newest = (metadata.getProperty("versioning") as groovy.util.slurpersupport.GPathResult).getProperty("latest")
|
||||
if (version != newest.toString()) {
|
||||
println("UPGRADE {\"group\": \"$group\", \"name\": \"$name\", \"current\": \"$version\", \"latest\": \"$newest\"}")
|
||||
}
|
||||
} catch (e: Throwable) {
|
||||
logger.debug("Unable to download or parse $metaDataUrl: $e.message")
|
||||
}
|
||||
checked.add(dependency)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
val assembleNativeImage by tasks.registering {
|
||||
dependsOn("assemble")
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue