Skip to content

DevStar CI/CD工作流 Actions Overview

DevStar基于Gitea Actions开发了开箱即用的CI/CD工作流解决方案, 兼容Github Actions生态系统。

  • 本站中Actions是指DevStar开箱即用的CI/CD工作流解决方案,从不同方面兼容Gitea Actions和Github Actions。
  • 本站中actions/action是指Actions要使用的脚本/插件,比如"actions/checkout@v4" 或 "kekxv/AiReviewPR@v0.0.6"。

Actions的安装配置方法

  • DevStar安装过程中会默认启动一个全局的Actions Runner;
  • 一键启动Actions Runner

在项目设置、用户设置、组织设置和后台管理中,如果当前用户有创建Actions Runner的权限,可在工作流Actions板块下点击【创建新运行器】,找到【一键启动运行器】可以创建相应作用范围的Actions Runner。

  • 手工启动Actions Runner

在项目设置、用户设置、组织设置和后台管理中,可以在工作流Actions板块下点击【创建新运行器】,可以复制Registration Token。

不同位置复制的Registration Token创建的Actions Runner有不同的作用范围。

$ docker run  --name devstar-runner -d -v /var/run/docker.sock:/var/run/docker.sock \
    -e GITEA_INSTANCE_URL=${YOUR_DEVSTAR_URL} \  
    -e GITEA_RUNNER_REGISTRATION_TOKEN=${YOUR_DEVSTAR_RUNNER_REGISTRATION_TOKEN} \ 
    devstar.cn/devstar/act_runner:latest

使用actions短链接的好处

在DevStar CI/CD工作流配置文件中(如.gitea/workflows/ci-cd.yaml)使用不包含域名的actions短链接,DevStar会智能判断当前平台上是否有相同名称的仓库或镜像仓库,如有则使用当前平台的仓库,没有则默认使用github.com上的仓库。

     - name: 🔍 Check out repository code
        uses: actions/checkout@v4

     - name: AI Review code
        uses: kekxv/AiReviewPR@v0.0.6

     - name: Report Test Results 
        if: always() && github.event_name == 'pull_request'
        uses: actions/github-script@v6

类似以上actions短链接仓库,如果在当前DevStar平台上创建相应的镜像仓库,可以智能选择拉取本平台上的仓库,从而避免github.com网络访问问题影响CI/CD工作流的执行。

调试CI/CD工作流

DevStar已支持在线调试CI/CD工作流配置文件脚本,调试方法如下:

  • 在项目仓库页面点击【工作流/Actions】,然后选择进入某个工作流,右上角【编辑并运行工作流】即可修改脚本再次执行,运行成功后可以直接提交到对应的仓库分支。

本地配置调试CI/CD工作流的方法参见: