import org.gradle.api.publish.PublishingExtension import org.gradle.api.publish.maven.MavenPublication import org.gradle.kotlin.dsl.configure apply(plugin = "maven-publish") val publishGroup = providers.gradleProperty("PUBLISH_GROUP").getOrElse("com.xuqm") val publishVersion = providers.gradleProperty("PUBLISH_VERSION").getOrElse("0.1.0-SNAPSHOT") group = publishGroup version = publishVersion configure { publications { register("release") { groupId = publishGroup artifactId = project.name version = publishVersion afterEvaluate { from(components.findByName("release")) } } } repositories { maven { val isSnapshot = publishVersion.endsWith("SNAPSHOT") name = if (isSnapshot) "xuqmSnapshot" else "xuqmRelease" url = uri( if (isSnapshot) { "https://nexus.xuqinmin.com/repository/android-snapshot/" } else { "https://nexus.xuqinmin.com/repository/android-hosted/" }, ) credentials { username = providers.gradleProperty("nexus.username") .orElse(providers.environmentVariable("NEXUS_USERNAME")) .orNull password = providers.gradleProperty("nexus.password") .orElse(providers.environmentVariable("NEXUS_PASSWORD")) .orNull } } } }