This repository has been archived on 2023-12-29. You can view files and clone it, but cannot push or open issues or pull requests.
pi-ansible/provision.sh

47 lines
1.1 KiB
Bash
Raw Normal View History

#!/bin/sh
usage () {
2022-12-25 20:15:09 +00:00
printf '%s\n' "Usage:"
printf '\t%s\n' "$0"
printf '\t%s\n' "$0 os"
printf '\t%s\n' "$0 services [SINGLE_SERVICE]"
printf '\t%s\n' "$0 reboot [-f|--force]"
}
BASE_CMD="ansible-playbook playbook.yml --ask-vault-pass --ask-become-pass"
if [ -z "$(ansible-galaxy collection list community.general 2>/dev/null)" ]; then
ansible-galaxy collection install community.general
fi
if [ -z "$1" ]; then
$BASE_CMD
else
case $1 in
2022-12-25 17:39:26 +00:00
os)
$BASE_CMD --tags os
;;
services)
if [ -z "$2" ]; then
$BASE_CMD --tags services
else
$BASE_CMD --tags services --extra-vars "single_service=$2"
fi
;;
2022-12-25 17:39:26 +00:00
reboot)
if [ "$2" = "-f" ] || [ "$2" = "--force" ]; then
$BASE_CMD --tags reboot --extra-vars "force_reboot=true"
else
$BASE_CMD --tags reboot
fi
;;
-h|--help)
usage
;;
*)
usage >&2
exit 1
;;
esac
fi