avito-android

Форк
0
48 строк · 1.7 Кб
1
package com.avito
2

3
import org.gradle.api.Plugin
4
import org.gradle.api.Project
5
import org.gradle.api.provider.Provider
6

7
class PublishArtifactoryPlugin : Plugin<Project> {
8

9
    override fun apply(project: Project) {
10
        with(project) {
11
            plugins.apply(PublishBasePlugin::class.java)
12
            val artifactoryUrlProperty: Provider<String> = providers.gradleProperty("artifactoryUrl")
13

14
            val artifactoryUser: Provider<String> = providers.gradleProperty("avito.artifactory.user")
15

16
            val artifactoryPassword: Provider<String> = providers.gradleProperty("avito.artifactory.password")
17

18
            val repoName = "Artifactory"
19

20
            tasks.register("publishToArtifactory") {
21
                it.group = "publication"
22
                it.dependsOn(tasks.named("publishAllPublicationsTo${repoName}Repository"))
23
            }
24

25
            publishing.apply {
26
                repositories { repos ->
27
                    with(repos) {
28
                        maven {
29
                            with(it) {
30
                                name = repoName
31
                                val artifactoryUrl = artifactoryUrlProperty.orNull
32
                                if (!artifactoryUrl.isNullOrBlank()) {
33
                                    setUrl("${artifactoryUrl.removeSuffix("/")}/libs-release-local")
34
                                }
35
                                credentials {
36
                                    it.username = artifactoryUser.orNull
37
                                    it.password = artifactoryPassword.orNull
38
                                }
39

40
                                isAllowInsecureProtocol = true
41
                            }
42
                        }
43
                    }
44
                }
45
            }
46
        }
47
    }
48
}
49

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.