deployment: Add Modrinth deployment configuration and service integration

This commit is contained in:
Oliver
2025-03-15 14:02:57 +01:00
parent 2184291060
commit 1c9a01544c
4 changed files with 41 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
{
"project_id": "fancyholograms",
"plugin_jar_path": "../../../plugins/fancyholograms/build/libs/FancyHolograms-*.jar",
"changelog_path": "../../../plugins/fancyholograms/CHANGELOG.md",
"version": "3.0.0",
"supported_versions":[
"1.19.4",
"1.20",
"1.20.1",
"1.20.2",
"1.20.3",
"1.20.4",
"1.20.5",
"1.20.6",
"1.21",
"1.21.1",
"1.21.2",
"1.21.3",
"1.21.4"
],
"channel": "release",
"loaders": [
"paper",
"folia"
],
"featured": true
}

View File

@@ -1,6 +1,9 @@
package de.oliver.deployment; package de.oliver.deployment;
import com.google.gson.Gson; import com.google.gson.Gson;
import de.oliver.deployment.modrinth.ModrinthService;
import java.io.IOException;
public class Main { public class Main {
@@ -9,6 +12,15 @@ public class Main {
public static void main(String[] args) { public static void main(String[] args) {
String configFilePath = args[0]; String configFilePath = args[0];
Configuration configuration = GSON.fromJson(configFilePath, Configuration.class); Configuration configuration = GSON.fromJson(configFilePath, Configuration.class);
String modrinthApiKey = System.getenv("MODRINTH_API_KEY");
ModrinthService modrinthService = new ModrinthService(modrinthApiKey);
try {
modrinthService.deployPlugin(configuration);
} catch (IOException e) {
e.printStackTrace();
}
} }
} }

View File

@@ -10,6 +10,7 @@ public record CreateVersionRequest(
@SerializedName("version_type") String versionType, @SerializedName("version_type") String versionType,
String[] loaders, String[] loaders,
boolean featured, boolean featured,
String status,
@SerializedName("project_id") String projectId, @SerializedName("project_id") String projectId,
@SerializedName("file_parts") String[] fileParts, @SerializedName("file_parts") String[] fileParts,
@SerializedName("primary_file") String primaryFile @SerializedName("primary_file") String primaryFile

View File

@@ -29,6 +29,7 @@ public class ModrinthService {
config.channel(), config.channel(),
config.loaders(), config.loaders(),
config.featured(), config.featured(),
"draft",
config.projectID(), config.projectID(),
new String[]{"plugin"}, new String[]{"plugin"},
"plugin" "plugin"