Authored by jimi.ji

add readme

Showing 1 changed file with 74 additions and 14 deletions
1 -# jenkins pipeline 1 +# jenkins pipeline 的介绍说明
  2 +对应的jenkins地址:http://jenkins.yohops.com/
  3 +
  4 +现在支持的JOB类型如下:
  5 +```
  6 +Docker-GitHook-Build-Deploy
  7 +Docker-Image-Deplopy
  8 +Docker-Java-Build-Deploy
  9 +Docker-Node-Build
  10 +```
  11 +
2 12
3 13
4 -## DOCKREE_NODE_BUILD  
5 -主要用于node的镜像的构建,其中涉及的流程为,测试环境构建镜像,  
6 -spinnaker部署测试环境,线上工单申请,提交对应的镜像信息即可。 14 +
  15 +## DOCKREE_NODE_BUILD 介绍
  16 +1. 主要用于node的镜像的构建,以及需要的项目的CDN上传,推送镜像到qcloud与aws。
  17 +2. 与spinnaker平台结合使用,地址:http://spinnaker.dev.yohocorp.com/
  18 +
  19 +### JOB的参数介绍:
7 ``` 20 ```
8 支持的参数: 21 支持的参数:
9 string(name:'projectName', defaultValue: 'yoho-app-web', description: 'GITLAB应用名称') 22 string(name:'projectName', defaultValue: 'yoho-app-web', description: 'GITLAB应用名称')
@@ -15,14 +28,18 @@ string(name:'imageVersion', defaultValue: 'release-1.0-20181227144324', descript @@ -15,14 +28,18 @@ string(name:'imageVersion', defaultValue: 'release-1.0-20181227144324', descript
15 choice(name:'isNeedCdn',choices:'NO\nYES\n', description: '是否需要上传CDN') 28 choice(name:'isNeedCdn',choices:'NO\nYES\n', description: '是否需要上传CDN')
16 ``` 29 ```
17 30
  31 +### 支持的项目:
18 支持项目 | 已支持 32 支持项目 | 已支持
19 ---|--- 33 ---|---
20 yohobuywap-node | 已支持 34 yohobuywap-node | 已支持
21 yohobuy-node | 待项目组开发 35 yohobuy-node | 待项目组开发
22 yoho-web-app | 已支持 36 yoho-web-app | 已支持
23 ufo-web-app | 已支持 37 ufo-web-app | 已支持
  38 +yohoblk-wap | 待项目组开发
  39 +yoho-activity-platform | 已支持
  40 +yoho-shop-manage | 已支持
24 41
25 -> 特殊说明: 42 +### pipeline特殊流程说明:
26 ```groovy 43 ```groovy
27 stage('upload to CDN and nfs')中主要将文件上传CDN此处使用了qshell进行文件的上传 44 stage('upload to CDN and nfs')中主要将文件上传CDN此处使用了qshell进行文件的上传
28 ``` 45 ```
@@ -33,28 +50,71 @@ sh "cp -r ${repalceDir} /nfs-ops/Data/app/node-ci/data" @@ -33,28 +50,71 @@ sh "cp -r ${repalceDir} /nfs-ops/Data/app/node-ci/data"
33 50
34 51
35 ## Docker-Image-Deplopy 52 ## Docker-Image-Deplopy
36 -主要用于所有镜像aws与qcloud发布,可以被jenkins调用,也可以被工单系统调用,适用于所有的容器部署的项目 53 +主要用于所有镜像aws与qcloud发布,可以被jenkins调用,也可以被工单系统调用,适用于所有的容器部署的项目,现在容器的发布均采用此JOB来进行发布。
  54 +### 实现说明
  55 +qcloud主要采用腾讯云的api进行更新,其中有600s的等待check时间.
  56 +
  57 +aws主要采用aws cli进行更新,其中有600s的等待check时间.
37 ### 参数说明: 58 ### 参数说明:
  59 +```
  60 +string(name:'callBack', defaultValue: 'noNeedCallBack', description: '回调服务地址')
38 choice(name:'clusterId',choices:'aws\nyoho-web-gray\nyoho-ops\nyoho-web\nyoho-media\n', description: '集群的信息') 61 choice(name:'clusterId',choices:'aws\nyoho-web-gray\nyoho-ops\nyoho-web\nyoho-media\n', description: '集群的信息')
39 string(name:'serviceName', defaultValue: 'yoho-app-web', description: '服务名称 ') 62 string(name:'serviceName', defaultValue: 'yoho-app-web', description: '服务名称 ')
40 string(name:'containerName', defaultValue: 'yoho-app-web', description: '容器名称') 63 string(name:'containerName', defaultValue: 'yoho-app-web', description: '容器名称')
41 string(name:'imageInfo', defaultValue: 'yohobuy-core/yohobuywap-node:hotfix-share-20181221134254', description: '镜像版本') 64 string(name:'imageInfo', defaultValue: 'yohobuy-core/yohobuywap-node:hotfix-share-20181221134254', description: '镜像版本')
42 choice(name:'deployEnv',choices:'aws\nqcloud\nall\n', description: '部署的集群信息') 65 choice(name:'deployEnv',choices:'aws\nqcloud\nall\n', description: '部署的集群信息')
43 -### 实现说明  
44 -qcloud主要采用腾讯云的api进行更新,其中有600s的等待check时间.  
45 -aws主要采用aws cli进行更新,其中有600s的等待check时间. 66 +```
  67 +### 支持的项目
  68 +现在aws容器只接受灰度的发布,原先的服务需要在项目中创建好,此JOB只是起到更新容器中镜像的作用,不会修改其中的其他配置信息。
46 69
47 -## build  
48 70
49 -当前支持的应用: 71 +## Docker-GitHook-Build-Deploy
  72 +主要用于项目的打包与发布构建,其中项目的根目录中需要存在docker.sh与Dockerfile文件。
  73 +> docker.sh
  74 +此文件会接受一个参数为:${workspace},以及构建的基础脚本。
50 75
51 -## deploy 76 +> Dockerfile
  77 +此文件用于构建对应的镜像描述。
  78 +### 参数说明:
  79 +```
  80 +string(name:'callBack', defaultValue: 'noNeedCallBack', description: '回调服务地址')
  81 +choice(name:'clusterId',choices:'aws\nyoho-web-gray\nyoho-ops\nyoho-web\nyoho-media\n', description: '集群的信息')
  82 +string(name:'projectName', defaultValue: 'yoho-api-doc', description: 'GITLAB应用名称')
  83 +string(name:'projectGitGroup', defaultValue: 'fe', description: 'GITLAB所在的组')
  84 +string(name:'deployName', defaultValue: 'yoho-api-doc', description: '应用名称')
  85 +string(name:'userMail', defaultValue: 'jimi.ji@yoho.cn', description: '触发的人员邮箱')
  86 +string(name:'imageSource', defaultValue: 'yoho-ops', description: '镜像存储的仓库')
  87 +string(name:'branch', defaultValue: 'master', description: 'git分支名称')
  88 +```
  89 +### 支持的项目
  90 +只要项目中存在docker.sh与Dockerfile,即可以完成对应的部署,可以适配于GITHOOK与工单平台的调用。
  91 +
  92 +
  93 +## Docker-Java-Build-Deploy
  94 +此JOB主要适用于现阶段JAVA打包替换,需要在git中http://git.yoho.cn/yohoops/auto_deploy_docker,存在对应的配置文件
  95 +```
  96 +string(name:'callBack', defaultValue: 'noNeedCallBack', description: '回调服务地址')
  97 +choice(name:'clusterId',choices:'aws\nyoho-media\nyoho-ops\nyoho-web\nyoho-web-gray', description: '集群的信息')
  98 +string(name:'projectName', defaultValue: 'yoho-now', description: 'GITLAB应用名称')
  99 +string(name:'projectGitGroup', defaultValue: 'YOHONow', description: 'GITLAB所在的组')
  100 +string(name:'deployName', defaultValue: 'java-yoho-now', description: '应用名称')
  101 +string(name:'branch', defaultValue: 'master', description: 'git分支名称')
  102 +string(name:'userMail', defaultValue: 'jimi.ji@yoho.cn', description: '触发的人员名单')
  103 +choice(name:'nodeEnv',choices:'yoho-gray\nyoho-online\n', description: '选择环境')
  104 +string(name:'imageSource', defaultValue: 'yoho-ops', description: '镜像存储的仓库')
  105 +```
  106 +### 支持的项目
  107 +支持项目 | 已支持
  108 +---|---
  109 +yoho-now | 已支持
  110 +yohonow-platform | 已支持
  111 +yohomars-platform | 已支持
  112 +yohomars-search-service | 已支持
52 113
53 -当前支持应用:  
54 114
55 115
56 116
57 -## 预置条件 117 +## jenkins节点预置条件
58 ### master 节点 118 ### master 节点
59 基础键安装: 119 基础键安装:
60 java,maven,node,docker,aws cli,python,git,qshell 120 java,maven,node,docker,aws cli,python,git,qshell