Skip to content

Latest commit

 

History

History
70 lines (48 loc) · 2.31 KB

README-dev.rst

File metadata and controls

70 lines (48 loc) · 2.31 KB

Running the Tests

Tests are run with Tox, pytest and Coverage. On Debian, this can be done with apt-get install python3-coverage python3-pytest tox.

To run the tests, go to the root of the repository, where tox.ini is and run tox. For more verbose output, run tox -- -s.

This runs the tests with no virtualization. To test that reprotest works correctly with virtualization, you'll need to setup the virtualization servers schroot and qemu.

Some of the following instructions rely on Debian utilities. For schroot, run mk-sbuild --debootstrap-include=devscripts stable. (If you aren't on amd64, you'll have to include --arch.) For qemu, first apt-get install autopkgtest vmdebootstrap qemu, then run:

$ vmdebootstrap --verbose --serial-console --distribution=sid \
    --customize=/usr/share/autopkgtest/setup-commands/setup-testbed \
    --user=adt/adt --size=10000000000 --grub --image=adt-sid.raw
$ qemu-img convert -O qcow2 adt-sid.raw  adt-sid.img
$ rm adt-sid.raw

The last two commands reduce the size of the image but aren't strictly necessary. Move adt-sid.img to linux/ under your home directory.

To log into the schroot and qemu containers, respectively, run:

$ sudo schroot -c source:stable-amd64
$ qemu-system-x86_64 -enable-kvm -drive file=~/linux/adt-sid.img,if=virtio \
    -net user -net nic,model=virtio -m 1024

After replacing ~ with your home directory.

For the host system and the two containers, run:

$ apt-get install disorderfs
(Additionally for mk-sbuild stable, enable the backports repository.)
(Additionally for chroot, run:
$ mknod -m 666 /dev/fuse c 10 229)
$ apt-get install python3
$ apt-get install locales-all

Now, finally run the tests:

$ REPROTEST_TEST_SERVERS=null,qemu,schroot tox -- -s

Releasing

After releasing (with gbp buildpackage), please upload a signed tarball:

$ TARBALL=$(dpkg-parsechangelog -SSource)_$(dpkg-parsechangelog -SVersion).tar.xz
$ gpg --detach-sign --armor --output=../${TARBALL}.asc < ../${TARBALL}
$ scp ../${TARBALL}* alioth.debian.org:/home/groups/reproducible/htdocs/releases/reprotest