On Mon, Sep 26, 2022 at 6:15 PM Milosz Wasilewski milosz.wasilewski@foundries.io wrote:
On Mon, Sep 26, 2022 at 5:33 PM Nagendra Singamsetti nag.singam91@gmail.com wrote:
Hi Milosz, I wasn't able to download an overlay over HTTP(wget or curl) due to my board(DUT) can't support the network drivers(not developed as of now).
I am curious to now, How to modify my rootfs in a LAVA job to include overlay. Can you please share with me the sample job/supported device-type jinja2. (or) Is any recipe available in yocto to make this possible as i am using yocto as a build tool to generate images and OS --> Linux 5.4.25-yocto-standard
Overlay is applied in deployment. Here is a (almost) full list: https://master.lavasoftware.org/static/docs/v2/actions-deploy.html
Not all deployment methods support rootfs modifications. I think (I didn't try so I'm not 100% sure) you could download your images using 'downloads' deployment. Add overlay using docker postprocessing. After this flash the images to your device as usual. How exactly would this be done, I don't know. Example deployment with postprocessing would look like this:
- deploy: to: downloads # this is correct. There are 2 similar deployments:
download; downloads images: image: url: your_image.wic.gz compression: gz postprocess: docker: image: docker_image_name # this can come from hub.docker.io or some other registry steps: - shell script step1 - shell script step2 ...
- deploy: to: flasher # or some other method. I'm using flasher with my devices images: image: url: downloads://your_image.wic
As I wrote, I didn't try this so this is just speculation. How to access overlay (if it's possible?) in the postprocess remains an open question. I'll ask Antonio, maybe he has an example.
I took a quick look at the code and I don't think this is possible. There are 2 issues here: 1. postprocess steps happens before overlay is prepared 2. you could apply overlay in flasher script but there is no way to get the path from LAVA This would be possible but requires changes in LAVA. At least this is how I understand the code. LAVA would need to extract "file" from "compress-overlay" namespace and expose it to a custom script (via env variable for example).
The only other option I found is applying overlay using "download" action. This only works for: "cpio (newc format) and ext4 images".
Best Regards, Milosz
Best Regards, Milosz
Thanks,
Regards Nagendra S
On Mon, Sep 26, 2022 at 8:22 PM Milosz Wasilewski milosz.wasilewski@foundries.io wrote:
On Mon, Sep 26, 2022 at 3:20 PM Nagendra Singamsetti nag.singam91@gmail.com wrote:
Hi Team,
I had a Query which is particularly to use lava-test-shell or other binaries like lava-test-runner.
My board is booted with Linux and It has a POSIX environment but it doesn't support either ssh/nfs due to the low memory footprint available and the ethernet driver not fully functional.
To test/run my test-suite drivers How can I use lava-test-runner/ lava-test-shell ? Is it possible to test our suite using lava-test-shell/runner where DUT doesn't have the ethernet/nfs support. I am getting lava-test-shell timeout on the DUT console whereas Lava-worker had all the binaries available by lava-overlay method.
Are you able to download overlay over HTTP (with wget or curl)? This is done in boot section:
- boot: ... transfer_overlay: download_command: cd /home ; wget unpack_command: tar -C -xzf
Without transfer_overlay you would need to modify your rootfs in a LAVA job to include overlay. Depending on your OS it might be easy, hard or impossible (if the image is signed for example).
Best Regards, Milosz
Please find the attached test job definition/lava-job log files for your reference. Kindly let me know the solution.
Lava-users mailing list -- lava-users@lists.lavasoftware.org To unsubscribe send an email to lava-users-leave@lists.lavasoftware.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s