Megatest

Hex Artifact Content
Login

Artifact 47a69b4c157e8825b1ecd6fa8e0f021f2bf4886a:


0000: 0a 48 6f 77 20 54 6f 20 44 6f 20 54 68 69 6e 67  .How To Do Thing
0010: 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  s.==============
0020: 3d 3d 0a 0a 52 65 6d 6f 76 65 20 52 75 6e 73 0a  ==..Remove Runs.
0030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 46 72 6f  -----------..Fro
0040: 6d 20 74 68 65 20 64 61 73 68 62 6f 61 72 64 20  m the dashboard 
0050: 63 6c 69 63 6b 20 6f 6e 20 74 68 65 20 62 75 74  click on the but
0060: 74 6f 6e 20 28 50 41 53 53 2f 46 41 49 4c 2e 2e  ton (PASS/FAIL..
0070: 2e 29 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68  .) for one of th
0080: 65 20 74 65 73 74 73 2e 20 46 72 6f 6d 20 74 68  e tests. From th
0090: 65 20 74 65 73 74 20 63 6f 6e 74 72 6f 6c 20 70  e test control p
00a0: 61 6e 65 6c 20 74 68 61 74 20 0a 63 6f 6d 65 73  anel that .comes
00b0: 20 75 70 20 70 75 73 68 20 74 68 65 20 63 6c 65   up push the cle
00c0: 61 6e 20 74 65 73 74 20 62 75 74 74 6f 6e 2e 20  an test button. 
00d0: 54 68 65 20 63 6f 6d 6d 61 6e 64 20 66 69 65 6c  The command fiel
00e0: 64 20 77 69 6c 6c 20 62 65 20 70 72 65 66 69 6c  d will be prefil
00f0: 6c 65 64 20 77 69 74 68 20 61 20 74 65 6d 70 6c  led with a templ
0100: 61 74 65 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20  ate command for 
0110: 72 65 6d 6f 76 69 6e 67 20 0a 74 68 61 74 20 74  removing .that t
0120: 65 73 74 2e 20 59 6f 75 20 63 61 6e 20 65 64 69  est. You can edi
0130: 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 2c 20 66  t the command, f
0140: 6f 72 20 65 78 61 6d 70 6c 65 20 63 68 61 6e 67  or example chang
0150: 65 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 74  e the argument t
0160: 6f 20 2d 74 65 73 74 70 61 74 74 20 74 6f 20 22  o -testpatt to "
0170: 25 22 20 74 6f 20 72 65 6d 6f 76 65 20 61 6c 6c  %" to remove all
0180: 20 74 65 73 74 73 2e 0a 0a 2e 52 65 6d 6f 76 65   tests....Remove
0190: 20 74 68 65 20 74 65 73 74 20 64 69 73 6b 70 65   the test diskpe
01a0: 72 66 20 61 6e 64 20 61 6c 6c 20 69 74 27 73 20  rf and all it's 
01b0: 69 74 65 6d 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  items.----------
01c0: 2d 2d 2d 2d 2d 2d 0a 6d 65 67 61 74 65 73 74 20  ------.megatest 
01d0: 2d 72 65 6d 6f 76 65 2d 72 75 6e 73 20 2d 74 61  -remove-runs -ta
01e0: 72 67 65 74 20 75 62 75 6e 74 75 2f 6e 66 73 2f  rget ubuntu/nfs/
01f0: 6e 6f 6e 65 20 2d 72 75 6e 6e 61 6d 65 20 77 77  none -runname ww
0200: 32 38 2e 31 61 20 2d 74 65 73 74 70 61 74 74 20  28.1a -testpatt 
0210: 64 69 73 6b 70 65 72 66 2f 25 20 2d 76 0a 2d 2d  diskperf/% -v.--
0220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
0230: 2e 52 65 6d 6f 76 65 20 61 6c 6c 20 74 65 73 74  .Remove all test
0240: 73 20 66 6f 72 20 61 6c 6c 20 72 75 6e 73 20 61  s for all runs a
0250: 6e 64 20 61 6c 6c 20 74 61 72 67 65 74 73 0a 2d  nd all targets.-
0260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
0270: 6d 65 67 61 74 65 73 74 20 2d 72 65 6d 6f 76 65  megatest -remove
0280: 2d 72 75 6e 73 20 2d 74 61 72 67 65 74 20 25 2f  -runs -target %/
0290: 25 2f 25 20 2d 72 75 6e 6e 61 6d 65 20 25 20 2d  %/% -runname % -
02a0: 74 65 73 74 70 61 74 74 20 25 20 2d 76 0a 2d 2d  testpatt % -v.--
02b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
02c0: 41 72 63 68 69 76 65 20 52 75 6e 73 0a 2d 2d 2d  Archive Runs.---
02d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4d 65 67 61 74  ---------..Megat
02e0: 65 73 74 20 73 75 70 70 6f 72 74 73 20 75 73 69  est supports usi
02f0: 6e 67 20 74 68 65 20 62 75 70 20 62 61 63 6b 75  ng the bup backu
0300: 70 20 74 6f 6f 6c 20 28 68 74 74 70 73 3a 2f 2f  p tool (https://
0310: 62 75 70 2e 67 69 74 68 75 62 2e 69 6f 2f 29 20  bup.github.io/) 
0320: 74 6f 20 61 72 63 68 69 76 65 20 79 6f 75 72 20  to archive your 
0330: 74 65 73 74 73 20 66 6f 72 20 65 66 66 69 63 69  tests for effici
0340: 65 6e 74 20 73 74 6f 72 61 67 65 0a 61 6e 64 20  ent storage.and 
0350: 72 65 74 72 69 65 76 61 6c 2e 20 41 72 63 68 69  retrieval. Archi
0360: 76 65 64 20 64 61 74 61 20 63 61 6e 20 62 65 20  ved data can be 
0370: 72 61 70 69 64 6c 79 20 72 65 74 72 69 65 76 65  rapidly retrieve
0380: 64 20 69 66 20 6e 65 65 64 65 64 2e 20 54 68 65  d if needed. The
0390: 20 6d 65 74 61 64 61 74 61 20 66 6f 72 20 74 68   metadata for th
03a0: 65 20 72 75 6e 20 28 50 41 53 53 2f 46 41 49 4c  e run (PASS/FAIL
03b0: 20 73 74 61 74 75 73 2c 20 72 75 6e 20 0a 64 75   status, run .du
03c0: 72 61 74 69 6f 6e 73 2c 20 74 69 6d 65 20 73 74  rations, time st
03d0: 61 6d 70 73 20 65 74 63 2e 29 20 61 72 65 20 61  amps etc.) are a
03e0: 6c 6c 20 70 72 65 73 65 72 76 65 64 20 69 6e 20  ll preserved in 
03f0: 74 68 65 20 6d 65 67 61 74 65 73 74 20 64 61 74  the megatest dat
0400: 61 62 61 73 65 2e 0a 0a 46 6f 72 20 73 65 74 75  abase...For setu
0410: 70 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 73 65  p information se
0420: 65 20 74 68 65 20 41 72 63 68 69 76 69 6e 67 20  e the Archiving 
0430: 74 6f 70 69 63 20 69 6e 20 74 68 65 20 72 65 66  topic in the ref
0440: 65 72 65 6e 63 65 20 73 65 63 74 69 6f 6e 20 6f  erence section o
0450: 66 20 74 68 69 73 20 6d 61 6e 75 61 6c 2e 0a 0a  f this manual...
0460: 54 6f 20 41 72 63 68 69 76 65 0a 7e 7e 7e 7e 7e  To Archive.~~~~~
0470: 7e 7e 7e 7e 7e 0a 0a 48 69 6e 74 3a 20 75 73 65  ~~~~~..Hint: use
0480: 20 74 68 65 20 74 65 73 74 20 63 6f 6e 74 72 6f   the test contro
0490: 6c 20 70 61 6e 65 6c 20 74 6f 20 63 72 65 61 74  l panel to creat
04a0: 65 20 61 20 74 65 6d 70 6c 61 74 65 20 63 6f 6d  e a template com
04b0: 6d 61 6e 64 20 62 79 20 70 75 73 68 69 6e 67 20  mand by pushing 
04c0: 74 68 65 20 22 41 72 63 68 69 76 65 20 54 65 73  the "Archive Tes
04d0: 74 73 22 20 62 75 74 74 6f 6e 2e 0a 0a 2e 41 72  ts" button....Ar
04e0: 63 68 69 76 65 20 61 20 66 75 6c 6c 20 72 75 6e  chive a full run
04f0: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
0500: 2d 0a 6d 65 67 61 74 65 73 74 20 2d 74 61 72 67  -.megatest -targ
0510: 65 74 20 75 62 75 6e 74 75 2f 6e 66 73 2f 6e 6f  et ubuntu/nfs/no
0520: 6e 65 20 2d 72 75 6e 6e 61 6d 65 20 77 77 32 38  ne -runname ww28
0530: 2e 31 61 20 2d 61 72 63 68 69 76 65 20 73 61 76  .1a -archive sav
0540: 65 2d 72 65 6d 6f 76 65 20 2d 74 65 73 74 70 61  e-remove -testpa
0550: 74 74 20 25 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  tt %.-----------
0560: 2d 2d 2d 2d 2d 0a 0a 54 6f 20 52 65 73 74 6f 72  -----..To Restor
0570: 65 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 2e 52  e.~~~~~~~~~~...R
0580: 65 74 72 69 65 76 65 20 61 20 73 69 6e 67 6c 65  etrieve a single
0590: 20 74 65 73 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   test.----------
05a0: 2d 2d 2d 2d 2d 2d 0a 6d 65 67 61 74 65 73 74 20  ------.megatest 
05b0: 2d 74 61 72 67 65 74 20 75 62 75 6e 74 75 2f 6e  -target ubuntu/n
05c0: 66 73 2f 6e 6f 6e 65 20 2d 72 75 6e 6e 61 6d 65  fs/none -runname
05d0: 20 77 77 32 38 2e 31 61 20 2d 61 72 63 68 69 76   ww28.1a -archiv
05e0: 65 20 72 65 73 74 6f 72 65 20 2d 74 65 73 74 70  e restore -testp
05f0: 61 74 74 20 64 69 73 6b 70 65 72 66 2f 25 0a 2d  att diskperf/%.-
0600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
0610: 0a 48 69 6e 74 3a 20 59 6f 75 20 63 61 6e 20 62  .Hint: You can b
0620: 72 6f 77 73 65 20 74 68 65 20 61 72 63 68 69 76  rowse the archiv
0630: 65 20 75 73 69 6e 67 20 62 75 70 20 63 6f 6d 6d  e using bup comm
0640: 61 6e 64 73 20 64 69 72 65 63 74 6c 79 2e 0a 0a  ands directly...
0650: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0660: 0a 62 75 70 20 2d 64 20 2f 70 61 74 68 2f 74 6f  .bup -d /path/to
0670: 2f 62 75 70 2f 61 72 63 68 69 76 65 20 66 74 70  /bup/archive ftp
0680: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
0690: 2d 0a 0a 53 75 62 6d 69 74 20 6a 6f 62 73 20 74  -..Submit jobs t
06a0: 6f 20 48 6f 73 74 20 54 79 70 65 73 20 62 61 73  o Host Types bas
06b0: 65 64 20 6f 6e 20 54 65 73 74 20 4e 61 6d 65 0a  ed on Test Name.
06c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
06d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
06e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 2e 49  ------------...I
06f0: 6e 20 6d 65 67 61 74 65 73 74 2e 63 6f 6e 66 69  n megatest.confi
0700: 67 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  g.--------------
0710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 5b 68 6f 73 74  ----------.[host
0720: 2d 74 79 70 65 73 5d 0a 67 65 6e 65 72 61 6c 20  -types].general 
0730: 73 73 68 20 23 7b 67 65 74 62 67 65 73 74 68 6f  ssh #{getbgestho
0740: 73 74 20 67 65 6e 65 72 61 6c 7d 0a 6e 62 67 65  st general}.nbge
0750: 6e 65 72 61 6c 20 6e 62 6a 6f 62 20 72 75 6e 20  neral nbjob run 
0760: 4a 4f 42 43 4f 4d 4d 41 4e 44 20 2d 6c 6f 67 20  JOBCOMMAND -log 
0770: 24 4d 54 5f 4c 49 4e 4b 54 52 45 45 2f 24 4d 54  $MT_LINKTREE/$MT
0780: 5f 54 41 52 47 45 54 2f 24 4d 54 5f 52 55 4e 4e  _TARGET/$MT_RUNN
0790: 41 4d 45 2e 24 4d 54 5f 54 45 53 54 4e 41 4d 45  AME.$MT_TESTNAME
07a0: 2d 24 4d 54 5f 49 54 45 4d 5f 50 41 54 48 2e 6c  -$MT_ITEM_PATH.l
07b0: 67 6f 0a 0a 5b 68 6f 73 74 73 5d 0a 67 65 6e 65  go..[hosts].gene
07c0: 72 61 6c 20 63 75 62 69 61 6e 20 78 65 6e 61 0a  ral cubian xena.
07d0: 0a 5b 6c 61 75 6e 63 68 65 72 73 5d 0a 65 6e 76  .[launchers].env
07e0: 73 65 74 75 70 20 67 65 6e 65 72 61 6c 0a 78 6f  setup general.xo
07f0: 72 2f 25 2f 6e 20 34 43 31 36 47 0a 25 20 6e 62  r/%/n 4C16G.% nb
0800: 67 65 6e 65 72 61 6c 0a 0a 5b 6a 6f 62 74 6f 6f  general..[jobtoo
0810: 6c 73 5d 0a 6c 61 75 6e 63 68 65 72 20 62 73 75  ls].launcher bsu
0820: 62 0a 23 20 69 66 20 64 65 66 69 6e 65 64 20 61  b.# if defined a
0830: 6e 64 20 6e 6f 74 20 22 6e 6f 22 20 66 6c 65 78  nd not "no" flex
0840: 69 2d 6c 61 75 6e 63 68 65 72 20 77 69 6c 6c 20  i-launcher will 
0850: 62 79 70 61 73 73 20 6c 61 75 6e 63 68 65 72 20  bypass launcher 
0860: 75 6e 6c 65 73 73 20 74 68 65 72 65 20 69 73 20  unless there is 
0870: 6e 6f 0a 23 20 6d 61 74 63 68 2e 0a 66 6c 65 78  no.# match..flex
0880: 69 2d 6c 61 75 6e 63 68 65 72 20 79 65 73 0a 2d  i-launcher yes.-
0890: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08a0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 72 69 63 6b 73 0a  -------..Tricks.
08b0: 2d 2d 2d 2d 2d 2d 0a 0a 54 68 69 73 20 73 65 63  ------..This sec
08c0: 74 69 6f 6e 20 69 73 20 61 20 63 6f 6d 70 65 6e  tion is a compen
08d0: 64 69 75 6d 20 6f 66 20 61 20 76 61 72 69 6f 75  dium of a variou
08e0: 73 20 75 73 65 66 75 6c 20 74 72 69 63 6b 73 20  s useful tricks 
08f0: 66 6f 72 20 64 65 62 75 67 67 69 6e 67 2c 0a 63  for debugging,.c
0900: 6f 6e 66 69 67 75 72 69 6e 67 20 61 6e 64 20 67  onfiguring and g
0910: 65 6e 65 72 61 6c 6c 79 20 67 65 74 74 69 6e 67  enerally getting
0920: 20 74 68 65 20 6d 6f 73 74 20 6f 75 74 20 6f 66   the most out of
0930: 20 4d 65 67 61 74 65 73 74 2e 0a 0a 4c 69 6d 69   Megatest...Limi
0940: 74 69 6e 67 20 79 6f 75 72 20 72 75 6e 6e 69 6e  ting your runnin
0950: 67 20 6a 6f 62 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  g jobs.---------
0960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0970: 2d 0a 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  -..The following
0980: 20 65 78 61 6d 70 6c 65 20 77 69 6c 6c 20 6c 69   example will li
0990: 6d 69 74 20 61 20 74 65 73 74 20 69 6e 20 74 68  mit a test in th
09a0: 65 20 6a 6f 62 67 72 6f 75 70 20 22 67 72 6f 75  e jobgroup "grou
09b0: 70 31 22 20 74 6f 20 6e 6f 20 6d 6f 72 65 20 74  p1" to no more t
09c0: 68 61 6e 20 31 30 20 74 65 73 74 73 20 73 69 6d  han 10 tests sim
09d0: 75 6c 74 61 6e 65 6f 75 73 6c 79 2e 0a 0a 49 6e  ultaneously...In
09e0: 20 79 6f 75 72 20 74 65 73 74 63 6f 6e 66 69 67   your testconfig
09f0: 3a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  :..-------------
0a00: 2d 2d 2d 0a 5b 74 65 73 74 5f 6d 65 74 61 5d 0a  ---.[test_meta].
0a10: 6a 6f 62 67 72 6f 75 70 20 67 72 6f 75 70 31 0a  jobgroup group1.
0a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0a30: 0a 0a 49 6e 20 79 6f 75 72 20 6d 65 67 61 74 65  ..In your megate
0a40: 73 74 2e 63 6f 6e 66 69 67 3a 0a 0a 2d 2d 2d 2d  st.config:..----
0a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 5b 6a 6f 62  -----------.[job
0a60: 67 72 6f 75 70 73 5d 0a 67 72 6f 75 70 31 20 31  groups].group1 1
0a70: 30 0a 63 75 73 74 64 65 73 20 34 0a 2d 2d 2d 2d  0.custdes 4.----
0a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 0a 0a 0a  -----------.....
0a90: 44 65 62 75 67 67 69 6e 67 20 54 72 69 63 6b 73  Debugging Tricks
0aa0: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
0ab0: 2d 0a 0a 45 78 61 6d 69 6e 69 6e 67 20 54 68 65  -..Examining The
0ac0: 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 0a 7e 7e 7e   Environment.~~~
0ad0: 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e  ~~~~~~~~~~~~~~~~
0ae0: 7e 7e 7e 7e 7e 7e 0a 0a 54 65 73 74 20 43 6f 6e  ~~~~~~..Test Con
0af0: 74 72 6f 6c 20 50 61 6e 65 6c 20 2d 20 78 74 65  trol Panel - xte
0b00: 72 6d 0a 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  rm.^^^^^^^^^^^^^
0b10: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 0a 0a 46  ^^^^^^^^^^^^^..F
0b20: 72 6f 6d 20 74 68 65 20 64 61 73 68 62 6f 61 72  rom the dashboar
0b30: 64 20 63 6c 69 63 6b 20 6f 6e 20 61 20 74 65 73  d click on a tes
0b40: 74 20 50 41 53 53 2f 46 41 49 4c 20 62 75 74 74  t PASS/FAIL butt
0b50: 6f 6e 2e 20 54 68 69 73 20 62 72 69 6e 67 73 20  on. This brings 
0b60: 75 70 20 61 20 74 65 73 74 20 63 6f 6e 74 72 6f  up a test contro
0b70: 6c 20 70 61 6e 65 6c 2e 20 41 70 72 6f 78 69 6d  l panel. Aproxim
0b80: 61 74 65 6c 79 20 6e 65 61 72 20 74 68 65 20 63  ately near the c
0b90: 65 6e 74 65 72 20 6c 65 66 74 20 6f 66 20 74 68  enter left of th
0ba0: 65 20 0a 77 69 6e 64 6f 77 20 74 68 65 72 65 20  e .window there 
0bb0: 69 73 20 61 20 62 75 74 74 6f 6e 20 22 53 74 61  is a button "Sta
0bc0: 72 74 20 58 74 65 72 6d 22 2e 20 50 75 73 68 20  rt Xterm". Push 
0bd0: 74 68 69 73 20 74 6f 20 67 65 74 20 61 6e 20 78  this to get an x
0be0: 74 65 72 6d 20 77 69 74 68 20 74 68 65 20 66 75  term with the fu
0bf0: 6c 6c 20 63 6f 6e 74 65 78 74 20 61 6e 64 20 65  ll context and e
0c00: 6e 76 69 72 6f 6e 6d 65 6e 74 20 6c 6f 61 64 65  nvironment loade
0c10: 64 20 66 6f 72 20 74 68 61 74 20 74 65 73 74 2e  d for that test.
0c20: 20 59 6f 75 20 63 61 6e 20 72 75 6e 0a 73 63 72   You can run.scr
0c30: 69 70 74 73 20 6f 72 20 65 7a 73 74 65 70 73 20  ipts or ezsteps 
0c40: 62 79 20 63 6f 70 79 69 6e 67 20 66 72 6f 6d 20  by copying from 
0c50: 74 68 65 20 74 65 73 74 63 6f 6e 66 69 67 20 28  the testconfig (
0c60: 68 69 6e 74 2c 20 6c 6f 61 64 20 75 70 20 74 68  hint, load up th
0c70: 65 20 74 65 73 74 63 6f 6e 66 69 67 20 69 6e 20  e testconfig in 
0c80: 61 20 73 65 70 61 72 61 74 65 20 67 76 69 6d 20  a separate gvim 
0c90: 6f 72 20 65 6d 61 63 73 20 77 69 6e 64 6f 77 29  or emacs window)
0ca0: 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 65 61  . This is the ea
0cb0: 73 69 65 73 74 20 77 61 79 0a 74 6f 20 64 65 62  siest way.to deb
0cc0: 75 67 20 79 6f 75 72 20 74 65 73 74 73 2e 0a 0a  ug your tests...
0cd0: 44 75 72 69 6e 67 20 43 6f 6e 66 69 67 20 46 69  During Config Fi
0ce0: 6c 65 20 50 72 6f 63 65 73 73 69 6e 67 0a 5e 5e  le Processing.^^
0cf0: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  ^^^^^^^^^^^^^^^^
0d00: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 0a 0a 49 74 20  ^^^^^^^^^^^..It 
0d10: 69 73 20 6f 66 74 65 6e 20 68 65 6c 70 66 75 6c  is often helpful
0d20: 20 74 6f 20 6b 6e 6f 77 20 74 68 65 20 63 6f 6e   to know the con
0d30: 74 65 6e 74 20 6f 66 20 76 61 72 69 61 62 6c 65  tent of variable
0d40: 73 20 69 6e 20 76 61 72 69 6f 75 73 0a 63 6f 6e  s in various.con
0d50: 74 65 78 74 73 20 61 73 20 4d 65 67 61 74 65 73  texts as Megates
0d60: 74 20 64 6f 65 73 20 74 68 65 20 61 63 74 69 6f  t does the actio
0d70: 6e 73 20 6e 65 65 64 65 64 20 74 6f 20 72 75 6e  ns needed to run
0d80: 20 79 6f 75 72 20 74 65 73 74 73 2e 20 41 20 68   your tests. A h
0d90: 61 6e 64 79 20 74 65 63 68 6e 69 71 75 65 20 69  andy technique i
0da0: 73 20 74 6f 20 66 6f 72 63 65 20 74 68 65 20 73  s to force the s
0db0: 74 61 72 74 75 70 20 6f 66 20 61 6e 20 78 74 65  tartup of an xte
0dc0: 72 6d 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78  rm in the contex
0dd0: 74 20 62 65 69 6e 67 20 65 78 61 6d 69 6e 65 64  t being examined
0de0: 2e 0a 0a 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20  ...For example, 
0df0: 69 66 20 61 6e 20 69 74 65 6d 20 6c 69 73 74 20  if an item list 
0e00: 69 73 20 6e 6f 74 20 62 65 69 6e 67 20 67 65 6e  is not being gen
0e10: 65 72 61 74 65 64 20 61 73 20 65 78 70 65 63 74  erated as expect
0e20: 65 64 20 79 6f 75 0a 63 61 6e 20 69 6e 6a 65 63  ed you.can injec
0e30: 74 20 74 68 65 20 73 74 61 72 74 75 70 20 6f 66  t the startup of
0e40: 20 61 6e 20 78 74 65 72 6d 20 61 73 20 69 66 20   an xterm as if 
0e50: 69 74 20 77 65 72 65 20 61 6e 20 69 74 65 6d 3a  it were an item:
0e60: 0a 0a 2e 4f 72 69 67 69 6e 61 6c 20 69 74 65 6d  ...Original item
0e70: 73 20 74 61 62 6c 65 0a 2d 2d 2d 2d 2d 2d 2d 2d  s table.--------
0e80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 5b 69 74 65 6d 73  ---------.[items
0e90: 5d 0a 43 45 4c 4c 4e 41 4d 45 20 5b 73 79 73 74  ].CELLNAME [syst
0ea0: 65 6d 20 67 65 74 63 65 6c 6c 6e 61 6d 65 2e 73  em getcellname.s
0eb0: 68 5d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  h].-------------
0ec0: 2d 2d 2d 2d 0a 0a 2e 49 74 65 6d 73 20 74 61 62  ----...Items tab
0ed0: 6c 65 20 6d 6f 64 69 66 69 65 64 20 66 6f 72 20  le modified for 
0ee0: 64 65 62 75 67 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  debug.----------
0ef0: 2d 2d 2d 2d 2d 2d 2d 0a 5b 69 74 65 6d 73 5d 0a  -------.[items].
0f00: 44 45 42 55 47 20 5b 73 79 73 74 65 6d 20 78 74  DEBUG [system xt
0f10: 65 72 6d 5d 0a 43 45 4c 4c 4e 41 4d 45 20 5b 73  erm].CELLNAME [s
0f20: 79 73 74 65 6d 20 67 65 74 63 65 6c 6c 6e 61 6d  ystem getcellnam
0f30: 65 73 2e 73 68 5d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  es.sh].---------
0f40: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 57 68 65 6e 20 74  --------..When t
0f50: 68 69 73 20 74 65 73 74 20 69 73 20 72 75 6e 20  his test is run 
0f60: 61 6e 20 78 74 65 72 6d 20 77 69 6c 6c 20 70 6f  an xterm will po
0f70: 70 20 75 70 2e 20 49 6e 20 74 68 61 74 20 78 74  p up. In that xt
0f80: 65 72 6d 20 74 68 65 0a 65 6e 76 69 72 6f 6e 6d  erm the.environm
0f90: 65 6e 74 20 69 73 20 65 78 61 63 74 6c 79 20 74  ent is exactly t
0fa0: 68 61 74 20 69 6e 20 77 68 69 63 68 20 74 68 65  hat in which the
0fb0: 20 73 63 72 69 70 74 20 22 67 65 74 63 65 6c 6c   script "getcell
0fc0: 6e 61 6d 65 73 2e 73 68 22 0a 77 6f 75 6c 64 20  names.sh".would 
0fd0: 72 75 6e 2e 20 59 6f 75 20 63 61 6e 20 6e 6f 77  run. You can now
0fe0: 20 64 65 62 75 67 20 74 68 65 20 73 63 72 69 70   debug the scrip
0ff0: 74 20 74 6f 20 66 69 6e 64 20 6f 75 74 20 77 68  t to find out wh
1000: 79 20 69 74 20 69 73 6e 27 74 0a 77 6f 72 6b 69  y it isn't.worki
1010: 6e 67 20 61 73 20 65 78 70 65 63 74 65 64 2e 0a  ng as expected..
1020: 0a 4f 72 67 61 6e 69 73 69 6e 67 20 59 6f 75 72  .Organising Your
1030: 20 54 65 73 74 73 20 61 6e 64 20 54 61 73 6b 73   Tests and Tasks
1040: 0a 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  .^^^^^^^^^^^^^^^
1050: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  ^^^^^^^^^^^^^^^^
1060: 0a 0a 54 68 65 20 64 65 66 61 75 6c 74 20 6c 6f  ..The default lo
1070: 63 61 74 69 6f 6e 20 22 74 65 73 74 73 22 20 66  cation "tests" f
1080: 6f 72 20 73 74 6f 72 69 6e 67 20 74 65 73 74 73  or storing tests
1090: 20 63 61 6e 20 62 65 20 65 78 74 65 6e 64 65 64   can be extended
10a0: 20 62 79 0a 61 64 64 69 6e 67 20 74 6f 20 79 6f   by.adding to yo
10b0: 75 72 20 74 65 73 74 73 2d 70 61 74 68 73 20 73  ur tests-paths s
10c0: 65 63 74 69 6f 6e 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d  ection...-------
10d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
10e0: 2d 2d 2d 2d 2d 0a 5b 6d 69 73 63 5d 0a 70 61 72  -----.[misc].par
10f0: 65 6e 74 20 23 7b 73 68 65 6c 6c 20 64 69 72 6e  ent #{shell dirn
1100: 61 6d 65 20 24 28 72 65 61 64 6c 69 6e 6b 20 2d  ame $(readlink -
1110: 66 20 2e 29 7d 0a 0a 5b 74 65 73 74 73 2d 70 61  f .)}..[tests-pa
1120: 74 68 73 5d 0a 31 20 23 7b 67 65 74 20 6d 69 73  ths].1 #{get mis
1130: 63 20 70 61 72 65 6e 74 7d 2f 73 69 6d 70 6c 65  c parent}/simple
1140: 72 75 6e 2f 74 65 73 74 73 0a 2d 2d 2d 2d 2d 2d  run/tests.------
1150: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1160: 2d 2d 2d 2d 2d 2d 0a 0a 54 68 65 20 61 62 6f 76  ------..The abov
1170: 65 20 65 78 61 6d 70 6c 65 20 73 68 6f 77 73 20  e example shows 
1180: 68 6f 77 20 79 6f 75 20 63 61 6e 20 75 73 65 20  how you can use 
1190: 61 64 64 69 74 69 6f 6e 20 73 65 63 74 69 6f 6e  addition section
11a0: 73 20 69 6e 20 79 6f 75 72 0a 63 6f 6e 66 69 67  s in your.config
11b0: 20 66 69 6c 65 20 74 6f 20 64 6f 20 63 6f 6d 70   file to do comp
11c0: 6c 65 78 20 70 72 6f 63 65 73 73 69 6e 67 2e 20  lex processing. 
11d0: 42 79 20 70 75 74 74 69 6e 67 20 72 65 73 75 6c  By putting resul
11e0: 74 73 20 6f 66 20 72 65 6c 61 74 69 76 65 6c 79  ts of relatively
11f0: 0a 73 6c 6f 77 20 6f 70 65 72 61 74 69 6f 6e 73  .slow operations
1200: 20 69 6e 74 6f 20 76 61 72 69 61 62 6c 65 73 20   into variables 
1210: 74 68 65 20 70 72 6f 63 65 73 73 69 6e 67 20 6f  the processing o
1220: 66 20 79 6f 75 72 20 63 6f 6e 66 69 67 73 20 63  f your configs c
1230: 61 6e 20 62 65 0a 6b 65 70 74 20 66 61 73 74 2e  an be.kept fast.
1240: 0a 0a 41 6c 74 65 72 6e 61 74 69 76 65 20 4d 65  ..Alternative Me
1250: 74 68 6f 64 20 66 6f 72 20 52 75 6e 6e 69 6e 67  thod for Running
1260: 20 79 6f 75 72 20 4a 6f 62 20 53 63 72 69 70 74   your Job Script
1270: 0a 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  .^^^^^^^^^^^^^^^
1280: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e  ^^^^^^^^^^^^^^^^
1290: 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 5e 0a  ^^^^^^^^^^^^^^^.
12a0: 0a 2e 44 69 72 65 63 74 6c 79 20 72 75 6e 6e 69  ..Directly runni
12b0: 6e 67 20 6a 6f 62 20 69 6e 20 74 65 73 74 63 6f  ng job in testco
12c0: 6e 66 69 67 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  nfig.-----------
12d0: 2d 2d 2d 2d 2d 2d 2d 2d 0a 5b 73 65 74 75 70 5d  --------.[setup]
12e0: 0a 72 75 6e 73 63 72 69 70 74 20 6d 61 69 6e 2e  .runscript main.
12f0: 63 73 68 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  csh.------------
1300: 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 68 65 20 72 75 6e  -------..The run
1310: 73 63 72 69 70 74 20 6d 65 74 68 6f 64 20 69 73  script method is
1320: 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 61 20 62   essentially a b
1330: 72 75 74 65 20 66 6f 72 63 65 20 77 61 79 20 74  rute force way t
1340: 6f 20 72 75 6e 20 73 63 72 69 70 74 73 20 77 68  o run scripts wh
1350: 65 72 65 20 74 68 65 0a 75 73 65 72 20 69 73 20  ere the.user is 
1360: 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20  responsible for 
1370: 73 65 74 74 69 6e 67 20 53 54 41 54 45 20 61 6e  setting STATE an
1380: 64 20 53 54 41 54 55 53 20 61 6e 64 20 6d 61 6e  d STATUS and man
1390: 61 67 69 6e 67 20 74 68 65 20 64 65 74 61 69 6c  aging the detail
13a0: 73 20 6f 66 20 72 75 6e 6e 69 6e 67 20 61 20 74  s of running a t
13b0: 65 73 74 2e 20 0a 0a 44 65 62 75 67 67 69 6e 67  est. ..Debugging
13c0: 20 53 65 72 76 65 72 20 50 72 6f 62 6c 65 6d 73   Server Problems
13d0: 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e  .~~~~~~~~~~~~~~~
13e0: 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 53 6f 6d 65  ~~~~~~~~~~..Some
13f0: 20 68 61 6e 64 79 20 55 6e 69 78 20 63 6f 6d 6d   handy Unix comm
1400: 61 6e 64 73 20 74 6f 20 74 72 61 63 6b 20 64 6f  ands to track do
1410: 77 6e 20 69 73 73 75 65 73 20 77 69 74 68 20 73  wn issues with s
1420: 65 72 76 65 72 73 20 6e 6f 74 0a 63 6f 6d 6d 75  ervers not.commu
1430: 6e 69 63 61 74 69 6e 67 20 77 69 74 68 20 79 6f  nicating with yo
1440: 75 72 20 74 65 73 74 20 6d 61 6e 61 67 65 72 20  ur test manager 
1450: 70 72 6f 63 65 73 73 65 73 2e 20 50 6c 65 61 73  processes. Pleas
1460: 65 20 70 75 74 20 69 6e 20 74 69 63 6b 65 74 73  e put in tickets
1470: 0a 61 74 20 68 74 74 70 73 3a 2f 2f 77 77 77 2e  .at https://www.
1480: 6b 69 61 74 6f 61 2e 63 6f 6d 2f 66 6f 73 73 69  kiatoa.com/fossi
1490: 6c 73 2f 6d 65 67 61 74 65 73 74 20 69 66 20 79  ls/megatest if y
14a0: 6f 75 20 68 61 76 65 20 70 72 6f 62 6c 65 6d 73  ou have problems
14b0: 20 77 69 74 68 0a 73 65 72 76 65 72 73 20 67 65   with.servers ge
14c0: 74 74 69 6e 67 20 73 74 75 63 6b 2e 0a 0a 2d 2d  tting stuck...--
14d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 73  --------------.s
14e0: 75 64 6f 20 6c 73 6f 66 20 2d 69 0a 73 75 64 6f  udo lsof -i.sudo
14f0: 20 6e 65 74 73 74 61 74 20 2d 6c 70 74 75 0a 73   netstat -lptu.s
1500: 75 64 6f 20 6e 65 74 73 74 61 74 20 2d 74 75 6c  udo netstat -tul
1510: 70 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  pn.-------------
1520: 2d 2d 2d 0a                                      ---.