Every time I run
kitchen test
it downloads a new vm box. Is there a way to make it re-use a locally downloaded box?
Here is my .kitchen.yml file.
---
driver_plugin: vagrant
driver_config:
require_chef_omnibus: true
platforms:
- name: ubuntu-12.04
suites:
- name: default
run_list:
- recipe[my-rails-server::default]
attributes:
Terminal output:
Downloading Chef for ubuntu...
downloading https://www.opscode.com/chef/metadata?v=&prerelease=false&p=ubuntu&pv=12.04&m=x86_64
to file /tmp/install.sh.1121/metadata.txt
trying wget...
url https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/12.04/x86_64/chef_11.10.0-1.ubuntu.12.04_amd64.deb
md5 21524287ed5631eb1c092ba7b589e968
sha256 7a0a898b3682462620de80230c7a73730dde7131ca069e1d926f6faf07e4fa2f
downloaded metadata file looks valid...
downloading https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/12.04/x86_64/chef_11.10.0-1.ubuntu.12.04_amd64.deb
to file /tmp/install.sh.1121/chef_11.10.0-1.ubuntu.12.04_amd64.deb
trying wget...
Checksum compare with sha256sum succeeded.
Installing Chef
Test Kitchen creates its own Vagrantfile, based on .kitchen.yml config.
Therefore you have to specify your box (which should be already available for Vagrant, check vagrant box list
) in .kitchen.yml. In your example it would be:
platforms:
- name: ubuntu-12.04
driver:
box: centos-6.5-x86_64-minimal
And kitchen will use box available for Vagrant, without downloading it.
You can also specify other Vagrant options, e.g.
- name: centos-vagrant
driver:
provider: parallels
box: centos-6.5-x86_64-minimal
customize:
memsize: 1024
cpus: 2
You can see more examples eg. in my Vagrant cookbooks lemp-server or or Opscode's yum.
If by "downloads a new VM box", you mean destroys and creates one, yes, that's what kitchen test
does. If you want to persist the instance, just run
kitchen converge
If you mean that Vagrant is downloading a new box from the Internet, then that's likely a bug in Vagrant.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With