-
Notifications
You must be signed in to change notification settings - Fork 110
/
MavenPublishPlugin.kt
28 lines (22 loc) · 921 Bytes
/
MavenPublishPlugin.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package com.vanniktech.maven.publish
import com.vanniktech.maven.publish.legacy.configurePlatform
import com.vanniktech.maven.publish.legacy.setCoordinates
import org.gradle.api.Plugin
import org.gradle.api.Project
open class MavenPublishPlugin : Plugin<Project> {
override fun apply(project: Project) {
project.plugins.apply(MavenPublishBasePlugin::class.java)
val baseExtension = project.baseExtension
project.setCoordinates()
project.configurePlatform()
val sonatypeHost = project.findOptionalProperty("SONATYPE_HOST")
if (sonatypeHost != null && sonatypeHost.isNotBlank()) {
baseExtension.publishToMavenCentral(SonatypeHost.valueOf(sonatypeHost))
}
val releaseSigning = project.findOptionalProperty("RELEASE_SIGNING_ENABLED")?.toBoolean()
if (releaseSigning == true) {
baseExtension.signAllPublications()
}
baseExtension.pomFromGradleProperties()
}
}