diff options
Diffstat (limited to 'retiolum/scripts/adv_graphgen/scripts/build-graphs')
-rwxr-xr-x | retiolum/scripts/adv_graphgen/scripts/build-graphs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/retiolum/scripts/adv_graphgen/scripts/build-graphs b/retiolum/scripts/adv_graphgen/scripts/build-graphs new file mode 100755 index 00000000..3eb675ec --- /dev/null +++ b/retiolum/scripts/adv_graphgen/scripts/build-graphs @@ -0,0 +1,27 @@ +#!/bin/sh +set -euf +mode=${1?arg1 must be either 'anonymous' or 'complete'} +out=${2?arg2 must be set to an outdir} +# for creating all the graphs +TYPE=svg +# for creating real pictures +TYPE2=png + +DOTFILE=`mktemp` +trap 'rm "$DOTFILE"' INT TERM KILL EXIT + +tinc-stats2json | tinc-build-graph "$mode" > "$DOTFILE" + +i=1 +for setter in dot circo 'neato -Goverlap=prism ' sfdp +do + tmpgraph=`mktemp --tmpdir=$1` + # first build, then move to avoid half-built graphs + "$setter" -T$TYPE -o "$tmpgraph" "$DOTFILE" ||: + chmod go+rx "$tmpgraph" + mv "$tmpgraph" "$1/retiolum_$i.$TYPE" + i=`expr $i + 1` +done + +convert -limit memory 32Mib -limit map 64Mib "$out/retiolum_1.$TYPE" "$out/retiolum_1.$TYPE2" +rm "$DOTFILE" |