maas-autobuilder/user-data.yaml
Arif Ali 8b623b739d
Add wipe_disk.sh
* This will allow to run a quick script to wipe the headers
  of the disk, so that we don't have to login after a
  re-comission of the machine to manually reboot it
2020-12-28 11:19:11 +00:00

87 lines
2.0 KiB
YAML

#cloud-config
ssh_import_id:
- lp:arif-ali
# Allow ssh passwords
ssh_pwauth: True
## Update apt database and upgrade packages on first boot
package_update: true
package_upgrade: true
users:
- default
- name: virsh
lock_passwd: false
passwd: $6$SVOxUrhz9mNyscUJ$hKF0RMY1nkGC3BpiozpaznE3AWerd8Ac8AlV9YEpLx50bLw5zweFCuTEEdS04McJNlaIqA.E4HiPuaIYGMzlH/
shell: "/bin/rbash"
## Install additional packages on first boot
packages:
- virtinst
- bc
- jq
- ksmtuned
## Write arbitrary files to the file-system (including binaries!)
write_files:
- path: /root/initial_setup.sh
content: |
#!/bin/bash
git clone https://github.com/arif-ali/maas-autobuilder.git /root/maas-autobuilder
cd /root/maas-autobuilder/configs
ln -sf ${HOSTNAME}.config hypervisor.config
cd ../
chmod +x manage-maas-nodes.sh
./manage-maas-nodes.sh -c
permissions: '0755'
owner: root:root
- path: /root/install_kvm.sh
content: |
#!/bin/bash
series=$(grep UBUNTU_CODENAME /etc/os-release | sed -e 's/UBUNTU_CODENAME=//g')
if [[ $series == "bionic" ]]
pkgs="qemu-kvm libvirt-bin qemu-efi"
else
pkgs="libvirt-daemon-system libvirt-clients"
fi
apt -y update
apt -y install $pkgs
mkdir -p /home/virsh/bin
ln -s /usr/bin/virsh /home/virsh/bin/virsh
sh -c echo "PATH=/home/virsh/bin" >> /home/virsh/.bashrc
cat >> /etc/ssh/sshd_config << EOF
Match user virsh
X11Forwarding no
AllowTcpForwarding no
PermitTTY no
ForceCommand nc -q 0 -U /var/run/libvirt/libvirt-sock
EOF
systemctl restart sshd
usermod -a -G libvirt,libvirt-qemu virsh
permissions: '0755'
owner: root:root
- path: /root/wipe_disk.sh
content: |
#!/bin/bash
dd if=/dev/zero of=/dev/sda bs=1M count=1000
permissions: '0755'
owner: root:root
# Runs any command that we need to run post install
runcmd:
- [ "/root/install_kvm.sh" ]
- [ "rm", "/root/install_kvm.sh" ]
- [ "/root/initial_setup.sh" ]
- [ "rm", "/root/initial_setup.sh" ]