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工作流的方法参见:
