mirror of
https://github.com/FancyInnovations/FancyPlugins.git
synced 2025-12-06 07:43:36 +00:00
Add deployment tool
This commit is contained in:
68
tools/deployment/build.gradle.kts
Normal file
68
tools/deployment/build.gradle.kts
Normal file
@@ -0,0 +1,68 @@
|
||||
import com.github.jengelman.gradle.plugins.shadow.ShadowJavaPlugin.Companion.shadowJar
|
||||
|
||||
plugins {
|
||||
id("java")
|
||||
id("maven-publish")
|
||||
id("com.gradleup.shadow")
|
||||
}
|
||||
|
||||
group = "de.oliver"
|
||||
description = "Tool to deploy Minecraft plugins"
|
||||
|
||||
java {
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(23))
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven("https://repo.papermc.io/repository/maven-public/")
|
||||
maven("https://repo.fancyplugins.de/releases")
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly("com.google.code.gson:gson:2.11.0")
|
||||
implementation("org.jetbrains:annotations:26.0.2")
|
||||
|
||||
implementation("de.oliver.FancyAnalytics:java-sdk:0.0.2")
|
||||
implementation("de.oliver.FancyAnalytics:logger:0.0.6")
|
||||
|
||||
testImplementation("org.junit.jupiter:junit-jupiter-api:5.10.3")
|
||||
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.11.1")
|
||||
testImplementation("com.google.code.gson:gson:2.11.0")
|
||||
}
|
||||
|
||||
tasks {
|
||||
jar {
|
||||
manifest {
|
||||
attributes["Main-Class"] = "de.oliver.deployment.Main"
|
||||
}
|
||||
}
|
||||
|
||||
shadowJar{
|
||||
archiveClassifier.set("")
|
||||
}
|
||||
|
||||
compileJava {
|
||||
options.encoding = Charsets.UTF_8.name() // We want UTF-8 for everything
|
||||
|
||||
// Set the release flag. This configures what version bytecode the compiler will emit, as well as what JDK APIs are usable.
|
||||
// See https://openjdk.java.net/jeps/247 for more information.
|
||||
options.release.set(23)
|
||||
}
|
||||
|
||||
java {
|
||||
withSourcesJar()
|
||||
withJavadocJar()
|
||||
}
|
||||
|
||||
javadoc {
|
||||
options.encoding = Charsets.UTF_8.name() // We want UTF-8 for everything
|
||||
}
|
||||
processResources {
|
||||
filteringCharset = Charsets.UTF_8.name() // We want UTF-8 for everything
|
||||
}
|
||||
|
||||
test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package de.oliver.deployment;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public record Configuration(
|
||||
@SerializedName("project_id") String projectID,
|
||||
@SerializedName("plugin_jar_path") String pluginJarPath,
|
||||
String version,
|
||||
@SerializedName("supported_versions") String[] supportedVersions,
|
||||
String channel,
|
||||
@SerializedName("loaders") String[] loaders,
|
||||
boolean featured
|
||||
) {
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package de.oliver.deployment;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
|
||||
public class Main {
|
||||
|
||||
private static final Gson GSON = new Gson();
|
||||
|
||||
public static void main(String[] args) {
|
||||
String configFilePath = args[0];
|
||||
Configuration configuration = GSON.fromJson(configFilePath, Configuration.class);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user