Jenkins perforce触发了Windows的构建吗?

时间:2018-06-05 14:28:36

标签: jenkins triggers perforce build-automation

我完全处于黑暗中,希望你们能帮忙。

所以我有一个jenkins服务器设置连接到p4v,一切运行顺利。 我可以手动触发jenkins上的构建而没有任何问题。

现在我想设置所以每次我在特定文件夹中提交新内容时,Jenkins(使用perforce插件)会从perforce中进行实际轮询。

这似乎在linux上运行相当简单,只是在perforce中添加一个脚本文件,并使用curl运行该文件的perforce触发器向jenkins发送消息以启动构建。

然而,我正在运行Windows,我没有找到任何有关如何在Windows上解决此特定问题的信息。有人帮忙吗?

主要问题似乎是我在上面找到的所有教程都使用了一个不在windows中运行的.sh脚本,我想知道在Windows中是否有其他方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

我设法使用以下Jenkins插件解决了这个问题: https://wiki.jenkins.io/display/JENKINS/Build+Token+Trigger+Plugin

和curl: https://curl.haxx.se/

如果其他人在此处遇到同样的问题,我会逐步在Windows上进行设置。

  1. 在Jenkins项目中,启用:远程触发构建(例如,从脚本)
  2. 输入身份验证令牌,可以是任何内容,例如:buildCode
  3. 在p4 admin的命令行中输入:p4 triggers
  4. 在触发器中,文件转到底部
  5. 输入实际的p4触发器:SomeTriggerName change-commit //DepotLocationToTriggerOn/... %//DepotLocationOfScriptToBeTriggered/trigger.bat%
  6. 观察:当要在触发器中运行的批处理文件位于库路径中时,它必须被%

    包围
    1. 将trigger.bat提交到选择位置的p4。批处理文件需要包含以下代码C:\curl-7.60.0-win64-mingw\bin\curl.exe -u userID:APIToken JenkinsIP/job/TestJob/build?token=buildCode
    2. 卷曲必须位于p4v服务器计算机上的特定文件夹中。

      通过转到用户下拉菜单并输入Configure,然后点击API令牌,找到userID和APIToken。

      希望这可以帮助其他有类似问题的人:)。