Continuous integration/Qemu

Agent
See Nova Resource:Integration/Setup for how to set up a Qemu worker node for Jenkins.

Launch for debugging
Launch a snapshot manually for debugging. Never launch or modify a snapshot directly. Always copy first. agent$ cp /path/to/thing-to-change.img ~/maintenance.img agent$ qemu-system-x86_64 -m 4096 -nographic maintenance.img Wait for the bootloader to pass, then once " " appears, enter " ".

A shell will appear shortly. Make your changes, then run  to log out from the VM.

Once back in the bootscreen, use  to exit from Qemu and return to the agent.

The maintenance.img file is now an updated snaphot, ready for publishing.

Publish new snapshot

 * 1) Use sudo to move the img file from your home directory to  . For example, , or  , where the sequence letter is used in case of multiple updates on the same date.
 * 2) Set , so that it is available as read-only for the Jenkins user.

SSH Keys
To create a new keypair: agent$ ssh-keygen -t rsa -b 4096


 * Don't use any actual e-mail address (leave the default to your shell name and agent hostname).
 * Don't set a pass phrase.
 * Name it like "sshkey_qemu_ _v ", for example.
 * Use sudo to move  and   to.
 * Set, so that it is available as read-only for the Jenkins user.

qemu-debian10buster
Current version:

Provisioning:


 * Snapshot of Debian 10 Buster with.
 * Grub configured to use a serial console.
 * edit, and set   (The nano editor is pre-installed).
 * mkdir
 * copy  to   (E.g. create the file with nano and copy the pub file contents from another tab)
 * run
 * mkdir
 * copy  to   (E.g. create the file with nano and copy the pub file contents from another tab)
 * run