devops Pipeline Doc 中文版-3-Branches-and-Pull-Requests

rocl · 2017年12月15日 · 1483 次阅读

对应英文文档:https://jenkins.io/doc/book/pipeline/multibranch/
本系列主贴直达:https://testerhome.com/topics/11265

分支和拉取请求

Branches and Pull Requests

在上一节中,实现了 Jenkinsfile,这个文件能被迁入到源代码版本控制中。这部分涵盖了 Multibranch Pipeline 的概念, 建立在 Jenkinsfile 基础上, 提供更多的动态和自动功能。

Creating a Multibranch Pipeline

Multibranch Pipeline 项目使得在同一个项目中不同的分支需要实现不同的 Jenkinsfile。在一个 Multibranch Pipeline 项目中,Jenkins 将为不同分支的 Pipelines 自动发现/管理/执行,不同的分支都包含一个 Jenkinsfile 文件。

这将减少人工 Pipeline 的创建和管理。

创建一个 Multibranch Pipeline:

•在 Jenkins home 页上点击” new Item”。

•为你的 Pipeline 输入名字,选择 Multibranch Pipeline,然后点击 OK。

注意:Jenkins 用 Pipeline 的名字在磁盘上创建目录。包含空格的 Pipeline 名字可能有未查到的 bug,脚本不期望路径包含空格。

•添加一个 Branch Source(例如 Git),输入源代码库的地址。

•保存多分支 Pipeline 项目。

一旦保存,Jenkins 将自动扫描代码库,为库中包含 Jenkinsfile 的每一个分支创建合适的项。

默认情况下,Jenkins 不会自动索引用于分支添加或删除的存储库 (除非使用组织文件夹), 因此将 Multibranch Pipeline 配置为定期索引在配置中通常很有用:

附加的环境变量 (Additional Environment Variables)

Multibranch Pipeline 暴露了关于分支的附加信息,分支可以通过全局变量 env 创建,例如:
BRANCH_NAME
这个 Pipeline 将要被执行的分支,例如 master 分支。
CHANGE_ID
各种改变请求的标识符,例如 a pull request 号码/数字。

支持 Pull Requests(Supporting Pull Requests)

GitHub 或者 Bitbucket 分支源,Multibranch Pipeline 能被用来验证 pull/change 请求。这个功能被插件 github-branch-source 和插件 cloudbees-bitbucket-branch-source 提供。请查阅相关文档得到如何使用的进一步信息。

使用组织目录 (Using Organization Folders)

Organization Folder 使 Jenkins 能监控整个 GitHub 组织或者 Bitbucket Team/Project,自动为代码库创建新的 Multibranch Pipeline 项目,代码库包含分支和包含 Jenkinsfile 的 pull request。
现在,这个功能仅仅存在于 GitHub 和 bitbucket,功能分别被插件 github-branch-source 和插件 cloudbees-bitbucket-branch-source 提供。

本系列主贴直达:https://testerhome.com/topics/11265

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 0 条回复 时间 点赞
rocl [Jenkins Pipeline 插件] Pipeline Doc 中文版合集 中提及了此贴 12月18日 10:43
rocl 如何攻破 Web 软件 (How to break web software) 中提及了此贴 05月09日 11:32
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册