diff --git a/build.gradle b/build.gradle deleted file mode 100644 index ded1365..0000000 --- a/build.gradle +++ /dev/null @@ -1,90 +0,0 @@ -plugins { - id "java-library" - id "maven-publish" - - // gRPC - id "com.google.protobuf" version "0.8.18" -} - -group "dev.emortal.api.agonessdk" -version "1.0-SNAPSHOT" - -repositories { - mavenCentral() -} - -def grpcVersion = '1.50.2' -def protobufVersion = "3.21.7" -def protocVersion = protobufVersion - -dependencies { - // gRPC - api("io.grpc:grpc-protobuf:${grpcVersion}") - api("io.grpc:grpc-stub:${grpcVersion}") - api("io.grpc:grpc-netty:${grpcVersion}") - - api("javax.annotation:javax.annotation-api:1.3.2") - implementation("org.slf4j:slf4j-api:2.0.3") - - - testImplementation("org.junit.jupiter:junit-jupiter-api:5.9.0") - testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.9.0") -} - -protobuf { - protoc { artifact = "com.google.protobuf:protoc:${protocVersion}" } - plugins { - grpc { artifact = "io.grpc:protoc-gen-grpc-java:${grpcVersion}" } - } - generateProtoTasks { - all()*.plugins { grpc {} } - } -} - -// Inform IDEs like IntelliJ IDEA, Eclipse or NetBeans about the generated code. -sourceSets { - main { - java { - srcDirs "build/generated/source/proto/main/grpc" - srcDirs "build/generated/source/proto/main/java" - } - } -} - -publishing { - repositories { - maven { - name = "development" - url = uri("https://repo.emortal.dev/snapshots") - credentials { - username = System.getenv("MAVEN_USERNAME") - password = System.getenv("MAVEN_SECRET") - } - } - maven { - name = "release" - url = uri("https://repo.emortal.dev/releases") - credentials { - username = System.getenv("MAVEN_USERNAME") - password = System.getenv("MAVEN_SECRET") - } - } - } - - publications { - maven(MavenPublication) { - groupId = 'dev.emortal.api' - artifactId = 'agones-sdk' - - def commitHash = System.getenv("COMMIT_HASH_SHORT") - def releaseVersion = System.getenv("RELEASE_VERSION") - version = commitHash ?: releaseVersion ?: 'local' - - from components.java - } - } -} - -test { - useJUnitPlatform() -} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..c43a1eb --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,107 @@ +import com.google.protobuf.gradle.* + +plugins { + `java-library` + `maven-publish` + + // gRPC + id("com.google.protobuf") version "0.8.18" +} + +group = "dev.emortal.api.agonessdk" +version = "1.0-SNAPSHOT" + +val grpcVersion = "1.50.2" +val protobufVersion = "3.21.7" +val protocVersion = protobufVersion + +repositories { + mavenCentral() +} + +dependencies { + // gRPC + api("io.grpc:grpc-protobuf:$grpcVersion") + api("io.grpc:grpc-stub:$grpcVersion") + api("io.grpc:grpc-netty:$grpcVersion") + + api("javax.annotation:javax.annotation-api:1.3.2") + implementation("org.slf4j:slf4j-api:2.0.3") + + testImplementation("org.junit.jupiter:junit-jupiter-api:5.9.0") + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.9.0") +} + +protobuf { + protoc { + artifact = "com.google.protobuf:protoc:$protocVersion" + } + plugins { + id("grpc") { + artifact = "io.grpc:protoc-gen-grpc-java:$grpcVersion" + } + } + generateProtoTasks { + all().forEach { + it.plugins { + id("grpc") {} + } + } + } +} + +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of(20)) + } +} + +tasks { + test { + useJUnitPlatform() + } +} + +publishing { + repositories { + maven { + name = "development" + url = uri("https://repo.emortal.dev/snapshots") + credentials { + username = System.getenv("MAVEN_USERNAME") + password = System.getenv("MAVEN_SECRET") + } + } + maven { + name = "release" + url = uri("https://repo.emortal.dev/releases") + credentials { + username = System.getenv("MAVEN_USERNAME") + password = System.getenv("MAVEN_SECRET") + } + } + } + + publications { + create("maven") { + groupId = "dev.emortal.api" + artifactId = "agones-sdk" + + val commitHash = System.getenv("COMMIT_HASH_SHORT") + val releaseVersion = System.getenv("RELEASE_VERSION") + version = commitHash ?: releaseVersion ?: "local" + + from(components["java"]) + } + } +} + +// Inform IDEs like IntelliJ IDEA, Eclipse or NetBeans about the generated code. +sourceSets { + main { + java { + srcDirs("build/generated/source/proto/main/grpc") + srcDirs("build/generated/source/proto/main/java") + } + } +} diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 41dfb87..84a0b92 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle b/settings.gradle deleted file mode 100644 index 4f043b6..0000000 --- a/settings.gradle +++ /dev/null @@ -1,2 +0,0 @@ -rootProject.name = 'agones-java-grpc-sdk' - diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..6392b14 --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1 @@ +rootProject.name = "agones-java-grpc-sdk"