Wie binde ich Variablen in meine VagrantFile ein?
Kann mich jemand anleiten, wie ich Variablen in mein VagrantFile einbinde? Ich versuche, Configs aus einer externen Datei in das Vagrantfile zu injizieren, damit ich die Config an meine Kollegen weitergeben kann, ohne dass sie Configs direkt im Vagrantfile fest codieren müssen.
Ich hatte gedacht, da es auf Ruby basiert, könnte ich nur eine Ruby-Datei einfügen, aber ich erhalte eine Fehlermeldung: nicht initialisierte Konstante MyVars
Mein VagrantFile vereinfacht
# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'vagrant.rb'
include MyVars
Vagrant.configure("2") do |config|
# Web
config.vm.define :joe do |joe|
joe.vm.box = "precise64_4.2.12"
joe.vm.hostname = WEBVMNAME
joe.vm.network :private_network, ip: "192.168.140.141"
# Port Forwarding
joe.vm.network :forwarded_port, guest: 22, host: 2201
joe.vm.network :forwarded_port, guest: 80, host: 8080
# Bootstrap Bash Script
joe.vm.provision :shell, :path => "bootstrap.sh"
end
end
Und vagrant.rb enthält
module MyVars
WEBVMNAME = "rex"
end
Beachten Sie, dass ich auch ein Neuling bei Ruby bin, also bin ich mir auch nicht sicher, ob es nur die Syntax ist, die ich falsch verstanden habe?
Bearbeiten: Aktualisierter Code, den ich verwende