ansible-role-influxdb/templates/influxdb-letsencrypt-hook.j2

39 lines
1.1 KiB
Django/Jinja

#!/bin/bash
LE_CERTS_DIR="{{ letsencrypt_acme_sh_certificates_install_path }}"
LE_LOG_DIR=/var/log/letsencrypt
LE_LOGFILE="$LE_LOG_DIR/influxdb.log"
INFLUXDB_KEYFILE="{{ influxdb_tls_key_path }}"
DATE=$( date )
RETVAL=
[ ! -d $LE_LOG_DIR ] && mkdir $LE_LOG_DIR
echo "$DATE" >> "$LE_LOGFILE"
logger "acme-influxdb-hook: Check if the certificate has been renewed"
cmp ${LE_CERTS_DIR}/privkey ${INFLUXDB_KEYFILE}
RETVAL=$?
if [ $RETVAL -eq 0 ] ; then
logger "acme-influxdb-hook: No new cerficate."
echo "acme-influxdb-hook: No new cerficate." >> $LE_LOGFILE
exit 0
else
logger "acme-influxdb-hook: Copying the key file"
echo "Copy the key file" >> $LE_LOGFILE
/bin/cp -f ${LE_CERTS_DIR}/privkey ${INFLUXDB_KEYFILE}
fi
chmod 440 ${INFLUXDB_KEYFILE}
chown root ${INFLUXDB_KEYFILE}
chgrp influxdb ${INFLUXDB_KEYFILE}
logger "acme-influxdb-hook: Restart the influxdb service after a certificate renewal"
systemctl restart influxd >> $LE_LOGFILE 2>&1
echo "acme-influxdb-hook: Restart the influxdb service" >> $LE_LOGFILE
logger "acme-influxdb-hook: Done"
echo "acme-influxdb-hook: Done." >> $LE_LOGFILE
exit 0