1
0
mirror of https://github.com/krislamo/pup-tests synced 2024-09-19 17:20:35 +00:00
pup-tests/Vagrantfile
Kris Lamoureux 555304661b
Added SSH keys for restoration
On "./pup-tests.sh create" SSH keys will be created and placed on
the webserver and backup server to allow the backup server to
restore files back to the webserver easily.
2019-03-04 12:14:45 -05:00

60 lines
1.6 KiB
Ruby

# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
# Disable default syncing of the project directory
config.vm.synced_folder ".", "/vagrant", disabled: true
# Puppet Master
config.vm.define "master" do |master|
master.vm.box = "debian/stretch64"
master.vm.hostname = "puppetmaster"
master.vm.network 'private_network', ip: '192.168.121.100'
# Setup Puppet Master via Ansible
master.vm.provision "ansible" do |ansible|
ansible.compatibility_mode = "2.0"
ansible.playbook = "setup/master.yml"
end
# Sync Puppet code to Puppet Master
master.vm.synced_folder "./code", "/etc/puppet/code", type: "rsync",
rsync__args: ["--verbose", "--archive", "-z", "--copy-links"]
# Sync custom SSH keys to Puppet Master
modpath = "/etc/puppet/code/environments/production/modules/"
master.vm.provision "file",
source: "./keys/backup-key",
destination: modpath + "amanda/files/backup-key"
master.vm.provision "file",
source: "./keys/backup-key.pub",
destination: modpath + "amanda/files/backup-key.pub"
end
# Clients / Agents
servers = ["webserver", "backups"]
ip = 101
servers.each do |server|
config.vm.define "#{server}" do |node|
node.vm.box = "debian/stretch64"
node.vm.hostname = "#{server}"
node.vm.network 'private_network', ip: '192.168.121.' + ip.to_s
ip = ip + 1
node.vm.provision "ansible" do |ansible|
ansible.compatibility_mode = "2.0"
ansible.playbook = "setup/client.yml"
end
end
end
end