Refactor signing publications (#281)

Add a new function for signing publications

## Motivation and Context
In the [latest release
build](https://github.com/modelcontextprotocol/kotlin-sdk/actions/runs/17830036899/job/50692417727),
the artifact signing tasks were not included

## Breaking Changes
no

## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update

## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [ ] New and existing tests pass locally
- [ ] I have added appropriate error handling
- [ ] I have added or updated documentation as needed
This commit is contained in:
Pavel Gorgulov 2025-09-19 12:50:32 +02:00 • committed by GitHub
commit b1e9871a78
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,3 +1,5 @@
import com.vanniktech.maven.publish.MavenPublishBaseExtension
plugins {
`maven-publish`
id("com.vanniktech.maven.publish")
@ -6,6 +8,7 @@ plugins {
mavenPublishing {
publishToMavenCentral(automaticRelease = true)
configureSigning(this)
pom {
name = project.name
@ -42,13 +45,7 @@ mavenPublishing {
}
}
publishing {
repositories {
mavenLocal()
}
}
signing {
private fun Project.configureSigning(mavenPublishing: MavenPublishBaseExtension) {
val gpgKeyName = "GPG_SIGNING_KEY"
val gpgPassphraseName = "SIGNING_PASSPHRASE"
val signingKey = providers.environmentVariable(gpgKeyName)
@ -57,7 +54,7 @@ signing {
.orElse(providers.gradleProperty(gpgPassphraseName))
if (signingKey.isPresent) {
useInMemoryPgpKeys(signingKey.get(), signingPassphrase.get())
sign(publishing.publications)
mavenPublishing.signAllPublications()
signing.useInMemoryPgpKeys(signingKey.get(), signingPassphrase.get())
}
}