226 Commits

Author SHA1 Message Date
mac 5ddb434b74 feat(delivery): add Ansible playbook for native MySQL provisioning
Add mysql-deploy.yml playbook for bare-metal MySQL 8.0 delivery via
AWX: parameter validation, resource preflight checks, apt install,
AppArmor adaptation, per-instance directory layout, Jinja2 config
template (buffer pool sizing, binlog, GTID), systemd template unit
(mysql-delivery@.service), admin account setup, and TCP health
verification. Includes example inventory.

Relates-to: #97
2026-07-23 12:05:07 +08:00
mac 699eaa5225 feat(delivery): add HTTP handlers and route registration
Add DeliveryHandler (7 endpoints under /auth/api/v1/delivery/*):
CreateMySQL, List, Get, Cancel, Targets, CreateTarget, UpsertQuota.
Add ExecutionHandler for internal service callback. Register routes
with JWT auth middleware and start scheduler goroutine when enabled.

Relates-to: #97
2026-07-23 12:04:51 +08:00
mac e11bc6f3d6 feat(delivery): implement delivery scheduler and state machine
Core delivery service with: task creation (idempotent, validated),
background scheduler (claimAndReserve with SELECT FOR UPDATE SKIP
LOCKED), 4-level concurrency control, resource quota enforcement,
host allocation from candidate pool, AWX job dispatch, polling,
TCP health check, instance registration, CloudDM integration
(optional), and cancel support. 11-state machine with optimistic
locking and full event audit trail.

Relates-to: #97
2026-07-23 12:04:37 +08:00
mac 81a94322f7 feat(delivery): add AWX API client
Implement AWXClient with Launch, GetJob, and Cancel methods for
orchestrating Ansible job templates via AWX REST API. Uses Bearer
token auth with 30s timeout. Includes unit tests with mock transport.

Relates-to: #97
2026-07-23 12:04:15 +08:00
mac 76583c6766 feat(delivery): add delivery configuration and environment variables
Add 10 config fields: AWX connection (AWX_BASE_URL, AWX_TOKEN),
scheduler controls (DELIVERY_SCHEDULER_ENABLED, DELIVERY_POLL_SECONDS,
DELIVERY_RESERVATION_TTL_MINUTES), concurrency limits (GLOBAL/TARGET/
BUSINESS), service token, and CloudDM registration (CLOUDDM_REGISTER_URL,
CLOUDDM_API_TOKEN). Update .env.example with new variables.

Relates-to: #97
2026-07-23 12:04:02 +08:00
mac 8676963bac feat(delivery): add delivery data models and auto-migration
Add 8 GORM models for MySQL one-click delivery: DeploymentTarget,
ResourceQuota, DeliveryTask, ResourceReservation, ResourceUsage,
MySQLInstance, ExecutionJob, TaskEvent. Register them in AutoMigrate.

Relates-to: #97
2026-07-23 12:03:47 +08:00
Gmarker689 d191948f6d Merge pull request #99 from Gmaker689/fix/dependabot-alerts-7-8-vite-upgrade
fix: upgrade vite to 6.4.3 to fix launch-editor command injection and…
2026-07-22 17:00:26 +08:00
Gmarker689 a974dd03cb fix: upgrade vite to 6.4.3 to fix launch-editor command injection and fs.deny bypass vulnerabilities
- Fixes Dependabot alert #7 (GHSA-c27g-q93r-2cwf): launch-editor command injection via crafted request on Windows, patched in vite >= 5.4.9
- Fixes Dependabot alert #8 (GHSA-fx2h-pf6j-xcff): server.fs.deny bypass on Windows alternate paths, patched in vite >= 6.4.3
- Upgraded @vitejs/plugin-vue to ^5.2.4 for vite 6 compatibility
- Upgraded vue-tsc to ^2.2.12 for vite 6 compatibility
2026-07-22 16:22:01 +08:00
mac 64f6bf6cea fix(container): avoid duplicate Wayne workload rows 2026-07-22 15:20:33 +08:00
mac c8762619fb chore(frontend): clarify namespace auto binding prompts 2026-07-22 15:05:42 +08:00
mac d150d0f0dd feat(business-line): auto bind Wayne namespace on create 2026-07-22 15:05:41 +08:00
mac 7f6f6fa41e feat(container): show business line workloads from Wayne 2026-07-22 15:05:41 +08:00
ztkkOip 89a23ef60d Merge pull request #95 from ztkkOip/feat/base-service-delivery
Feat(base service delivery)基础服务部署在主系统的初始化
2026-07-22 14:55:44 +08:00
qudder ebf7577e7e Merge pull request #92 from 2311719626/docs/README
docs: 重写 README.md,完善项目文档
2026-07-22 10:55:15 +08:00
ztkkOip 75e1177b70 Merge pull request #94 from 2311719626/fix/upgrade-golang-x-crypto
修复: 升级 golang.org/x/crypto 修复多个 Critical 安全漏洞
2026-07-22 10:29:13 +08:00
wonder 5e47dee022 fix: upgrade golang.org/x/crypto to fix critical security vulnerabilities
- 升级 golang.org/x/crypto 从 v0.40.0 到 v0.54.0
- 修复 FIDO/U2F 安全密钥物理存在检查绕过漏洞
- 修复服务器意外响应导致的死锁问题
- 修复未强制执行 @revoked 状态导致的认证绕过漏洞
- 修复大通道写入导致的无限循环漏洞
- 修复未强制执行调用密钥约束问题
- 修复未删除调用代理约束转发密钥问题
- 修复 VerifiedPublicKeyCallback 权限跳过强制执行问题
- 同步升级相关依赖: x/net v0.56.0, x/sys v0.47.0, x/text v0.40.0, x/sync v0.22.0, x/mod v0.37.0, x/tools v0.47.0
2026-07-22 10:23:33 +08:00
wonder 55addea694 docs: 重写 README.md,完善项目文档
- 新增项目徽章(License、Go、Vue、Element Plus、PRs Welcome)
- 重写核心能力板块:资源纳管、基础服务部署、业务交付、统一认证与审计
- 完善技术栈表格,增加说明列
- 扩充项目结构目录,覆盖前后端完整模块
- 优化快速开始指南,新增构建与部署说明
- 补充 API 文档、开发指南、Git 提交规范
- 新增参与贡献、路线图、许可证等板块
2026-07-22 10:13:57 +08:00
mac 2db8264c8e feat(service): add deployment task integration 2026-07-21 18:26:50 +08:00
mac c324e2ec59 feat(auth): use Wayne native role APIs 2026-07-21 17:05:48 +08:00
ztkkOip b1fa41c24f Merge pull request #90 from ztkkOip/auth-login 子系统赋权初始化
feet(子系统赋权)初始化
2026-07-17 19:35:51 +08:00
mac 981e9557fe feat(frontend): make mock panels follow business line 2026-07-17 19:28:19 +08:00
mac a112cf742c feat(frontend): add Wayne subsystem authorization page 2026-07-17 19:27:33 +08:00
mac 8d49230247 feat(server): add Wayne subsystem authorization APIs 2026-07-17 19:26:40 +08:00
mac add4b1566e chore: refresh generated component types 2026-07-17 16:32:46 +08:00
mac 02716de73a Merge remote-tracking branch 'origin/main' into auth-login 2026-07-17 16:31:46 +08:00
ztkkOip fbe2407217 Merge pull request #86 from 2311719626/feature/modify-frontend-content
feat(frontend): 新增服务管理入口并统一按钮样式
2026-07-17 16:22:24 +08:00
wonder a31f274153 feat(frontend): 新增服务管理入口并统一按钮样式
- 侧边栏「机器管理」下方新增「服务管理」导航项(图标 ◈,badge Consul)
- 服务管理页同步按钮文案改为「同步」,添加 type=primary
- 监控看板刷新按钮改为 el-button type=primary,与全局风格统一
2026-07-17 16:00:06 +08:00
mac a10d4a5921 fix: require Wayne user ID for role binding 2026-07-17 15:47:32 +08:00
wonder c1480f3219 feat(frontend): 将"资源管理"更名为"机器管理"
- 路由路径: resource/management → machine/management
- 路由名称: ResourceManagement → MachineManagement
- 页面标题: 资源管理 → 机器管理
- 侧边栏文案: 资源管理 → 机器管理
- 文件物理路径未改动(views/resource/Management.vue)
2026-07-17 15:46:03 +08:00
ztkkOip bb6b7c0009 Merge pull request #85 from ztkkOip/auth-login
feet(business_line):初始化
2026-07-17 15:17:57 +08:00
mac d9d93fcd20 chore: update generated component types 2026-07-17 15:08:32 +08:00
mac f49b948023 Merge remote-tracking branch 'origin/main' into auth-login 2026-07-17 15:02:47 +08:00
mac d264924d1e feat: add business line permissions and Wayne namespace mapping 2026-07-17 15:02:18 +08:00
ztkkOip edf97eba70 Merge pull request #84 from 2311719626/feature/frontend-page-optimization
feat(frontend): 前端页面整体优化
2026-07-17 14:58:30 +08:00
wonder 3842a81cb2 refactor(router): 统一前端路由命名与层级
## 背景
前端路由存在层级不一致、英文缩写混用、name 与 sidebar 文本不匹配等问题。

## 变更内容
- 统一使用全称命名(Mgmt → Management, Ops → Operation)
- 统一带前缀路径(/cluster → /infrastructure/cluster)
- 合并可观测性模块(/monitor、/alert → /observable/*)
- 修正 router name 与侧边栏中文标题对应关系

## 路由对照
- /tasks → /task/log (TaskLog)
- /resource/mgmt → /resource/management (ResourceManagement)
- /service/mgmt → /service/management (ServiceManagement)
- /audit/ops → /audit/operation (OperationAudit)
- /cluster → /infrastructure/cluster (InfrastructureCluster)
- /tenants → /business/quota (BusinessQuota)
- /monitor → /observable/monitoring (MonitoringDashboard)
- /alert → /observable/alert (AlertInformation)
- /subsystem/authz → /subsystem/authorization (SubsystemAuthorization)
2026-07-17 14:50:41 +08:00
wonder 1a125e154c feat(service): 容器服务部署独立板块并使用 SSO 跳转
- 新增「容器服务部署」页面板块,与「基础服务目录」同级
- 将容器服务(Wayne)迁移到容器服务部署板块
- Wayne 卡片使用与子系统详情页相同的 SSO 跳转逻辑
- 移除 Wayne 弹窗,改为直接跳转 Wayne 平台
2026-07-17 14:35:37 +08:00
wonder 0cf622b8af refactor(monitor): 将告警相关内容从监控看板移至告警信息页面
- 监控看板移除 P0/P1 告警统计卡片
- 监控看板移除告警来源接入面板
- 告警信息页面添加告警来源接入面板(Zabbix / VictoriaMetrics / 夜莺)
- 告警信息页面添加 dc-* 样式
- 监控看板移除不需要的 dc-* 样式
2026-07-17 14:23:15 +08:00
wonder 096a6a8857 fix(styles): 修复表格中状态文本浮空问题
- 移除 .status-text 的 display: flex,避免破坏 td 的 table-cell 布局
- 删除重复的状态文本样式定义
2026-07-17 14:13:41 +08:00
wonder b58e1d5c3c refactor(monitor): 优化监控告警页面
- 监控页面标题改为监控看板
- 告警页面标题改为告警信息
- 告警页面删除告警通道面板
- 侧边栏导航文本同步更新
2026-07-17 14:11:09 +08:00
wonder 0c5628358f feat(subsystem): 子系统卡片点击跳转到详情页
- 移除 SubsystemCard 直接打开外部链接的逻辑
- 点击卡片后路由跳转到 /subsystem/detail/:name
- 用户需在详情页点击按钮后才会访问外部系统
2026-07-17 14:05:14 +08:00
wonder 454978be7b feat(subsystem): 调整子系统接入状态显示
- Wayne 和 CloudDM 状态设为 active(在线)
- 其他子系统状态设为 integrating(接入改造中)
- 状态文本统一调整为「在线」/「接入改造中」
- 非 active 状态的跳转按钮显示为灰色禁用状态

Co-authored-by: lx <lx@users.noreply.github.com>
2026-07-17 14:01:33 +08:00
wonder 75b71cec29 feat(subsystem): 添加 Superset 日志数据可视化子系统
- 在 mockSubsystems 中添加 Superset 子系统配置(id: 7, 可观测性分类)
- 在侧边栏子系统导航列表中添加 Superset 入口
- 添加青色系 CSS 变量(--tag-cyan-*、--logo-ss-bg)用于 Superset 主题
- 更新 SubsystemCard 和 SubsystemDetail 的颜色映射
- 添加 Superset 详情页描述文案

状态设置为 integrating,支持 SSO 单点登录
2026-07-17 13:55:14 +08:00
ztkkOip e1d755b2df Merge pull request #82 from 2311719626/feature/frontend-bl-scoped-delivery
feat(frontend): v3→v4 前端对齐重构
review完没有问题仅微调前端代码
2026-07-17 11:42:19 +08:00
wonder 66352c08e5 fix(subsystem): 修正 qpass 描述为七牛云内部系统
- subsystem.ts: description 和 category 更新
- SubsystemDetail.vue: 详情页描述同步更新
2026-07-17 11:36:20 +08:00
wonder a9319e77b9 refactor(observable): 拆分监控告警为独立页面
- 侧边栏"监控/日志/告警"拆分为"监控"和"告警"两个导航项
- Monitor.vue 移除日志相关内容,保留 VictoriaMetrics 和 Zabbix 面板
- 新增 Alert.vue 告警页面,展示当前告警、告警通道、告警记录
- 路由新增 /alert 路径,meta.title 设为"告警"
2026-07-17 11:35:03 +08:00
wonder 4d4d1a9d01 refactor(sidebar): 移除侧边栏底部版本信息
- 删除 sidebar-foot 中的 v3 一期技术栈文案
2026-07-17 11:29:02 +08:00
wonder 779c6e0269 refactor(sidebar): 任务中心更名为任务日志
- 侧边栏导航 Tab 名称调整,更准确反映日志查看功能定位
2026-07-17 11:27:48 +08:00
wonder 49244c931c refactor(cluster,resource): 统一同步按钮命名
- ClusterList.vue: "加入新节点" → "同步"
- Management.vue: "创建虚机" → "同步"
2026-07-17 11:26:04 +08:00
wonder 8fc4b0e0fb refactor(resource): 优化资源纳管子 Tab 命名
- 集群 / 容器池 → 集群与容器
- 业务线 / 配额 → 业务配额
- 同步更新侧边栏、路由 meta、页面标题
2026-07-17 11:23:41 +08:00
wonder 506752747d feat(subsystem): 子系统导航增加可展开子 Tab 与详情页
- AppSidebar: 统一入口组下子系统导航改为可展开列表,展示 6 个子系统子 Tab
- 每个子 Tab 带功能描述前缀(如 多集群发布平台 Wayne)便于用户定位
- 新建 SubsystemDetail.vue 统一详情模板(统计卡片 + 门户卡片 + 打开按钮)
- 新增路由 /subsystem/detail/:name
- subsystem API mock 数据补充 label、domain、category 字段
- SubsystemCard 概览卡片同步显示 label + name 格式
2026-07-17 11:20:17 +08:00