DavidAwad/vcluster

View on GitHub
templates/Vagrantfile

Summary

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

Vagrant.configure(2) do |config|
{#  Our custom Vagantfile Template  #}
{% if digital_ocean %}
  config.vm.provider :digital_ocean do |provider, override|
    # You must specify the override.ssh.private_key_path to
    # enable authentication with the droplet
    # override.ssh.private_key_path = '~/.ssh/id_rsa'
    override.ssh.private_key_path = {{ digital_ocean['id_rsa'] }}
    override.vm.box = 'digital_ocean'
    override.vm.box_url = "https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box"

    provider.token = {{ digital_ocean['token'] }}
    provider.image = {{ digital_ocean['image'] }}
    provider.region = 'nyc3'
    provider.size = '512mb'
  end

{% elif linode %}
  config.vm.provider :linode do |provider, override|
    override.ssh.private_key_path = linode['id_rsa']
    override.vm.box = 'linode'
    override.vm.box_url = "https://github.com/displague/vagrant-linode/raw/master/box/linode.box"

    provider.api_key = {{ linode['API_KEY'] }}
    provider.distribution = {{ linode['distro'] }}
    provider.datacenter = 'newark'
    provider.plan = 'Linode 1024'
  end

{% else %}
  config.vm.box = {{ load_os }}

{% endif %}


  config.vm.provision :puppet do |puppet|
    puppet.manifests_path = "manifests"
    puppet.manifest_file = {{ config['puppet'] }}
  end

  # Enable provisioning with whatever you want.

  config.vm.provision "shell",
  inline: "{{ load_command }}"

end