moved ansible inventory generation out of Vagrant
This commit is contained in:
@ -3,14 +3,24 @@ copy_template() {
|
||||
cp -f ../../templates/$1 ./$2
|
||||
}
|
||||
|
||||
write_inventory_group() {
|
||||
local fmt="[$1]\n"
|
||||
for ((i=$2; i<$2+$3; i++)) do
|
||||
fmt+="192.168.56.$i\n"
|
||||
done
|
||||
echo -e $fmt >> ./inventory
|
||||
}
|
||||
|
||||
# Take customer inputs
|
||||
read -p "Klantnaam: " customerName
|
||||
mkdir -p ./customers/$customerName && cd $_
|
||||
|
||||
read -p "IpInt: " ipAddr
|
||||
|
||||
read -p "Number of webservers: " numWebserver
|
||||
read -p "Number of loadbalancers: " numLoadbalancers
|
||||
|
||||
# Create customer directory and cd
|
||||
mkdir -p ./customers/$customerName && cd $_
|
||||
|
||||
# Copy and fill-in necessary templates
|
||||
copy_template ./Vagrantfile.template ./Vagrantfile
|
||||
sed -i "s/#{customerName}/$customerName/" ./Vagrantfile
|
||||
sed -i "s/#{ipAddr}/$ipAddr/" ./Vagrantfile
|
||||
@ -19,9 +29,21 @@ sed -i "s/#{numLoadbalancers}/$numLoadbalancers/" ./Vagrantfile
|
||||
|
||||
copy_template ./ansible.cfg.template ./ansible.cfg
|
||||
|
||||
# Generate ansible inventory file.
|
||||
ipOffset=$ipAddr
|
||||
|
||||
write_inventory_group "webserver" $ipOffset $numWebserver
|
||||
((ipOffset+=numWebserver))
|
||||
|
||||
write_inventory_group "loadbalancer" $ipOffset $numLoadbalancers
|
||||
((ipOffset+=numLoadbalancers))
|
||||
|
||||
# Generate a new seperate ssh key for the customer
|
||||
mkdir -p ./.ssh/
|
||||
ssh-keygen -t rsa -b 2048 -f ./.ssh/id_rsa
|
||||
|
||||
ln -s $(realpath ../../playbooks) ./
|
||||
|
||||
vagrant up
|
||||
ansible-playbook ./playbooks/install_nginx.yml
|
||||
ansible-playbook ./playbooks/install_loadbalancer.yml
|
||||
|
Reference in New Issue
Block a user