Hi,
as discussed, we want to speed up the test suite.
Here are some VERY round numbers of the current test suite:
VERIFY: 13:00
make-rpms: 2:30
vm-create: 0:30
vm-install: 1:30
check-verify: 9:00
vm boot: 0:10 x 27 = 4:30
If we don't want to touch the tests themselves for tnow, we can do this
to speed this up:
- Make the vms boot faster.
The time to boot includes waiting for the network to be up, which
needs a DHCP response, wich can be quite slow apparently.
- Make mock faster.
Adding --no-clean to mock let's make-rpms run in about 0:30. I will
do this and add a "--clean" option to make-rpms.
- Make vm-install faster.
The idea is to start from a 'prepared' tarball that is already
up-to-date with the repos and has all the dependencies installed. The
'prepared' tarball would be refreshed once per day.
The 'prepared' tarball will be created from the current 'base' tarball
simply by running the base tarball through vm-create && vm-install
$DEPS && virt-tar-out. $DEPS are some reasonable current dependencies
of Cockpit.
This might bring vm-install down to about 10 seconds.
I'll set this up and keep a freshly prepared tarball online somewhere.
- Make vm-create faster.
We can get rid of this step altogether by using a disk image directly
instead of a tarball.
With this, we still have the magic base tarball that I have created by
hand. I tried to automate this with oz-install and virt-install but I
failed. I didn't try virt-builder since it is not in Fedora 19.