Skip to content

Commit

Permalink
build: Set sign task as dependency of publish tasks (#93)
Browse files Browse the repository at this point in the history
  • Loading branch information
petertrr authored Nov 10, 2023
1 parent 9ff9695 commit ba34fd8
Showing 1 changed file with 8 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ import org.gradle.api.publish.PublishingExtension
import org.gradle.api.publish.maven.MavenPublication
import org.gradle.api.publish.maven.plugins.MavenPublishPlugin
import org.gradle.api.publish.maven.tasks.AbstractPublishToMaven
import org.gradle.api.publish.maven.tasks.PublishToMavenRepository
import org.gradle.api.tasks.bundling.Jar
import org.gradle.kotlin.dsl.*
import org.gradle.nativeplatform.platform.internal.DefaultNativePlatform
import org.gradle.plugins.signing.Sign
import org.gradle.plugins.signing.SigningExtension
import org.gradle.plugins.signing.SigningPlugin

Expand Down Expand Up @@ -111,6 +113,12 @@ private fun Project.configureSigning() {
logger.lifecycle("The following publications are getting signed: ${extensions.getByType<PublishingExtension>().publications.map { it.name }}")
sign(*extensions.getByType<PublishingExtension>().publications.toTypedArray())
}

tasks.withType<PublishToMavenRepository>().configureEach {
// We have a single Javadoc artifact shared by all platforms, hence all publications depend on signing of this artifact.
// This causes weird implicit dependencies, like `publishJsPublication...` depends on `signJvmPublication`.
dependsOn(tasks.withType<Sign>())
}
}

private fun Project.configureNexusPublishing() {
Expand Down

0 comments on commit ba34fd8

Please sign in to comment.