在Jenkins安排特定的构建目标?

Sam*_* T. 8 continuous-integration hudson jenkins sonarqube

我工作的小组已经为Jenkins标准化了持续集成构建.代码签入触发标准构建,Cobertura分析并发布到Artifactory SNAPSHOT仓库.我刚刚完成了一个新的目标添加到主构建文件,它将启动Sonar运行,但我不想在每次签入时运行.

有没有办法在Jenkins中安排每晚构建特定的构建目标?Jenkins显然促进了预定的构建,但它每次都会运行项目的常规构建.我希望能够安排Sonar构建目标每晚运行.

当然,我可以创建一个单独的Jenkins项目,以便按计划运行Sonar目标,但是如果可以的话,我试图避免这样做.我们的Jenkins服务器已经有几百个版本; 为了安排每晚构建而加倍,这是不可取的.我找了一个可能有助于此的Jenkins插件,但我找不到任何东西.有什么建议?

And*_*ahl 7

这是一种方法,如果你可以使用cron或其他一些调度工具触发构建:

  • 使构建参数化,并使用构建文件中的参数来确定是否应运行Sonar构建目标.
  • 通过HTTP POST远程触发构建:将参数值作为表单http://[jenkins-host]/jobs/[jobname]/buildWithParameters.根据您的Jenkins版本和配置,您可能需要添加身份验证令牌并将其包含在您的网址中.
  • 使用用户名和密码验证您的POST.

    wget --auth-no-challenge --http-user=USERNAME --http-password=PASSWORD "https://[jenkins-host]/job/[jobname]/buildWithParameters?token=<token defined in job configuration>&<param>=<value>&<param2>=<value2>"