Skip to content

Commit

Permalink
GH-10 Allow override of versions with extraProperties values
Browse files Browse the repository at this point in the history
  • Loading branch information
ilx committed Nov 9, 2022
1 parent 4c6cc45 commit fb51b26
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,10 @@ class DependencyManagementContainer {

Map versions = [:].withDefault { "" }

Map<String, String> resolveCache = [:].withDefault { String s -> s ? engine.createTemplate(s).make(versions).toString() : s }
Map<String, String> resolveCache = [:].withDefault { String s ->
Map resolutionContextMap = (versions + rootProject.extensions.extraProperties.properties).withDefault { "" }
s ? engine.createTemplate(s).make(resolutionContextMap).toString() : s
}
Map managedVersions = [:]
List<GroupArtifact> blackList = []
Map rewrites = [:]
Expand Down Expand Up @@ -50,10 +53,25 @@ class DependencyManagementContainer {
}

private def exposeVersions() {
versions.collect { k, v ->
if (v !== "" && k != "out") {
logger.debug("${rootProject.name} added $k=$v")
rootProject.extensions.extraProperties.set(k, v)
versions << versions.collectEntries { k, v ->
if (k !== "out") {
if (rootProject.extensions.extraProperties.has(k)) {
def overrideValue = rootProject.extensions.extraProperties.get(k)
logger.info("${rootProject.name} added overriden version ${k}=${overrideValue} (found in gradle extra properties)")
rootProject.extensions.extraProperties.set(k, overrideValue)
[k:overrideValue]
} else {
if (v !== "") {
logger.info("${rootProject.name} added version $k=$v")
rootProject.extensions.extraProperties.set(k, v)
[k:v]
} else {
logger.error("Unable to expose version ${k} to gradle extra properties. Check if it is defined in gradle.properties or .conf file")
[k:""]
}
}
} else {
[:]
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class XLDependencyPlatformPlugin implements Plugin<Project> {
}
project.logger.info("Added $artifactModule:$artifactVersion to ${projectName}")
} else {
project.logger.info("Unable to add $artifactModule to ${projectName}")
project.logger.info("Unable to add $artifactModule to ${projectName} as a constraint")
}
}
}
Expand Down

0 comments on commit fb51b26

Please sign in to comment.