blob: 790e9dbc933e64a27fac84d4096dfbab9a0b4e1d [file] [log] [blame]
plugins {
id "com.jfrog.bintray" version "1.4"
}
apply plugin: 'maven-publish'
task updatePom << {
def parser = new XmlParser()
def pomFile = new File("maven-plugin/pom.xml")
def pom = parser.parse(pomFile)
pom.version[0].setValue(dokka_version)
pom.properties.kotlinVersion[0].setValue(kotlin_version)
pomFile.setText(groovy.xml.XmlUtil.serialize(pom))
}
task buildMavenPlugin << {
def process = "mvn clean package".execute(null, new File("maven-plugin"))
process.waitFor()
def mvnOutput = process.text
def exitValue = process.exitValue()
if (exitValue != 0) {
throw new IOException("Failed to run Maven command: exit value $exitValue, output $mvnOutput")
}
}
task prepareMavenPluginUpload << {
def uploadDir = new File("maven-plugin/upload")
uploadDir.delete()
uploadDir.mkdirs()
def releaseFileName = "dokka-maven-plugin-${dokka_version}"
new File("maven-plugin/target/${releaseFileName}.jar").renameTo(new File(uploadDir, "${releaseFileName}.jar"))
new File(uploadDir, "${releaseFileName}.pom").bytes = new File("maven-plugin/pom.xml").bytes
}
buildMavenPlugin.dependsOn(updatePom)
bintray {
user = System.getenv('BINTRAY_USER')
key = System.getenv('BINTRAY_KEY')
pkg {
repo = dokka_eap.toBoolean() ? 'kotlin-eap' : 'dokka'
name = 'dokka'
userOrg = 'kotlin'
desc = 'Dokka, the Kotlin documentation tool'
vcsUrl = 'https://github.com/kotlin/dokka.git'
licenses = ['Apache-2.0']
version {
name = dokka_version
}
}
filesSpec {
from 'maven-plugin/upload'
into "/kotlin/${dokka_eap.toBoolean() ? 'kotlin-eap' : 'dokka'}/dokka/${dokka_version}/org/jetbrains/dokka/dokka-maven-plugin/${dokka_version}"
}
}