avito-android
48 строк · 1.7 Кб
1package com.avito2
3import org.gradle.api.Plugin4import org.gradle.api.Project5import org.gradle.api.provider.Provider6
7class PublishArtifactoryPlugin : Plugin<Project> {8
9override fun apply(project: Project) {10with(project) {11plugins.apply(PublishBasePlugin::class.java)12val artifactoryUrlProperty: Provider<String> = providers.gradleProperty("artifactoryUrl")13
14val artifactoryUser: Provider<String> = providers.gradleProperty("avito.artifactory.user")15
16val artifactoryPassword: Provider<String> = providers.gradleProperty("avito.artifactory.password")17
18val repoName = "Artifactory"19
20tasks.register("publishToArtifactory") {21it.group = "publication"22it.dependsOn(tasks.named("publishAllPublicationsTo${repoName}Repository"))23}24
25publishing.apply {26repositories { repos ->27with(repos) {28maven {29with(it) {30name = repoName31val artifactoryUrl = artifactoryUrlProperty.orNull32if (!artifactoryUrl.isNullOrBlank()) {33setUrl("${artifactoryUrl.removeSuffix("/")}/libs-release-local")34}35credentials {36it.username = artifactoryUser.orNull37it.password = artifactoryPassword.orNull38}39
40isAllowInsecureProtocol = true41}42}43}44}45}46}47}48}
49