整合 Git 仓库快速部署组件
本文档适合同时使用 Rainbond、GitLab 体系企业的 应用运维人员 阅读。
本文档适合的场景是:通过演示用例,了解 rainbond 如何和 GitLab 进行OAuth 对接,并实现对 GitLab 中项目的快速部署和利用 Webhook 实现自动构建
前提条件
- 已有的 GItLab 私有仓库,若还未部署,可参考下文 GitLab 快速部署一节进行部署
操作步骤
通过应用市场一键安装的方式,可以将 GitLab 直接部署到你的 Rainbond 环境中。
GitLab 快速部署
安装 GitLab 应用
运行效果
对接 GitLab 类型的 OAuth
本环节将配置 Rainbond 对接 GitLab 类型的 OAuth
配置 Applications
进入 User Settings → Applications
选项名 | 填写内容 | 说明 |
---|---|---|
Name | Rainbond | 填写自定义的 Application 名称 |
Redirect URI | https://goodrain.goodrain.com/console/oauth/redirect | 回跳路径,用于接收第三方平台返回的凭证使用公有云格式为 https://xxx.goodrain.com/console/oauth/redirect使用私有化部署格式为 https://IP:7070/console/oauth/redirect |
Scopes | api、read_user、read_repository | GitLab的权限设置,需要开启 api、read_user、read_repository |
Rainbond 平台认证
进入 Rainbond 首页企业视图 → 设置 → OAuth 互联服务 → 查看设置 → 添加
选项名 | 填写内容 | 说明 |
---|---|---|
OAuth类型 | gitlab | 认证的 Oauth 类型 |
OAuth类型 | 自定义(GitLab-Demo) | 填写自定义的 Oauth 服务名称 |
服务地址 | https://rainbond.gitlab/ | GitLab 服务访问地址 |
客户端ID | 依据具体信息填写 | GitLab 生成的 Application ID |
客户端密钥 | 依据具体信息填写 | GitLab 生成的 Application Secret |
平台访问域名 | 使用默认填写内容 | 用于OAuth认证完回跳时的访问地址 |
OAuth 认证
进入 Rainbond 首页企业视图 → 个人中心 → OAuth 账户绑定 → 对应账号 → 去认证
对接 GitLab 仓库并完成自动构建
创建 GitLab 项目,内容如下
使用私有化部署 Rainbond 时,需配置 GItLab 允许向本地网络发送 Webhook 请求
进入 Admin area → settings → NetWork → Outbound requests
勾选 Allow requests to the local network from hooks and services 选项即可
通过 Rainbond 进行源码构建
进入 Rainbond 团队视图 → 新增 → 基于源码创建组件 → 对应 Gitlab 项目 → 对应源码项目 → 创建组件
进入构建页面,选择配置
访问效果展示
Webhook 自动构建展示
修改 GitLab rainbond-test 项目的 index.html 文件,提交时 Commit 信息添加关键字 @deploy
自动更新效果展示
访问效果展示