بنقرة واحدة
jenkins
Jenkins CI/CD 操作。用于:(1) 触发 Jenkins 任务构建 (2) 查询任务状态和构建历史 (3) 获取构建日志 (4) 操作 Jenkins 节点和配置
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Jenkins CI/CD 操作。用于:(1) 触发 Jenkins 任务构建 (2) 查询任务状态和构建历史 (3) 获取构建日志 (4) 操作 Jenkins 节点和配置
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
GitHub 操作。用于:(1) 管理 GitHub 仓库 (2) 操作 Pull Request (3) 触发 Actions (4) 管理文件和代码 (5) 管理 Issue
⚠️ 需要 ZADIG_API_URL + ZADIG_API_KEY | Zadig DevOps 平台 API 客户端
Apache Apisix API 网关操作。用于:(1) 管理 Apisix 路由 (2) 配置上游和服务 (3) 管理插件 (4) 流量管理和灰度发布。环境变量:APISIX_URL, APISIX_ADMIN_KEY
GitLab 操作。用于:(1) 管理 GitLab 项目和仓库 (2) 操作 Merge Request (3) 触发 CI/CD Pipeline (4) 管理文件和代码 (5) 管理用户和权限
Grafana 可视化和监控操作。用于:(1) 查询 Grafana 指标数据 (2) 管理仪表盘和数据源 (3) 创建和编辑图表 (4) 告警配置
Nacos 配置中心操作。用于:(1) 查询 Nacos 配置 (2) 发布/更新配置 (3) 删除配置 (4) 管理命名空间。环境变量:NACOS_URL, NACOS_USERNAME, NACOS_PASSWORD
| name | jenkins |
| description | Jenkins CI/CD 操作。用于:(1) 触发 Jenkins 任务构建 (2) 查询任务状态和构建历史 (3) 获取构建日志 (4) 操作 Jenkins 节点和配置 |
# ~/.openclaw/workspace/.env
JENKINS_URL=http://jenkins.example.com:8080
JENKINS_USER=admin
JENKINS_TOKEN=your-api-token
source ~/.openclaw/workspace/.env
source ~/.openclaw/workspace/.env
# 带参数构建
curl -X POST "$JENKINS_URL/job/JOB_NAME/buildWithParameters" \
-u "$JENKINS_USER:$JENKINS_TOKEN" \
-d "PARAM1=value1&PARAM2=value2"
# 普通构建
curl -X POST "$JENKINS_URL/job/JOB_NAME/build" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
source ~/.openclaw/workspace/.env
# 获取任务列表
curl -s "$JENKINS_URL/api/json?tree=jobs[name,url,color]" \
-u "$JENKINS_USER:$JENKINS_TOKEN" | jq '.jobs[]'
# 获取任务详情
curl -s "$JENKINS_URL/job/JOB_NAME/api/json" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
# 获取最后一次构建状态
curl -s "$JENKINS_URL/job/JOB_NAME/lastBuild/api/json" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
source ~/.openclaw/workspace/.env
# 控制台输出
curl -s "$JENKINS_URL/job/JOB_NAME/BUILD_NUMBER/consoleText" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
# JSON 格式日志
curl -s "$JENKINS_URL/job/JOB_NAME/BUILD_NUMBER/logText/progressiveText" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
source ~/.openclaw/workspace/.env
# 停止构建
curl -X POST "$JENKINS_URL/job/JOB_NAME/BUILD_NUMBER/stop" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
# 禁用任务
curl -X POST "$JENKINS_URL/job/JOB_NAME/disable" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
# 启用任务
curl -X POST "$JENKINS_URL/job/JOB_NAME/enable" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
触发 CI 流水线并等待完成:
source ~/.openclaw/workspace/.env
# 触发构建
BUILD_URL=$(curl -s -X POST "$JENKINS_URL/job/deploy-prod/buildWithParameters" \
-u "$JENKINS_USER:$JENKINS_TOKEN" \
-d "VERSION=1.0.0&ENV=prod" -w "%{url}")
# 等待构建完成
while true; do
STATUS=$(curl -s "$BUILD_URL/api/json" -u "$JENKINS_USER:$JENKINS_TOKEN" | \
jq -r '.result')
if [[ "$STATUS" != "null" ]]; then
echo "Build $STATUS"
break
fi
sleep 10
done
查询历史构建,找到上一个成功版本:
source ~/.openclaw/workspace/.env
# 获取最近成功构建号
LAST_SUCCESS=$(curl -s "$JENKINS_URL/job/my-app/api/json" \
-u "$JENKINS_USER:$JENKINS_TOKEN" | \
jq -r '.builds[].number | select(.result == "SUCCESS") | .number' | head -1)
# 触发回滚
curl -X POST "$JENKINS_URL/job/my-app/$LAST_SUCCESS/replay" \
-u "$JENKINS_USER:$JENKINS_TOKEN"
触发多个项目同时构建:
source ~/.openclaw/workspace/.env
# 项目列表
PROJECTS=("frontend" "backend" "api-gateway")
for proj in "${PROJECTS[@]}"; do
echo "Building $proj..."
curl -s -X POST "$JENKINS_URL/job/$proj/build" \
-u "$JENKINS_USER:$JENKINS_TOKEN" &
done
wait
echo "All builds triggered"