git - Git分支上的Jenkins管道多触发器选项
问题描述
我的要求是在创建发布分支后立即触发 CI/CD 管道,对发布分支进行提交和合并。我的发布分支的名称会因发布而异,例如release/v1. 0, release/v1. 1 or release/v2.0
等。
由于安全方面的原因,我们不允许使用 web 钩子作为 git 触发选项,而是使用 Jenkins 的 SCM poll (every minute) 选项来触发管道。
我们在这里面临的问题是下面的 Jenkins 管道片段未能指向release/v1.0
git checkout。每当创建或合并或提交发布分支时,我们的管道都应该触发。
stage ('Git Checkout')
{
git(url: "${GIT_URL}",credentialsId: "${GIT_CREDENTIALS_ID}",branch: 'release/*')
}
解决方案
这可以通过在 Jenkins 管道中使用低于 Git Stage 来解决。
stage ('GIT CHECKOUT')
{
checkout poll:true, scm: ([$class: 'GitSCM',
branches: [[name: 'origin/release/*']],
userRemoteConfigs: [[credentialsId: "${GIT_CREDENTIALS_ID}", url: "${GIT_URL}"]]
])
}
推荐阅读
- angular - Firebase 使用 ASP.NET Core 后端托管 Angular 应用程序,但如何连接到我的后端
- c++ - CHOLMOD 稀疏密集乘法问题
- python - 如何从文本中提取像 (010000 AAAAAAAAA) 这样的字符串
- php - 检索特定 xml 数据的问题
- python - 是否有可能在由 selenium 打开的 chrome 浏览器顶部弹出 wx.message_dialog?
- python - Gurobi 为可忽略的约束生成不同的解决方案
- java - 在 JNI 案例中调用 openDexFile 函数后,Env 停止正常工作
- java - QueryDsl 中“不同”查询的排序结果
- java - 如何排除父pom对孩子的依赖?
- django-rest-framework - 返回文件内容而不是文件位置链接