Skip to content

Commit

Permalink
Initial Commit
Browse files Browse the repository at this point in the history
  • Loading branch information
ProdPreva1l committed Mar 9, 2025
0 parents commit f41b466
Show file tree
Hide file tree
Showing 23 changed files with 1,090 additions and 0 deletions.
35 changes: 35 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Publish

on:
release:
types: [ "published" ]
push:
branches: [ "dev" ]
pull_request:
branches: [ "dev" ]

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

- name: Setup Gradle
uses: gradle/actions/setup-gradle@af1da67850ed9a4cedd57bfd976089dd991e2582

- name: Fix Gradle Permissions
run: chmod +x ./gradlew

- name: Build with Gradle Wrapper
env:
fad_username: ${{ secrets.REPO_USERNAME }}
fad_password: ${{ secrets.REPO_PASSWORD }}
run: ./gradlew publishAll
49 changes: 49 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Build Tests

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

- name: Setup Gradle
uses: gradle/actions/setup-gradle@af1da67850ed9a4cedd57bfd976089dd991e2582

- name: Fix Gradle Permissions
run: chmod +x ./gradlew

- name: Build with Gradle Wrapper
env:
fad_username: ${{ secrets.REPO_USERNAME }}
fad_password: ${{ secrets.REPO_PASSWORD }}
run: ./gradlew build

dependency-submission:
runs-on: ubuntu-latest
permissions:
contents: write

steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

- name: Generate and submit dependency graph
uses: gradle/actions/dependency-submission@af1da67850ed9a4cedd57bfd976089dd991e2582
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/gradle.properties
/.idea/
**.gradle/
**/build/
/target
.kotlin
100 changes: 100 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar

plugins {
java
`maven-publish`
id("org.ajoberstar.grgit") version "5.3.0"
id("com.gradleup.shadow") version "8.3.0"
}

var currentBranch: String = grgit.branch.current().name
if (currentBranch != "master") {
println("Starting in development mode")
}

allprojects {
group = "info.preva1l.hooker"
version = "1.0.0"

repositories {
mavenCentral()
maven(url = "https://jitpack.io")
maven(url = "https://repo.papermc.io/repository/maven-public/")
if (currentBranch != "master") configureFinallyADecentRepository(dev = true)
configureFinallyADecentRepository()
}

dependencies {
compileOnly("io.papermc.paper:paper-api:1.17-R0.1-SNAPSHOT")

testImplementation("com.github.seeseemelk:MockBukkit-v1.19:3.93.2")
testImplementation("org.junit.jupiter:junit-jupiter-api:5.11.4")
testImplementation("org.junit.jupiter:junit-jupiter-params:5.11.4")
testImplementation("org.junit.jupiter:junit-jupiter-engine:5.11.4")
}
}

tasks.withType<Test> {
useJUnitPlatform()
testLogging {
events("started", "passed", "failed", "skipped", "standardOut", "standardError")
showStandardStreams = true
}
}

tasks.withType<ShadowJar> {
archiveClassifier.set("")
exclude(
"META-INF/"
)
}

tasks.withType<JavaCompile> {
options.compilerArgs.add("-parameters")
options.fork()
options.encoding = "UTF-8"
}

publishing {
repositories.configureFinallyADecentRepository(
dev = currentBranch != "master"
)

publications {
register(
name = "mavenJava",
type = MavenPublication::class,
configurationAction = shadow::component
)
}
}

tasks.getByName("build")
.dependsOn(
"shadowJar"
)

tasks.register("publishAll") {
dependsOn("publishMavenJavaPublicationToFinallyADecentRepository")
}

fun RepositoryHandler.configureFinallyADecentRepository(dev: Boolean = false)
{
val user: String? = properties["fad_username"]?.toString()
val pass: String? = properties["fad_password"]?.toString()

if (user != null && pass != null) {
maven("https://repo.preva1l.info/${if (dev) "development" else "releases"}/") {
name = "FinallyADecent"
credentials {
username = user
password = pass
}
}
return
}

maven("https://repo.preva1l.info/${if (dev) "development" else "releases"}/") {
name = "FinallyADecent"
}
}
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
7 changes: 7 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading

0 comments on commit f41b466

Please sign in to comment.