Skip to content
Snippets Groups Projects
Commit 1e6a0607 authored by Per Cederqvist's avatar Per Cederqvist
Browse files

Refactoring: extract list_jobs

parent 6ded6169
Branches
Tags
No related merge requests found
......@@ -42,6 +42,18 @@ disk=$1
part=$2
BASE=/lysrdiff/$disk/perm/$part
# Emit a list of the first few backup jobs. Keep the output small, by
# ending it with "and others" if it becomes too long. ~200 characters
# are OK.
list_jobs()
{
awk 'BEGIN { sz = 0 }
NR > 1 && sz < 198 { printf ", "; sz += 2 }
sz < 200 { printf "%s", $3; sz += length($3) }
END { if (sz >= 200) printf ", others" } ' \
| sed s'/, \([^,]*\)$/ and \1/'
}
if [ ! -f $BASE/lysrdiff.id ]
then
echo CRITICAL - $BASE/lysrdiff.id: no such file
......@@ -103,12 +115,7 @@ then
echo -n " (also $STALE stale)"
fi
echo -n ": "
sed -n 's/--fail$//p' $state \
|awk 'BEGIN { sz = 0 }
NR > 1 && sz < 198 { printf ", "; sz += 2 }
sz < 200 { printf "%s", $3; sz += length($3) }
END { if (sz >= 200) printf ", others" } ' \
|sed s'/, \([^,]*\)$/ and \1/'
sed -n 's/--fail$//p' $state | list_jobs
echo ". | $PERF"
exit 2
fi
......@@ -121,11 +128,7 @@ then
echo -n " (also $FAILED failed)"
fi
( sed -n 's/--fail$//p' $state; sed 's/--start$//' $state-stale; ) \
|awk 'BEGIN { sz = 0 }
NR > 1 && sz < 198 { printf ", "; sz += 2 }
sz < 200 { printf "%s", $3; sz += length($3) }
END { if (sz >= 200) printf ", others" } ' \
|sed s'/, \([^,]*\)$/ and \1/'
| list_jobs
echo ". | $PERF"
exit 2
fi
......@@ -138,12 +141,7 @@ then
echo -n " (also $STALE stale)"
fi
echo -n ": "
sed -n 's/--fail$//p' $state \
|awk 'BEGIN { sz = 0 }
NR > 1 && sz < 198 { printf ", "; sz += 2 }
sz < 200 { printf "%s", $3; sz += length($3) }
END { if (sz >= 200) printf ", others" } ' \
|sed s'/, \([^,]*\)$/ and \1/'
sed -n 's/--fail$//p' $state | list_jobs
echo ". | $PERF"
exit 1
fi
......@@ -151,12 +149,7 @@ fi
if [ $STALE -gt 0 ]
then
echo -n "WARNING - $STALE stale backups: "
sed 's/--start$//' $state-stale \
|awk 'BEGIN { sz = 0 }
NR > 1 && sz < 198 { printf ", "; sz += 2 }
sz < 200 { printf "%s", $3; sz += length($3) }
END { if (sz >= 200) printf ", others" } ' \
|sed s'/, \([^,]*\)$/ and \1/'
sed 's/--start$//' $state-stale | list_jobs
echo ". | $PERF"
exit 1
fi
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment