• Automating testing for the netinst and live images

    From Roland Clobus@21:1/5 to All on Wed Jul 26 11:20:02 2023
    To: phil@hands.com (Philip Hands)

    This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------xp8LoCkPdsjwMFChkwrPDimz
    Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64

    SGVsbG8gRGViaWFuLWNkIFRlYW0gYW5kIFBoaWwsDQoNCk5vdyB0aGF0IHRoZSBidXN5IHBl cmlvZCBmb3IgcmVsZWFzaW5nIERlYmlhbiAxMi4xIGlzIG92ZXIgYW5kIHNvbWUgb2YgDQp0 aGUgbGl2ZSBpbWFnZXMgaGF2ZSBiZWVuIHZlcmlmaWVkIGJ5IG9wZW5RQSAodmlhIG1lKSwg d291bGQgaXQgbWFrZSANCnNlbnNlIHRvIHRoaW5rIGFib3V0IGF1dG9tYXRpbmcgdGhlIHRl c3RzIGZvciB0aGUgb2ZmaWNpYWxseSByZWxlYXNlZCANCkRlYmlhbiBpbWFnZXMsIGFuZCB0 aGUgd2Vla2x5IGJ1aWxkcyBhcyB3ZWxsPw0KDQpNeSB0aG91Z2h0cy9yYW1ibGluZ3M6DQoq IEFzIHNvb24gYXMgYW4gaW1hZ2UgaGFzIGJlZW4gZ2VuZXJhdGVkLCBhbmQgaXQgaGFzIGJl ZW4gbWFkZSANCmFjY2Vzc2libGUgdmlhIGFuIFVSTCwgb3BlblFBIHdpbGwgYmUgaW52b2tl ZCBhbmQgc3RhcnRzIHRvIGRvd25sb2FkIGFuZCANCnRlc3QgdGhlIGltYWdlIChpLmUuIHRo ZSBnZW5lcmF0b3Igd2lsbCB0cmlnZ2VyIG9wZW5RQSBpbnN0ZWFkIG9mIG9wZW5RQSANCnBv bGxpbmcpDQoqKiBQaGlsIHdpbGwgYmUgYWJsZSB0byBnZW5lcmF0ZSBBUEkga2V5cyBmb3Ig b3BlblFBDQoqKiBJJ3ZlIGFscmVhZHkgaW1wbGVtZW50ZWQgYSBzaW1pbGFyIHNldHVwIG9u IEplbmtpbnMgWzFdIGZvciB0aGUgbGl2ZSANCmltYWdlcyBbNl0NCioqIFBoaWwgaGFzIGFs cmVhZHkgaW1wbGVtZW50ZWQgYSBzaW1pbGFyIHNldHVwIGZvciB0aGUgbmV0aW5zdCBpbWFn ZXMsIA0KdXNpbmcgcG9sbGluZyBbMl0NCiogQnkgdGVzdGluZyBvbiB2aXJ0dWFsaXNlZCBo YXJkd2FyZSwgYXQgbGVhc3QgbWFueSBvZiB0aGUgbWFudWFsLCANCnRlZGlvdXNseSByZXBl YXRpbmcgdGVzdHMgY2FuIGJlIHZlcmlmaWVkIHRvIHdvcmsgY29ycmVjdGx5LCB3aGljaCBj b3VsZCANCm1ha2UgdGhlIHRlc3RzIG9uIHJlYWwgaGFyZHdhcmUgZmFzdGVyLCBiZWNhdXNl IGxlc3MgbmVlZHMgdG8gYmUgdGVzdGVkDQoqIEF1dG9tYXRlZCB0ZXN0cyB3b3VsZCBhdXRv bWF0aWNhbGx5IHNlZSBlLmcuIGtlcm5lbCBtaXNtYXRjaGVzIGluIHRoZSANCmluc3RhbGxl ciBbM10NCioqIEhvd2V2ZXIsIGZvciB0aGUgbGl2ZSBpbWFnZXMgKGJhc2VkIG9uIHRlc3Rp bmcgYW5kIHVuc3RhYmxlKSBJJ3ZlIA0KaW1wbGVtZW50ZWQgYW4gYXV0b21hdGljIGtlcm5l bCBzZWxlY3Rpb24sIHdoaWNoIHNhdmVzIGFkZGl0aW9uYWwgDQptYWludGVuYW5jZSBbNF0N CiogVGhlIGF1dG9tYXRlZCB0ZXN0cyB3aWxsIHNob3cgaXNzdWVzIGVhcmxpZXIsIGJ1dCB0 aGF0IHdvdWxkIHJlcXVpcmUgDQpyZWd1bGFyIG1vbml0b3JpbmcvZGFzaGJvYXJkaW5nDQoq KiBJJ3ZlIHRyaWVkIHRvIHRhZ3MgdGhlIGlzc3VlcyB0aGF0IEkndmUgcmVwb3J0ZWQgWzVd DQoqIEZvciB0aGUgbWVkaXVtIHRvIGxvbmcgdGVybSwgd291bGQgaXQgbWFrZSBzZW5zZSB0 byBzaGlmdCB0aGVzZSB0ZXN0IA0KZnJvbSBkZWJpYW4ubmV0IG1hY2hpbmVzIHRvIGRlYmlh bi5vcmcgbWFjaGluZXM/DQoqKiBUaGUgd29ya2xvYWQgb24gb3N1b3NsMy1hbWQ2NC5kLm4g aXMgYWxyZWFkeSByYXRoZXIgaGlnaA0KDQpUaGF0J3MgYWxyZWFkeSBhIGxvdCBmb3IgYSBz aW5nbGUgbWFpbCwNCndpdGgga2luZCByZWdhcmRzLA0KUm9sYW5kIENsb2J1cw0KDQpbMV0g aHR0cHM6Ly9qZW5raW5zLmRlYmlhbi5uZXQvdmlldy9saXZlLw0KWzJdIGh0dHBzOi8vb3Bl bnFhLmRlYmlhbi5uZXQvZ3JvdXBfb3ZlcnZpZXcvMTANClszXSANCmh0dHBzOi8vb3BlbnFh LmRlYmlhbi5uZXQvdGVzdHMvb3ZlcnZpZXc/ZGlzdHJpPWRlYmlhbiZ2ZXJzaW9uPXRlc3Rp bmcmYnVpbGQ9MjAyMzA3MjRfMTExOS10ZXN0aW5nLWFtZDY0Jmdyb3VwaWQ9MTANCls0XSAN Cmh0dHBzOi8vc2Fsc2EuZGViaWFuLm9yZy9saXZlLXRlYW0vbGl2ZS1idWlsZC8tL2Jsb2Iv bWFzdGVyL3NjcmlwdHMvYnVpbGQvaW5zdGFsbGVyX2RlYmlhbi1pbnN0YWxsZXIjTDMwOT0N Cls1XSANCmh0dHBzOi8vdWRkLmRlYmlhbi5vcmcvY2dpLWJpbi9idHMtdXNlcnRhZ3MuY2dp P3VzZXI9ZGViaWFuLXFhJTQwbGlzdHMuZGViaWFuLm9yZyZ0YWc9b3BlbnFhJmZvcm1hdD1o dG1sI3Jlc3VsdHMNCls2XSBodHRwczovL29wZW5xYS5kZWJpYW4ubmV0L2dyb3VwX292ZXJ2 aWV3LzE0DQo=

    --------------xp8LoCkPdsjwMFChkwrPDimz--

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCgAdFiEEUFVLM5Bdj7GSJEb+YsV8aqYUlb0FAmTA5CIACgkQYsV8aqYU lb09QxAAlEtMm3RvsVvsMGZ85VMhORLLkKI4fxwGv+xKCZMfB+CO5oP4FYR0rjfV ytOoNbBAj8Ynd+HEA5+Vo45KA01TCNWk7Xxa4TEXLD2ssRlIWjPpqVY/IMUb6M8E FCqdvc8pt/+jugTRfZ5YxvBK5Y0VlBuJhkDX9Bi8ARh82ZkVxBRk5CN0YLQJdp3p eU8mb6SNACRnzrgatgiWncbHOjLNXuzN67XibV8Xgl95E75gdFNdRUmIwRUf/94j 0TaDW4Rq6blsQpmHrcxsGcbVBYCW/VW+6dh+CIR1RU+8yVoKsEZKo6zw9yJsl5Kt fpI6CiK+nmVRHh4sbtgTgxbYjGCLauswgM7FC7bJhujwHzVNW5fpGNTfQ1+MV2vR gJIvNerLFgYTkRxM5VYtzDDrM/nAJnofjpKzltNOvwa1kniB9wUlJ3ZzY+tFFBDd WRryYNGSmfgxCkHsCL+fKHiyXT2P2lKvXaigrElqwF4aDkDxePTNaCSenuKYFv7l ZAiAdjNBsZFaWV4wERqAY+fubDfblm3mvXF5iJRHdQMQMizFh5ie7GAVvLq5TYdQ rrUvC2LlCy+liZqpWQHXcFaB9rcen+uzsgkC+98u7IxA5wg99Brw1Z/xc9tg7Tr/ ji6KoHZj1S3SSW+SGr79luzNg0hA189TrB6Bpz9TEp1LQLxYwXg=
    =Qf59
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Philip Hands@21:1/5 to Roland Clobus on Thu Jul 27 08:00:02 2023
    Roland Clobus <rclobus@rclobus.nl> writes:

    Hello Debian-cd Team and Phil,

    Now that the busy period for releasing Debian 12.1 is over and some of
    the live images have been verified by openQA (via me), would it make
    sense to think about automating the tests for the officially released
    Debian images, and the weekly builds as well?

    My thoughts/ramblings:
    * As soon as an image has been generated, and it has been made
    accessible via an URL, openQA will be invoked and starts to download and test the image (i.e. the generator will trigger openQA instead of openQA polling)
    ** Phil will be able to generate API keys for openQA

    In fact I think anyone can do that (having logged in, using salsa) but
    of course I'm very happy to do it.

    ** I've already implemented a similar setup on Jenkins [1] for the live images [6]
    ** Phil has already implemented a similar setup for the netinst images, using polling [2]

    I beleive this implements openqa-cli triggering as part of image creation:

    https://salsa.debian.org/images-team/setup/-/merge_requests/4

    but it needs testing (hence the WIP).

    * By testing on virtualised hardware, at least many of the manual,
    tediously repeating tests can be verified to work correctly, which could make the tests on real hardware faster, because less needs to be tested
    * Automated tests would automatically see e.g. kernel mismatches in the installer [3]
    ** However, for the live images (based on testing and unstable) I've implemented an automatic kernel selection, which saves additional maintenance [4]
    * The automated tests will show issues earlier, but that would require regular monitoring/dashboarding
    ** I've tried to tags the issues that I've reported [5]
    * For the medium to long term, would it make sense to shift these test
    from debian.net machines to debian.org machines?
    ** The workload on osuosl3-amd64.d.n is already rather high

    It would be good to have more workers.

    I'm assuming that one way of doing that would be to spin up cloud
    instances, but my tentative attempts to work out how that's done have
    not yet bourn fruit (one issue is that the worker needs to be able to
    run kvm, which given that one's cloud instance is already a VM needs
    nested VMs, which seems problematic)

    I recently had a machine at Equinix for testing arm64 workers, which
    worked really well, but which I relised after starting it up was going
    to be rather expensive (their arm64 offer being Ampere Altra Q80-30's
    which have 80 cores, and cost $2.50 an hour).

    We've since tried a VM on altra.d.n, which allowed me to learn that its
    CPU (Neoverse-N1) is not quite new enough to do nested VMs (it looks
    like a Neoverse-N2 based thing ought to work, judging from comments in
    the related kernel patches)

    Running the workers on altra itself seems like it ought to be an option,
    but my kids are currently off school keeping me busy, so I've not been
    pushing that yet.

    So, if anyone has ideas for getting nested-VM-capable cloud stuff
    working (or just more amd64 hosting) or getting arm64 resources that
    would do the trick (or e.g. riscv machines I could play on), I'm very interested, becuase the current workers are only just keeping up, so
    adding more jobs at present is going to be frustrating.

    Cheers, Phil.
    --
    Philip Hands -- https://hands.com/~phil

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCgAdFiEE3/FBWs4yJ/zyBwfW0EujoAEl1cAFAmTCBCIACgkQ0EujoAEl 1cBWARAAgHWsJX2Asfgd106R3vtjEnEbhsNymbGqNHvSQ44cYkH19eviH8E9Jtcd 0vrif6WTZxawEXTuEQh/yGy3pQibtoU7gNXevJcOIhiVCloCKN7DKm3o5TV95zz+ bFC1YaS0JdOFPh2pqyNsAH6hsGKT9F7W50+LYTHCVJp2/OVpDxjjELeYYhwDD2dl QmYABmPBcAQDff51MZ3RURPXkS0H6sNkGxwpOl1jFwD06viG+maESsktiI9udWBv 9/xbZcfRsfiH2PNndBZo0d5Vkga+et/B/Fw6nx70HleR3XU2jFIUChu3YVUQ2czs S+HTelEmzW0S28WhDCsDH7M2Puqh+PNzjPCF/Zmp61Wc5ccnxmYkB9YQkZBn9jGP ghYJgpojGO+PdNEba0ss6w6r0k1vA/mViyNmnmBS5CXLKhgEC8I95c6aBieNWPjw fPnUr480CU2NGvjinpnW2GO65aWiMCkBqmvdVhvv7MVHXc1jw70KXqZBGfVM+HFU 8+Tw/IaZYTgu20MmWG5d05OIkTiUj8/aUOP2x+jn2yK5RZT6rqXsYUWyv/4iWjVI Tbh3BDZpbW2O/bLnwnWvgP3muicy9BlzvRjGmVDK/B6mfSg3iZ4TyA5WlC3fRxEz 4ByPVXskuzWuTYe+cqigIChq2ccgPZjYVpTP5Fc5mny/6izmt/4=isyW
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gatewa