🟢 Stable
Go to file
Fabio Rehm 437ba6a4cf ⚠️ Massive refactoring of buckets code ⚠️
Doing this is kinda irresponsible because we don't have any unit testing
in place but I've had enough of copy & pasting things around. Although it
doesn't make the codebase GREAT, I believe it'll reach a _nice_ status :)

Thanks to those changes I realized that skipping configuration of
buckets that have already been configured was easier than I thought and
should be enough to close GH-85 \o/
2014-02-26 22:03:22 -03:00
development Remove commented out code from dev Vagrantfile 2013-12-17 22:46:25 -02:00
docs Fix example of removing buckets from machine scoped dirs [GH-82] 2014-02-26 22:03:21 -03:00
lib ⚠️ Massive refactoring of buckets code ⚠️ 2014-02-26 22:03:22 -03:00
locales Disable the plugin on machines backed by cloud providers (fix GH-45) 2014-02-26 22:03:21 -03:00
spec/acceptance Vagrant should be able to download precise64 if we don't have it 2013-12-05 22:50:17 +08:00
.gitignore Prepares development Vagrantfile for Chef's file_cache_path testing. 2013-07-22 11:55:09 -04:00
CHANGELOG.md Support for offline provisioning of apt-packages by caching /var/lib/apt/lists [GH-84] 2014-02-26 22:03:22 -03:00
Gemfile Lock vagrant to 1.4.3 2014-02-26 22:03:20 -03:00
Gemfile.lock Lock vagrant to 1.4.3 2014-02-26 22:03:20 -03:00
LICENSE.txt 🎆 New year 🎆 2014-01-02 00:51:05 -02:00
Rakefile Look ma, first public release and no specs! 2013-05-22 20:37:14 -03:00
README.md http://tom.preston-werner.com/2010/08/23/readme-driven-development.html 2014-02-26 22:03:21 -03:00
vagrant-cachier.gemspec http://tom.preston-werner.com/2010/08/23/readme-driven-development.html 2014-02-26 22:03:21 -03:00

vagrant-cachier

A Vagrant plugin that helps you reduce the amount of coffee you drink while waiting for boxes to be provisioned by sharing a common package cache among similiar VM instances. Kinda like vagrant-apt_cache or this magical snippet but targetting multiple package managers and Linux distros.

Installation

Make sure you have Vagrant 1.4+ and run:

vagrant plugin install vagrant-cachier

Quick start

Vagrant.configure("2") do |config|
  config.vm.box = 'your-box'
  if Vagrant.has_plugin?("vagrant-cachier")
    # Configure cached packages to be shared between instances of the same base box.
    # More info on http://fgrehm.viewdocs.io/vagrant-cachier/usage
    config.cache.scope = :box

    # If you are using VirtualBox, you might want to use that to enable NFS for
    # shared folders. This is also very useful for vagrant-libvirt if you want
    # bi-directional sync
    config.cache.synced_folder_opts = {
      type: :nfs,
      # The nolock option can be useful for an NFSv3 client that wants to avoid the
      # NLM sideband protocol. Without this option, apt-get might hang if it tries
      # to lock files needed for /var/cache/* operations. All of this can be avoided
      # by using NFSv4 everywhere. Please note that the tcp option is not the default.
      mount_options: ['rw', 'vers=3', 'tcp', 'nolock']
    }
    # For more information please check http://docs.vagrantup.com/v2/synced-folders/basic_usage.html
  end
end

For more information please read the documentation available at http://fgrehm.viewdocs.io/vagrant-cachier.

Providers that are known to work

Please note that as of v0.6.0 the plugin will automatically disable any previously defined configs for cloud providers

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request