我无法通过 Kitchen 缓存 RPM,但我通过自己下载文件并将其提供给 Kitchen 解决了这个问题。
- 下载 RPM 文件
- 将其放在您的
.kitchen.yml
. 例如chef-pkgs
- Kitchen 将厨师包下载到一个目录,因此在您的文件
/tmp
夹中设置一个同步文件夹。例子:.kitchen.yml
chef-pkgs
示例.kitchen.yml
:
driver:
name: vagrant
vagrantfiles:
- Vagrantfile
synced_folders:
- ["./chef-pkgs", "/tmp/chef-pkgs"]
provisioner:
name: chef_zero
require_chef_omnibus: 12.4.1
chef_omnibus_url: file:///tmp/chef-pkgs/install.sh
install.sh
在您的文件夹中创建一个文件,chef-pkgs
从缓存位置安装 RPM。
示例install.sh
:
#! /bin/bash
sudo rpm -ivh /tmp/chef-pkgs/chef-12.4.1-1.el6.x86_64.rpm
我从这篇有用的博客文章中得到了想法和代码:http: //erichelgeson.github.io/blog/2014/09/23/simple-chef-package-cache/
我将chef-pkgs
文件夹添加到我的.gitignore
文件中。