首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Artifactory插件从Jenkins发布项目文件“包括模式”

使用Artifactory插件从Jenkins发布项目文件“包括模式”
EN

Stack Overflow用户
提问于 2016-09-15 19:18:40
回答 1查看 1.9K关注 0票数 1

在Jenkins (2.7)中,我有一个简单的Maven 3 Java项目。它使用Jenkins Artifactory插件构建标准项目JAR并将其发布到Artifactory;没有问题。

目标

现在,我需要在JAR旁边发布一个任意文件deploycfg.yml,而不是在JAR中。因此,从存储库的角度来看,它应该如下所示:

代码语言:javascript
运行
复制
com/acme/sbgroov/1.0.0.7/
-- sbgroov-1.0.0.7.jar
-- sbgroov-1.0.0.7.md5
-- sbgroov-1.0.0.7.sha
-- deploycfg.yml       <---publish this to Artifactory too!

尝试过

我修改了pom以在构建时将deploycfg.yml移动到/target,然后在Jenkins插件中尝试了用于Include Patterns的不同配置,以获取用于发布的文件:

代码语言:javascript
运行
复制
*.jar *.yml
**/*.jar **/*.yml
*.jar deploycfg.yml

JAR被发布到Artifactory,而不是deploycfg.yml。尝试将yml文件放在/target/maven-archiver中而不是/target中,但这也不起作用。不知道此时还能做什么,也许Include Patterns的起点不是我想的那样,/target

EN

Stack Overflow用户

发布于 2016-12-06 15:23:16

我能够使用管道Groovy脚本来完成这个任务。

代码语言:javascript
运行
复制
println "Uploading artifacts to Artifactory.  Upload target is: ${uploadTarget}"

def server = Artifactory.server 'artifactory'
def uploadSpec = """{
    "files": [
        {
            "pattern": "target/${pom.artifactId}-${pom.version}.jar",
            "target": "${uploadTarget}/${pom.artifactId}-${pom.version}.jar"
        },
        {
            "pattern": "target/${pom.artifactId}-${pom.version}.war",
            "target": "${uploadTarget}/${pom.artifactId}-${pom.version}.war"
        },
        {
            "pattern": "manifest.yml",
            "target": "${uploadTarget}/manifest.yml"
        }
    ]
}"""

def buildInfo = server.upload(uploadSpec)

// Publish build information.
buildInfo.env.capture = true
server.publishBuildInfo(buildInfo)

但是,我遇到了同样的问题,您在Jenkins中使用了传统的Artifactory插件UI。我很好奇,你最后弄明白了吗?

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39518756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档