Megatest

Hex Artifact Content
Login

Artifact 4f3f90bb148f2f9f2912d51279748ff6edcae715:


0000: 23 21 2f 62 69 6e 2f 62 61 73 68 0a 0a 6d 65 67  #!/bin/bash..meg
0010: 61 74 65 73 74 20 2d 73 74 65 70 20 72 73 79 6e  atest -step rsyn
0020: 63 74 6f 20 3a 73 74 61 74 65 20 73 74 61 72 74  cto :state start
0030: 20 3a 73 74 61 74 75 73 20 6e 2f 61 0a 65 63 68   :status n/a.ech
0040: 6f 20 22 46 69 72 73 74 2c 20 6c 65 74 73 20 70  o "First, lets p
0050: 6f 70 75 6c 61 74 65 20 79 6f 75 72 20 61 72 65  opulate your are
0060: 61 20 77 69 74 68 20 6e 65 63 65 73 73 61 72 79  a with necessary
0070: 20 66 69 6c 65 73 2c 20 79 6f 75 20 6d 61 79 20   files, you may 
0080: 62 65 20 70 72 6f 6d 70 74 65 64 20 66 6f 72 20  be prompted for 
0090: 79 6f 75 72 20 55 6e 69 78 20 70 61 73 73 77 6f  your Unix passwo
00a0: 72 64 20 73 65 76 65 72 61 6c 20 74 69 6d 65 73  rd several times
00b0: 22 0a 72 73 79 6e 63 20 2d 61 76 7a 20 24 4d 54  ".rsync -avz $MT
00c0: 5f 54 45 53 54 5f 52 55 4e 5f 44 49 52 2f 20 20  _TEST_RUN_DIR/  
00d0: 24 54 41 52 47 45 54 55 53 45 52 40 24 54 41 52  $TARGETUSER@$TAR
00e0: 47 45 54 48 4f 53 54 3a 24 54 41 52 47 45 54 44  GETHOST:$TARGETD
00f0: 49 52 0a 6d 65 67 61 74 65 73 74 20 2d 73 74 65  IR.megatest -ste
0100: 70 20 72 73 79 6e 63 74 6f 20 3a 73 74 61 74 65  p rsyncto :state
0110: 20 65 6e 64 20 3a 73 74 61 74 75 73 20 6e 2f 61   end :status n/a
0120: 0a 0a 6d 65 67 61 74 65 73 74 20 2d 73 74 65 70  ..megatest -step
0130: 20 72 75 6e 74 65 73 74 20 3a 73 74 61 74 65 20   runtest :state 
0140: 73 74 61 72 74 20 3a 73 74 61 74 75 73 20 6e 2f  start :status n/
0150: 61 0a 72 65 6d 6f 74 65 63 6d 64 3d 22 63 64 20  a.remotecmd="cd 
0160: 24 54 41 52 47 45 54 44 49 52 3b 78 74 65 72 6d  $TARGETDIR;xterm
0170: 20 2d 64 69 73 70 6c 61 79 20 24 54 41 52 47 45   -display $TARGE
0180: 54 44 49 53 50 4c 41 59 22 0a 65 63 68 6f 20 4c  TDISPLAY".echo L
0190: 61 75 6e 63 68 69 6e 67 20 24 72 65 6d 6f 74 65  aunching $remote
01a0: 63 6d 64 20 6f 6e 20 24 54 41 52 47 45 54 48 4f  cmd on $TARGETHO
01b0: 53 54 20 61 73 20 24 54 41 52 47 45 54 55 53 45  ST as $TARGETUSE
01c0: 52 0a 73 73 68 20 24 54 41 52 47 45 54 55 53 45  R.ssh $TARGETUSE
01d0: 52 40 24 54 41 52 47 45 54 48 4f 53 54 20 24 72  R@$TARGETHOST $r
01e0: 65 6d 6f 74 65 63 6d 64 0a 6d 65 67 61 74 65 73  emotecmd.megates
01f0: 74 20 2d 73 74 65 70 20 72 75 6e 74 65 73 74 20  t -step runtest 
0200: 3a 73 74 61 74 65 20 65 6e 64 20 3a 73 74 61 74  :state end :stat
0210: 75 73 20 24 3f 0a 0a 6d 65 67 61 74 65 73 74 20  us $?..megatest 
0220: 2d 73 74 65 70 20 67 61 74 68 65 72 64 61 74 61  -step gatherdata
0230: 20 3a 73 74 61 74 65 20 73 74 61 72 74 20 3a 73   :state start :s
0240: 74 61 74 75 73 20 6e 2f 61 0a 72 73 79 6e 63 20  tatus n/a.rsync 
0250: 2d 61 76 7a 20 24 54 41 52 47 45 54 55 53 45 52  -avz $TARGETUSER
0260: 40 24 54 41 52 47 45 54 48 4f 53 54 3a 24 54 41  @$TARGETHOST:$TA
0270: 52 47 45 54 44 49 52 2f 72 65 73 75 6c 74 73 2f  RGETDIR/results/
0280: 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e 5f 44 49   $MT_TEST_RUN_DI
0290: 52 2f 72 65 73 75 6c 74 73 2f 0a 69 66 20 5b 5b  R/results/.if [[
02a0: 20 2d 65 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e   -e $MT_TEST_RUN
02b0: 5f 44 49 52 2f 72 65 73 75 6c 74 73 2f 72 65 73  _DIR/results/res
02c0: 75 6c 74 73 2e 63 73 76 20 5d 5d 3b 20 74 68 65  ults.csv ]]; the
02d0: 6e 0a 20 20 20 20 6d 65 67 61 74 65 73 74 20 2d  n.    megatest -
02e0: 6c 6f 61 64 2d 74 65 73 74 2d 64 61 74 61 20 3c  load-test-data <
02f0: 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e 5f 44 49   $MT_TEST_RUN_DI
0300: 52 2f 72 65 73 75 6c 74 73 2f 72 65 73 75 6c 74  R/results/result
0310: 73 2e 63 73 76 0a 66 69 0a 0a 69 66 20 5b 5b 20  s.csv.fi..if [[ 
0320: 2d 65 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e 5f  -e $MT_TEST_RUN_
0330: 44 49 52 2f 72 65 73 75 6c 74 73 2f 66 69 6e 61  DIR/results/fina
0340: 6c 5f 72 65 73 75 6c 74 73 2e 6c 6f 67 20 26 26  l_results.log &&
0350: 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e 5f 44 49   $MT_TEST_RUN_DI
0360: 52 2f 66 69 6e 61 6c 5f 72 65 73 75 6c 74 73 2e  R/final_results.
0370: 6c 6f 67 70 72 6f 20 5d 5d 3b 20 74 68 65 6e 0a  logpro ]]; then.
0380: 20 20 20 20 6c 6f 67 70 72 6f 20 24 4d 54 5f 54      logpro $MT_T
0390: 45 53 54 5f 52 55 4e 5f 44 49 52 2f 66 69 6e 61  EST_RUN_DIR/fina
03a0: 6c 5f 72 65 73 75 6c 74 73 2e 6c 6f 67 70 72 6f  l_results.logpro
03b0: 20 24 4d 54 5f 54 45 53 54 5f 52 55 4e 5f 44 49   $MT_TEST_RUN_DI
03c0: 52 2f 66 69 6e 61 6c 5f 72 65 73 75 6c 74 73 2e  R/final_results.
03d0: 68 74 6d 6c 20 3c 20 24 4d 54 5f 54 45 53 54 5f  html < $MT_TEST_
03e0: 52 55 4e 5f 44 49 52 2f 72 65 73 75 6c 74 73 2f  RUN_DIR/results/
03f0: 66 69 6e 61 6c 5f 72 65 73 75 6c 74 73 2e 6c 6f  final_results.lo
0400: 67 0a 20 20 20 20 69 66 20 5b 5b 20 24 3f 20 3d  g.    if [[ $? =
0410: 20 30 20 5d 5d 3b 20 74 68 65 6e 0a 09 66 69 6e   0 ]]; then..fin
0420: 61 6c 73 74 61 74 75 73 3d 50 41 53 53 0a 20 20  alstatus=PASS.  
0430: 20 20 65 6c 73 65 0a 09 66 69 6e 61 6c 73 74 61    else..finalsta
0440: 74 75 73 3d 46 41 49 4c 0a 20 20 20 20 66 69 0a  tus=FAIL.    fi.
0450: 20 20 20 20 6d 65 67 61 74 65 73 74 20 2d 74 65      megatest -te
0460: 73 74 2d 73 74 61 74 75 73 20 3a 73 74 61 74 65  st-status :state
0470: 20 43 4f 4d 50 4c 45 54 45 44 20 3a 73 74 61 74   COMPLETED :stat
0480: 75 73 20 24 66 69 6e 61 6c 73 74 61 74 75 73 20  us $finalstatus 
0490: 2d 73 65 74 6c 6f 67 20 66 69 6e 61 6c 5f 72 65  -setlog final_re
04a0: 73 75 6c 74 73 2e 68 74 6d 6c 0a 66 69 0a        sults.html.fi.