From 536ed9e4c1e73569a99c1ac4d7d16495d72ebe64 Mon Sep 17 00:00:00 2001 From: Adrian Date: Sun, 5 Feb 2023 17:43:14 -0500 Subject: [PATCH] feat: Improved API publication --- HEADER.txt | 16 +++++++++ api/paper/build.gradle.kts | 46 +++++++++++++++++++++----- api/velocity/build.gradle.kts | 61 ++++++++++++++++++++++++++--------- build.gradle.kts | 1 + gradle.properties | 2 +- gradle/libs.versions.toml | 2 ++ 6 files changed, 104 insertions(+), 24 deletions(-) create mode 100644 HEADER.txt diff --git a/HEADER.txt b/HEADER.txt new file mode 100644 index 0000000..617b81a --- /dev/null +++ b/HEADER.txt @@ -0,0 +1,16 @@ +/* + * Copyright (C) $YEAR AuthMeVelocity Contributors + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ diff --git a/api/paper/build.gradle.kts b/api/paper/build.gradle.kts index da97b64..ed12679 100644 --- a/api/paper/build.gradle.kts +++ b/api/paper/build.gradle.kts @@ -1,5 +1,6 @@ plugins { - `maven-publish` + `java-library` + alias(libs.plugins.indra) } java { @@ -24,13 +25,42 @@ tasks { } } -publishing { - publications { - create("maven") { - groupId = project.group as String - artifactId = project.name - version = project.version as String - from(components["java"]) +indra { + javaVersions { + testWith().add(17) + } + + issues { + url("https://github.com/4drian3d/AuthMeVelocity/issues") + system("Github Issues") + } + + github("4drian3d", "AuthMeVelocity") { + ci(true) + } + + gpl3OrLaterLicense() + + scm { + connection("scm:git:git://github.com/4drian3d/AuthMeVelocity.git") + developerConnection("scm:git:ssh://github.com/4drian3d/AuthMeVelocity.git") + url("http://github.com/4drian3d/AuthMeVelocity/") + } + + configurePublications { + groupId = project.group as String + artifactId = "api-paper" + version = project.version as String + from(components["java"]) + + pom { + developers { + developer { + id.set("4drian3d") + name.set("Adrian") + } + } } } } + diff --git a/api/velocity/build.gradle.kts b/api/velocity/build.gradle.kts index df55e62..59fc1ed 100644 --- a/api/velocity/build.gradle.kts +++ b/api/velocity/build.gradle.kts @@ -1,5 +1,6 @@ plugins { - `maven-publish` + `java-library` + alias(libs.plugins.indra) } dependencies { @@ -13,22 +14,52 @@ java { tasks { javadoc { - options.encoding = Charsets.UTF_8.name() - (options as StandardJavadocDocletOptions).links( - "https://jd.adventure.kyori.net/api/4.11.0/", - "https://jd.adventure.kyori.net/text-minimessage/4.11.0/", - "https://jd.papermc.io/velocity/3.0.0/" - ) + (options as? StandardJavadocDocletOptions)?.run{ + encoding = Charsets.UTF_8.name() + links( + "https://jd.adventure.kyori.net/api/4.12.0/", + "https://jd.adventure.kyori.net/text-minimessage/4.12.0/", + "https://jd.papermc.io/velocity/3.0.0/" + ) + } } } -publishing { - publications { - create("maven") { - groupId = project.group as String - artifactId = project.name - version = project.version as String - from(components["java"]) +indra { + javaVersions { + testWith().add(17) + } + + issues { + url("https://github.com/4drian3d/AuthMeVelocity/issues") + system("Github Issues") + } + + github("4drian3d", "AuthMeVelocity") { + ci(true) + } + + gpl3OrLaterLicense() + + scm { + connection("scm:git:git://github.com/4drian3d/AuthMeVelocity.git") + developerConnection("scm:git:ssh://github.com/4drian3d/AuthMeVelocity.git") + url("http://github.com/4drian3d/AuthMeVelocity/") + } + + configurePublications { + groupId = project.group as String + artifactId = "api-velocity" + version = project.version as String + from(components["java"]) + + pom { + developers { + developer { + id.set("4drian3d") + name.set("Adrian") + } + } } } -} \ No newline at end of file +} diff --git a/build.gradle.kts b/build.gradle.kts index fc1bfab..14eea6e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,6 +9,7 @@ repositories { allprojects { apply() + repositories { maven("https://repo.papermc.io/repository/maven-public/") } diff --git a/gradle.properties b/gradle.properties index 7f518fc..c235889 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ group = me.adrianed.authmevelocity -version = 3.0.5 +version = 3.0.6-SNAPSHOT description = AuthMeReloaded Support for Velocity url = https://modrinth.com/plugin/authmevelocity id = authmevelocity diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e8ce546..3d6c1fb 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -15,6 +15,7 @@ configurate = "4.1.2" adventure = "4.12.0" blossom = "1.3.1" geantyref = "1.3.13" +indra = "3.0.1" [libraries] @@ -40,3 +41,4 @@ configurate-hocon = { group = "org.spongepowered", name = "configurate-hocon", v pluginyml-bukkit = { id = "net.minecrell.plugin-yml.bukkit", version.ref = "pluginyml" } shadow = { id = "com.github.johnrengelman.shadow", version.ref = "shadow" } blossom = { id = "net.kyori.blossom", version.ref = "blossom" } +indra = { id = "net.kyori.indra.publishing", version.ref = "indra" }