当前位置: 首页 > 知识库问答 >
问题:

Jenkins DSL 多分支流水线 github 推送触发器

徐学潞
2023-03-14

我正在使用jenkins dsl插件多分支管线作业(https://jenkinsci.github.io/job-dsl-plugin/#path/multibranchPipelineJob)以创建多分支管道。我创建了jenkinsfile,它处理每个分支的构建作业。我不知道如何通过管道将github推送触发器作为代码启用。我能找到的所有示例都使用jenkins web UI或pollscm选项。请有人帮助我们如何通过代码实现这一点。

共有1个答案

东方河
2023-03-14

项目托管在github中。在jenkins dsl multibranchpipeline中,我最初使用的是git branchsource。那么推送事件不会触发构建。在我开始使用github branchsource之后,推送事件会自动生成构建。

即。

multibranchPipelineJob('example') {
branchSources {
    git {
        id('12121212') // IMPORTANT: use a constant and unique identifier
        remote('https://github.com/jenkinsci/job-dsl-plugin.git')
        credentialsId('github-ci')
        includes('JENKINS-*')
    }
}
}

被改为

multibranchPipelineJob('example') {
branchSources {
    github {
        id('23232323') // IMPORTANT: use a constant and unique identifier
        scanCredentialsId('github-ci')
        repoOwner('OwnerName')
        repository('job-dsl-plugin')
    }
}
}
 类似资料:
  • 在我的项目中,我创建了一个名为的新分支,并希望将该分支推送到服务器,但它似乎一直在推主分支。 github: 两个GitHub分支:Master和Dev 在服务器上: 我有一个生产网站:例如。com 我的工作流程: 我在本地工作,然后推送到GitHub Dev 这就是我想做的。 我目前被困在将Dev分支推送到Staging服务器:dev.example.com 这是我的本地git配置文件: 在我的

  • 在freestyle作业中,在stage Build trigger上有一个名为“GitHub hook trigger for GITScm polling”的选项。 屏幕截图如下: 与gitlab配置中的webhook一起使用”http://myjenkins/gitlab/notify_commit“它工作正常,这意味着在将某些内容推送到存储库时将自动触发生成。但为什么在多分支管道中只有一个

  • 问题内容: 有什么方法可以将成功构建的功能分支推送到另一个分支? 我想要这样的东西: Git存储库(Gitorious / GitHub等)。分行: 掌握(当前项目的代码) 质量保证(代码等待质量检查的分支机构) 功能分支(许多远程分支,开发人员可以在其中开发其功能) 开发人员应仅具有对母版的读取访问权限,并且对其功能分支进行读/写QA读/写质量保证分支TeamCity-读/写母版,质量保证,仅对

  • 我有一个场景,但我有两个项目(a和B),都在Jenkins中配置了多分支管道作业,问题是项目B依赖于项目a。 所以我发现有时候当我在项目A中签入代码时,我也需要在项目A构建后构建项目B。现在,在我开始调查管道构建之前,我将每个分支都有一个作业,然后在Jenkins中为相应的分支触发项目B的适当作业。 我想在Jenkins文件中设置什么,这样当ProjectA/develop执行时,它就会触发Pro

  • 我刚开始流口水,遇到了一个问题。 我简化了规则以显示问题: 基本上,我想计算特定路段上发生的事件(路段是道路的一部分)。当同一链接上发生3个事件时,我希望触发规则。 上面的规则几乎起作用了,但是当它发射时,它发射了3次,每个事件发射一次。我只希望它发射一次。 我错过了什么? 非常感谢。

  • 我有一个参数化的Jenkins多分支管道,使用GitHub repo作为Jenkins文件和一些脚本的源。管道被配置为在Webhook上触发分支和拉请求,但我还希望只对主分支使用参数化的cron触发器,特别是在工作日每4小时一次。 我使用声明性管道语法,但如果必要,我愿意使用脚本化管道。 我使用参数化调度器插件来实现带有参数的cron触发器。 这个管道示例捕获了我试图实现但不支持的内容: 这项功能