[关闭]
@EdwinTang 2016-01-27T22:16:59.000000Z 字数 806 阅读 1955

Jenkins 使用参数进行JOB调度

JENKINS JOB CI 调度


1.背景

在实际系統中,CI工作中常常由多个包的构建或部署构成,顺序构建,或独立构建都面临效率低的问题。

2.构建场景

A.其中一個包更新
包间有依赖
包间无依赖
B.多個包都需要更新

3.调度方法

1.选择参数构建
2.灵活使用字符串参数
3.借用shell划分字符串
4.借用curl命令调用其它JOB

  1. #!/bin/bash
  2. echo ${SELECT} |grep -q "0"
  3. if [ $? -eq 0 ]; then
  4. curl -X POST http://XXX:XXX/jenkins/job/JOB_NAME/build
  5. fi
  6. sleep 2
  7. min=1
  8. while(($min==1))
  9. do
  10. echo `curl --silent http://XXX:XXX/jenkins/job/JOB_NAME/lastBuild/api/json` |grep -q '"result":"SUCCESS"'
  11. if [ $? -eq 0 ]; then
  12. break
  13. else
  14. sleep 5
  15. fi
  16. done
  17. for elem in ${SELECT}
  18. do
  19. case $elem in
  20. 1) curl -X POST http://XXX:XXX/jenkins/job/DDT_SIT_WS_BUILD/build
  21. ;;
  22. 2) curl -X POST http://XXX:XXX/jenkins/job/DDT_SIT_NGINX_BUILD/build
  23. ;;
  24. 3) curl -X POST http://XXX:XXX/jenkins/job/DDT_SIT_MAIN_BUILD/build
  25. ;;
  26. 4) curl -X POST http://XXX:XXX/jenkins/job/DDT_SIT_MANAGER_BUILD/build
  27. ;;
  28. 5) curl -X POST http://XXX:XXX/jenkins/job/DDT_SIT_SYNC_BUILD/build
  29. ;;
  30. esac
  31. done
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注