Previous Entry Add to Memories Share Next Entry
Got pykickstart?
jlaska face
jlaska
Chris Lumens and I will be hosting a pykickstart unit test session this Wednesday, January 28, 2009 in #kickstart on irc.freenode.net from 17:00-21:00 UTC (noon - 5pm EST).


What is pykickstart?

Pykickstart is the kickstart processing library used by the anaconda installer, system-config-kickstart, livecd-tools and snake. Pykickstart is able to parse and generate kickstart files for all products from Red Hat Enterprise Linux 3 to Rawhide.


Why test pykickstart?

First, changes to pykickstart can potentially disrupt many other software components. Additionally, automated testing of the anaconda installer has a lot of moving parts. A fully automated system needs a scheduling mechanism, a breadth of hardware to install on, a reporting mechanism (live progress and results), hardware to support remote console+kvm, and hardware to support power cycling failed/timeout tests ... oh and more hardware :).

While some of the software support to enable some of the above is coming online with the beaker and nitrate projects. A short-term win is to test the individual pieces that are used to build an installable product (yum, rpm, pyparted, pykickstart, NetworkManager).


Why unit tests?

Unit testing is one of the fastest ways to provide test feedback to a developer. Typically, unit tests do not require additional infrastructure (test case management, test harness, test results storage etc...). As soon as the developer fixes a bug or adds a new feature, [s]he can get immediate test feedback. The don't have to commit their changes, submit a build, wait until their changes are pulled into rawhide.

The barrier to entry is very low with pykickstart. If you've ever seen or written a kickstart file before ... you should be familiar with the tests.


How can I help?

Come join IRC channel #kickstart during the event.

  • Share your favorite kickstart scenario's

  • Help identify test areas

  • Familiarize yourself with python

  • Contribute unit tests

  • Get your name up in lights (okay, the git logs but that's close).



See you there!