#!/bin/bash
# Copyright © 2015-2016 Holger Levsen This page is still under development. Please provide feedback, which other information (be it from munin or elsewhere) should be displayed and how this page should be split further, eg, the graphs could all be on another page and/or we should split this page into four for the four architectures being tested… "
for ARCH in ${ARCHS} ; do
write_page "$ARCH nodes
"
write_page ""
write_page "
"
done
write_page " "
# the following for-loop is a hack to insert nodes which are not part of the
# Debian Reproducible Builds node network but are using for reproducible builds
# tests of other projects…
REPRODUCIBLE_NODES="jenkins"
for NODE in $BUILD_NODES ; do
REPRODUCIBLE_NODES="$REPRODUCIBLE_NODES $NODE"
if [ "$NODE" = "profitbricks-build2-i386.debian.net" ] ; then
REPRODUCIBLE_NODES="$REPRODUCIBLE_NODES profitbricks-build3-amd64.debian.net profitbricks-build4-amd64.debian.net profitbricks-build7-amd64.debian.net"
fi
done
for NODE in $REPRODUCIBLE_NODES ; do
if [ -z "$(echo $NODE | grep $ARCH || true)" ] && [ "$NODE" != "jenkins" ] ; then
continue
elif [ "$NODE" = "jenkins" ] && [ "$ARCH" != "amd64" ] ; then
continue
fi
if [ "$NODE" = "jenkins" ] ; then
JENKINS_NODENAME=jenkins
NODE="jenkins.debian.net"
else
case $ARCH in
amd64|i386) JENKINS_NODENAME=$(echo $NODE | cut -d "-" -f1-2|sed 's#-build##' ) ;;
arm64) JENKINS_NODENAME=$(echo $NODE | cut -d "-" -f1-2|sed 's#-sled##' ) ;;
armhf) JENKINS_NODENAME=$(echo $NODE | cut -d "-" -f1) ;;
esac
fi
write_page "Name health check maintenance Debian worker.log links "
for SUITE in ${SUITES} ; do
write_page "schroot setup $SUITE "
done
for SUITE in ${SUITES} ; do
write_page "pbuilder setup $SUITE "
done
write_page " "
done
write_page "$JENKINS_NODENAME "
URL="https://jenkins.debian.net/view/reproducible/view/Node_maintenance/job/reproducible_node_health_check_${ARCH}_${JENKINS_NODENAME}"
BADGE="$URL/badge/icon"
write_page ""
URL="https://jenkins.debian.net/view/reproducible/view/Node_maintenance/job/reproducible_maintenance_${ARCH}_${JENKINS_NODENAME}"
BADGE="$URL/badge/icon"
write_page " "
case $JENKINS_NODENAME in
jenkins) write_page " " ;;
profitbricks3) write_page " " ;;
profitbricks4) write_page " " ;;
profitbricks7) write_page " " ;;
*) write_page " "
SHORTNAME=$(echo $NODE | cut -d '.' -f1)
for WORKER in $(grep "${ARCH}_" /srv/jenkins/bin/reproducible_build_service.sh | grep -v \# |grep $SHORTNAME | cut -d ')' -f1) ; do
write_page ""
write_page "$(echo $WORKER |cut -d '_' -f2) "
done
write_page " "
;;
esac
for SUITE in ${SUITES} ; do
case $JENKINS_NODENAME in
profitbricks3) write_page "" ;;
profitbricks4) write_page " " ;;
profitbricks7) write_page " " ;;
*) URL="https://jenkins.debian.net/view/reproducible/view/Debian_setup_${ARCH}/job/reproducible_setup_schroot_${SUITE}_${ARCH}_${JENKINS_NODENAME}"
BADGE="$URL/badge/icon"
write_page " "
;;
esac
done
for SUITE in ${SUITES} ; do
case $JENKINS_NODENAME in
jenkins) write_page " " ;;
profitbricks3) write_page " " ;;
profitbricks4) write_page " " ;;
profitbricks7) write_page " " ;;
*) URL="https://jenkins.debian.net/view/reproducible/view/Debian_setup_${ARCH}/job/reproducible_setup_pbuilder_${SUITE}_${ARCH}_${JENKINS_NODENAME}"
BADGE="$URL/badge/icon"
write_page " "
;;
esac
done
write_page "
" for ARCH in ${ARCHS} ; do write_page "
Name | " write_page " | |||||
---|---|---|---|---|---|---|
$JENKINS_NODENAME | " for GRAPH in jenkins_reproducible_builds cpu memory df swap load ; do if [ "$GRAPH" = "jenkins_reproducible_builds" ] ; then case $JENKINS_NODENAME in jenkins) write_page "" ; continue ;; profitbricks3) write_page " | " ; continue ;; profitbricks4) write_page " | " ; continue ;; profitbricks7) write_page " | " ; continue ;; *) ;; esac fi write_page " | " if [ "$TYPE" = "daily" ] ; then IMG=day.png else IMG=week.png fi write_page " | " done write_page "