README
1 About this:
2 -----------
3
4 This module contains extensions to `atest` that proved to be useful
5 when doing virtualization testing of multiple KVM versions, on multiple
6 operating system versions (Fedora, RHEL5, RHEL6).
7
8 It uses a simple templating mechanism, to inject extra configuration into
9 the server control file, that will then end up on the cartesian config
10 file parsing. These options can be set directly with the command line
11 options `--extra-cartesian-config` or indirectly with other command line
12 options such as `--koji-tag` and `--koji-pkg`.
13
14 Some options, such as the koji ones, will trigger local validation, that
15 is, errors such as specifying invalid packages will be caught right away,
16 and the job won't be submitted. This is to prevent a typo from triggering
17 a job that will fail and waste developer time.
18
19
20 Instalation:
21 ------------
22
23 1) copy (or link) the site_job.py file to <autotest_root>/cli/,
24 usually /usr/local/autotest/cli.
25
26 2) validate it is working by running:
27
28 # <autotest_root>/cli/atest job create --help
29
30 The output should include the added options:
31
32 ...
33 -T, --template Control file is actually a template
34 -x EXTRA_CARTESIAN_CONFIG, --extra-cartesian-config=EXTRA_CARTESIAN_CONFIG
35 Add extra configuration to the cartesian config file
36 --timestamp Add a timestamp to the name of the job
37 --koji-arch=KOJI_ARCH
38 Default architecture for packages that will be fetched
39 from koji build. This will be combined with
40 "noarch".This option is used to help to validate
41 packages from the job submitting machine.
42 --koji-tag=KOJI_TAG Sets a default koji tag for koji packages specified
43 with --koji-pkg
44 --koji-pkg=KOJI_PKG Packages to add to host installation based on koji
45 build. This options may be specified multiple times.
46
47
48 Usage Examples:
49 ---------------
50
51 These examples actually depend on local cartersian configuration, that is,
52 they might not work out of the box in your autotest installation. Please
53 use them only as a reference and adapt the examples to your scenario:
54
55 1) To run a test of the upstream qemu git repo:
56
57 # <autotest_root>/cli/atest job create -s -m "yourmail (a] yourdomain.org" \
58 -f "<autotest_root>/contrib/virt/control.template" -T --timestamp \
59 -x 'only qemu-git..sanity' "Upstream qemu.git sanity"
60
61 2) To run a test with specific packages built on koji:
62
63 # <autotest_root>/cli/atest job create -s -m "yourmail (a] yourdomain.org" \
64 -f "<autotest_root>/contrib/virt/control.template" -T --timestamp \
65 --koji-tag=f15 --koji-pkg=':qemu-kvm:qemu-kvm,qemu-img,qemu-kvm-tools' \
66 --koji-pkg='seabios' --koji-pkg='vgabios' --koji-pkg=':gpxe:gpxe-roms-qemu' \
67 --koji-pkg=':spice-server:spice-server' \
68 -x 'only f15-koji..sanity' "Fedora 15 Koji Sanity"
69
70
71 Contributed by (who to bug):
72 ----------------------------
73 Cleber Rosa (crosa (a] redhat.com)
74 Lucas Meneghel Rodrigues (lmr (a] redhat.com)
75