提问者:小点点

使用Jenkinsfile管道Jenkins-触发器远程构建


我为我们的CI/CD管道设置了Jenkinsfile,它在Git操作上运行,如拉取请求、分支创建、标记推送等。

在此设置之前,我习惯于在JenkinsUI中设置Jenkins构建作业。这样做的好处是,我可以设置可以远程触发的专用构建作业,并且独立于git网络钩子操作。我可以使用参数对作业endpoint执行POST以触发各种操作。

此处会引用该流程的文档——见“触发器远程构建”

我还可以点击UI中的“构建”或“使用参数构建”的大按钮,这非常好。

如何使用Jenkinsfile做到这一点?这甚至可以在Jenkinsfile中的管道定义中定义构建作业吗?即定义具有专用URL的函数/构建作业,这些URL可以在JenkinsURL上调用,而不依赖于网络钩子回调?

这里最好的做法是什么?

感谢您的任何提示,参考,建议!


共1个答案

匿名用户

我建议从多分支管道开始。一般来说,您会得到您提到的所有内容,但会好一点。因为这些参数可以在您的Jenkinsfile中定义。简而言之,就这样做:

  1. 创建一个Jenkinsfile并将其检查到Git存储库中。
  2. 要创建多分支管道:单击主页上Jenkins新项目。
  3. 输入管道的名称,选择多分支管道并单击确定。
  4. 添加一个分支源(例如,Git)并输入存储库的位置。
  5. 保存多分支管道项目。

声明性Jenkinsfile可以如下所示:

    pipeline {
      agent any
      parameters {
        string(name: 'Greeting', defaultValue: 'Hello', description:  'How should I greet the world?')
      } 
      stages {
        stage('Example') {
          steps {
            echo "${params.Greeting} World!"
          }
        }
      }
    }

一个很好的屏幕教程可以在这里找到:https://www.jenkins.io/doc/book/pipeline/multibranch/

相关问题