gitlink-cli/skills/gitlink-ci/examples/ci-devops-check.md

3.3 KiB
Raw Permalink Blame History

示例CI DevOps 状态检查与构建诊断(真实数据)

本示例基于真实仓库于 2026-06-12 在 Claude Code 中实际执行。 展示 DevOps 状态检查 → 发现未开启 → 给出激活方案的完整流程。


场景:发现 CI 不可用

用户想查看 chroe/gitlink-cli 的构建状态。

Step 1: 检查 DevOps 状态

gitlink-cli repo +info --owner chroe --repo gitlink-cli --format json | python3 -c "
import sys,json
d = json.load(sys.stdin)['data']
print(f'DevOps: {d[\"open_devops\"]}')
print(f'项目ID: {d[\"project_id\"]}')
"

真实输出:

DevOps: False
项目ID: 1547045

Step 2: 尝试 CI 命令(预期失败)

gitlink-cli ci +builds --owner chroe --repo gitlink-cli

真实输出:

错误: 获取构建列表失败: [-1] 接口数据异常

Step 3: 检查是否有其他仓库开启了 DevOps

gitlink-cli repo +list --category all --format json | python3 -c "
import sys,json
for p in json.load(sys.stdin)['data']['projects']:
    if p.get('open_devops'):
        print(f\"  ✅ {p['identifier']} (devops enabled)\")
"

真实输出(在 yetja 用户下):

(无输出 — 没有任何仓库开启 DevOps

甚至 Gitlink 组织的热门仓库也是关闭的:

Gitlink/build        → devops: True   ← 仅有此仓库开启
Gitlink/gitlink-cli  → devops: False
Gitlink/forgeplus    → devops: False

AI 分析

# 🔧 CI DevOps 状态检查报告

> 检查时间2026-06-12
> 检查范围yetja 用户下的仓库 + Gitlink 组织热门仓库

## 总览

| 指标 | 数值 |
|------|------|
| 检查仓库数 | 20 |
| DevOps 已开启 | 1 (5%) |
| DevOps 未开启 | 19 (95%) |

## DevOps 已开启的仓库

| 仓库 | 说明 |
|------|------|
| Gitlink/build | GitLink 官方 CI/CD 项目 |

## 关于 chroe/gitlink-cli

- **DevOps 状态**:未开启(`open_devops: false`
- **CI 命令**:全部不可用,返回 `[-1] 接口数据异常`
- **项目类型**Fork 自 `Gitlink/gitlink-cli`
- **项目 ID**1547045

## 如何开启 DevOps

### 方法 1Web 页面(推荐)

1. 打开 https://gitlink.org.cn/chroe/gitlink-cli
2. 进入 设置 → DevOps
3. 点击"开启 DevOps"

### 方法 2CLI Raw API

```bash
gitlink-cli api POST /chroe/gitlink-cli/activate

⚠️ api POST 存在已知 URL 拼接 bug可能返回 404。建议使用 Web 页面。

开启后的流水线配置

本项目已有 .devops/构建部署Showcase.yml 配置文件:

  • 触发条件push 到 master 分支
  • 构建环境Docker 容器
  • 部署目标118.31.4.168:9090
  • 容器名gitlink-cli-showcase

开启 DevOps 后,每次 push 将自动触发构建和部署。


---

## 补充示例:开启 DevOps 后的工作流(预期)

如果 DevOps 已开启,典型的构建诊断流程如下:

```bash
# 1. 获取近期构建
gitlink-cli ci +builds --owner chroe --repo gitlink-cli --format json

# 2. 找到失败构建,查看日志
gitlink-cli ci +logs --build 42 --stage 1 --step 1

# 3. AI 分析日志中的错误
# (日志内容示例)
# [ERROR] cannot find package "github.com/example/lib"

# 4. AI 诊断:依赖缺失 → 建议 go get + go mod tidy

# 5. 修复后重启构建
gitlink-cli ci +restart --build 42

# 6. 验证修复
gitlink-cli ci +logs --build 42 --stage 1 --step 1