Compare commits

...

2 Commits

Author SHA1 Message Date
0d74316c9e add remote mng 2025-05-01 18:16:25 +02:00
3af16461a8 standardizzaati messaggi e tolte righe vuote 2025-04-04 18:35:49 +02:00
2 changed files with 14 additions and 12 deletions

View File

@@ -9,21 +9,21 @@ Color_Off=$'\033[0m' # Text Reset
TMSTMP=$(date +'%Y%m%d%H%M%S')
function stop_container() {
echo $(date) "- ${BGreen}Stop container ${1}${Color_Off}"
echo $(date) "- ${BGreen}${1} - Stop container.${Color_Off}"
incus stop ${1} | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
wait
echo -e $(date) "- ${BGreen}Container ${1} stopped${Color_Off}"
echo -e $(date) "- ${BGreen}${1} - Container stopped.${Color_Off}"
}
function update_container() {
incus exec ${1} -- sh -c "apt update 2>&1" | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
incus exec ${1} -- sh -c "apt update 2>&1" | sed '/^$/d' | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
sleep 2
incus exec ${1} -- sh -c "apt upgrade -y 2>&1" | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
incus exec ${1} -- sh -c "apt upgrade -y 2>&1" | sed '/^$/d' | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
sleep 2
incus exec ${1} -- sh -c "apt autoremove -y 2>&1" | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
incus exec ${1} -- sh -c "apt autoremove -y 2>&1" | sed '/^$/d' | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
sleep 2
echo -e $(date) "- ${BGreen}Refresh snap packages for ${1} container...${Color_Off}"
incus exec ${1} -- bash -c "if [[ \$(which snap > /dev/null; echo \$?) == 0 ]]; then snap refresh ; fi" | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
incus exec ${1} -- bash -c "if [[ \$(which snap > /dev/null; echo \$?) == 0 ]]; then echo \"Refresh snap packages\" && snap refresh 2>&1 ; else echo \"snap not installed.\"; fi" | sed "s/^/$(date) - ${BGreen}${1}${Color_Off} /"
if [ "${2}" == "STOPPED" ]; then
stop_container ${1}
fi
@@ -31,16 +31,16 @@ function update_container() {
echo $(date) "- ${BGreen}Start updating incus container...${Color_Off}"
for cont_name in $(incus list type=container -c n --format csv); do
echo $(date) "- ${BGreen}Make ${cont_name} container snapshot...${Color_Off}"
echo $(date) "- ${BGreen}${cont_name} - Make container snapshot...${Color_Off}"
incus snapshot create ${cont_name} | sed "s/^/$(date) - ${BGreen}${cont_name}${Color_Off} /"
echo $(date) "- ${BGreen}Updating ${cont_name} container...${Color_Off}"
echo $(date) "- ${BGreen}${cont_name} - Updating container...${Color_Off}"
Status=$(incus list type=container -c ns --format csv | grep ${cont_name} | cut -d',' -f 2)
if [ "${Status}" == "STOPPED" ]; then
echo -e $(date) "- ${BGreen}Start container ${cont_name}.${Color_Off}"
echo -e $(date) "- ${BGreen}${cont_name} - Start container.${Color_Off}"
incus start ${cont_name} | sed 's/^/'${date}' - '${cont_name}' /'
sleep 5
else
echo -e $(date) "- ${BGreen}Container ${cont_name} is already started.${Color_Off}"
echo -e $(date) "- ${BGreen}${cont_name} - Container is already started.${Color_Off}"
fi
update_container ${cont_name} ${Status} &
done

View File

@@ -4,6 +4,8 @@ BRed=$'\033[1;31m' # Red
BGreen=$'\033[1;32m' # Green
Color_Off=$'\033[0m' # Text Reset
ports=("22" "6229")
user="root"
huma_user="alex"
remotes=($(grep -v -E "^#|^$|^127|::|hap-gm|dm520" /etc/hosts | cut -d" " -f 2))
echo $(date) "- ${BGreen}Updating remote servers started.${Color_Off}"
for remote in ${remotes[@]}; do
@@ -11,7 +13,7 @@ for remote in ${remotes[@]}; do
if [ $? == 0 ]; then
echo $(date) "- ${BGreen}Update remote server ${remote}${Color_Off}"
for port in ${ports[@]}; do
ssh -p ${port} -o ConnectTimeout=2 root@${remote} "apt update; apt upgrade -y; apt autoremove -y" 2>&1 | sed "s/^/$(date) - ${BGreen}${remote}${Color_Off} /"
ssh -p ${port} -o ConnectTimeout=2 ${user}@${remote} "apt update; apt upgrade -y; apt autoremove -y" 2>&1 | sed '/^$/d' | sed "s/^/$(date) - ${BGreen}${remote}${Color_Off} /"
done
else
echo $(date) "- ${BRed}Remote server ${remote} unreachable ${Color_Off}"