写点什么

「Gitea 篇」如何用 Git 平台账号登录建木 CI

作者:Jianmu
  • 2022 年 9 月 19 日
    北京
  • 本文字数:1422 字

    阅读完需:约 5 分钟

「Gitea篇」如何用Git平台账号登录建木CI

介绍

这是《如何用 Git 平台账号登录建木 CI》系列文章的第三篇,建木 CI 立志整合所有第三方 Git 平台来登录建木 CI!此篇我们将整合 Gitea 平台来登录建木 CI

PS: 引流

v2.5.4版本开始,建木 CI 可以使用 Gitea 账号进行登录了,这篇文章给大伙讲讲如何配置、使用 Gitea 登录建木 CI

环境搭建

Gitea 支持私有化部署,我们将搭建一个 Gitea 平台来测试登录建木 CI

使用 docker-compose 的方式来搭建 Gitea 平台(详情请参见如何使用docker搭建Gitea),方便快捷,使用docker-compose up -d执行以下 docker-compose 脚本运行一个 Gitea 实例(请更改数据库配置):


version: "3"
networks: gitea:
services: server: image: gitea/gitea:1.17.1 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=mysql - GITEA__database__HOST=xxx.xxx.xxx.xxx:3306 - GITEA__database__NAME=gitea - GITEA__database__USER=root - GITEA__database__PASSWD=root restart: always networks: - gitea volumes: - /home/gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "223:22"
复制代码


在网页上访问刚刚搭建的 Gitea,点击登录,没有账号则可以在登录页面注册一个账号



成功登录:



配置介绍

Gitea 提供的认证基本流程按照 OAuth2 协议进行,建木 CI 依照此流程来整合第三方平台的登录。

同时建木 CI 登录使用 jwt 来实现

首先介绍一下如果想要使用 Git 平台账号登录建木 CI 需要哪些配置,此处以 Gitea 为例:


jianmu:  api:    # 设置jwt签名使用的密钥    jwt-secret: xxxxxxxxxxxx    # 设置jwt的过期时间,单位毫秒    jwt-expirationMs: 86400000  oauth2:    # 是否允许用户注册并登录,某些情况下可能只需要团队的特定一部分人登录到CI平台,当这部分人注册并登录完毕后,可将此配置配置为false    allow-registration: true    # 指定Gitea平台    gitea:      # 表示相应类型,此处的值固定为"code"      response-type: code      # 表示请求类型,此处的值固定为"authorization_code"      grant-type: authorization_code      # 请求token时使用的url      token-url: http://ip:prot/login/oauth/access_token      # 获取授权code时使用的url      code-url: http://ip:prot/login/oauth/authorize      # 调用api登录时使用的url      api-url: http://ip:prot/api/v1/      # 第三方应用Client ID,详情请参照平台规范      client-id: xxxxxxxxxx      # 第三方应用Client Secret,详情请参照平台规范      client-secret: xxxxxxxxxx
复制代码

简要介绍一下在 Gitea 平台上如何创建第三方应用

  1. 登录 Gitea 平台,点击右上角 Gitea 的图标中的设置



  1. 点击上方中间的应用,开始创建第三方应用



  1. 填写必要的信息


  1. 点击创建应用



  1. 获取到必需的 Client ID,Client Secret



效果演示

1. 如图配置好 Git 平台账号登录建木 CI 配置文件



2. 启动项目并访问

启动成功之后,要求我们使用 Gitea 来登录



3. 点击图标登录

进入 Gitea 的授权页面,并同意授权



页面跳回建木 CI,看到正在登录



稍等片刻,登录成功



官⽹:https://jianmu.dev

代码:https://gitee.com/jianmu-dev

文档:https://docs.jianmu.dev

示例:https://ci.jianmu.dev

发布于: 刚刚阅读数: 3
用户头像

Jianmu

关注

北半球第二好用的DevOps工具 2020.08.10 加入

建木是一个面向DevOps领域的极易扩展的开源无代码(图形化)/低代码(GitOps)工具。可以帮助用户轻松编排各种DevOps流程并分发到不同平台执行。

评论

发布
暂无评论
「Gitea篇」如何用Git平台账号登录建木CI_DevOps_Jianmu_InfoQ写作社区