QA/Automated Installer Testing

From FedoraProject

< QA
Jump to: navigation, search

These are the current plans for automated testing of the installer. The specific goal is this: perform daily, basic, fully-automatic installations of Rawhide, and report the results to a public web page.

Hardware

Software

Overall design

  1. Daily rawhide compose completes. We get signal.
  2. Rawhide gets synced up.
  3. Each client machine is instructed to run koan to install the new rawhide.
    • This might happen via Package-x-generic-16.pngfunc or some other mechanism.
  4. A %pre script in the kickstart runs the logging client
    • Watch the following log files:
      • /tmp: anaconda.log, syslog, ks-script.log, anacdump.txt, modprobe.conf
      • /mnt/sysimage/root: install.log, upgrade.log
    • This is all handled by the 'anamon' code in jlaska's cobbler git tree.
  5. If something fails during install
    • anacdump.txt appears, or no log data for 30min
    1. Use cobbler to change the PXE target to reinstall stable OS:
      • cobbler system edit --name=NAME --netboot-enabled=1
    2. Use power control to restart the machine
    3. Close log task with status FAIL
  6. Otherwise: %post script in kickstart creates a service to run on firstboot
    • Send system startup logs (to be checked for errors)
    • Send signal to logging server to close task with status OK
  7. Logging server checks over collected logs for errors
    • avc errors in /var/log/messages, FAILED in /var/log/boot.log, etc.
    • Change status to WARN if found.