42 lines
792 B
Bash
Executable File
42 lines
792 B
Bash
Executable File
#!/bin/bash
|
|
|
|
BACKUP=0
|
|
CHECK=0
|
|
while getopts "bc" opt; do
|
|
case $opt in
|
|
b)
|
|
BACKUP=1
|
|
;;
|
|
c)
|
|
CHECK=1
|
|
;;
|
|
\?)
|
|
echo "usage: $0 [-c] [-f]" >&2
|
|
exit 1
|
|
esac
|
|
done
|
|
|
|
if [[ $BACKUP = 0 && $CHECK = 0 ]]; then
|
|
echo "no action" >&2
|
|
exit 1
|
|
fi
|
|
|
|
cd /etc/ansible
|
|
outfilter=bin/ansible_outfilter
|
|
|
|
if [[ $BACKUP > 0 ]]; then
|
|
DIFF=/tmp/routerbackup.diff.$$
|
|
ansible-playbook -f 10 -e routerbackup_diff=$DIFF routerbackup.yml | $outfilter
|
|
cat $DIFF
|
|
rm -f $DIFF
|
|
fi
|
|
|
|
if [[ $CHECK > 0 ]]; then
|
|
CHECKFILE=/tmp/routerbackup.check.$$
|
|
ansible-playbook -t check -e routerbackup_checkfile=$CHECKFILE routerbackup.yml | $outfilter
|
|
cat $CHECKFILE
|
|
rm -f $CHECKFILE
|
|
fi
|
|
|
|
# vim: set tabstop=4 shiftwidth=4 expandtab smarttab:
|