diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml new file mode 100644 index 0000000..748e707 --- /dev/null +++ b/.gitea/workflows/build.yaml @@ -0,0 +1,20 @@ +name: CI +on: + push: + branches: [ master ] +jobs: + build: + runs-on: woryzen + steps: + - name: Checkout sources + uses: actions/checkout@v4 + - uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 21 + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + - name: Execute Gradle build + env: + PUBLISHER_TOKEN: ${{ secrets.PUBLISHER_TOKEN }} + run: ./gradlew build publish diff --git a/build.gradle b/build.gradle index 8af6f5c..f60931d 100644 --- a/build.gradle +++ b/build.gradle @@ -10,28 +10,40 @@ version = getProperty("jzstd.version") allprojects { - apply plugin: catalog.plugins.lombok.get().pluginId - repositories { - maven { - url = 'https://woggioni.net/mvn/' + pluginManager.withPlugin('java') { + apply plugin: catalog.plugins.lombok.get().pluginId + + repositories { + maven { + url = getProperty('gitea.maven.url') + } + mavenCentral() + } + + java { + toolchain { + languageVersion = JavaLanguageVersion.of(21) + vendor = JvmVendorSpec.GRAAL_VM + } + } + + lombok { + version = catalog.versions.lombok + } + + dependencies { + testRuntimeOnly catalog.junit.jupiter.engine + testImplementation catalog.junit.jupiter.api + testImplementation catalog.junit.jupiter.params + } + + tasks.withType(Test) { + useJUnitPlatform() } - mavenCentral() } - lombok { - version = catalog.versions.lombok - } - dependencies { - testRuntimeOnly catalog.junit.jupiter.engine - testImplementation catalog.junit.jupiter.api - testImplementation catalog.junit.jupiter.params - } - - tasks.withType(Test) { - useJUnitPlatform() - } } compileJava { @@ -46,8 +58,19 @@ dependencies { publishing { repositories { maven { - url = 'https://mvn.woggioni.net/' + name = "Gitea" + url = uri(getProperty('gitea.maven.url')) + + credentials(HttpHeaderCredentials) { + name = "Authorization" + value = "token ${System.getenv()["PUBLISHER_TOKEN"]}" + } + + authentication { + header(HttpHeaderAuthentication) + } } + } publications { maven(MavenPublication) { diff --git a/cli/build.gradle b/cli/build.gradle index 76a16ba..35165f2 100644 --- a/cli/build.gradle +++ b/cli/build.gradle @@ -3,7 +3,6 @@ plugins { alias catalog.plugins.envelope } -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import net.woggioni.gradle.envelope.EnvelopeJarTask dependencies { @@ -23,11 +22,3 @@ tasks.named('envelopeRun', JavaExec) { args = ['--help'] } -tasks.withType(KotlinCompile.class).configureEach { - kotlinOptions { - languageVersion = "1.9" - apiVersion = "1.9" - jvmTarget = "17" - javaParameters = true - } -} diff --git a/gradle.properties b/gradle.properties index 85a0177..e94e2e0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,7 @@ -jzstd.version = 2023.07.15 +jzstd.version = 2024.04.14 jpms.module.name = net.woggioni.jzstd -lys.version = 2023.07.09 +lys.version = 2024.04.14 + +gitea.maven.url = https://gitea.woggioni.net/api/packages/woggioni/maven diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ae04661..48c0a02 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.5.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle b/settings.gradle index 9cdedb4..38e3a68 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,7 +1,7 @@ pluginManagement { repositories { maven { - url = 'https://woggioni.net/mvn/' + url = getProperty('gitea.maven.url') content { includeModule 'net.woggioni.gradle', 'envelope' includeModule 'net.woggioni.gradle.envelope', 'net.woggioni.gradle.envelope.gradle.plugin' @@ -18,7 +18,7 @@ pluginManagement { dependencyResolutionManagement { repositories { maven { - url = 'https://woggioni.net/mvn/' + url = getProperty('gitea.maven.url') content { includeGroup 'com.lys' }