294 lines
8.6 KiB
YAML
294 lines
8.6 KiB
YAML
# DevOps 自动化部署配置文件
|
||
|
||
# 全局分支配置(所有仓库统一使用此分支)
|
||
global_branch: main
|
||
|
||
# 主仓库配置
|
||
main_repository:
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-cloud-all.git
|
||
runtime_path: ./runtime
|
||
|
||
# 监听配置
|
||
monitor:
|
||
poll_interval: 10 # 轮询间隔(秒)
|
||
enabled_repos: [] # 空数组表示监听所有仓库,或指定具体仓库名称列表
|
||
watch_tags: false # 是否监听 tag 变化(打 tag 时触发部署)
|
||
tag_pattern: "v*" # 监听的 tag 模式,支持通配符(如 v*、release-*)
|
||
|
||
# 部署配置
|
||
deploy:
|
||
docker_compose_path: ./docker/docker-compose.yml
|
||
|
||
# 日志配置
|
||
logging:
|
||
file: .devops/logs/devops.log
|
||
max_size: 10485760 # 10MB
|
||
|
||
# 钉钉通知配置
|
||
dingtalk:
|
||
enabled: true # 是否启用钉钉通知
|
||
access_token: fccb17a6c74ca862d7994630562d9d3d5be7b60d012d53dce32c64c566b9a3de
|
||
secret: SEC54a73636473f324b8f77741ee41ee278d22eba4af898bba739c11183d851c8b0
|
||
|
||
# 数据库配置(用于数据库管理页面)
|
||
database:
|
||
container_name: ruoyi-mysql # MySQL 容器名称
|
||
host: localhost
|
||
port: 3306
|
||
user: root
|
||
password: password
|
||
charset: utf8mb4
|
||
|
||
# 基础设施服务配置(只部署一次)
|
||
infrastructure:
|
||
- name: ruoyi-mysql
|
||
docker_service: ruoyi-mysql
|
||
pre_deploy_commands:
|
||
- cp sql/ry_20250523.sql docker/mysql/db/
|
||
- cp sql/ry_config_20250902.sql docker/mysql/db/
|
||
- cp sql/wvp.sql docker/mysql/db/
|
||
wait_time: 30 # MySQL 需要更长时间初始化
|
||
|
||
- name: ruoyi-redis
|
||
docker_service: ruoyi-redis
|
||
wait_time: 10 # Redis 启动较快
|
||
|
||
- name: ruoyi-minio
|
||
docker_service: ruoyi-minio
|
||
wait_time: 15 # MinIO 对象存储服务
|
||
|
||
- name: ruoyi-nacos
|
||
docker_service: ruoyi-nacos
|
||
wait_time: 20 # Nacos 需要等待 MySQL 就绪
|
||
|
||
- name: zlmediakit
|
||
docker_service: zlmediakit
|
||
wait_time: 10 # 流媒体服务器启动较快
|
||
|
||
- name: wvp-pro
|
||
docker_service: wvp-pro
|
||
pre_deploy_commands:
|
||
- cd wvpjar && mvn clean package -DskipTests
|
||
- cp wvpjar/target/wvp-pro-*.jar docker/wvp/wvpjar/jar/
|
||
wait_time: 30 # WVP 后端需要等待 MySQL、Redis 和 zlmediakit
|
||
|
||
- name: wvp-web
|
||
docker_service: wvp-web
|
||
pre_deploy_commands:
|
||
- cd wvpweb && npm install && npm run build:prod
|
||
- cp -r wvpweb/dist docker/wvp/web/html/dist
|
||
wait_time: 10 # Nginx 启动较快
|
||
|
||
# Git 仓库配置
|
||
repositories:
|
||
# 认证服务
|
||
- name: ruoyi-auth
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-auth.git
|
||
path: ruoyi-auth
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/auth/jar
|
||
docker_service: ruoyi-auth
|
||
|
||
# 网关服务
|
||
- name: ruoyi-gateway
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-gateway.git
|
||
path: ruoyi-gateway
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/gateway/jar
|
||
docker_service: ruoyi-gateway
|
||
|
||
# 前端UI
|
||
- name: ruoyi-ui
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-ui.git
|
||
path: ruoyi-ui
|
||
type: nodejs
|
||
build_commands:
|
||
- npm install
|
||
- npm run build:prod
|
||
artifact_path: dist
|
||
docker_path: docker/nginx/html/dist
|
||
docker_service: ruoyi-nginx
|
||
|
||
- name: ruoyi-hyf
|
||
url: http://th.local.t-aaron.com:13000/THENG/a_th_web.git
|
||
path: a_th_web
|
||
type: nodejs
|
||
build_commands:
|
||
- pnpm install
|
||
- pnpm run build-prod:hyf
|
||
artifact_path: apps/tuoheng_hyf_web/dist
|
||
docker_path: docker/a_th_web/html/dist
|
||
docker_service: ruoyi-hyf
|
||
|
||
- name: ruoyi-hxf
|
||
url: http://th.local.t-aaron.com:13000/THENG/a_th_web.git
|
||
path: a_th_web
|
||
type: nodejs
|
||
build_commands:
|
||
- pnpm install
|
||
- pnpm run build-prod:hxf
|
||
artifact_path: apps/tuoheng_hxf_web/dist
|
||
docker_path: docker/b_th_web/html/dist
|
||
docker_service: ruoyi-hxf
|
||
|
||
# 系统服务
|
||
- name: ruoyi-system
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-system.git
|
||
path: ruoyi-modules/ruoyi-system
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/system/jar
|
||
docker_service: ruoyi-modules-system
|
||
|
||
# 文件服务
|
||
- name: ruoyi-file
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-file.git
|
||
path: ruoyi-modules/ruoyi-file
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/file/jar
|
||
docker_service: ruoyi-modules-file
|
||
|
||
# 代码生成
|
||
- name: ruoyi-gen
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-gen.git
|
||
path: ruoyi-modules/ruoyi-gen
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/gen/jar
|
||
docker_service: ruoyi-modules-gen
|
||
|
||
# 定时任务
|
||
- name: ruoyi-job
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-job.git
|
||
path: ruoyi-modules/ruoyi-job
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/job/jar
|
||
docker_service: ruoyi-modules-job
|
||
|
||
# 监控服务
|
||
- name: ruoyi-monitor
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-ruoyi-visual.git
|
||
path: ruoyi-visual/ruoyi-monitor
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/visual/monitor/jar
|
||
docker_service: ruoyi-visual-monitor
|
||
|
||
# 设备服务
|
||
- name: tuoheng-device
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-device.git
|
||
path: ruoyi-modules/tuoheng-device
|
||
type: java
|
||
build_commands:
|
||
- export JAVA_HOME=/data/jdk/jdk17 && export PATH=$JAVA_HOME/bin:$PATH && mvn clean package -DskipTests -Dmaven.compiler.source=17 -Dmaven.compiler.target=17
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/device/jar
|
||
docker_service: tuoheng-modules-device
|
||
|
||
# 审批服务
|
||
- name: tuoheng-approval
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-approval.git
|
||
path: ruoyi-modules/tuoheng-approval
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/approval/jar
|
||
docker_service: tuoheng-modules-approval
|
||
|
||
# 航线服务
|
||
- name: tuoheng-airline
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-airline.git
|
||
path: ruoyi-modules/tuoheng-airline
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/airline/jar
|
||
docker_service: tuoheng-modules-airline
|
||
|
||
# 任务服务
|
||
- name: tuoheng-task
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-task.git
|
||
path: ruoyi-modules/tuoheng-task
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/task/jar
|
||
docker_service: tuoheng-modules-task
|
||
|
||
# FMS服务
|
||
- name: tuoheng-fms
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-fms.git
|
||
path: ruoyi-modules/tuoheng-fms
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/fms/jar
|
||
docker_service: tuoheng-modules-fms
|
||
|
||
# 媒体服务
|
||
- name: tuoheng-media
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-tuoheng-media.git
|
||
path: ruoyi-modules/tuoheng-media
|
||
type: java
|
||
build_commands:
|
||
- mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/ruoyi/modules/media/jar
|
||
docker_service: tuoheng-modules-media
|
||
|
||
# WVP 后端服务
|
||
- name: wvp-pro
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-wvp-java.git
|
||
path: wvpjar
|
||
type: java
|
||
build_commands:
|
||
- cd wvpjar && mvn clean package -DskipTests
|
||
artifact_path: target/*.jar
|
||
docker_path: docker/wvp/wvpjar/jar
|
||
docker_service: wvp-pro
|
||
|
||
# WVP 前端服务
|
||
- name: wvp-web
|
||
url: http://th.local.t-aaron.com:13000/THENG/a-wvp-web.git
|
||
path: wvpweb
|
||
type: nodejs
|
||
build_commands:
|
||
- npm install
|
||
- npm run build:prod
|
||
artifact_path: dist
|
||
docker_path: docker/wvp/web/html/dist
|
||
docker_service: wvp-web
|
||
|
||
# HYF 后端服务
|
||
- name: hyf-backend
|
||
url: http://th.local.t-aaron.com:13000/THENG/hyf-backend.git
|
||
path: hyf-backend
|
||
type: python
|
||
build_commands: [] # Python 项目不需要构建,直接复制源码
|
||
artifact_path: . # 复制整个项目目录
|
||
docker_path: docker/hyf_backend/src
|
||
docker_service: hyf-backend
|
||
docker_build: true # 需要重新构建镜像
|