#!/bin/bash # Collection of simple setup tasks # e.g. Ability to send mail (ssmtp) # Get script working directory # (when called from a different directory) WDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >>/dev/null 2>&1 && pwd )" WSUBDIR="${WDIR}/basics" #step_config() { # echo "Called once before executing steps." # echo "e.g. to source a config file:" # #. "$CONFIG_FILE" #} step_10_info() { echo "ssmtp installation"; } step_10_alias() { echo "ssmtp"; } step_10() { exe apt update && apt install "$SSMTP_DEPS" endReturn -o $? "ssmtp installation failed" } SSMTP_DEPS="ssmtp" step_11_info() { echo "ssmtp setup"; } step_11_alias() { echo "ssmtpSetup"; } step_11() { if [ ! -f "$CONFIG_FILE_SSMTP" ] ; then error -e "User config ($CONFIG_FILE_SSMTP) not found" error -e " See $CONFIG_FILE_SSMTP_TEMPLATE" return 1 fi addConf -c -f "$CONFIG_FILE_SSMTP" "$CONFIG_LOC_SSMTP" endReturn -o $? "Could not write ssmtp configuration" if [ ! -f "$CONFIG_FILE_SSMTP_AL" ] ; then warning -e "User aliases ($CONFIG_FILE_SSMTP_AL) not found" error -e " See $CONFIG_FILE_SSMTP_TEMPLATE or modify $CONFIG_LOC_SSMTP_AL directly" return 1 fi addConf -c -f "$CONFIG_FILE_SSMTP_AL" "$CONFIG_LOC_SSMTP_AL" endReturn -o $? "Could not write ssmtp aliases" } CONFIG_LOC_SSMTP="/etc/ssmtp/ssmtp.conf" CONFIG_LOC_SSMTP_AL="/etc/ssmtp/revaliases" CONFIG_FILE_SSMTP="$WSUBDIR/ssmtp.cfg" CONFIG_FILE_SSMTP_TEMPLATE="${CONFIG_FILE_SSMTP}.example" CONFIG_FILE_SSMTP_AL="$WSUBDIR/revaliases.cfg" CONFIG_FILE_SSMTP_AL_TEMPLATE="${CONFIG_FILE_SSMTP}.example" step_13_info() { echo -n "Send test E-Mail to " if [ -z $2 ] ; then echo ""; else echo "$2"; fi } step_13_alias() { echo "ssmtpTest"; } step_13() { if [ ! -z "$2" ] || [ "$2" == "" ] ; then error -e "No mailaddress provided" fi exep "echo \"Subject: sendmail test\" | sendmail -v $2" } step_15_info() { echo "ssmtp help"; } step_15_alias() { echo "ssmtpHelp"; } step_15() { echo " Configuration files expected by this seq:" echo echo " - $CONFIG_FILE_SSMTP" echo " (see template: $CONFIG_FILE_SSMTP_TEMPLATE)" echo " - $CONFIG_FILE_SSMTP_AL optional" echo " (see template: $CONFIG_FILE_SSMTP_AL_TEMPLATE)" echo echo " ssmtp configuration files" echo echo " - $CONFIG_LOC_SSMTP" echo " - $CONFIG_LOC_SSMTP_AL" } readonly sqr_minVersion=16 . /usr/local/bin/sequencer.sh