Jenkins Shell 工具集
Linux/OS X
- git clone https://github.com/Statemood/jenkins.git
- mv config /data/app/jenkins (如使用其他路径需要修改文件 bash-slice, settings)
- Jenkins管理设置中配置 bash-slice 为默认Shell
- 在 Jenkins 任务配置中 'Execute shell' Command 窗口中可以直接引用settings文件全部变量及函数 load
- 使用 load base 方法载入modules/base 文件, 在后续命令中直接使用函数即可
- 从JOB_NAME中以下划线分隔取第一列
- 从JOB_NAME中以下划线分隔取第二列
- 从APP_SUB中以减号分隔取第一列
- 从APP_SUB中以减号分隔取第二列
- 从JOB_NAME中以下划线分隔取第三列
- Jenkins系统变量,用户全名
- Jenkins系统变量,用户名
- 要复制到容器中的文件路径
- 项目名称,未定义则默认使用APP_SUB
- 在容器中
- APPNAME 为全局变量
- 作为项目名称
- 容器(内服务)运行端口
- 应用与容器中全局变量
- 替换 Deployment & Service 文件中端口
- 提供 Docker Build 参数,默认为空
- 通用Dockerfiles文件路径
- 自定义Dockerfiles文件路径, 与项目匹配,如不存在则使用 TEMPLATE_COMMON
- Docker build 忽略文件
- docker tag, 默认为 SCM_REVISION, 如最终为空则使用 latest
- k8s 资源限制:最大CPU
- k8s 资源限制:初始CPU
- k8s 资源限制:最大内存
- k8s 资源限制:初始内存
- k8s 健康检查:容器启动后延迟检查时间(S)
- k8s 健康检查:URL
- k8s 健康检查:超时时间(S)
- 为空则使用 LIVENESS_IDS 数值
- 为空则使用 LIVENESS_URL 数值
- 用户权限检查,允许的用户,可以是多个,空格分隔
- 使用 BUILD_USER_ID
- 如 ALLOWED_USERS="tom,jim"
- 用户权限检查,直接允许用户组
- 如 ALWAYS_ALLOWED_GROUPS="test,ops,dba"
- 等于 true 时,Docker 相关操作将被跳过
- 等于 true 时,kubectl 相关操作将被跳过
- 等于 true 时,maven 相关操作将被跳过
- 等于 true 时,SonarQube 相关操作将被跳过