Artifact
3b78e9fde2c569974ff4579b176d357edbd3a0dc:
0000: 23 21 2f 62 69 6e 2f 62 61 73 68 0a 0a 70 72 65 #!/bin/bash..pre
0010: 66 69 78 3d 24 31 0a 63 6d 64 3d 24 32 0a 74 61 fix=$1.cmd=$2.ta
0020: 72 67 65 74 3d 24 33 0a 63 66 67 66 69 6c 65 3d rget=$3.cfgfile=
0030: 22 24 70 72 65 66 69 78 2f 62 69 6e 2f 2e 24 28 "$prefix/bin/.$(
0040: 6c 73 62 5f 72 65 6c 65 61 73 65 20 2d 73 72 29 lsb_release -sr)
0050: 2f 63 66 67 2e 73 68 22 0a 0a 69 66 20 5b 20 22 /cfg.sh"..if [ "
0060: 24 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 $LD_LIBRARY_PATH
0070: 22 20 21 3d 20 22 22 20 5d 3b 74 68 65 6e 0a 20 " != "" ];then.
0080: 20 65 63 68 6f 20 22 49 4e 46 4f 3a 20 55 73 69 echo "INFO: Usi
0090: 6e 67 20 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 ng LD_LIBRARY_PA
00a0: 54 48 3d 24 4c 44 5f 4c 49 42 52 41 52 59 5f 50 TH=$LD_LIBRARY_P
00b0: 41 54 48 22 20 3e 26 32 0a 28 20 63 61 74 20 3c ATH" >&2.( cat <
00c0: 3c 20 5f 5f 45 4f 46 0a 69 66 20 5b 20 22 5c 24 < __EOF.if [ "\$
00d0: 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 22 LD_LIBRARY_PATH"
00e0: 20 21 3d 20 22 22 20 5d 3b 74 68 65 6e 0a 20 20 != "" ];then.
00f0: 65 78 70 6f 72 74 20 4c 44 5f 4c 49 42 52 41 52 export LD_LIBRAR
0100: 59 5f 50 41 54 48 3d 24 4c 44 5f 4c 49 42 52 41 Y_PATH=$LD_LIBRA
0110: 52 59 5f 50 41 54 48 3a 5c 24 4c 44 5f 4c 49 42 RY_PATH:\$LD_LIB
0120: 52 41 52 59 5f 50 41 54 48 0a 65 6c 73 65 0a 20 RARY_PATH.else.
0130: 20 65 78 70 6f 72 74 20 4c 44 5f 4c 49 42 52 41 export LD_LIBRA
0140: 52 59 5f 50 41 54 48 3d 24 4c 44 5f 4c 49 42 52 RY_PATH=$LD_LIBR
0150: 41 52 59 5f 50 41 54 48 0a 66 69 0a 5f 5f 45 4f ARY_PATH.fi.__EO
0160: 46 0a 29 20 3e 20 24 63 66 67 66 69 6c 65 0a 20 F.) > $cfgfile.
0170: 20 65 63 68 6f 20 0a 65 6c 73 65 0a 20 20 65 63 echo .else. ec
0180: 68 6f 20 22 49 4e 46 4f 3a 20 4c 44 5f 4c 49 42 ho "INFO: LD_LIB
0190: 52 41 52 59 5f 50 41 54 48 20 6e 6f 74 20 73 65 RARY_PATH not se
01a0: 74 22 20 3e 26 32 0a 66 69 0a 0a 65 63 68 6f 20 t" >&2.fi..echo
01b0: 22 23 21 2f 62 69 6e 2f 62 61 73 68 22 20 3e 20 "#!/bin/bash" >
01c0: 24 74 61 72 67 65 74 0a 0a 69 66 20 5b 5b 20 24 $target..if [[ $
01d0: 63 6d 64 20 3d 7e 20 64 62 6f 61 72 64 20 5d 5d cmd =~ dboard ]]
01e0: 3b 20 74 68 65 6e 0a 20 20 20 20 63 61 74 20 3e ; then. cat >
01f0: 3e 20 24 74 61 72 67 65 74 20 3c 3c 27 45 4f 46 > $target <<'EOF
0200: 27 0a 0a 23 20 23 20 64 69 73 61 62 6c 65 20 69 '..# # disable i
0210: 66 20 6e 6f 74 20 72 75 6e 6e 69 6e 67 20 6f 6e f not running on
0220: 20 68 6f 6d 65 68 6f 73 74 0a 23 20 69 66 20 5b homehost.# if [
0230: 5b 20 2d 65 20 2e 68 6f 6d 65 68 6f 73 74 20 5d [ -e .homehost ]
0240: 5d 3b 20 74 68 65 6e 0a 23 20 20 20 68 6f 6d 65 ]; then.# home
0250: 68 6f 73 74 6e 61 6d 65 3d 24 28 20 68 6f 73 74 hostname=$( host
0260: 20 60 63 61 74 20 2e 68 6f 6d 65 68 6f 73 74 60 `cat .homehost`
0270: 20 7c 20 61 77 6b 20 27 7b 70 72 69 6e 74 20 24 | awk '{print $
0280: 4e 46 7d 27 20 7c 20 73 65 64 20 27 73 2f 5c 2e NF}' | sed 's/\.
0290: 24 2f 2f 27 20 29 0a 23 20 20 20 68 6f 73 74 6e $//' ).# hostn
02a0: 61 6d 65 3d 24 28 20 68 6f 73 74 6e 61 6d 65 20 ame=$( hostname
02b0: 2d 66 20 29 0a 23 20 0a 23 20 20 20 69 66 20 5b -f ).# .# if [
02c0: 5b 20 21 20 28 24 68 6f 6d 65 68 6f 73 74 6e 61 [ ! ($homehostna
02d0: 6d 65 20 3d 3d 20 24 68 6f 73 74 6e 61 6d 65 29 me == $hostname)
02e0: 20 5d 5d 3b 20 74 68 65 6e 0a 23 20 20 20 20 20 ]]; then.#
02f0: 65 63 68 6f 20 22 45 52 52 4f 52 3a 20 74 68 69 echo "ERROR: thi
0300: 73 20 68 6f 73 74 20 28 24 68 6f 73 74 6e 61 6d s host ($hostnam
0310: 65 29 20 69 73 20 6e 6f 74 20 74 68 65 20 68 6f e) is not the ho
0320: 6d 65 68 6f 73 74 20 28 24 68 6f 6d 65 68 6f 73 mehost ($homehos
0330: 74 6e 61 6d 65 29 20 66 6f 72 20 74 68 69 73 20 tname) for this
0340: 6d 65 67 61 74 65 73 74 20 72 75 6e 20 61 72 65 megatest run are
0350: 61 2e 20 20 43 61 6e 6e 6f 74 20 73 74 61 72 74 a. Cannot start
0360: 20 64 61 73 68 62 6f 61 72 64 2e 22 0a 23 20 20 dashboard.".#
0370: 20 20 20 65 63 68 6f 20 22 20 20 20 20 20 20 20 echo "
0380: 50 6c 65 61 73 65 20 6c 6f 67 20 69 6e 74 6f 20 Please log into
0390: 68 6f 6d 65 68 6f 73 74 20 62 65 66 6f 72 65 20 homehost before
03a0: 6c 61 75 6e 63 68 69 6e 67 20 64 61 73 68 62 6f launching dashbo
03b0: 61 72 64 2e 22 0a 23 20 20 20 20 20 65 78 69 74 ard.".# exit
03c0: 20 31 0a 23 20 20 20 66 69 0a 23 20 66 69 0a 0a 1.# fi.# fi..
03d0: 23 20 63 68 65 63 6b 20 74 68 61 74 20 24 44 49 # check that $DI
03e0: 53 50 4c 41 59 20 69 73 20 73 65 74 0a 69 66 20 SPLAY is set.if
03f0: 5b 5b 20 2d 7a 20 24 44 49 53 50 4c 41 59 20 5d [[ -z $DISPLAY ]
0400: 5d 3b 20 74 68 65 6e 0a 20 20 20 65 63 68 6f 20 ]; then. echo
0410: 27 45 52 52 4f 52 3a 20 24 44 49 53 50 4c 41 59 'ERROR: $DISPLAY
0420: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 environment var
0430: 69 61 62 6c 65 20 69 73 20 6e 6f 74 20 73 65 74 iable is not set
0440: 3b 20 6d 65 67 61 74 65 73 74 20 64 61 73 68 62 ; megatest dashb
0450: 6f 61 72 64 20 72 65 71 75 69 72 65 73 20 58 20 oard requires X
0460: 64 69 73 70 6c 61 79 20 61 64 64 72 65 73 73 20 display address
0470: 74 6f 20 62 65 20 73 65 74 20 69 6e 20 24 44 49 to be set in $DI
0480: 53 50 4c 41 59 2e 27 0a 20 20 20 65 78 69 74 20 SPLAY.'. exit
0490: 31 0a 66 69 0a 0a 23 20 63 68 65 63 6b 20 74 68 1.fi..# check th
04a0: 61 74 20 24 44 49 53 50 4c 41 59 20 69 73 20 70 at $DISPLAY is p
04b0: 72 6f 70 65 72 0a 69 66 20 5b 5b 20 2d 78 20 24 roper.if [[ -x $
04c0: 28 77 68 69 63 68 20 78 64 70 79 69 6e 66 6f 20 (which xdpyinfo
04d0: 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 29 20 5d 5d 2>/dev/null) ]]
04e0: 3b 20 74 68 65 6e 0a 20 20 69 66 20 21 20 78 64 ; then. if ! xd
04f0: 70 79 69 6e 66 6f 20 2d 64 69 73 70 6c 61 79 20 pyinfo -display
0500: 22 24 44 49 53 50 4c 41 59 22 20 26 3e 2f 64 65 "$DISPLAY" &>/de
0510: 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 20 20 20 v/null; then.
0520: 20 65 63 68 6f 20 27 45 52 52 4f 52 3a 20 6d 65 echo 'ERROR: me
0530: 67 61 74 65 73 74 20 64 61 73 68 62 6f 61 72 64 gatest dashboard
0540: 20 63 61 6e 6e 6f 74 20 6f 70 65 6e 20 64 69 73 cannot open dis
0550: 70 6c 61 79 20 22 27 24 44 49 53 50 4c 41 59 27 play "'$DISPLAY'
0560: 22 2e 20 20 50 6c 65 61 73 65 20 63 68 65 63 6b ". Please check
0570: 20 24 44 49 53 50 4c 41 59 20 65 6e 76 69 72 6f $DISPLAY enviro
0580: 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 2e 27 nment variable.'
0590: 0a 20 20 20 20 65 78 69 74 20 31 0a 20 20 66 69 . exit 1. fi
05a0: 0a 66 69 0a 45 4f 46 0a 0a 66 69 0a 0a 63 61 74 .fi.EOF..fi..cat
05b0: 20 3e 3e 20 24 74 61 72 67 65 74 20 3c 3c 20 45 >> $target << E
05c0: 4f 46 20 0a 69 66 20 5b 5b 20 5c 24 28 75 6c 69 OF .if [[ \$(uli
05d0: 6d 69 74 20 2d 61 20 7c 20 67 72 65 70 20 27 6f mit -a | grep 'o
05e0: 70 65 6e 20 66 69 6c 65 73 27 20 7c 20 61 77 6b pen files' | awk
05f0: 20 27 7b 70 72 69 6e 74 20 5c 24 34 7d 27 29 20 '{print \$4}')
0600: 2d 67 74 20 31 30 30 30 30 20 5d 5d 3b 74 68 65 -gt 10000 ]];the
0610: 6e 20 75 6c 69 6d 69 74 20 2d 6e 20 31 30 30 30 n ulimit -n 1000
0620: 30 3b 66 69 0a 45 4f 46 0a 0a 23 20 65 63 68 6f 0;fi.EOF..# echo
0630: 20 22 23 21 2f 62 69 6e 2f 62 61 73 68 22 20 3e "#!/bin/bash" >
0640: 20 24 74 61 72 67 65 74 0a 23 20 65 63 68 6f 20 $target.# echo
0650: 22 65 78 65 63 20 24 70 72 65 66 69 78 2f 62 69 "exec $prefix/bi
0660: 6e 2f 2e 5c 24 28 6c 73 62 5f 72 65 6c 65 61 73 n/.\$(lsb_releas
0670: 65 20 2d 73 72 29 2f 24 63 6d 64 20 5c 22 5c 24 e -sr)/$cmd \"\$
0680: 40 5c 22 22 20 3e 3e 20 24 74 61 72 67 65 74 0a @\"" >> $target.
0690: 0a 65 63 68 6f 20 22 6c 73 62 72 3d 5c 24 28 6c .echo "lsbr=\$(l
06a0: 73 62 5f 72 65 6c 65 61 73 65 20 2d 73 72 29 22 sb_release -sr)"
06b0: 20 3e 3e 20 24 74 61 72 67 65 74 0a 69 66 20 5b >> $target.if [
06c0: 20 22 24 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 "$LD_LIBRARY_PA
06d0: 54 48 22 20 21 3d 20 22 22 20 5d 3b 74 68 65 6e TH" != "" ];then
06e0: 0a 20 20 65 63 68 6f 20 22 73 6f 75 72 63 65 20 . echo "source
06f0: 24 70 72 65 66 69 78 2f 62 69 6e 2f 2e 5c 24 6c $prefix/bin/.\$l
0700: 73 62 72 2f 63 66 67 2e 73 68 22 20 3e 3e 20 24 sbr/cfg.sh" >> $
0710: 74 61 72 67 65 74 0a 66 69 0a 0a 23 20 65 63 68 target.fi..# ech
0720: 6f 20 22 69 66 20 5b 5b 20 2d 65 20 5c 24 6c 73 o "if [[ -e \$ls
0730: 62 72 20 5d 5d 3b 74 68 65 6e 20 73 6f 75 72 63 br ]];then sourc
0740: 65 20 5c 24 6c 73 62 72 3b 66 69 22 20 3e 3e 20 e \$lsbr;fi" >>
0750: 24 74 61 72 67 65 74 0a 65 63 68 6f 20 22 65 78 $target.echo "ex
0760: 65 63 20 24 70 72 65 66 69 78 2f 62 69 6e 2f 2e ec $prefix/bin/.
0770: 5c 24 6c 73 62 72 2f 24 63 6d 64 20 5c 22 5c 24 \$lsbr/$cmd \"\$
0780: 40 5c 22 22 20 3e 3e 20 24 74 61 72 67 65 74 0a @\"" >> $target.