У меня есть плагин 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)
}
@EyalBenMoshe Ну, возможно, проблема в этом. Во всяком случае, я не понимаю, как это исправить. Мой build.gradle практически идентичен примерам в интернете
Хорошо, я нашел источник проблемы. Вы должны использовать artifactoryPublish вместо artifactoryDeploy
Это здорово слышать! Вы хотите добавить это в качестве ответа здесь?
@EyalBenMoshe конечно




Хорошо, я нашел источник проблемы. Вы должны заменить artifactoryDeploy на команду artifactoryPublish.
Одной только ArtifactoryPublish должно быть достаточно
Может ли быть так, что публикации, на которые ссылается плагин DSL, не выбирают никаких артефактов? Вы можете использовать этот пример проектов в качестве эталона — github.com/jfrog/project-examples/tree/master/gradle-examples