fgrehm/ventriloquist

View on GitHub
development/Vagrantfile

Summary

Maintainability
Test Coverage
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.provider :lxc do |lxc, override|
    override.vm.box = 'fgrehm/trusty64-lxc'
    # Required to boot nested containers
    lxc.customize 'aa_profile', 'unconfined'
  end

  config.vm.synced_folder "../", "/vagrant", id: 'vagrant-root'

  config.cache.scope       = :machine
  config.ssh.forward_agent = true

  config.vm.provision :ventriloquist do |env|
    # Test packages installation
    env.packages << %w( htop telnet )
    env.services << %w( redis-2.8 memcached-1.4 postgres-9.3 mailcatcher-0.5 mysql-5.6 rethinkdb-1.12 elasticsearch-1.1 )
    env.services << {
      'mc' => { vimage: 'memcached-1.4', args: '-P' }
    }

    # This will intentionally show some warnings
    env.platforms << %w( phantomjs go erlang elixir python ruby nodejs )
  end

  config.vm.provision :ventriloquist do |env|
    env.platforms << %w( phantomjs-1.9.2 go-1.2.1 erlang elixir-0.11.1 python-3.0.1 )
    env.platforms << {
      # The first version provided will be set as the default
      nodejs: { versions: ['0.10', '0.9']    },
      ruby:   { versions: ['2.1.1', '2.1.0'] }
    }
  end
end