跳转到主要内容

Barn 0.3.0:显式 Catalog 与可操作的就绪诊断

显式镜像目录更新、逐节点初始化诊断、发行版原生客机网卡名与精简的 CLI。
说明

本文为 0.3.0 历史发布记录。旧版发行附件已下线,安装当前版本请参见安装指南。

Barn 0.3.0 取消了隐式后台刷新镜像目录的行为,支持按节点报告客机初始化失败阶段与排查命令,并在保留 Pigsty 清单与固定 IP 部署模型的前提下精简了 CLI 命令集。

主要变化

  • 显式更新镜像目录。 up、plan 与日常 image 子命令固定读取当前激活的本地镜像目录快照,不再后台拉取远端目录元数据。使用 barn update 可显式从配置仓库拉取最新签名目录,使用 barn image sync 可激活指定 URL 或本地目录文件。
  • 逐节点报告初始化故障。 客机引导过程以原子方式记录当前所处阶段;操作部分失败时会逐一列出失败节点、所处阶段与错误信息,就绪超时直接提示执行 barn logs <node> 查看串口与引导日志。
  • 运行中客机免重启复检。 已在运行的客机无需重启 QEMU 即可重新执行就绪检查;部分节点失败后,Barn 仍会根据全部已提交节点更新宿主机 SSH 客户端配置。
  • 保留发行版原生网卡名。 Netplan 直接按确定性 MAC 地址匹配网卡,不再重命名客机网络接口;vm_disks[].fs: auto 优先使用 XFS,缺失工具时自动回退至 ext4。
  • 精简命令与参数。 移除冗余的 ss 子命令及易混淆的短参数别名,barn image reset 取代 reset-manifest(旧命令保留为兼容别名)。

验证范围

源码提交 da6d02426da93c677c94c67fec4eb4fcecf4766a 已通过完整本地源码门禁与 GoReleaser 全量快照构建(涵盖单元测试、竞态测试、go vet、Staticcheck、govulncheck、四目标交叉构建、镜像流水线与安装器测试、归档与软件包一致性、依赖许可证、SBOM 及 Linux 原生软件包校验),标签工作流在发布前完整复跑了上述检查。各阶段的 macOS arm64/HVF 与 Ubuntu amd64/KVM 实测记录见验证历史。

安装或升级

从 Barn 0.3.0 GitHub 发布页下载安装脚本与发行资产:

curl -fLO https://github.com/pgsty/barn/releases/download/v0.3.0/install.sh
chmod +x install.sh
BARN_VERSION=0.3.0 ./install.sh
barn version
barn doctor

同一预发布页附带 Homebrew 配方与 amd64/arm64 DEB/RPM 软件包,直接兼容 0.1.0 与 0.2.0 的部署与镜像目录状态。