User Tools

Site Tools


civilinfrastructureplatform:testinglavav2vmsetup

This is an old revision of the document!


Deprecated page. Please check Board at desk - single dev set up and configuration.

Board-at-Desk Single-Developer Standalone VM

These instructions download a pre-provisioned and pre-configured Virtual Machine that contains Kernel CI and LAVA. Kernel CI is used to build, boot and report results whereas LAVA is used to offer a robust automated testing language, a testing engine and reporting results.

Prerequisites

This tutorial assumes that you have the following installed on the host machine:

  • git v2.7.4 or better
  • Vagrant v1.8.1 or better
  • VirtualBox v4.3 or better
  • Your username must be a member of the vboxusers group. You can add it with:
    • [user@host ~]$ sudo usermod -aG vboxusers user
  • gpg v1.4.20 or better
  • sha256sum v8.25 or better

Download the CIP B@D Virtual Machine and Run Example Tests

1. Create a clean directory to hold the files for the Virtual Machine (VM). We will use the /home/user/cip directory in these instructions, but you can replace it with whatever works for you.

Download the pre-provisioned CIP Virtual Machine

2. Download the latest version of the pre-provisioned box using the link below.

user@host:~$ wget https://s3-us-west-2.amazonaws.com/download.cip-project.org/ciptesting/b%40d/b%40dv0_9/box/cip_board_at_desk_v0.9.0.box

3. Download the latest version of the VM's sha256sum so we can compare that what we received was not modified.

user@host:~$ wget https://s3-us-west-2.amazonaws.com/download.cip-project.org/ciptesting/b%40d/b%40dv0_9/box/cip_board_at_desk_v0.9.0.box

Note: You may need to install the sha256sum program using your distro's package manager.

4. Download the VM's signature so we can verify the VM signature matches.

user@host:~$ wget https://s3-us-west-2.amazonaws.com/download.cip-project.org/ciptesting/b%40d/b%40dv0_9/box/cip_board_at_desk_v0.9.0.box.sig

5. In a terminal, change to the ~/cip directory

user@host:~$ cd ~/cip

user@host:cip$

Using SHA256sum to check signature of pre-provisioned box

6. Calculate the SHA256 sum of the Virtual Machine box file

user@host:cip$ sha256sum –check cip_board_at_desk_v0.9.0.sha256sum cip_board_at_desk_v0.9.0.box

cip_board_at_desk_v0.9.0.box: OK

We are looking for the line that says OK. This tells us that the sha256sum's are the same.

Note: If you receive a message stating: “sha256sum: cip_board_at_desk_v0.9.0.box: no properly formatted SHA256 checksum lines found.” You can ignore this message. The sha256sum is very picky about the file format of the .sh256sum file. A relatively recent change to the command generates a warning message if the format is off by a space.

7. Verify the signature of the CIP VM

user@host:cip$ gpg –verify cip_board_at_desk_v0.9.0.box.sig cip_board_at_desk_v0.9.0.box

gpg: Signature made Tue 16 May 2017 09:04:08 AM EDT using RSA key ID 73715D37

Import the box into Vagrant and launch the Virtual Machine

8. Clone the board-at-desk-single-dev GitLab Project

user@host:cip$ git clone https://gitlab.com/cip-project/board-at-desk-single-dev

Cloning into 'board-at-desk-single-dev'…

remote: Counting objects: 451, done.

remote: Compressing objects: 100% (185/185), done.

remote: Total 451 (delta 275), reused 436 (delta 262)

Receiving objects: 100% (451/451), 15.07 MiB | 14.75 MiB/s, done.

Resolving deltas: 100% (275/275), done.

Checking connectivity… done.

9. Change to the newly created board-at-desk-single-dev directory.

user@host:cip$ cd board-at-desk-single-dev

user@host:board-at-desk-single-dev$

10. Import the Virtual Machine into Vagrant and launch the VM

user@host:board-at-desk-single-dev$ ./importbox.sh ../cip_board_at_desk_v0.9.0.box cip-bad-sd0_9

=⇒ box: Box file was not detected as metadata. Adding it directly… =⇒ box: Adding box 'cip-bad-sd0_9' (v0) for provider: box: Unpacking necessary files from: file:/home/user/cip/board_at_desk-single-dev =⇒ box: Successfully added box 'cip-bad-sd0_9' (v0) for 'virtualbox'! etc… Note: One Ethernet port on the VM is Bridged, so it will ask you which one of the Ethernet Adapters on the host machine you wish to bridge. You can automate this by adding your desired Ethernet port to the Vagrantfile. Note: If you see an error message stating: The SSH command responded with a non-zero exit status. You can safely ignore this error, we will be connecting to the VM using SSH in the next step. 11. Connect to the Virtual Machine user@host:board-at-desk-single-dev$ vagrant ssh Linux jessie 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue May 16 08:21:43 2017 from 10.0.2.2 vagrant@jessie:~$ === Testing the CIP Kernel on QEMU === 12. Navigate to the LAVA Server from your host machine's browser: http:<bridged_ip>:8080/ 13. On your host machine, open a web browser and enter the following in the address box: http://<bridged_ip>:8080 14. The LAVA Home Page is displayed in your web browser. Log in to the web server as the superuser: * Click the login link in the upper right-hand corner of the Lava Server website * Enter the username: lavauser * Enter the password: mylava1234 15. Click on Scheduler and then select All Devices. 16. Click on the qemu01 Hostname 17. Click the Force Health Check button. 18. The results are displayed in the web page as the test runs. When the test is done, the status of the Job will show as Complete at the top of the page. This is what the start of the Health Check looks like: Root tmp directory created at /var/lib/lava/dispatcher/tmp/20 start: 0 validate Validating that https://images.validation.linaro.org/kvm/standard/stretch-2.img.gz exists no device environment specified validate duration: 0.70 start: 1 deployimages (max 720s) start: 1.1 download_retry (max 720s) start: 1.1.1 http_download (max 720s) Using gz decompression downloading https://images.validation.linaro.org/kvm/standard/stretch-2.img.gz as /var/lib/lava/dispatcher/tmp/20/deployimages-GRCaQT/stretch-2.img <snip> This is what the end of a successful test looks like: </snip> case: finalize definition: lava result: pass level: 4 extra: … Cleanup: removing /var/lib/lava/dispatcher/tmp/20 19. You can see an example of a successful test log file at: 'https://pastebin.com/PTP41fzE'' titled QEMU_Test_Success_15-May-2017

civilinfrastructureplatform/testinglavav2vmsetup.1494981281.txt.gz · Last modified: 2017/05/17 00:34 by sesa126914