Skip to content

Commit

Permalink
Bundle Swagger JSON directly to common module output
Browse files Browse the repository at this point in the history
  • Loading branch information
AnttiMK committed Jan 26, 2025
1 parent 45f5d22 commit 973ba8d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 19 deletions.
8 changes: 2 additions & 6 deletions Plan/common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -245,17 +245,13 @@ resolve { // Swagger json generation task
"com.djrapitops.plan.delivery.webserver.resolver.auth",
"com.djrapitops.plan.delivery.webserver.resolver.json",
]
outputDir = file("build/generated-resources/swagger/assets/plan/web/")
outputDir = "build/generated-resources/swagger/assets/plan/web"
}

tasks.register("swaggerJsonJar", Jar) {
jar {
dependsOn resolve
archiveClassifier.set("resolve")
from "build/generated-resources/swagger"
}
artifacts {
swaggerJson swaggerJsonJar
}

processResources {
// Tasks skip Yarn build on Jitpack since Jitpack doesn't offer gclib version compatible with Node 20
Expand Down
28 changes: 16 additions & 12 deletions Plan/fabric/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ configurations {

dependencies {
shade project(":common")
// todo
// implementation project(path: ":common", configuration: "swaggerJson")

implementation "net.playeranalytics:platform-abstraction-layer-api:$palVersion"

Expand Down Expand Up @@ -73,12 +71,12 @@ tasks.named("shadowJar", ShadowJar) {
exclude "mozilla/**/*"

// Exclude extra dependencies
exclude "org/apache/http/**/*" // Unnecessary http client depended on by geolite2 implementation
exclude "org/junit/**/*" // see extensions/build.gradle
exclude "org/opentest4j/**/*" // see extensions/build.gradle
exclude "org/checkerframework/**/*" // Dagger compiler
exclude "com/google/common/**/*"
exclude "com/google/thirdparty/**/*"
exclude "com/google/auto/**/*"

exclude "org.javassist:.*"
// Exclude swagger
exclude "org/yaml/**/*"
exclude "nonapi/**/*"
Expand All @@ -93,31 +91,37 @@ tasks.named("shadowJar", ShadowJar) {

relocate("org.apache", "plan.org.apache") {
exclude "org/apache/logging/**"
exclude "org/apache/maven/**" // This needs to be unrelocated for Sponge
}
relocate "dagger", "plan.dagger"

// Don't relocate MySQL or SQLite since they are loaded with a isolated class loader
// relocate "org.sqlite", "plan.org.sqlite"
// relocate "com.mysql", "plan.com.mysql"
// relocate "com.google.protobuf", "plan.com.mysql.cj.x.google.protobuf"

relocate "dagger", "plan.dagger"
relocate "javax.inject", "plan.javax.inject"
relocate "com.github.benmanes", "plan.com.github.benmanes"
relocate "dev.vankka.dependencydownload", "plan.dev.vankka.dependencydownload"
relocate "jakarta.inject", "plan.jakarta.inject"
relocate "org.jspecify", "plan.org.jspecify"

relocate "dev.vankka.dependencydownload", "plan.dev.vankka.dependencydownload"
relocate "com.github.benmanes", "plan.com.github.benmanes"
relocate "com.maxmind", "plan.com.maxmind"
relocate "com.fasterxml", "plan.com.fasterxml"
relocate "com.zaxxer", "plan.com.zaxxer"
relocate "com.google.gson", "plan.com.google.gson"
relocate "com.google.errorprone", "plan.com.google.errorprone"
relocate "org.bstats", "plan.org.bstats"
relocate "org.intellij.lang.annotations", "plan.org.intellij.lang.annotations"
relocate "org.jasypt", "plan.org.jasypt"
relocate "org.jetbrains.annotations", "plan.org.jetbrains.annotations"
relocate "org.json.simple", "plan.org.json.simple"
relocate "org.slf4j", "plan.org.slf4j"

relocate "org.eclipse.jetty", "plan.org.eclipse.jetty"
relocate "jakarta.servlet", "plan.jakarta.servlet"
relocate "javax.servlet", "plan.javax.servlet"

relocate "org.slf4j", "plan.org.slf4j"

relocate "org.json.simple", "plan.org.json.simple"

mergeServiceFiles()
}

Expand Down
1 change: 0 additions & 1 deletion Plan/plugin/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ dependencies {
implementation project(":sponge")
implementation project(":bungeecord")
implementation project(":velocity")
implementation project(path: ":common", configuration: "swaggerJson")

// Shadow configuration required to depend on Folia due to newer Java version
implementation project(path: ":folia", configuration: "shadow")
Expand Down

0 comments on commit 973ba8d

Please sign in to comment.