当前位置:   article > 正文

Gitea Actions使用体验_gitee actions

gitee actions

Gitea Actions使用经验分享

Gitea Actions有两种使用方法,其中一种是在本地部署一个Gitea实例使用,另一种是直接通过Gitea官方使用。下边将分别介绍两种方法。

本地部署Gitea实例

1. 部署Gitea实例

  • 首先需要准备好环境,安装nodejs(1.14以上)、golang(1.18以上)和docker
  • 下载带有Actions模块的Gitea源代码
目前可以从 @wolfogre 的开发分支克隆带有 Actions 模块的源代码到本地编译。
git clone https://github.com/wolfogre/gitea.git --branch=feature/bots
cd gitea
  • 1
  • 2
  • 3
  • 通过以下指令打包
TAGS="bindata sqlite sqlite_unlock_notify" make build
  • 1
  • 通过以下指令启动Gitea
./gitea web
  • 1
  • 启动后访问0.0.0.0:3000进行配置,如下图所示。
    Gitea配置页面
  • 配置完成后会自动生成一个配置文件,存放在./costum/conf/app.ini,编辑该文件,加入以下内容,开启actions功能。
[actions]
ENABLED = true
  • 1
  • 2
  • 编辑完成后重新启动Gitea,注册一个账户,新建一个仓库。
    创建仓库01
    创建仓库02
  • 创建好仓库后,在仓库设置中找到Actions选项,将其打开,然后点击更新仓库设置
    开启仓库actions
  • 设置好后可以看到已经出现了Actions功能,目前其中为空请添加图片描述

2. 配置Runner

  • 此时Gitea已经准备好了,开始设置Runner,执行以下指令编译act_runner程序
git clone https://gitea.com/gitea/act_runner.git
cd act_runner
make build
  • 1
  • 2
  • 3
  • 然后在Gitea上注册Runner,首先去设置中复制token
    复制Runner token
  • 执行以下指令注册Runner,其中的服务器地址为之前设置时的地址,默认为http://localhost:3000
./act_runner register

INFO Registering runner, arch=amd64, os=linux, version=0.1.5.
WARN Runner in user-mode.
INFO Enter the Gitea instance URL (for example, https://gitea.com/): [输入服务器地址]
INFO Enter the runner token: [输入 Runner 令牌]
INFO Enter the runner name (if set empty, use hostname:ubuntu ): [输入 Runner 名称]
INFO Enter the runner labels, leave blank to use the default labels (comma-separated, for example, ubuntu-20.04:docker://node:16-bullseye,ubuntu-18.04:docker://node:16-buster): [输入 Runner 标签]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 刷新页面可以看到已经有了一个Runner

请添加图片描述

  • 然后通过以下指令启动Runner
sudo ./act_runner daemon
  • 1
  • 刷新页面可以看到Runner已经处于了在线状态
    请添加图片描述

3. 执行CI任务

  • 这时可以上传一个yaml文件到.gitea/workflows/路径中,执行CI任务,yaml文件可以是以下示例内容,上传后可以看到Actions中多了一个正在执行的任务,同时本地的Runner开始工作
name: Gitea Actions Demo
run-name: ${{ github.actor }} is testing out Gitea Actions  
on: [push]
jobs:
  Explore-Gitea-Actions:
    runs-on: ubuntu-latest
    steps:
      - run: echo "  The job was automatically triggered by a ${{ github.event_name }} event."
      - run: echo "  This job is now running on a ${{ runner.os }} server hosted by Gitea!"
      - run: echo "  The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
      - run: echo "  The ${{ github.repository }} repository has been cloned to the runner."
      - run: echo " ️ The workflow is now ready to test your code on the runner."
      - name: List files in the repository
        run: |
          ls ${{ github.workspace }}
      - run: echo "  This job's status is ${{ job.status }}."
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

请添加图片描述

  • 等待一段时间后可以看到该任务执行信息,点击可以查看详细信息
    请添加图片描述
    请添加图片描述

通过官方使用

通过官方使用时可以直接略过上述过程的配置Gitea实例的步骤,从创建仓库开始,并且需要在注册Runner时将实例网址改为https://gitea.com/。官方当前版本较上述版本较新,部分页面布局有所出入,但大体操作步骤相似。

一些关于Runner的注意事项

请添加图片描述
请添加图片描述
请添加图片描述
目前暂时还不清楚当有action任务的时候是如何选择Runner的,本人尝试在一个同时拥有空闲实例级别和存储库级别Runner的存储库中提交action任务,使用的是实例级别的Runner,暂时未发现有主动设置Runner优先级的功能。

附Gitea官方文档连接:官方文档
参考文章:https://zhuanlan.zhihu.com/p/592367216

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/185985
推荐阅读
相关标签
  

闽ICP备14008679号