Browse Source

Update Vagrant setup to Debian Buster and libvirt

master
Jan Dittberner 2 years ago
parent
commit
f2db400ed8
  1. 12
      Vagrantfile
  2. 15
      change-vmdebootstrap-default-dhcp.sh
  3. 1
      docs/changelog.rst
  4. 39
      salt/bootstrap.sh
  5. 12
      salt/grains
  6. 11
      salt/minion

12
Vagrantfile

@ -2,7 +2,7 @@
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.box = "debian/contrib-jessie64"
config.vm.box = "debian/buster64"
config.vm.hostname = "gvafile.local"
config.vm.network "private_network", ip: "172.16.3.4"
@ -10,18 +10,20 @@ Vagrant.configure(2) do |config|
config.vm.synced_folder "../gvasalt/states/", "/srv/salt/"
config.vm.synced_folder "../gvasalt/pillar/", "/srv/pillar/"
config.vm.provider "virtualbox" do |vb|
# vb.gui = true
vb.memory = "512"
config.vm.provider :libvirt do |libvirt|
libvirt.memory = 1024
end
config.vm.provision :shell, path: "change-vmdebootstrap-default-dhcp.sh"
config.vm.provision :salt do |salt|
salt.bootstrap_script = "salt/bootstrap.sh"
salt.bootstrap_options = "-x python3"
salt.minion_id = "gvafile"
salt.masterless = true
salt.run_highstate = true
salt.verbose = true
salt.colorize = true
salt.log_level = "warning"
salt.grains_config = "salt/grains"
end
end

15
change-vmdebootstrap-default-dhcp.sh

@ -0,0 +1,15 @@
#!/bin/sh
set -e
debootstrap_network=/etc/systemd/network/99-dhcp.network
if grep -q '^Name=\\*' "${debootstrap_network}"; then
primary_nic=$(ls -1 /sys/class/net | grep -v lo |sort | head -1)
sed -i "s/^Name=e\\*/Name=${primary_nic}/" \
"${debootstrap_network}"
systemctl restart systemd-networkd.service
echo "Changed systemd network configuration"
else
echo "Systemd network configuration has already been changed"
fi

1
docs/changelog.rst

@ -1,6 +1,7 @@
Changelog
=========
* :support:`-` update Vagrant setup to libvirt and Debian Buster
* :support:`-` move fileservertasks to top level to keep the task names when
using Python 3
* :support:`2` use Pipenv for dependency management

39
salt/bootstrap.sh

@ -1,39 +0,0 @@
#!/bin/sh -
echo "deb http://httpredir.debian.org/debian jessie-backports main" >/etc/apt/sources.list.d/backports.list
apt-get update
apt-get install -y -t jessie-backports python-cryptography
# We just download the bootstrap script by default and execute that.
if [ -x /usr/bin/fetch ]; then
/usr/bin/fetch -o - https://raw.githubusercontent.com/saltstack/salt-bootstrap/stable/bootstrap-salt.sh | sh -s -- "$@"
elif [ -x /usr/bin/curl ]; then
/usr/bin/curl -L https://raw.githubusercontent.com/saltstack/salt-bootstrap/stable/bootstrap-salt.sh | sh -s -- "$@"
else
python \
-c 'import urllib; print urllib.urlopen("https://raw.githubusercontent.com/saltstack/salt-bootstrap/stable/bootstrap-salt.sh").read()' \
| sh -s -- "$@"
fi
cat >/etc/salt/minion <<EOF
file_client: local
file_roots:
base:
- /srv/salt/
pillar_roots:
base:
- /srv/pillar
log_file: file:///dev/log
EOF
umask 077
cat >/etc/salt/grains <<EOF
roles:
- fileserver
- ldapclient
- gnuviechadmin.gvafile
EOF

12
salt/grains

@ -0,0 +1,12 @@
gnuviechadmin:
user: vagrant
group: vagrant
checkout: /vagrant
home: /home/vagrant
update_git: False
roles:
- vagrant
- ldapclient
- nfsserver
- gnuviechadmin.gvafile

11
salt/minion

@ -0,0 +1,11 @@
file_client: local
file_roots:
base:
- /srv/salt/
pillar_roots:
base:
- /srv/pillar
log_file: file:///dev/log
Loading…
Cancel
Save