feat: add Vagrant file and provisioning scripts

This commit is contained in:
Emmanuel BENOîT 2024-12-29 18:28:07 +01:00
commit ad2a00a42c
Signed by: Emmanuel BENOîT
SSH key fingerprint: SHA256:l7PFUUF5TCDsvYeQC9OnTNz08dFY7Fvf4Hv3neIqYpg
25 changed files with 4805 additions and 0 deletions

31
scripts/01-os-basics.sh Normal file
View file

@ -0,0 +1,31 @@
#!/bin/sh
set -e
export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true
# Reset grub configuration
echo "Setting install device to $( grub-mkdevicemap -m - | head -n 1 | awk '{ print $2 }' )"
echo "debconf grub-pc/install_devices string $( grub-mkdevicemap -m - | head -n 1 | awk '{ print $2 }' )" | debconf-set-selections
# Prevent "suggested" packages from being installed automatically
echo 'APT::Install-Suggests "0";' > /etc/apt/apt.conf.d/05disable-suggests
# Replace kernel
apt-get install -uy linux-image-cloud-amd64
apt-get remove -y linux-image-amd64
# Remove various useless packages
apt-get remove -y memcached postfix postfix-cdb
# Full system update
apt-get update -y
apt-get dist-upgrade -uy
apt-get clean
apt-get autoremove -y
# Install Ansible requirements
apt-get install -y python3-venv python-is-python3
# Create a directory for the provisioning playbook
[ -d /var/cache/provision ] || mkdir -p /var/cache/provision
chown -R vagrant:vagrant /var/cache/provision