| About this: |
| ----------- |
| |
| This module contains extensions to `atest` that proved to be useful |
| when doing virtualization testing of multiple KVM versions, on multiple |
| operating system versions (Fedora, RHEL5, RHEL6). |
| |
| It uses a simple templating mechanism, to inject extra configuration into |
| the server control file, that will then end up on the cartesian config |
| file parsing. These options can be set directly with the command line |
| options `--extra-cartesian-config` or indirectly with other command line |
| options such as `--koji-tag` and `--koji-pkg`. |
| |
| Some options, such as the koji ones, will trigger local validation, that |
| is, errors such as specifying invalid packages will be caught right away, |
| and the job won't be submitted. This is to prevent a typo from triggering |
| a job that will fail and waste developer time. |
| |
| |
| Instalation: |
| ------------ |
| |
| 1) copy (or link) the site_job.py file to <autotest_root>/cli/, |
| usually /usr/local/autotest/cli. |
| |
| 2) validate it is working by running: |
| |
| # <autotest_root>/cli/atest job create --help |
| |
| The output should include the added options: |
| |
| ... |
| -T, --template Control file is actually a template |
| -x EXTRA_CARTESIAN_CONFIG, --extra-cartesian-config=EXTRA_CARTESIAN_CONFIG |
| Add extra configuration to the cartesian config file |
| --timestamp Add a timestamp to the name of the job |
| --koji-arch=KOJI_ARCH |
| Default architecture for packages that will be fetched |
| from koji build. This will be combined with |
| "noarch".This option is used to help to validate |
| packages from the job submitting machine. |
| --koji-tag=KOJI_TAG Sets a default koji tag for koji packages specified |
| with --koji-pkg |
| --koji-pkg=KOJI_PKG Packages to add to host installation based on koji |
| build. This options may be specified multiple times. |
| |
| |
| Usage Examples: |
| --------------- |
| |
| These examples actually depend on local cartersian configuration, that is, |
| they might not work out of the box in your autotest installation. Please |
| use them only as a reference and adapt the examples to your scenario: |
| |
| 1) To run a test of the upstream qemu git repo: |
| |
| # <autotest_root>/cli/atest job create -s -m "yourmail@yourdomain.org" \ |
| -f "<autotest_root>/contrib/virt/control.template" -T --timestamp \ |
| -x 'only qemu-git..sanity' "Upstream qemu.git sanity" |
| |
| 2) To run a test with specific packages built on koji: |
| |
| # <autotest_root>/cli/atest job create -s -m "yourmail@yourdomain.org" \ |
| -f "<autotest_root>/contrib/virt/control.template" -T --timestamp \ |
| --koji-tag=f15 --koji-pkg=':qemu-kvm:qemu-kvm,qemu-img,qemu-kvm-tools' \ |
| --koji-pkg='seabios' --koji-pkg='vgabios' --koji-pkg=':gpxe:gpxe-roms-qemu' \ |
| --koji-pkg=':spice-server:spice-server' \ |
| -x 'only f15-koji..sanity' "Fedora 15 Koji Sanity" |
| |
| |
| Contributed by (who to bug): |
| ---------------------------- |
| Cleber Rosa (crosa@redhat.com) |
| Lucas Meneghel Rodrigues (lmr@redhat.com) |