Skip to content
Snippets Groups Projects
motd.sh 2.45 KiB
Newer Older
Lukáš Krupčík's avatar
Lukáš Krupčík committed
#!/bin/bash

### MOTD and Downtime history
# autor: kru0052
# 2016 IT4Innovations
Lukáš Krupčík's avatar
Lukáš Krupčík committed
# version 1.0
Lukáš Krupčík's avatar
Lukáš Krupčík committed
###

Lukáš Krupčík's avatar
Lukáš Krupčík committed
printf "update"
wget -q  http://www.it4i.cz/support/?lang=en
printf " ... OK\n"
Lukáš Krupčík's avatar
Lukáš Krupčík committed

i="index.html?lang=en"

HEAD=$(grep -n -m1 'class="matrix light-grey' "$i" |cut -f1 -d: | tr --delete '\n')
END=$(grep -n -m1 '<h3>Other</h3>' "$i" |cut -f1 -d: | tr --delete '\n')
LAST=$(wc -l "$i" | cut -f1 -d' ')
DOWN=$((LAST-END+2))

sed '1,'"$((HEAD-1))"'d' "$i" | sed -n -e :a -e '1,'"$DOWN"'!{P;N;D;};N;ba' | sed '/<div/d' > "TMP.html"
Lukáš Krupčík's avatar
Lukáš Krupčík committed
rm "/srv/downtime/$i"
Lukáš Krupčík's avatar
Lukáš Krupčík committed

title="Message of the day"
head=$(cat TMP.html | grep "rss-item-title" | cut -d ">" -f 2 | cut -d "<" -f 1)
Lukáš Krupčík's avatar
Lukáš Krupčík committed
date=$(cat TMP.html | grep "<i>" | cut -d ">" -f 2 | cut -d "<" -f 1 | cut -d " " -f 1)
Lukáš Krupčík's avatar
Lukáš Krupčík committed
info=$(cat TMP.html | grep "<p>" | cut -d ">" -f 2 | cut -d "<" -f 1)
Lukáš Krupčík's avatar
Lukáš Krupčík committed
rm /srv/downtime/TMP.html
Lukáš Krupčík's avatar
Lukáš Krupčík committed

Lukáš Krupčík's avatar
Lukáš Krupčík committed
echo ""
Lukáš Krupčík's avatar
Lukáš Krupčík committed
echo "$title"
Lukáš Krupčík's avatar
Lukáš Krupčík committed
echo "$info"
echo ""
Lukáš Krupčík's avatar
Lukáš Krupčík committed

# poovolene stavy - Salomon Maintenance, Anselm Maintenance, Back in Production, Infrastructure Maintenance, PBS Maintenance, SCRATCH Maintenance, HOME Maintenance, Salomon and Anselm Maintenance
if [ "$head" = "Salomon Maintenance" ] || [ "$head" = "Anselm Maintenance" ] || [ "$head" = "Back in Production" ] || [ "$head" = "Infrastructure Maintenance" ] || [ "$head" = "PBS Maintenance" ] || [ "$head" = "SCRATCH Maintenance" ] || [ "$head" = "HOME Maintenance" ] || [ "$head" = "Salomon and Anselm Maintenance" ]; then
Lukáš Krupčík's avatar
Lukáš Krupčík committed
	dateDown=$(cat /srv/downtime/docs/index.md | sed -n '/---/{n;p;}' | cut -d "|" -f 2 | cut -d " " -f 1)
	headDown=$(cat /srv/downtime/docs/index.md | sed -n '/---/{n;p;}' | cut -d "|" -f 3 | cut -d "*" -f 3)	

	echo "$date - $dateDown"

Lukáš Krupčík's avatar
Lukáš Krupčík committed

	if [ "$date" = "$dateDown" ] && [ "$head" = "$headDown" ]; then
Lukáš Krupčík's avatar
Lukáš Krupčík committed
	else
Lukáš Krupčík's avatar
Lukáš Krupčík committed
		test=" |$date 00:00:00|**$head** $info|"
		sed '/---/a '"$test"'' /srv/downtime/docs/index.md > /srv/downtime/TMP.md
		cat /srv/downtime/TMP.md > /srv/downtime/docs/index.md
	#	rm /srv/downtime/TMP.md
Lukáš Krupčík's avatar
Lukáš Krupčík committed
	fi
Lukáš Krupčík's avatar
Lukáš Krupčík committed
	
#	echo "### $title" > docs/index.md
#	echo "**$head**" >> docs/index.md
#	echo "$date - $info" >> docs/index.md
Lukáš Krupčík's avatar
Lukáš Krupčík committed
fi
Lukáš Krupčík's avatar
Lukáš Krupčík committed

       echo "# $title" > docs/motd.md
       echo "**$head**" >> docs/motd.md
       echo "$date - $info" >> docs/motd.md

time=$(date)

sed '$d' /srv/downtime/docs/index.md > /srv/downtime/TMP.md
cat /srv/downtime/TMP.md > /srv/downtime/docs/index.md
rm /srv/downtime/TMP.md
echo "updating $time" >> /srv/downtime/docs/index.md