diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
index c224ad5..1e16934 100644
--- a/.idea/kotlinc.xml
+++ b/.idea/kotlinc.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/build.gradle.kts b/build.gradle.kts
index 5ec7093..0eec11b 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,14 +1,14 @@
-import org.gradle.model.internal.core.ModelNodes.withType
+import com.vanniktech.maven.publish.SonatypeHost
plugins {
- kotlin("jvm") version "2.1.0"
- `maven-publish`
+ kotlin("jvm") version "2.1.21"
signing
- id("org.jetbrains.dokka") version "1.5.31"
+ id("org.jetbrains.dokka") version "2.0.0"
+ id("com.vanniktech.maven.publish") version "0.31.0"
}
group = "nl.astraeus"
-version = "1.1.4-SNAPSHOT"
+version = "1.1.4"
repositories {
mavenCentral()
@@ -25,19 +25,6 @@ tasks.test {
maxHeapSize = "1g"
}
-extra["PUBLISH_GROUP_ID"] = group
-extra["PUBLISH_VERSION"] = version
-extra["PUBLISH_ARTIFACT_ID"] = name
-
-// Stub secrets to let the project sync and build without the publication values set up
-val signingKeyId: String? by project
-val signingPassword: String? by project
-val signingSecretKeyRingFile: String? by project
-
-extra["signing.keyId"] = signingKeyId
-extra["signing.password"] = signingPassword
-extra["signing.secretKeyRingFile"] = signingSecretKeyRingFile
-
val javadocJar by tasks.registering(Jar::class) {
archiveClassifier.set("javadoc")
}
@@ -49,6 +36,7 @@ val sourcesJar by tasks.registering(Jar::class) {
publishing {
repositories {
+ mavenLocal()
maven {
name = "gitea"
setUrl("https://gitea.astraeus.nl/api/packages/rnentjes/maven")
@@ -61,45 +49,56 @@ publishing {
password = giteaPassword
}
}
- }
+ maven {
+ name = "gitea8443"
+ setUrl("https://gitea.astraeus.nl:8443/api/packages/rnentjes/maven")
- publications {
- create("mavenKotlin") {
- artifact(javadocJar.get())
- artifact(tasks.jar.get())
- artifact(sourcesJar.get())
- }
- }
- publications.withType {
- // Provide artifacts information requited by Maven Central
- pom {
- name.set("simple-persistence-kotlin")
- description.set("Simple persistence in Kotlin")
+ credentials {
+ val giteaUsername: String? by project
+ val giteaPassword: String? by project
- licenses {
- license {
- name.set("MIT")
- url.set("https://opensource.org/licenses/MIT")
- }
- }
- developers {
- developer {
- id.set("rnentjes")
- name.set("Rien Nentjes")
- email.set("info@nentjes.com")
- }
- }
- scm {
- url.set("https://gitea.astraeus.nl/rnentjes/simple-persistence-kotlin")
+ username = giteaUsername
+ password = giteaPassword
}
}
}
}
+tasks.withType {
+ dependsOn(tasks.withType())
+}
+
signing {
sign(publishing.publications)
}
-tasks.withType {
- dependsOn(tasks.withType())
+mavenPublishing {
+ publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
+
+ signAllPublications()
+
+ coordinates(group.toString(), name, version.toString())
+
+ pom {
+ name = "simple-persistence-kotlin"
+ description = "Simple persistence"
+ inceptionYear = "2024"
+ url = "https://gitea.astraeus.nl/rnentjes/simple-persistence-kotlin"
+ licenses {
+ license {
+ name = "MIT"
+ url = "https://opensource.org/licenses/MIT"
+ }
+ }
+ developers {
+ developer {
+ id = "rnentjes"
+ name = "Rien Nentjes"
+ email = "info@nentjes.com"
+ }
+ }
+ scm {
+ url = "https://gitea.astraeus.nl/rnentjes/simple-persistence-kotlin"
+ }
+ }
}