签入版本
This commit is contained in:
parent
d9048b0a75
commit
9a1fbe683d
@ -34,6 +34,10 @@ common:
|
|||||||
depth: 1 # 浅克隆深度,只获取最近的一次提交
|
depth: 1 # 浅克隆深度,只获取最近的一次提交
|
||||||
shallow: true # 启用浅克隆,减少克隆时间
|
shallow: true # 启用浅克隆,减少克隆时间
|
||||||
timeout: 10 # 克隆操作超时时间(分钟)
|
timeout: 10 # 克隆操作超时时间(分钟)
|
||||||
|
# 钉钉消息
|
||||||
|
dingtalk:
|
||||||
|
# 凭证ID - Jenkins中存储的DingTalk认证凭据ID
|
||||||
|
credentialsId: "jenkins-dingtalk-robot"
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# 镜像仓库配置 - 定义不同的容器镜像仓库
|
# 镜像仓库配置 - 定义不同的容器镜像仓库
|
||||||
@ -104,21 +108,21 @@ common:
|
|||||||
# 构建成功通知配置
|
# 构建成功通知配置
|
||||||
success:
|
success:
|
||||||
# 收件人列表 - 成功时通知的邮箱地址
|
# 收件人列表 - 成功时通知的邮箱地址
|
||||||
recipients: ["xiaomayicloud@163.com"]
|
recipients: ["xiaomayicloud@163.com", "575073565@qq.com", "txwz2006@126.com"]
|
||||||
# 通知渠道 - 使用的通知方式
|
# 通知渠道 - 使用的通知方式
|
||||||
channels: ["email", "slack"]
|
channels: ["email", "dingtalk", "slack"]
|
||||||
# 构建失败通知配置
|
# 构建失败通知配置
|
||||||
failure:
|
failure:
|
||||||
# 收件人列表 - 失败时通知的邮箱地址
|
# 收件人列表 - 失败时通知的邮箱地址
|
||||||
recipients: ["xiaomayicloud@163.com"]
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
# 通知渠道 - 失败时使用的通知方式
|
# 通知渠道 - 失败时使用的通知方式
|
||||||
channels: ["email", "slack", "sms"]
|
channels: ["email", "dingtalk", "slack", "sms"]
|
||||||
# 构建不稳定通知配置
|
# 构建不稳定通知配置
|
||||||
unstable:
|
unstable:
|
||||||
# 收件人列表 - 不稳定时通知的邮箱地址
|
# 收件人列表 - 不稳定时通知的邮箱地址
|
||||||
recipients: ["xiaomayicloud@163.com"]
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
# 通知渠道 - 不稳定时使用的通知方式
|
# 通知渠道 - 不稳定时使用的通知方式
|
||||||
channels: ["email"]
|
channels: ["email", "dingtalk"]
|
||||||
|
|
||||||
# 构建策略 - 构建过程的策略配置
|
# 构建策略 - 构建过程的策略配置
|
||||||
buildStrategy:
|
buildStrategy:
|
||||||
@ -214,6 +218,22 @@ serviceConfig:
|
|||||||
# 镜像标签
|
# 镜像标签
|
||||||
tags:
|
tags:
|
||||||
- "17.0.16-ubuntu22-dos" # 包含系统和版本信息的标签
|
- "17.0.16-ubuntu22-dos" # 包含系统和版本信息的标签
|
||||||
|
# JDK 17.0.16 Debian 13 镜像配置
|
||||||
|
jdk17.0.16-debian13-dos:
|
||||||
|
baseImage: "debian:trixie-slim" # Ubuntu 22.04基础镜像
|
||||||
|
dockerContext: "dockerfiles/jdk/17.0.16-debian13-dos" # 构建上下文路径
|
||||||
|
imageName: jdk # 镜像名称
|
||||||
|
# 资源文件
|
||||||
|
resources:
|
||||||
|
fonts:
|
||||||
|
- source: "fonts/simsun.ttf" # 字体文件源路径
|
||||||
|
target: "fonts" # 容器内目标路径
|
||||||
|
jdk:
|
||||||
|
- source: "jdk-17.0.16_linux-x64_bin.tar.gz" # JDK安装包源文件
|
||||||
|
target: "" # 容器内临时存放路径
|
||||||
|
# 镜像标签
|
||||||
|
tags:
|
||||||
|
- "17.0.16-debian13-dos" # 包含系统和版本信息的标签
|
||||||
|
|
||||||
# JRE 8u202 CentOS 8 镜像配置
|
# JRE 8u202 CentOS 8 镜像配置
|
||||||
jre8u202-centos8-dos:
|
jre8u202-centos8-dos:
|
||||||
@ -271,6 +291,25 @@ serviceConfig:
|
|||||||
# 镜像标签列表 - 构建完成后打标签的名称
|
# 镜像标签列表 - 构建完成后打标签的名称
|
||||||
tags:
|
tags:
|
||||||
- "8u202-utunbu22-dos" # 版本化标签(包含版本和系统信息)
|
- "8u202-utunbu22-dos" # 版本化标签(包含版本和系统信息)
|
||||||
|
|
||||||
|
# JRE 8u202 CentOS 8 镜像配置
|
||||||
|
jre8u202-debian13-dos:
|
||||||
|
baseImage: "debian:trixie-slim" # 基础镜像名称
|
||||||
|
dockerContext: "dockerfiles/jre/8u202-debian13-dos" # Docker构建上下文路径
|
||||||
|
imageName: jre # 生成的镜像名称
|
||||||
|
# 资源文件 - 构建时需要复制的文件资源
|
||||||
|
resources:
|
||||||
|
# 字体文件配置
|
||||||
|
fonts:
|
||||||
|
- source: "fonts/simsun.ttf" # 源文件路径(相对构建上下文)
|
||||||
|
target: "fonts" # 目标容器内路径
|
||||||
|
# JDK安装包配置
|
||||||
|
jdk:
|
||||||
|
- source: "jre-8u202-linux-x64.tar.gz" # JRE安装包源文件
|
||||||
|
target: "" # 容器内临时存放路径
|
||||||
|
# 镜像标签列表 - 构建完成后打标签的名称
|
||||||
|
tags:
|
||||||
|
- "8u202-debian13-dos" # 版本化标签(包含版本和系统信息)
|
||||||
|
|
||||||
# Go 1.25.1 CentOS 8 镜像配置
|
# Go 1.25.1 CentOS 8 镜像配置
|
||||||
go1.25.1-centos8-dos:
|
go1.25.1-centos8-dos:
|
||||||
|
|||||||
368
config-file/xiaomayiConfig copy.yml
Normal file
368
config-file/xiaomayiConfig copy.yml
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
# ==============================================================================
|
||||||
|
# 通用配置块 - 包含所有环境共享的配置项
|
||||||
|
# ==============================================================================
|
||||||
|
common:
|
||||||
|
# 镜像仓库配置 - 定义不同的容器镜像仓库
|
||||||
|
registrys:
|
||||||
|
# 默认仓库配置 - 内部私有仓库
|
||||||
|
default:
|
||||||
|
# 内部私有仓库地址 - 企业内部部署的Harbor或Registry地址
|
||||||
|
registry: "192.168.10.102:8001"
|
||||||
|
# Jenkins凭证ID - 用于仓库认证的凭据ID
|
||||||
|
registryCredential: "xiaomayi-hub-credentials"
|
||||||
|
# 仓库中的项目/命名空间名称 - 镜像存放的项目空间
|
||||||
|
registryProject: "xiaomayi"
|
||||||
|
# 仓库类型 - 仓库的技术类型(harbor、acr、dockerhub等)
|
||||||
|
registryType: "harbor"
|
||||||
|
# 应用部署基础镜像
|
||||||
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
|
||||||
|
# 阿里云ACR仓库配置 - 云上仓库,用于生产环境或特定场景
|
||||||
|
aliyun:
|
||||||
|
# 阿里云VPC内网地址 - 阿里云容器镜像服务的VPC内网地址,网络性能更优
|
||||||
|
registry: "registry-vpc.cn-hangzhou.aliyuncs.com"
|
||||||
|
# 阿里云仓库认证凭证 - 阿里云访问凭据的Jenkins ID
|
||||||
|
registryCredential: "aliyun-hub-credentials"
|
||||||
|
# 阿里云仓库项目名称 - 阿里云ACR中的命名空间
|
||||||
|
registryProject: "xiaomayi-base"
|
||||||
|
# 仓库类型 - 阿里云容器镜像服务
|
||||||
|
registryType: "acr"
|
||||||
|
# 应用部署基础镜像
|
||||||
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
# Docker Hub配置 - 官方Docker仓库,用于公开镜像
|
||||||
|
dockerhub:
|
||||||
|
# Docker Hub地址 - 官方Docker仓库地址
|
||||||
|
registry: "index.docker.io"
|
||||||
|
# Docker Hub认证凭证 - Docker Hub账号的Jenkins凭据ID
|
||||||
|
registryCredential: "dockerhub-credentials"
|
||||||
|
# Docker Hub项目名称 - 用户名或组织名
|
||||||
|
registryProject: "xiaomayi-base"
|
||||||
|
# 仓库类型 - 官方Docker仓库
|
||||||
|
registryType: "dockerhub"
|
||||||
|
# 应用部署基础镜像
|
||||||
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
|
||||||
|
# 钉钉消息
|
||||||
|
dingtalk:
|
||||||
|
# 凭证ID - Jenkins中存储的DingTalk认证凭据ID
|
||||||
|
credentialsId: "jenkins-dingtalk-robot"
|
||||||
|
|
||||||
|
# 通知配置 - 构建结果通知设置
|
||||||
|
notification:
|
||||||
|
# 构建成功通知配置
|
||||||
|
success:
|
||||||
|
# 收件人列表 - 成功时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com", "575073565@qq.com"]
|
||||||
|
# 通知渠道 - 使用的通知方式
|
||||||
|
channels: ["email", "dingtalk", "slack"]
|
||||||
|
# 构建失败通知配置
|
||||||
|
failure:
|
||||||
|
# 收件人列表 - 失败时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
|
# 通知渠道 - 失败时使用的通知方式
|
||||||
|
channels: ["email", "dingtalk", "slack", "sms"]
|
||||||
|
# 构建不稳定通知配置
|
||||||
|
unstable:
|
||||||
|
# 收件人列表 - 不稳定时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
|
# 通知渠道 - 不稳定时使用的通知方式
|
||||||
|
channels: ["email", "dingtalk"]
|
||||||
|
|
||||||
|
# 构建策略 - 构建过程的策略配置
|
||||||
|
buildStrategy:
|
||||||
|
retryCount: 3 # 构建失败重试次数
|
||||||
|
timeoutMinutes: 60 # 构建超时时间(分钟)
|
||||||
|
cleanupWorkspace: true # 构建完成后是否清理工作空间
|
||||||
|
enableCaching: true # 是否启用Docker构建缓存
|
||||||
|
|
||||||
|
# 部署相关配置
|
||||||
|
deployScript: "deploy.sh" # 部署执行的shell脚本文件名
|
||||||
|
deployPath: "/usr/local/docker/xiaomayi-web/" # 目标服务器上的应用部署根路径
|
||||||
|
|
||||||
|
# 环境配置文件 - 定义不同环境的特定配置
|
||||||
|
profiles:
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# 开发环境配置 - 用于开发测试,部署频率高,配置相对宽松
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
dev:
|
||||||
|
# 容器镜像
|
||||||
|
registry: "default"
|
||||||
|
|
||||||
|
# 服务器列表 - 部署目标服务器
|
||||||
|
servers:
|
||||||
|
- serverIP: "esxi@192.168.10.201" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S201服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: true # 主节点标识,优先部署
|
||||||
|
priority: 1 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
- serverIP: "esxi@192.168.10.202" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S202服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: false # 主节点标识,优先部署
|
||||||
|
priority: 2 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
# 环境变量 - 部署时注入到容器中的环境变量
|
||||||
|
envVars:
|
||||||
|
SPRING_PROFILES_ACTIVE: "dev" # Spring Boot激活的配置文件环境
|
||||||
|
JAVA_OPTS: "-Xms512m -Xmx512m" # JVM内存参数:初始堆512MB,最大堆512MB
|
||||||
|
LOG_LEVEL: "INFO" # 日志级别:INFO
|
||||||
|
TZ: "Asia/Shanghai" # 时区设置:亚洲/上海
|
||||||
|
|
||||||
|
# 部署策略配置
|
||||||
|
deploymentStrategy: "rolling" # 部署策略:rolling-滚动部署
|
||||||
|
deploymentTimeout: 3600 # 整体部署超时时间(3600秒=1小时)
|
||||||
|
maxParallel: 2 # 最大并行部署服务器数量
|
||||||
|
retryAttempts: 3 # 部署失败重试次数
|
||||||
|
|
||||||
|
# 健康检查配置
|
||||||
|
healthCheckPath: "/actuator/health" # 健康检查端点
|
||||||
|
healthCheckTimeout: 180 # 健康检查超时时间(180秒=3分钟)
|
||||||
|
healthCheckInterval: 10 # 健康检查间隔(10秒)
|
||||||
|
successThreshold: 3 # 成功阈值(连续3次检查成功才算健康)
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# 测试环境配置 - 用于集成测试,配置接近生产环境
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
test:
|
||||||
|
# 容器镜像
|
||||||
|
registry: "default"
|
||||||
|
|
||||||
|
# 服务器列表 - 部署目标服务器
|
||||||
|
servers:
|
||||||
|
- serverIP: "esxi@192.168.10.201" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S201服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: true # 主节点标识,优先部署
|
||||||
|
priority: 1 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
- serverIP: "esxi@192.168.10.202" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S201服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: false # 主节点标识,优先部署
|
||||||
|
priority: 2 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
# 环境变量 - 部署时注入到容器中的环境变量
|
||||||
|
envVars:
|
||||||
|
SPRING_PROFILES_ACTIVE: "test" # 测试环境配置文件
|
||||||
|
JAVA_OPTS: "-Xms1g -Xmx1g" # JVM内存:1GB堆内存
|
||||||
|
LOG_LEVEL: "INFO"
|
||||||
|
TZ: "Asia/Shanghai"
|
||||||
|
|
||||||
|
# 部署策略配置
|
||||||
|
deploymentStrategy: "rolling"
|
||||||
|
deploymentTimeout: 3600 # 整体部署超时时间(3600秒=1小时)
|
||||||
|
maxParallel: 1 # 测试环境串行部署,便于问题排查
|
||||||
|
retryAttempts: 2
|
||||||
|
|
||||||
|
# 健康检查配置
|
||||||
|
healthCheckPath: "/actuator/health" # 健康检查端点
|
||||||
|
healthCheckTimeout: 180 # 健康检查超时时间(180秒=3分钟)
|
||||||
|
healthCheckInterval: 10 # 健康检查间隔(10秒)
|
||||||
|
successThreshold: 3 # 成功阈值(连续3次检查成功才算健康)
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# 用户验收测试环境配置 - 模拟生产环境,用于最终验收测试
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
uat:
|
||||||
|
# 容器镜像
|
||||||
|
registry: "default"
|
||||||
|
|
||||||
|
# 服务器列表 - 部署目标服务器
|
||||||
|
servers:
|
||||||
|
- serverIP: "esxi@192.168.10.201" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S201服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: true # 主节点标识,优先部署
|
||||||
|
priority: 1 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
- serverIP: "esxi@192.168.10.202" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 22 # SSH端口号
|
||||||
|
serverName: "S201服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: false # 主节点标识,优先部署
|
||||||
|
priority: 2 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
# 环境变量 - 部署时注入到容器中的环境变量
|
||||||
|
envVars:
|
||||||
|
SPRING_PROFILES_ACTIVE: "uat" # UAT环境配置文件
|
||||||
|
JAVA_OPTS: "-Xms2g -Xmx2g" # JVM内存:2GB堆内存
|
||||||
|
LOG_LEVEL: "INFO"
|
||||||
|
TZ: "Asia/Shanghai"
|
||||||
|
|
||||||
|
# 部署策略配置
|
||||||
|
deploymentStrategy: "blue-green" # 蓝绿部署策略,减少停机时间
|
||||||
|
deploymentTimeout: 3600 # 整体部署超时时间(3600秒=1小时)
|
||||||
|
maxParallel: 1
|
||||||
|
retryAttempts: 1 # UAT环境不重试,立即反馈问题
|
||||||
|
|
||||||
|
# 健康检查配置
|
||||||
|
healthCheckPath: "/actuator/health" # 健康检查端点
|
||||||
|
healthCheckTimeout: 180 # 健康检查超时时间(180秒=3分钟)
|
||||||
|
healthCheckInterval: 10 # 健康检查间隔(10秒)
|
||||||
|
successThreshold: 3 # 成功阈值(连续3次检查成功才算健康)
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# 生产环境配置 - 线上真实环境,配置最为严格
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
prod:
|
||||||
|
# 容器镜像
|
||||||
|
registry: "default"
|
||||||
|
|
||||||
|
# 服务器列表 - 部署目标服务器
|
||||||
|
servers:
|
||||||
|
- serverIP: "esxi@124.222.176.210" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 12422 # SSH端口号
|
||||||
|
serverName: "S210服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: true # 主节点标识,优先部署
|
||||||
|
priority: 1 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
- serverIP: "esxi@124.222.176.210" # 服务器SSH连接地址(用户名@IP)
|
||||||
|
serverPort: 12422 # SSH端口号
|
||||||
|
serverName: "S220服务器" # 服务器标识名称,用于日志和通知
|
||||||
|
sshKey: "jenkins-ssh-207" # Jenkins SSH密钥凭证ID
|
||||||
|
weight: 50 # 负载权重(0-100),用于流量控制
|
||||||
|
isPrimary: false # 主节点标识,优先部署
|
||||||
|
priority: 2 # 部署优先级(数字越小优先级越高)
|
||||||
|
|
||||||
|
# 环境变量 - 部署时注入到容器中的环境变量
|
||||||
|
envVars:
|
||||||
|
SPRING_PROFILES_ACTIVE: "prod" # 生产环境配置文件
|
||||||
|
JAVA_OPTS: "-Xms4g -Xmx4g" # JVM内存:4GB堆内存
|
||||||
|
LOG_LEVEL: "WARN" # 生产环境使用WARN级别日志,减少日志量
|
||||||
|
TZ: "Asia/Shanghai"
|
||||||
|
GC_OPTS: "-XX:+UseG1GC -XX:MaxGCPauseMillis=200" # GC调优参数:使用G1垃圾回收器
|
||||||
|
|
||||||
|
# 部署策略配置
|
||||||
|
deploymentStrategy: "canary" # 金丝雀部署策略,逐步发布降低风险
|
||||||
|
deploymentTimeout: 3600 # 整体部署超时时间(3600秒=1小时)
|
||||||
|
maxParallel: 1 # 生产环境单台串行部署,确保稳定性
|
||||||
|
retryAttempts: 3 # 部署失败重试次数
|
||||||
|
canaryPercentage: 25 # 首批金丝雀发布比例(25%)
|
||||||
|
|
||||||
|
# 健康检查配置
|
||||||
|
healthCheckEnabled: true # 启用健康检查
|
||||||
|
healthCheckPath: "/actuator/health" # 健康检查端点
|
||||||
|
healthCheckTimeout: 180 # 健康检查超时时间(180秒=3分钟)
|
||||||
|
healthCheckRetries: 5 # 健康检查5次重试
|
||||||
|
healthCheckInterval: 10 # 健康检查间隔(10秒)
|
||||||
|
successThreshold: 3 # 成功阈值(连续3次检查成功才算健康)
|
||||||
|
|
||||||
|
# 回滚配置
|
||||||
|
rollbackEnabled: true # 启用自动回滚
|
||||||
|
rollbackOnFailure: true # 部署失败时自动回滚
|
||||||
|
rollbackTimeout: 300 # 回滚操作超时时间(300秒=5分钟)
|
||||||
|
|
||||||
|
# 通知配置 - 生产环境部署状态通知
|
||||||
|
notifications:
|
||||||
|
slackChannel: "#prod-deployments" # Slack通知频道
|
||||||
|
email: "xiaomayicloud@163.com" # 主要邮件通知地址
|
||||||
|
onSuccess: true # 成功时发送通知
|
||||||
|
onFailure: true # 失败时发送通知
|
||||||
|
onStart: true # 开始部署时发送通知
|
||||||
|
recipients: # 额外通知人员邮件列表
|
||||||
|
- "devops@xiaomayi.com"
|
||||||
|
- "product-manager@xiaomayi.com"
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# 分支构建配置 - 定义不同Git分支的构建参数
|
||||||
|
# ==============================================================================
|
||||||
|
branchConfig:
|
||||||
|
# 开发分支配置
|
||||||
|
dev:
|
||||||
|
# Jenkins代理
|
||||||
|
jenkinsAgent: "S205-docker"
|
||||||
|
# Maven构建配置 - Java应用编译和打包
|
||||||
|
maven:
|
||||||
|
mavenSet: "nexus-maven-dev" # Maven配置集名称
|
||||||
|
skipTests: true # 生产构建不跳过测试
|
||||||
|
goals: "clean package" # Maven执行目标
|
||||||
|
options: "" # Maven选项参数
|
||||||
|
# Docker镜像构建配置
|
||||||
|
docker:
|
||||||
|
dockerFile: ".jenkins/Dockerfile" # 使用的Dockerfile文件
|
||||||
|
buildOptions: "--no-cache --pull" # Docker构建选项:禁用缓存、总是拉取最新基础镜像
|
||||||
|
|
||||||
|
# 测试分支配置
|
||||||
|
test:
|
||||||
|
# Jenkins代理
|
||||||
|
jenkinsAgent: "S205-docker"
|
||||||
|
# Maven构建配置 - Java应用编译和打包
|
||||||
|
maven:
|
||||||
|
mavenSet: "nexus-maven-test" # Maven配置集名称
|
||||||
|
skipTests: true # 生产构建不跳过测试
|
||||||
|
goals: "clean package" # Maven执行目标
|
||||||
|
options: "" # Maven选项参数
|
||||||
|
# Docker镜像构建配置
|
||||||
|
docker:
|
||||||
|
dockerFile: ".jenkins/Dockerfile" # 使用的Dockerfile文件
|
||||||
|
buildOptions: "--no-cache --pull" # Docker构建选项:禁用缓存、总是拉取最新基础镜像
|
||||||
|
|
||||||
|
# 主分支配置(生产环境)
|
||||||
|
master:
|
||||||
|
# Jenkins代理
|
||||||
|
jenkinsAgent: "S205-docker"
|
||||||
|
# Maven构建配置 - Java应用编译和打包
|
||||||
|
maven:
|
||||||
|
mavenSet: "nexus-maven-dev" # Maven配置集名称
|
||||||
|
skipTests: false # 生产构建不跳过测试
|
||||||
|
goals: "clean package" # Maven执行目标
|
||||||
|
options: "" # Maven选项参数
|
||||||
|
# Docker镜像构建配置
|
||||||
|
docker:
|
||||||
|
dockerFile: ".jenkins/Dockerfile" # 使用的Dockerfile文件
|
||||||
|
buildOptions: "--no-cache --pull" # Docker构建选项:禁用缓存、总是拉取最新基础镜像
|
||||||
|
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# 服务配置 - 定义每个微服务的特定配置
|
||||||
|
# ==============================================================================
|
||||||
|
serviceConfig:
|
||||||
|
# 后台系统
|
||||||
|
xiaomayi-admin:
|
||||||
|
programLang: "java"
|
||||||
|
programLangVersion: "17.0.16"
|
||||||
|
containerName: "xiaomayi-admin"
|
||||||
|
pomFilePath: "pom.xml"
|
||||||
|
servicePath: "xiaomayi-modules/xiaomayi-admin"
|
||||||
|
jarName: "xiaomayi-admin.jar"
|
||||||
|
port: "8081"
|
||||||
|
javaOpts: "-server -Xms256m -Xmx2g -Xss1m"
|
||||||
|
deployServer: "servers[0]"
|
||||||
|
composeFile: "docker-compose"
|
||||||
|
xiaomayi-admin-ui:
|
||||||
|
programLang: "nodejs"
|
||||||
|
programLangVersion: "22.19.0"
|
||||||
|
deployMethod: "static"
|
||||||
|
projectName: "xiaomayi-admin-ui"
|
||||||
|
packageName: "xiaomayi-admin-ui.tar.gz"
|
||||||
|
servicePath: "xiaomayi-ui"
|
||||||
|
containerName: "xiaomayi-admin-ui"
|
||||||
|
port: "8001"
|
||||||
|
deployServer: "servers[0]"
|
||||||
|
composeFile: "docker-compose"
|
||||||
|
# 前台网站
|
||||||
|
xiaomayi-web:
|
||||||
|
programLang: "java"
|
||||||
|
programLangVersion: "17.0.16"
|
||||||
|
containerName: "xiaomayi-web2"
|
||||||
|
pomFilePath: "pom.xml"
|
||||||
|
servicePath: "xiaomayi-modules/xiaomayi-web"
|
||||||
|
jarName: "xiaomayi-web.jar"
|
||||||
|
port: "8082"
|
||||||
|
javaOpts: "-server -Xms256m -Xmx2g -Xss1m"
|
||||||
|
deployServer: "servers[0]"
|
||||||
|
composeFile: "docker-compose"
|
||||||
@ -6,25 +6,74 @@ common:
|
|||||||
registrys:
|
registrys:
|
||||||
# 默认仓库配置 - 内部私有仓库
|
# 默认仓库配置 - 内部私有仓库
|
||||||
default:
|
default:
|
||||||
# 内部私有仓库地址
|
# 内部私有仓库地址 - 企业内部部署的Harbor或Registry地址
|
||||||
registry: "192.168.10.102:8001"
|
registry: "192.168.10.102:8001"
|
||||||
# Jenkins凭证ID,用于仓库认证
|
# Jenkins凭证ID - 用于仓库认证的凭据ID
|
||||||
registryCredential: "xiaomayi-hub-credentials"
|
registryCredential: "xiaomayi-hub-credentials"
|
||||||
# 仓库中的项目/命名空间名称
|
# 仓库中的项目/命名空间名称 - 镜像存放的项目空间
|
||||||
registryProject: "xiaomayi"
|
registryProject: "xiaomayi"
|
||||||
|
# 仓库类型 - 仓库的技术类型(harbor、acr、dockerhub等)
|
||||||
|
registryType: "harbor"
|
||||||
# 应用部署基础镜像
|
# 应用部署基础镜像
|
||||||
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
|
||||||
# 阿里云ACR仓库配置 - 云上仓库,用于生产环境或特定场景
|
# 阿里云ACR仓库配置 - 云上仓库,用于生产环境或特定场景
|
||||||
acr:
|
aliyun:
|
||||||
# 阿里云VPC内网地址,网络性能更优
|
# 阿里云VPC内网地址 - 阿里云容器镜像服务的VPC内网地址,网络性能更优
|
||||||
registry: "registry-vpc.cn-hangzhou.aliyuncs.com"
|
registry: "registry-vpc.cn-hangzhou.aliyuncs.com"
|
||||||
# 阿里云仓库认证凭证
|
# 阿里云仓库认证凭证 - 阿里云访问凭据的Jenkins ID
|
||||||
registryCredential: "aliyun-hub-credentials"
|
registryCredential: "aliyun-hub-credentials"
|
||||||
# 阿里云仓库项目名称
|
# 阿里云仓库项目名称 - 阿里云ACR中的命名空间
|
||||||
registryProject: "xiaomayi"
|
registryProject: "xiaomayi-base"
|
||||||
|
# 仓库类型 - 阿里云容器镜像服务
|
||||||
|
registryType: "acr"
|
||||||
# 应用部署基础镜像
|
# 应用部署基础镜像
|
||||||
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
# Docker Hub配置 - 官方Docker仓库,用于公开镜像
|
||||||
|
dockerhub:
|
||||||
|
# Docker Hub地址 - 官方Docker仓库地址
|
||||||
|
registry: "index.docker.io"
|
||||||
|
# Docker Hub认证凭证 - Docker Hub账号的Jenkins凭据ID
|
||||||
|
registryCredential: "dockerhub-credentials"
|
||||||
|
# Docker Hub项目名称 - 用户名或组织名
|
||||||
|
registryProject: "xiaomayi-base"
|
||||||
|
# 仓库类型 - 官方Docker仓库
|
||||||
|
registryType: "dockerhub"
|
||||||
|
# 应用部署基础镜像
|
||||||
|
registryImage: "jdk:17.0.16-ubuntu22-dos"
|
||||||
|
|
||||||
|
# 钉钉消息
|
||||||
|
dingtalk:
|
||||||
|
# 凭证ID - Jenkins中存储的DingTalk认证凭据ID
|
||||||
|
credentialsId: "jenkins-dingtalk-robot"
|
||||||
|
|
||||||
|
# 通知配置 - 构建结果通知设置
|
||||||
|
notification:
|
||||||
|
# 构建成功通知配置
|
||||||
|
success:
|
||||||
|
# 收件人列表 - 成功时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com", "575073565@qq.com", "txwz2006@126.com"]
|
||||||
|
# 通知渠道 - 使用的通知方式
|
||||||
|
channels: ["email", "dingtalk", "slack"]
|
||||||
|
# 构建失败通知配置
|
||||||
|
failure:
|
||||||
|
# 收件人列表 - 失败时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
|
# 通知渠道 - 失败时使用的通知方式
|
||||||
|
channels: ["email", "dingtalk", "slack", "sms"]
|
||||||
|
# 构建不稳定通知配置
|
||||||
|
unstable:
|
||||||
|
# 收件人列表 - 不稳定时通知的邮箱地址
|
||||||
|
recipients: ["xiaomayicloud@163.com"]
|
||||||
|
# 通知渠道 - 不稳定时使用的通知方式
|
||||||
|
channels: ["email", "dingtalk"]
|
||||||
|
|
||||||
|
# 构建策略 - 构建过程的策略配置
|
||||||
|
buildStrategy:
|
||||||
|
retryCount: 3 # 构建失败重试次数
|
||||||
|
timeoutMinutes: 60 # 构建超时时间(分钟)
|
||||||
|
cleanupWorkspace: true # 构建完成后是否清理工作空间
|
||||||
|
enableCaching: true # 是否启用Docker构建缓存
|
||||||
|
|
||||||
# 部署相关配置
|
# 部署相关配置
|
||||||
deployScript: "deploy.sh" # 部署执行的shell脚本文件名
|
deployScript: "deploy.sh" # 部署执行的shell脚本文件名
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user