Files
Nexus/docs/changelog/2026-06-07-push-history-permission-column.md
T
Nexus Agent c8b0663508
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
feat: 批量IP添加、脚本库历史、推送权限记录与脚本SSH执行修复
批量添加替代CSV并支持去重;脚本库页内嵌执行历史;推送历史记录 rsync 权限策略;
脚本执行不再依赖 Agent 在线;服务器同步日志与相关单测补齐。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 03:15:40 +08:00

1.7 KiB
Raw Blame History

推送历史显示权限修正记录

日期: 2026-06-07

变更摘要

sync_logs 新增 push_permission 字段,记录每次真实推送时 rsync 附加的 --chown / --chmod 策略;推送页、命令页推送日志、服务器同步日志均展示该列。

动机

用户需确认推送是否按配置将远程文件改为 www:www / 755 等;此前仅审计/环境变量侧可知,推送历史无记录。

涉及文件

路径 说明
server/domain/models/__init__.py SyncLog.push_permission
server/infrastructure/database/migrations.py 启动迁移加列
server/application/services/sync_engine_v2.py rsync_push_permission_summary()、写入日志
server/api/servers.py API 序列化
frontend/src/composables/push/* 列头与 formatPushPermission
frontend/src/components/push/PushHistoryTable.vue 权限列
frontend/src/pages/CommandsPage.vue 推送日志视图
frontend/src/pages/ServersPage.vue 同步日志副标题
tests/test_rsync_push_permissions.py summary 单测

说明

  • 文件推送(rsync 写入;文件管理器单独 chmod 仍在 审计日志 file_permission_change
  • 历史记录在字段上线前的旧推送显示
  • 取消的推送不写入权限策略。

迁移 / 重启

  • API 重启后自动 ALTER TABLE sync_logs ADD COLUMN push_permission …
  • 前端需 build 部署

验证

pytest tests/test_rsync_push_permissions.py -q
cd frontend && npx vite build

推送成功后:GET /api/servers/logs 对应项 push_permissionchown=www:www chmod=D755,F755(默认配置)。