From d779d3875760fdde52d0085236052604b4425e0a Mon Sep 17 00:00:00 2001 From: Ariaszzzhc Date: Thu, 9 Jan 2020 11:15:00 +0800 Subject: [PATCH] :bookmark: release version 0.1.0 --- build.gradle.kts | 83 ++++++++++++++++++++++++++++++++++++++- webasync/build.gradle.kts | 4 ++ 2 files changed, 86 insertions(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 4892bb1..c7a10e4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,9 +2,19 @@ plugins { kotlin("jvm") version "1.3.50" id("org.jetbrains.kotlin.plugin.spring") version "1.3.50" id("org.springframework.boot") version "2.2.1.RELEASE" apply false + `maven-publish` + signing } -allprojects { +project("webasync") { + description = "ktor & Spring integration" +} + +project("webasync-spring-boot-starter") { + description = "Starter for building Ktor application using Spring Framework support" +} + +subprojects { group = "com.hiarias" version = "0.1.0" @@ -16,4 +26,75 @@ allprojects { apply(plugin = "optional") apply(plugin = "org.jetbrains.kotlin.jvm") apply(plugin = "kotlin-spring") + apply(plugin = "maven-publish") + apply(plugin = "signing") + + if (name in listOf("webasync", "webasync-spring-boot-starter")) { + tasks.register("sourcesJar") { + from(sourceSets.main.get().allSource) + archiveClassifier.set("sources") + } + + tasks.register("javadocJar") { + from(tasks.javadoc) + archiveClassifier.set("javadoc") + } + + publishing { + repositories { + maven { + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2") + credentials { + username = project.properties["ossUsername"].toString() + password = project.properties["ossPassword"].toString() + } + } + } + + publications { + create("mavenJava") { + from(components["java"]) + artifact(tasks["sourcesJar"]) + artifact(tasks["javadocJar"]) + + afterEvaluate { + artifactId = tasks.jar.get().archiveBaseName.get() + } + + @Suppress("UnstableApiUsage") + pom { + name.set(project.name) + description.set(project.description) + url.set("https://github.com/Ariaszzzhc/spring-webasync") + + licenses { + license { + name.set("Apache License Version 2.0") + url.set("http://www.apache.org/licenses/") + } + } + + developers { + developer { + id.set("Ariaszzzhc") + name.set("Ariaszzzhc") + email.set("ariaszzzhc@qq.com") + url.set("https://www.hiarias.com") + } + } + + scm { + connection.set("scm:git:git://github.com/Ariaszzzhc/spring-webasync") + developerConnection.set("scm:git:ssh://github.com/Ariaszzzhc/spring-webasync") + url.set("https://github.com/Ariaszzzhc/spring-webasync") + } + } + } + } + } + + signing { + sign(publishing.publications["mavenJava"]) + } + } } diff --git a/webasync/build.gradle.kts b/webasync/build.gradle.kts index 3665135..5d72b9e 100644 --- a/webasync/build.gradle.kts +++ b/webasync/build.gradle.kts @@ -23,3 +23,7 @@ tasks.withType { kotlinOptions.jvmTarget = "1.8" kotlinOptions.freeCompilerArgs += "-Xuse-experimental=kotlin.Experimental" } + +publishing { + +}