【问题标题】:Artifactory as Post-build Actions in Jenkins pipelineArtifactory 作为 Jenkins 管道中的构建后操作
【发布时间】:2023-06-01 14:55:01
【问题描述】:

我有一个 Jenkins Job 来构建我的 maven 项目。完成后,它会执行“构建后操作”,使用 Artifactory 插件将 Maven 工件部署到 Artifactory。

现在我已将此作业转换为 Jenkins 流水线。这看起来像这样:

        def artifactoryMaven = Artifactory.newMavenBuild()
        artifactoryMaven.tool = 'maven' 
        artifactoryMaven.deployer releaseRepo:'libs-releases', snapshotRepo:'libs-snapshots', server: server
        artifactoryMaven.resolver releaseRepo:'libs-releases', snapshotRepo:'libs-snapshots', server: server

        artifactoryMaven.run pom: 'pom.xml', goals: goals, buildInfo: buildInfo

但我更喜欢以前的方法,其中构建和部署是分开的问题。是否有捷径可寻? “正常”工件只需要一个复选框(部署 Maven 工件),所以我希望有一个单行。或者,我想我可以使用上传规范?但我希望尽可能避免这种情况。

非常感谢任何帮助。

【问题讨论】:

    标签: artifactory jenkins-pipeline


    【解决方案1】:

    您可以将以下代码添加到您的 Pipeline 脚本中,以确定您的 maven 工件是否部署到 Artifactory:

    def deployToArtifactory = false rtMaven.deployer.deployArtifacts(deployToArtifactory)

    【讨论】:

    • 只是检查我是否理解正确:这仍然意味着我必须使用 Artifactory.newMavenBuild() 让 artifactory 启动 maven,对吗?我不能对 artifactory 说:这里有一个已经构建好的 maven 项目,你去弄清楚要部署什么然后去做?
    最近更新 更多