#!/bin/sh # # Copyright (c) 2019-2022 Mischa Peters # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # CONF_FILE="${PWD}/_deploy.conf" if [[ -f "${CONF_FILE}" ]]; then . "${CONF_FILE}" else echo "unable to find _deploy.conf" exit 1 fi if [[ -z ${1} ]]; then echo "usage: ${0##*/} vmXX.txt" exit 1 fi if [[ ! -f "${VMS}/${1}" ]]; then echo "unable to find ${VMS}/${1}" exit 1 fi if vmctl show ${1%.txt} >/dev/null 2>&1; then if vmctl show ${1%.txt} | grep running >/dev/null 2>&1; then echo "ERR: VM ${1%.txt} is still running..." exit 1 fi if vmctl show ${1%.txt} | grep stopped >/dev/null 2>&1; then echo -n "Current rDNS: " dig +short -x $(grep -A2 ${1%.txt} /etc/dhcpd.conf | awk '/fixed/ {print $2}' | tr -d ';') remove.pl ${1} deploy.pl rcctl restart dhcpd vmctl reload fi fi if [[ "${SERVER}" == server* ]]; then HOST="s${SERVER#server}" elif [[ "${SERVER}" == mega* ]]; then HOST="m${SERVER#mega}" fi openrsync -va --del /home/mischa/vms/ mischa@wm1.obsda.ms:vms/${HOST}/ ssh wm1.obsda.ms "doas userdel -r ${HOST}${1%.txt} && doas groupdel ${HOST}${1%.txt}" openrsync -va --del /home/mischa/vms/ mischa@rx.high5.nl:vms/${HOST}/