diff --git a/vmcreate1 b/vmcreate1 new file mode 100644 index 0000000..492db32 --- /dev/null +++ b/vmcreate1 @@ -0,0 +1,42 @@ +#!/bin/bash +show_help() + echo 'Usage:' + echo 'vmcreate [-h][-a][-f filename]' + echo 'Arguments:' + echo '-h - show this help' + echo '-a - add hosts to HA affinity rules' + echo "-f - get IP addresses and Hostnames from 'flilename' " + +mkfile () + +while getopts "a:f:h" opt; do + case $opt in + a) haadd=true ;; + f) file="$OPTARG" ;; + h) show_help ; exit 0;; + *) noargs + esac +done + +cat ./hosts | while read line +do + ip=$(echo $line | cut -d ' ' -f 1) + hostname=$(echo $line | cut -d ' ' -f 2) + vmnum=$(echo $ip | cut -d '.' -f 3)(echo $ip | cut -d '.' -f 3) + qm clone 5000 $vmnum --name $hostname --full + if [ $? -eq 0 ] + then echo "clone OK" + else "clone ERROR"; exit 1 + fi + qm set $vmnum --tags 3,gfx + ## preparing custom CloudInit snippets + cp ./user.yaml /mnt/pve/syno-tigra/snippets/${vmnum}_user.yaml + sed -i "s/HOSTNAME/$hostname/g" /mnt/pve/syno-tigra/snippets/${vmnum}_user.yaml + qm resize $vmnum scsi0 +50G + qm set $vmnum --cicustom "user=syno-tigra:snippets/${vmnum}_user.yaml" + qm set $vmnum --ipconfig0 ip=$ip/24,gw=10.10.35.1 + qm cloudinit update $vmnum + qm start $vmnum + +done +echo "VMs from 'hosts' successfully created" \ No newline at end of file