diff --git a/src/status_github.sh b/src/status_github.sh new file mode 100644 index 0000000..d0a4ff1 --- /dev/null +++ b/src/status_github.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +color_cyan=$(tput setaf 6) +color_purple=$(tput setaf 5) +color_reset=$(tput sgr0) + +translate_state() { + case $1 in + "operational") echo "operativo" ;; + "partial_outage") echo "interrupción parcial" ;; + "maintenance") echo "mantenimiento" ;; + "major_outage") echo "interrupción importante" ;; + *) echo "$1" ;; + esac +} + +curl -s https://www.githubstatus.com/api/v2/components.json | jq -r '.components[] | "\(.name),\(.status)"' | \ +while IFS=',' read -r component state; do + component=$(echo "$component" | sed "s/'//g") + state=$(echo "$state" | sed "s/'//g") + if [ "$component" = "Visit www.githubstatus.com for more information" ]; then + continue + fi + state=$(translate_state "$state") + printf ' - %s%s%s está %s%s%s.\n' "$color_cyan" "$component" "$color_reset" "$color_purple" "$state" "$color_reset" +done