Jenkins + YesDev 集成方案

Jenkins 管构建和部署,YesDev 管项目和协作。打通 CI/CD 和项目管理的最后一公里。

CI/CD 与项目管理的鸿沟

很多团队的情况是这样的:

开发在 Jenkins 里跑构建 → 构建失败了 → 谁知道?只有看 Jenkins 的人知道。
部署到测试环境了 → 测试人员知道吗?不知道,没人通知。
上线了 → 项目经理知道吗?不知道,Jenkins 没告诉他。

信息断层 = 效率损失 = 风险隐患。

YesDev × Jenkins 的目标:让每个角色都能看到 CI/CD 的状态。

核心集成能力

🔄 Jenkins ↔ YesDev 数据流

Jenkins 事件YesDev 响应通知谁
Build Started任务状态更新为"构建中"任务负责人
Build Success任务状态更新为"待测试",通知QA任务负责人 + 测试人员
Build Failed标记"构建失败"+阻塞,附错误日志链接任务负责人 + PM
Deploy (Test)自动创建测试验证子任务测试团队
Deploy (Prod)版本发布记录更新,触发发布检查清单全员通知

1️⃣ 构建状态实时同步

  • Jenkins Pipeline 各阶段(编译→测试→打包→部署)的状态实时回写到 YesDev 对应任务
  • 任务卡片直接展示当前构建阶段和耗时
  • 点击可跳转 Jenkins 控制台查看详细日志

2️⃣ 自动化部署通知

  • 部署到预发/生产环境后,自动通知相关人员
  • 部署包版本号、部署时间、部署人、目标环境全部记录
  • 支持配置部署审批流:Jenkins 触发部署前需 YesDev 审批通过

3️⃣ 构建结果质量门禁

  • 单元测试覆盖率不达标 → 自动阻塞,不允许合并
  • 静态代码分析发现问题 → 创建代码审查任务分配给技术负责人
  • 安全扫描发现漏洞 → 自动创建高优先级缺陷并通知安全团队

4️⃣ 发布流水线可视化

在 YesDev 中查看完整的发布流水线:

  1. ✅ 代码提交 (Git) → 2分钟前
  2. ✅ 单元测试通过 → 5分钟前
  3. ✅ 代码静态检查通过 → 8分钟前
  4. ✅ Docker镜像构建完成 → 10分钟前
  5. 🔄 部署到测试环境中... (进行中)
  6. ⬜ 冒烟测试
  7. ⬜ 预发部署
  8. ⬜ 生产发布

Jenkinsfile 集成示例

// Jenkinsfile 示例 - 集成 YesDev
pipeline {
    agent any
    environment {
        YESDEV_TASK_ID = '${YESDEV_TASK_ID}' // 从 YesDev 触发的构建会携带此参数
        YESDEV_WEBHOOK = 'https://api.yesdev.cn/webhook/jenkins'
    }
    stages {
        stage('Build') {
            steps {
                sh 'mvn clean package'
                sh "curl -X POST ${YESDEV_WEBHOOK} \
                  -d '{\"task_id\":\"${YESDEV_TASK_ID}\",\"status\":\"building\",\"stage\":\"build\"}'"
            }
        }
        stage('Test') {
            steps {
                sh 'mvn test'
                sh "curl -X POST ${YESDEV_WEBHOOK} \
                  -d '{\"task_id\":\"${YESDEV_TASK_ID}\",\"status\":\"testing\",\"stage\":\"test\"}'"
            }
        }
        stage('Deploy') {
            steps {
                sh './deploy.sh'
                sh "curl -X POST ${YESDEV_WEBHOOK} \
                  -d '{\"task_id\":\"${YESDEV_TASK_ID}\",\"status\":\"deployed\",\"env\":\"staging\"}'"
            }
        }
    }
    post {
        success {
            sh "curl -X POST ${YESDEV_WEBHOOK} \
              -d '{\"task_id\":\"${YESDEV_TASK_ID}\",\"result\":\"success\"}'"
        }
        failure {
            sh "curl -X POST ${YESDEV_WEBHOOK} \
              -d '{\"task_id\":\"${YESDEV_TASK_ID}\",\"result\":\"failed\",\
                     \"log_url\":\"$BUILD_URL/console\"}'"
        }
    }
}

接入步骤

  1. 在 YesDev 中生成 Jenkins Webhook URL 和 Secret
  2. 在 Jenkins 中安装 YesDev 插件(或使用通用 Webhook 插件)
  3. 在 Jenkins 全局配置中填入 YesDev API 凭证
  4. 在各 Job 的 Post-build Actions 中添加 YesDev 通知
  5. 发送测试构建验证连通性 ✅

免费试用

YesDev 免费版包含完整的 Jenkins 集成。立即注册体验 DevOps 全链路管理!

让 Jenkins 不再是一座孤岛

打通 CI/CD 与项目管理,实现真正的 DevOps 协同。

免费试用 YesDev