Jenkins 多分支流水线: 怎样创建用于 Jenkins 状态查抄的 GitHub 应用 ...

打印 上一主题 下一主题

主题 1394|帖子 1394|积分 4197

利用 Jenkins 多分支流水线时,您可以将状态查抄与 GitHub 拉取请求集成。
以下是状态查抄的示例

要实现这些类型的状态查抄,您必要创建一个与 Jenkins 主实例集成的 GitHub 应用。
在本博客中,我们将先容怎样创建一个 GitHub 应用,以便在流水线中启用状态查抄。
创建 GitHub 应用


要创建 GitHub 应用,请选择您的 GitHub 个人资料,然后转到“设置”,如下所示。

向下滚动并选择开发者设置
 

 然后点击 New GitHub App 按钮创建一个新的 GitHub 应用 


您必要在配置中填写以下详细信息。

  • GitHub 应用名称:此名称必须是唯一的。比方,jenkins-auth-app。请将其替换为所需的名称。
  • 主页 URL:输入您的 Jenkins URL。
  • Webhook URL:包罗 webhook 路径的 Jenkins URL(http://3.107.8.66:8080/github-webhook/)
 

 

 

 

在“仓库权限”下,从下拉菜单中选择以下权限。

  • 管理:只读
  • 查抄:读写
  • 提交状态:读写
  • 内容:只读(用于在 git fetch 期间读取 Jenkinsfile 和仓库内容)。
  • 元数据:只读
  • 拉取请求:只读
 

在“订阅事件”下,选择以下事件:

  • 查抄运行
  • 查抄套件
  • 拉取请求
  • 推送
  • 代码库

 
 创建应用程序后,您将看到生成私钥的关照,如下所示。

单击生成私钥选项,然后单击生成私钥按钮,如下所示。
 

它会下载一个私钥。
现在,您必要利用以下命令将密钥转换为 Jenkins 可以利用的格式。将 key-in-your-downloads-folder.pem 替换为您下载的私钥。
  1. ninjamac@ip-192-168-1-95 key % openssl pkcs8 -topk8 -inform PEM -outform PEM -in rockjenkinsgithubapp.2025-04-18.private-key.pem -out converted-github-app.pem -nocrypt
复制代码

我们必要将转换后的密钥添加到 Jenkins 凭证中。
安装 Github 应用


现在,在应用配置页面上,您将看到一个名为“安装应用”的选项,如下所示。点击该选项即可为全部仓库启用此应用。
 

您可以选择所需的全部或单个存储库,然后单击“安装”。


将私钥添加到 Jenkins 凭证


现在,我们必要将转换后的 PEM 密钥添加到 Jenkins 凭证中。
前往 Jenkins 主页 --> 管理 Jenkins --> 凭证。

在“根据”下,选择全局选项。
然后,选择“添加根据”选项以添加新根据。
现在,您必要选择“类型”为“GitHub 应用”。

我们还必要 Github 应用 ID。您可以从 Github 应用配置中获取它,如下所示。
 

 在key字段中,添加我们之前转换好的converted-github-app.pem私有文件内容,然后点击Create按钮,如下图所示。

差不多就是如许了。
现在,您可以在多分支管道中利用此凭证来启用 PR 期间的查抄。
提交PR验证Jenkins status

修改readme文件,然后commit到develop分支,然后创建PR到master分支。

这时github 会通过github app来关照Jenkins webhook,触发PR pipeline

从下面的示例中可以看到有一个状态查抄已经乐成,单还有一个状态还没有完成。 


我们还可以在github -repo上设置分支掩护rule: 在归并之前启用状态查抄


总结

通过安装github app,你在通过github创建一个拉取请求的时候,会通过Jenkins webhook触发Jenkins PR 流水线,Jenkins 会将流水线的状态上报给github,如许可以确保该PR请求在从 Jenkins 构建作业获取所需的状态查抄关照之前不会归并,通过与掩护分支规则结合,你可以确保分支被归并之前必须通过全部的状态查抄,从而有用地掩护分支。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

大连全瓷种植牙齿制作中心

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表