【问题标题】:Jenkins - trigger chain of builds with job names as parameterJenkins - 以作业名称作为参数触发构建链
【发布时间】:2013-06-08 15:46:10
【问题描述】:

我想要一些有经验的建议...

我想接受作业名称列表(逗号或空格分隔的字符串)作为参数。

Jenkins 需要将它们构建为一个链,一个接一个,按照它们输入的顺序(我在触发它们之前验证列表)。列表长度未知。

请提出可能的解决方案(我正在考虑 groovy 脚本、带有 curl 和 Jason 调用的 shell 或 python)。

欢迎提出任何建议!

【问题讨论】:

    标签: python groovy jenkins


    【解决方案1】:

    我选择使用通过 groovy 构建步骤执行的 groovy 脚本。除了我发布的in this question 所述的参数丢失的主要问题之外,它还可以很好地解决。

    我们非常欢迎任何帮助。

    我希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      首先,将您的职位列表放在 your_jobs_lists.txt 中,每行每个职位名称。
      第二pip install python-jenkins 为 jenkins REST API 安装 python 包装器.然后使用下面的 python 脚本来运行你的作业。

      #!/usr/bin/python
      import jenkins
      jenkins_url = "http://your_jenkins_server_url/"
      username = "youruserid"
      token = "yourToken"
      j = jenkins.Jenkins(jenkins_url, username=username, password=token)
      
      if __name__ == "__main__":
          fp = open("your_jobs_lists.txt", "r")
          alllines = fp.readlines()
          for jobname in alllines:
              jobname = jobname.strip('\n')
              j.build_job(jobname,{'param1': 'test value 1', 'param2': 'test value 2'},{'token': token})            
              time.sleep(3)
          print "Done!"
      

      对于那些不知道在哪里找到令牌的人,这里是:

      登录 jenkins -> 从网页顶部单击您的用户 ID -> 配置 -> 显示 API 令牌...

      尽情享受吧。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-08
        • 2023-03-18
        • 1970-01-01
        • 2015-03-20
        相关资源
        最近更新 更多