#!/usr/bin/env bash # CONSTANTS ARGS=("$@") BASEDIR=$(dirname "$0") CONTAINERS=() YES=false FORCE=false # FUNCTIONS function usage { echo "$(basename "$0") ... [--yes|-y] [--force|-f]" } function parse_options { while [[ $# -gt 0 ]]; do case "$1" in --help | -h) usage && exit 0 ;; --yes | -y) YES=true ;; --force | -f) FORCE=true ;; -*) echo >&2 "Error: unknown option: $1" && usage && exit 2 ;; *) CONTAINERS+=("$1") ;; esac shift done [[ ${#CONTAINERS[@]} == 0 ]] && usage && exit 1 || true } function force_option { [[ $FORCE == false ]] && return echo '--force ' } function destroy { if [[ $YES == false ]]; then local message count count=${#CONTAINERS[@]} message="you are about to destroy $(_pluralize_simple $count container): ${CONTAINERS[*]}" _confirm_destructive "$message" $(force_option) fi incus delete "${CONTAINERS[@]}" $(force_option) } # MAIN set -Eueo pipefail # shellcheck source=/opt/miaou-bash/lib/functions.bash source "$MIAOU_BASH_DIR/lib/functions.bash" _flatten_short_options ARGS parse_options "${ARGS[@]}" destroy