Плагин Artifactory Gradle развертывает только build.info

У меня есть плагин Gradle, который я хочу развернуть на сервере Artifactory с Плагин Gradle Artifactory.

Проблема в том, что artifactoryDeploy задача публикует только build.info метаинформацию и пропускает реальные артефакты. Вы можете увидеть это в логах.

> Task :artifactoryDeploy
Deploying build info...
Build-info successfully deployed. Browse it in Artifactory under http://my-company.artifactory.com/artifactory/webapp/builds/gradle-plugin/Thu%20Mar%2017%2017:07:21%20MSK%202022

BUILD SUCCESSFUL in 1s

Вот build.gradle. Что я делаю не так?

plugins {
    id 'java-gradle-plugin'
    id "com.jfrog.artifactory" version '4.27.1'
    id 'maven-publish'
    id 'com.gradle.plugin-publish' version '0.18.0'
}

gradlePlugin {
    plugins {
        somePlugin {
            id = 'com.example.gradle.plugin'
            displayName = 'Gradle Plugin'
            implementationClass = 'com.example.gradle.plugin.Plugin'
        }
    }
}

pluginBundle {
    website = 'https://company.gitlab.com/project'
    vcsUrl = 'https://company.gitlab.com/project'
    tags = ['plugin', 'codestyle', 'checkstyle', 'pmd']
}

publishing {
    publications {
        pluginPublication(MavenPublication) {
            from components.java
            groupId project.group
            artifactId 'my-plugin'
            version project.version
        }
    }
}

artifactory {
    contextUrl = 'http://my-company.artifactory.com'
    publish {
        repository {
            repoKey = 'gradle-plugins'
            username = project.properties['publishUser'] ?: 'user'
            password = project.properties['publishPassword'] ?: 'password'
        }
        defaults {
            publications(publishing.publications.names.toArray(String[]::new))
            publishBuildInfo = true
            publishArtifacts = true
            publishPom = true
            publishIvy = true
        }
    }
    // Redefine basic properties of the build info object
    def date = new Date().toString()
    clientConfig.setIncludeEnvVars(true)
    clientConfig.setEnvVarsExcludePatterns('*password*,*secret*')
    clientConfig.setEnvVarsIncludePatterns('*not-secret*')
    clientConfig.info.addEnvironmentProperty('test.adding.dynVar', date)
    clientConfig.info.setBuildName('MTS-Metric-Gradle-Plugin')
    clientConfig.info.setBuildNumber(date)
    clientConfig.timeout = 20
    clientConfig.setInsecureTls(true)
}

Может ли быть так, что публикации, на которые ссылается плагин DSL, не выбирают никаких артефактов? Вы можете использовать этот пример проектов в качестве эталона — github.com/jfrog/project-examples/tree/master/gradle-example‌​s

Eyal Ben Moshe 17.03.2022 21:43

@EyalBenMoshe Ну, возможно, проблема в этом. Во всяком случае, я не понимаю, как это исправить. Мой build.gradle практически идентичен примерам в интернете

Semyon Kirekov 18.03.2022 11:47

Хорошо, я нашел источник проблемы. Вы должны использовать artifactoryPublish вместо artifactoryDeploy

Semyon Kirekov 18.03.2022 13:05

Это здорово слышать! Вы хотите добавить это в качестве ответа здесь?

Eyal Ben Moshe 19.03.2022 03:02

@EyalBenMoshe конечно

Semyon Kirekov 19.03.2022 10:32
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
5
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Хорошо, я нашел источник проблемы. Вы должны заменить artifactoryDeploy на команду artifactoryPublish.

Одной только ArtifactoryPublish должно быть достаточно

yahavi 19.03.2022 18:48

Другие вопросы по теме