包装器介绍(脚本包装器脚本、外壳脚本)中间层脚本,不直接干活

📅 2026/8/3 2:35:51
包装器介绍(脚本包装器脚本、外壳脚本)中间层脚本,不直接干活
按你说的「大部分由我来做」分工是这样——我能做的写 forced-command包装器infra/scripts/remote-deploy.sh、把 deploy.sh 拆成手动/自动共用同一份逻辑、改写 cd.yml 的 deploy job、把包装器装到服务器上我有 root SSH、手工触发一次验证幂等。包装器是什么文章目录包装器Wrapper是什么具体到你的 remote-deploy.sh为什么需要它一句话总结包装器Wrapper是什么在这个语境下包装器就是一层外壳脚本它不直接干活而是接收请求 → 做检查/记录 → 再调用真正干活的逻辑具体到你的remote-deploy.sh它的角色是这样的GitHub Actions (CI) │ │ ssh deployserver deploy.sh --auto ▼ ┌─────────────────────────────┐ │ remote-deploy.sh包装器 │ ← 你写的这个 │ │ │ 1. 记录日志谁、什么时间 │ │ 2. 检查参数是否合法 │ │ 3. 加锁防止并发部署 │ │ 4. 调用真正的 deploy.sh │ │ 5. 记录结果成功/失败 │ └─────────────────────────────┘ │ ▼ deploy.sh真正干活的为什么需要它因为你的服务器 SSH 用的是forced-command模式即authorized_keys里写了commandinfra/scripts/remote-deploy.sh ssh-ed25519 AAAA...这意味着不管你 SSH 传什么命令服务器都只会执行这个脚本。所以这个脚本必须自己解析客户端到底想干什么然后决定怎么处理——它就像一个门卫 / 前台接待员而不是直接干活的人。一句话总结包装器 不干活只管接活、审核、转交、记录的中间层脚本。