Migration HAOS vers Home Assistant Docker

Je partage ici qq scripts sympas :slight_smile:

Dans mon répertoire /home/USER/scripts/

Envoi d’email avec Curl
Fichier email.sh

#!/bin/bash

if [[ ($# == 0) || ($# -gt 2)]]; then
	echo 'Syntaxe: email.sh [titre] contenu'
	exit 1
fi
if [[ $# == 1 ]]; then
	sub="Notification"
	body="$1"
fi
if [[ $# == 2 ]]; then
	sub="$1"
	body="$2"
fi

declare -A email;
email['user']="xxx@free.fr"
email['pass']="xxxxxxx"
email['smtp']="smtp.free.fr"
email['port']='587'
email['rcpt']='xxx@gmail.com' # adresse destinataire

email_content='From: Raspberry <'"${email['user']}"'>
To: "Gmail" <'"${email['rcpt']}"'>
Subject: '"$sub"'
Date: '"$(date)"'

'"$body"'
';

echo "$email_content" | curl -s \
    --url "smtp://${email['smtp']}:${email['port']}" \
    --user "${email['user']}:${email['pass']}" \
    --mail-from "${email['user']}" \
    --mail-rcpt "${email['rcpt']}" \
    --upload-file - # email_content


if [[ $? == 0 ]]; then
    echo "Email sent to ${email['rcpt']}!"
else
    echo "curl error code $?"
    man curl | grep "^ \+$? \+"
fi

exit 0

Synchronisation de fichier avec mon Gdrive tous les jours à 5h avec Rclone
Fichier sync_gdrive_rc.sh

#!/bin/bash

DOMAIN=mondomain.duckdns.org
RCLONE_USER=G
RCLONE_MDP=xxxxx
FOLDER=/opt/docker/ha/config/backups
REMOTE_FOLDER="Gdrive:/Home_Assistant/backups"
JSON='{
"srcFs":"'"${FOLDER}"'",
"dstFs":"'"${REMOTE_FOLDER}"'"
}'

#doc : https://git.frostfs.info/KurlesHS/rclone/src/branch/graceful-cancel/docs/content/rc.md
curl -vvv \
        --cert "/etc/letsencrypt/live/${DOMAIN}/fullchain.pem" \
        --key "/etc/letsencrypt/live/${DOMAIN}/privkey.pem" \
        --insecure \
	-H "Content-Type: application/json" \
	-d "${JSON}" \
        "https://${RCLONE_USER}:${RCLONE_MDP}@127.0.0.1:5572/sync/sync"
$RETOUR=$?

if [[ $RETOUR == 0 ]]; then
    echo 'Rclone RC sync okay!';
else
    echo "curl error code $RETOUR";
    man curl | grep "^ \+$RETOUR \+"
fi

echo "$(date) Rclone sync ${FOLDER} to ${BACKUP_FOLDER}!" | tee sync_gdrive.log
exit 0

et on ajoute une planification journaliere avec crontab -e

0 5 * * * /home/USER/scripts/sync_gdrive_rc.sh >/home/USER/scripts/sync_gdrive_rc.cron.log