从工件中选择工件以在Jenkins中部署管道作业

时间:2018-10-12 16:48:30

标签: jenkins jenkins-pipeline artifactory

这可能吗?假设我有2个工作。一种用于构建工件并将其上传到最新版本的工件。将工件部署到服务器的另一项工作。但是我想选择工件版本。假设进行了一次部署并且无法正常工作,所以我重新部署并选择了先前的工件(或我想要选择的工件)。詹金斯在一个小人项目中这可能吗?就像参数化的构建或类似的东西。

谢谢

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

它将与pipelin一起使用。我只是在管道作业中。

示例:https://wiki.jenkins.io/display/JENKINS/Maven+Metadata+Plugin

  1. 假设您有2个工作。

  2. 作业A和作业B。(两个管道作业。)

         Job A -> Build and push the artifacts to Artifactory. 
         Job B -> Fetch the artifact from Artifactory and deploy.
    
    1. 安装Maven Meta插件。 https://wiki.jenkins.io/display/JENKINS/Maven+Metadata+Plugin
    2. 转到工作B
      1. “此构建参数化”复选框,从出现的下拉列表中选择“列出maven工件版本”,
        配置您要检索版本的工件
      2. 将参数命名为deploy_version
    3. 在作业B中->选择版本并单击“生成”。
    4. 在管道脚本中,将所选版本接收为param.deploy_version。
    5. 因为您知道构件版本和构件URL。您可以使用Jenkisn中的CURL / httprequest插件下载所需的
      Artifactory中的工件(我正在使用Maven Ansible工件
      插件下载)
    6. 继续进行部署。

答案 1 :(得分:0)

根据此答案:

https://stackoverflow.com/a/34781604/3957754

Jenkins的工件插件可以选择“解决”工件,即从Artifactory下载工件。但这可能需要付费$ _ $

的专业版

使用人工詹金斯插件(带有付款方式)下载人工产物

使用命令行和Maven下载工件

来源:How can I download a specific Maven artifact in one command line?