| Quick guide to auto-qa dxm 04/10/2000 |
| ______________________ ______________ |
| |
| |
| - pick/create a user to run auto-qa and check they |
| can use ptools to check out of the tree |
| - add your host to xfstests/common/config and check this file in |
| OR create a local.config file in your xfstests directory |
| - make a directory "$HOME/qa" |
| - make a kernel workarea "$HOME/qa/2.4.x-xfs" for 2.4.x-xfs |
| and a commands workarea "$HOME/qa/xfs-cmds" for xfs-cmds |
| (easiest to copy them from elsewhere) |
| - copy an appropriate .config file to |
| $HOME/qa/$HOSTNAME.config |
| - You'll need a hacked version of 'su' in $HOME/qa that |
| lets your user su to root/root without a password |
| (if you want to run from cron, it mustn't require |
| /dev/tty). Warning - this is a massive security |
| hole. |
| - chown root.root $HOME/qa/su |
| - chmod 6755 $HOME/qa/su |
| - add the soon to be kernel to /etc/lilo.conf |
| |
| image=/boot/vmlinuz-xfs-qa |
| label=linux-xfs-qa |
| append = "console=ttyS0,38400n8" |
| |
| - $HOME/qa/auto-qa init |
| |
| At this point, the script should update the workarea, clean it, |
| rebuild it, install it and reboot. |
| |
| Then run |
| |
| - $HOME/qa/auto-qa restarted |
| |
| And the tests should happen... and all pass, of course. |
| |
| To get it going automagically: |
| |
| - add some lines to the appropriate user's crontab: |
| |
| 0 4 * * * $HOME/qa/auto-qa cron-init |
| 30 4 * * * $HOME/qa/auto-qa cron-restarted |
| |
| Notes: |
| - if MODULAR=1 in auto-qa the XFS filesystem is expected to |
| be a module; if MODULAR=0 it should be built into |
| the kernel. |
| - the test device is cleaned at the start of the QA run |
| (to stop nightly QA being stuffed up if someone |
| leaves the device inconsistant etc) |
| - I'm using a hacked su because PCP sudo won't set the |
| gid properly, and normal linux su won't run |
| without a tty even if PAM is switched off. |
| - The QA is restarted after reboot by a second cron entry |
| to avoid the test being able to get itself into |
| some stupid loop and so that it's always started |
| by the appropriate user. You might have to make |
| the second cron run later if your build takes ages. |
| - Point the email addresses somewhere appropriate |
| - When run in "cron-init" or "init" states, the script |
| will p_tupdate itself and restart. If you start |
| with an empty source tree, you'll need to check |
| out the xfstests/tools/auto-qa script before it'll |
| work (duh). |
| |
| good luck. |