virt-manager/HACKING
Cole Robinson 4f59c24b40 tests: Add test_initrd_inject command
This is a standalone test like test_urls, and requires interraction. It
pulls down a bunch of kernels from public URL trees, inject known
kickstarts that induce quick failure. User inspects the output to
ensure initrd inject is working as expected.
2013-09-28 16:50:08 -04:00

62 lines
2.1 KiB
Plaintext

HACKING
=======
We use glade-3 for building virt-manager's UI. It is recommended you have
a fairly recent version of glade-3: if a small UI change seems to rewrite the
entire glade file, you likely have a too old (or too new :) glade version.
The following commands will be useful for anyone writing patches:
python setup.py test : Run local unit test suite
python setup.py pylint : Run a pylint script against the codebase
Any patches shouldn't change the output of 'test' or 'pylint'. The
'pylint' requires pylint and python-pep8 to be installed.
Our pylint script uses a blacklist rather than a whitelist approach,
so it could throw some false positives or useless messages. If you think
your patch exposes one of these, bring it up on the mailing list.
If 'python-coverage' is installed, you can run 'coverage -r' after 'test'
to see a code coverage report.
'test*' have a --debug option if you are hitting problems.
One useful way to manually test virt-manager's UI is using libvirt's
unit test driver. From the source directory, Launch virt-manager like:
virt-manager --connect test://$PWD/tests/testdriver.xml
This testdriver has many fake XML definitions that can be used to see
each bit of virt-manager's UI. It also enables testing the various wizards
without having to alter your host virt config.
Also, there's a few standalone specialty tests:
python setup.py test_urls : Test fetching media from distro URLs
python setup.py test_initrd_inject: Test --initrd-inject
Submitting patches
==================
Patches should be developed against a git checkout and _not_ a source
release. The git repo is at
git://git.fedorahosted.org/git/virt-manager.git
For an web view, see:
https://git.fedorahosted.org/cgit/virt-manager.git/
Patches should be sent to the mailing list (see README for details). Using
git format-patch/send-email is preferred, but an attachment with
format-patch output is fine too.
Translations
============
For translations, please sign up for transifex.com and contribute to the
virt-manager project.