Closed christian-draeger closed 3 years ago
1.0.0 release waits for #127
multi module spilt (#69) done ✅
after multi module split we have following modules that should be released separat:
and an aggregator release that is including all the modules and is build from preject root--> it.skrape:skrapeit
I have a fix for this I think.
The issue with the fetchers modules is in how they are referenced throughout the project. Gradle is treating the root fetchers folder as a module.
In settings.gradle.kts, include the modules this way, then in all the imports change ":fetchers:submodule" to ":submodule"
include(":http-fetcher")
include(":ktor-fetcher")
include(":browser-fetcher")
project(":basis-fetcher").projectDir = file("fetcher/basis-fetcher")
project(":http-fetcher").projectDir = file("fetcher/http-fetcher")
project(":ktor-fetcher").projectDir = file("fetcher/ktor-fetcher")
project(":browser-fetcher").projectDir = file("fetcher/browser-fetcher")
Place a "gradle.properties" in every module you want to publish with
POM_ARTIFACT_ID=
POM_NAME=
POM_DESCRIPTION=
VERSION_NAME=
In the root build.gradle, we want to make sure that the publishing plugin is only being applied to the artifacts you want to publish.
So we can declare, for instance, val excludeFromPublishing = listOf( "dsl", "examples", "test-utils", "scraping")
Then, remove apply(plugin = "com.vanniktech.maven.publish")
from the allprojects block and in the subprojects block
subprojects {
if (this.name !in excludeFromPublishing) {
apply(plugin = "com.vanniktech.maven.publish")
}
//.....
}
I tested this by publishing to mavenLocal and it seemed to work.
Ok will try as soon as I am back 2 keyboard :) big thx for figuring out 🙂
Since we have submodules like core, mockmvc, ktor, and more in the future it would be nice to have a unified way of releasing these artifacts to mVen central. Currently we are using a gradle plugin to this with the core module. But all modules should support the release process. If that would be possible via github actions somehow it would be awesome.