自由式作业与管道作业中的Jenkins管道脚本添加

Jac*_*cob 6 svn jenkins jenkins-pipeline

目前,我正在尝试为我的微服务部署构建CI / CD管道。我创建了声明性管道脚本,包括在不同阶段进行存储库提取,构建,测试,Kubernetes部署等。而且我正在尝试触发提交后脚本,该脚本需要为每次对存储库的提交启动Jenkins作业。

当我尝试创建Jenkins职位时,我选择了New-> Free Style选项。但是没有可以添加管道脚本的区域。

当我选择New-> Pipeline时,我有空间添加管道脚本。但是我无法选择源代码管理来添加我的存储库检出链接和所有其他内容。

当我观察到时,我只看到自由样式的源代码管理选项。但是它没有添加我的管道脚本的区域。

在这里,我需要添加声明性管道脚本,还需要引用SVN源代码管理。而且我将脚本存储在Jenkins本身中。我没有使用Jenkinsfile(从SCM选项中轮询)。我该如何添加詹金斯的工作?我需要添加自由样式或管道吗?

Geo*_*kov 5

如果您希望在每次提交时触发您的Jenkins作业,那么必须由SVN服务器来触发该作业。这可以通过提交后的钩子来完成。我假设您在Jenkins中使用Subversion插件。SVN插件文档说明了如何创建提交挂钩:https : //wiki.jenkins.io/display/JENKINS/Subversion+Plugin

与轮询相比,此方法至少具有三个优点:

  1. 轮询只能每分钟执行一次,这意味着您将无法在每次提交时触发作业
  2. 当作业繁忙时,轮询停止,而提交挂钩将继续在队列中添加作业,从而确保分别检查每个提交。这也可能是一个缺点:当作业执行时间太长,并且提交次数很多时,每次提交的吞吐时间可能会很长。
  3. 每分钟轮询都会给SVN服务器带来额外的负载