#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/bash" ## Install additional packages on first boot packages: - virtinst - bc - jq - qemu-kvm - libvirt-bin - qemu-efi - 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 ln -sf ${HOSTNAME}.config hypervisor.config chmod +x manage-maas-nodes.sh ./manage-maas-nodes.sh -c permissions: '0755' owner: root:root - path: /root/update_sshd.sh content: | #!/bin/bash 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 permissions: '0755' owner: root:root # Runs any command that we need to run post install runcmd: - [ "mkdir", "-p", "/home/virsh/bin" ] - [ "ln", "-s", "/usr/bin/virsh", "/home/virsh/bin/virsh" ] - [ "sh", "-c", 'echo "PATH=/home/virsh/bin" >> /home/virsh/.bashrc' ] - [ "/root/update_sshd.sh" ] - [ "rm", "/root/update_sshd.sh" ] - [ "usermod", "-a", "-G", "libvirt", "virsh" ] - [ "usermod", "-a", "-G", "libvirt-qemu", "virsh" ] - [ "efibootmgr", "-n", "0001"] - [ "systemctl", "enable", "ksmtuned"] - [ "systemctl", "restart", "ksmtuned"] - [ "/root/initial_setup.sh" ]