There’s another little helper script I’d like to introduce:
I fire up a number of test machines using Vagrant. Each machines gets an IP to be reachable. Sometimes, when I need a master-slave setup, these need to be in the same range. Other times I just quickly need an IP to dispense to an machine.
Especially the later groups brings me often in a situation, where I just pick an address similar to one I see in the Vagrant file. It happens, that this then is identical to one of the machines define further below. Great. What could go wrong.
So I brought up this simple helper script to parse the Vagrant file for IP addresses and list the associated machines with it. And vice-versa.
# Default output with sorted machine names. $ mt-vagrantnw chefclient01 172.16.33.13 chefclient02 172.16.33.14 chefmaster 172.16.33.10 chefnode_centos 172.16.33.11 chefnode_ubuntu 172.16.33.12 cos6 172.16.44.11 ...
Get the help with
-h (like how to specify the vagrant file).
There’s a little bonus in there as well: If you’re using hiera, you can specify the location with
--- mt-vagrantnt::vagrantfile: /path/to/Vagrantfile
The code for the script it here.
The script runs in Ruby and requires the gem thor.