[upload] fix of pom generation on uploaded artifacts
problem introduced in d488e35219
This commit is contained in:
committed by
Vasily Levchenko
parent
65aa2d4d77
commit
3a9169f5ea
Vendored
+9
-31
@@ -75,46 +75,24 @@ dependencies {
|
|||||||
kotlin_stdlib_jdk8_doc "$kotlinStdLibJdk8Module:javadoc@jar"
|
kotlin_stdlib_jdk8_doc "$kotlinStdLibJdk8Module:javadoc@jar"
|
||||||
}
|
}
|
||||||
|
|
||||||
// Hack kotlin-compiler pom-file to resolve the dependency correctly.
|
|
||||||
task generatePom(type: DefaultTask) {
|
|
||||||
def originalPom = configurations.kotlin_compiler_pom.singleFile
|
|
||||||
inputs.file(originalPom)
|
|
||||||
|
|
||||||
def (_, artifactIdString, versionString) = kotlinCompilerModule.tokenize(':')
|
|
||||||
def newPom = file("${temporaryDir.canonicalPath}/$artifactIdString-${versionString}.pom")
|
|
||||||
outputs.file(newPom)
|
|
||||||
|
|
||||||
doLast {
|
|
||||||
def xml = new XmlParser().parse(originalPom)
|
|
||||||
def parent = xml.children().find() { it.name().localPart == 'parent' } // <parent> </parent> section, not the parent node.
|
|
||||||
if (parent != null) {
|
|
||||||
def groupId = parent.groupId
|
|
||||||
def version = parent.version
|
|
||||||
xml.append(groupId)
|
|
||||||
xml.append(version)
|
|
||||||
xml.remove(parent)
|
|
||||||
}
|
|
||||||
new XmlNodePrinter(new PrintWriter(new FileWriter(newPom))).print(xml)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def modules = ['compiler' : kotlinCompilerModule,
|
def modules = ['compiler' : kotlinCompilerModule,
|
||||||
'gradle_plugin': kotlinGradleModule,
|
'gradle_plugin': kotlinGradleModule,
|
||||||
'stdlib_jdk8' : kotlinStdLibJdk8Module]
|
'stdlib_jdk8' : kotlinStdLibJdk8Module]
|
||||||
def uploads = ['compiler', 'gradle_plugin', 'stdlib_jdk8']
|
def uploads = ['compiler', 'gradle_plugin', 'stdlib_jdk8']
|
||||||
uploads.each { target ->
|
uploads.each { target ->
|
||||||
task("${target}Upload", type:GradleBuild) {
|
task("${target}Upload", type:GradleBuild) {
|
||||||
tasks = ['dump', 'bintrayUpload']
|
tasks = ['bintrayUpload']
|
||||||
buildFile project.file("upload.gradle")
|
buildFile project.file("upload.gradle")
|
||||||
dir project.projectDir
|
dir project.projectDir
|
||||||
startParameter.projectProperties = [
|
startParameter.projectProperties = [
|
||||||
'user' : "${project.hasProperty('bintrayUser') ? project['bintrayUser'] : System.getenv('BINTRAY_USER')}",
|
'user' : "${project.hasProperty('bintrayUser') ? project['bintrayUser'] : System.getenv('BINTRAY_USER')}",
|
||||||
'key' : "${ project.hasProperty('bintrayKey') ? project.property('bintrayKey') : System.getenv('BINTRAY_KEY')}",
|
'key' : "${ project.hasProperty('bintrayKey') ? project.property('bintrayKey') : System.getenv('BINTRAY_KEY')}",
|
||||||
'module' : modules["${target}"],
|
'module' : modules["${target}"],
|
||||||
'jar' : project.configurations.getByName("kotlin_${target}_jar").files.collect {it.path},
|
'jar' : project.configurations.getByName("kotlin_${target}_jar").files.collect {it.path},
|
||||||
'src' : project.configurations.getByName("kotlin_${target}_src").files.collect {it.path},
|
'src' : project.configurations.getByName("kotlin_${target}_src").files.collect {it.path},
|
||||||
'doc' : project.configurations.getByName("kotlin_${target}_doc").files.collect {it.path},
|
'doc' : project.configurations.getByName("kotlin_${target}_doc").files.collect {it.path},
|
||||||
'pom' : project.configurations.getByName("kotlin_${target}_pom").files.collect {it.path},
|
'pom' : project.configurations.getByName("kotlin_${target}_pom").files.collect {it.path},
|
||||||
|
'override': project.hasProperty("override") && project["override"]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+28
-2
@@ -15,6 +15,32 @@ buildscript {
|
|||||||
|
|
||||||
apply plugin: 'com.jfrog.bintray'
|
apply plugin: 'com.jfrog.bintray'
|
||||||
|
|
||||||
|
|
||||||
|
// Hack kotlin-compiler pom-file to resolve the dependency correctly.
|
||||||
|
task generatePom(type: DefaultTask) {
|
||||||
|
def originalPom = project.files(gradle.startParameter.projectProperties.pom).first()
|
||||||
|
inputs.file(originalPom)
|
||||||
|
|
||||||
|
def (_, artifactIdString, versionString) = gradle.startParameter.projectProperties.module.tokenize(':')
|
||||||
|
def versionPath = "${versionString.tokenize('-')[0]}-SNAPSHOT"
|
||||||
|
|
||||||
|
def newPom = file("${temporaryDir.canonicalPath}/$artifactIdString-${versionString}.pom")
|
||||||
|
outputs.file(newPom)
|
||||||
|
|
||||||
|
doLast {
|
||||||
|
def xml = new XmlParser().parse(originalPom)
|
||||||
|
def parent = xml.children().find() { it.name().localPart == 'parent' }
|
||||||
|
if (parent != null) {
|
||||||
|
def groupId = parent.groupId
|
||||||
|
def version = parent.version
|
||||||
|
xml.append(groupId)
|
||||||
|
xml.append(version)
|
||||||
|
xml.remove(parent)
|
||||||
|
}
|
||||||
|
new XmlNodePrinter(new PrintWriter(new FileWriter(newPom))).print(xml)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bintray {
|
bintray {
|
||||||
user = gradle.startParameter.projectProperties.user
|
user = gradle.startParameter.projectProperties.user
|
||||||
key = gradle.startParameter.projectProperties.key
|
key = gradle.startParameter.projectProperties.key
|
||||||
@@ -23,7 +49,7 @@ bintray {
|
|||||||
name = 'kotlin-compiler-builds'
|
name = 'kotlin-compiler-builds'
|
||||||
userOrg = 'jetbrains'
|
userOrg = 'jetbrains'
|
||||||
publish = true
|
publish = true
|
||||||
override = project.hasProperty("override")
|
override = gradle.startParameter.projectProperties.override
|
||||||
}
|
}
|
||||||
|
|
||||||
filesSpec {
|
filesSpec {
|
||||||
@@ -34,7 +60,7 @@ bintray {
|
|||||||
from project.files(gradle.startParameter.projectProperties.jar)
|
from project.files(gradle.startParameter.projectProperties.jar)
|
||||||
from project.files(gradle.startParameter.projectProperties.src)
|
from project.files(gradle.startParameter.projectProperties.src)
|
||||||
from project.files(gradle.startParameter.projectProperties.doc)
|
from project.files(gradle.startParameter.projectProperties.doc)
|
||||||
from project.files(gradle.startParameter.projectProperties.pom)
|
from generatePom.outputs.files
|
||||||
into "$groupPath/$artifactPath/$versionPath"
|
into "$groupPath/$artifactPath/$versionPath"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user