From 95c3eaeb84d6dc44dba19db4e1b5136098e0195e Mon Sep 17 00:00:00 2001 From: Dries Samyn <5557551+driessamyn@users.noreply.github.com> Date: Fri, 31 Jan 2025 08:32:23 +0000 Subject: [PATCH] Build: fix publication. --- .github/workflows/mc-publish.yml | 21 +++++++++++++------ build.gradle.kts | 13 +++++++++++- buildSrc/build.gradle.kts | 1 - .../kapper.library-conventions.gradle.kts | 9 -------- .../kotlin/kapper.library-publish.gradle.kts | 1 - create_release.sh | 7 ++++++- gradle/libs.versions.toml | 4 +++- 7 files changed, 36 insertions(+), 20 deletions(-) diff --git a/.github/workflows/mc-publish.yml b/.github/workflows/mc-publish.yml index 64e4841..131e809 100644 --- a/.github/workflows/mc-publish.yml +++ b/.github/workflows/mc-publish.yml @@ -19,14 +19,23 @@ jobs: MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }} steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - uses: actions/setup-java@v4 with: java-version: '17' distribution: 'zulu' - - name: Setup Gradle - uses: gradle/actions/setup-gradle@0bdd871935719febd78681f197cd39af5b6e16a6 # v4.2.2 + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Show changes + run: git status + - name: History + run: git --no-pager log -n 100 --oneline + - name: Tags + run: git show-ref --tags + - name: Print version + run: ./gradlew printSemVersion --info + # TODO: remove the noDirtyCheck property once figured out why this thinks the working directory is dirty + - name: Print version (no dirty check) + run: ./gradlew -PnoDirtyCheck=true printSemVersion --info - name: Publish package - run: ./gradlew deployCentralPortal + run: ./gradlew -PnoDirtyCheck=true deployCentralPortal diff --git a/build.gradle.kts b/build.gradle.kts index f92523f..de4c5f9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,8 +1,8 @@ plugins { -// alias(libs.plugins.git.semver) kotlin("jvm") id("org.jetbrains.kotlinx.kover") alias(libs.plugins.sonar) + alias(libs.plugins.git.semver) } repositories { @@ -14,6 +14,17 @@ dependencies { kover(project(":kapper-coroutines")) } +semver { + changeLogFormat = git.semver.plugin.changelog.ChangeLogFormat.defaultChangeLog + releasePattern = "\\\\ABuild: release(?:\\\\([^()]+\\\\))?:" +} + +val projectVersion = semver.version +subprojects { + group = "net.samyn" + version = projectVersion +} + tasks.build { dependsOn(":koverHtmlReport") dependsOn(":koverXmlReport") diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index dc1cd59..a12d2d5 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -12,7 +12,6 @@ dependencies { implementation(libs.deployer.plugin) implementation(libs.dokka.plugin) implementation(libs.dokka.javadoc.plugin) - implementation(libs.git.semver.plugin) implementation(libs.ktlint.plugin) implementation(libs.kotlin.jvm.plugin) implementation(libs.kover.plugin) diff --git a/buildSrc/src/main/kotlin/kapper.library-conventions.gradle.kts b/buildSrc/src/main/kotlin/kapper.library-conventions.gradle.kts index 1219b24..532d86e 100644 --- a/buildSrc/src/main/kotlin/kapper.library-conventions.gradle.kts +++ b/buildSrc/src/main/kotlin/kapper.library-conventions.gradle.kts @@ -10,7 +10,6 @@ plugins { id("org.jlleitschuh.gradle.ktlint") id("org.jetbrains.dokka") id("org.jetbrains.dokka-javadoc") - id("com.github.jmongard.git-semver-plugin") } repositories { @@ -45,11 +44,6 @@ kover { } } -semver { - changeLogFormat = git.semver.plugin.changelog.ChangeLogFormat.defaultChangeLog - releasePattern = "\\Abuild: release(?:\\([^()]+\\))?:" -} - sourceSets { create("integrationTest") { compileClasspath += sourceSets.main.get().output @@ -57,9 +51,6 @@ sourceSets { } } -group = "net.samyn" -version = semver.version - tasks.jar { manifest { attributes( diff --git a/buildSrc/src/main/kotlin/kapper.library-publish.gradle.kts b/buildSrc/src/main/kotlin/kapper.library-publish.gradle.kts index 013feee..284a892 100644 --- a/buildSrc/src/main/kotlin/kapper.library-publish.gradle.kts +++ b/buildSrc/src/main/kotlin/kapper.library-publish.gradle.kts @@ -24,7 +24,6 @@ publishing { from(components["kotlin"]) artifact(tasks["sourcesJar"]) artifact(tasks["dokkaJavadocJar"]) - artifact(tasks["dokkaHtmlJar"]) } } } diff --git a/create_release.sh b/create_release.sh index 3fcda31..b1d899a 100644 --- a/create_release.sh +++ b/create_release.sh @@ -1,6 +1,11 @@ #!/bin/bash -# tag first +# Create a release commit first: +# git commit --allow-empty -m "build: release " +# Then tag +# git tag +# remember to push the tag +# git push origin tag=$(git describe --tags --abbrev=0) version=$(./gradlew -q printVersion) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 673e524..9ebb1cc 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,6 @@ [versions] dokka = "2.0.0" +git-semver = "0.14.0" junit-jupiter = "5.11.4" kotest = "6.0.0.M1" kotlin = "2.1.0" @@ -32,7 +33,6 @@ test-containers-junit-postgresql = { module = "org.testcontainers:postgresql", v deployer-plugin = { module = "io.deepmedia.tools.deployer:io.deepmedia.tools.deployer.gradle.plugin", version = "0.17.0" } dokka-plugin = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" } dokka-javadoc-plugin = { module = "org.jetbrains.dokka-javadoc:org.jetbrains.dokka-javadoc.gradle.plugin", version.ref = "dokka" } -git-semver-plugin = { module = "com.github.jmongard:git-semver-plugin", version = "0.14.0" } ktlint-plugin = { module = "org.jlleitschuh.gradle:ktlint-gradle", version = "12.1.2" } kotlin-jvm-plugin = { module = "org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin", version.ref = "kotlin" } kover-plugin = { module = "org.jetbrains.kotlinx:kover-gradle-plugin", version = "0.9.1" } @@ -44,6 +44,8 @@ test-dbs = ["mysql-driver", "postgresql-driver"] [plugins] sonar = { id = "org.sonarqube", version = "6.0.1.5171" } +git-semver = { id = "com.github.jmongard.git-semver-plugin", version.ref = "git-semver" } +