Git Cookbook 无法收敛,除非手动运行 apt-get 更新



我目前正在使用 Git 的 Chef 超市食谱。我还使用 test-kitchen 来测试我的配置,然后再使用它配置实际节点。

我有一个包装器食谱,它实现了 Git 食谱的默认.rb 配方。当我将沙盒机器(Ubuntu 14.04(与我指定的食谱(在kitchen.yml文件中(融合时,我收到一个错误,说明:

E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing

如果我登录沙盒实例并手动运行apt-get update,然后注销实例并重新收敛,Git 安装成功。

如何解决此问题,以便能够在不手动登录到正在配置并运行apt-get update的计算机的情况下安装 Git?

在 Chef 中,您通常有一个核心配方,该配方在系统中的某个位置具有apt_update资源,可以为您进行更新。我们通常选择不将其包含在每个社区说明书中,因为它会增加每个平台的膨胀并增加时间开销,具体取决于系统设置,通常会使其更难控制。因此,请从一些基本食谱或包装器食谱中自己运行它。在厨师 13 中,您只需要一个字面apt_update,在厨师 12 中,您将需要apt_update 'whatever'。如果您使用的是早期的 Chef 12 版本,则可以使用apt社区说明书来执行相同的操作。

最新更新