On Mon, 21 Jan 2019 at 14:00, Neil Williams neil.williams@linaro.org wrote:
On Fri, 18 Jan 2019 at 16:55, Milosz Wasilewski milosz.wasilewski@linaro.org wrote:
On Fri, 18 Jan 2019 at 16:21, Milosz Wasilewski milosz.wasilewski@linaro.org wrote:
On Fri, 18 Jan 2019 at 15:40, Denis HUMEAU denis.humeau@st.com wrote:
Here is a cleaned job version
device_type: <my_device_type>
job_name: test_dhu timeouts: job: minutes: 60 action: minutes: 60 priority: medium visibility: public
actions: - deploy: to: flasher timeout: minutes: 20 os: oe # Specify Layout file and images to be flashed images: layout: url: <layout_url> #tarball: # url: <tarball_url>
- boot: method: minimal timeout: minutes: 10 transfer_overlay: download_command: ifplugd ; sleep 1 ; cd /usr/local ; rm -f overlay*; wget unpack_command: tar -C / -xzf
To use transfer_overlay or any test action based on a POSIX shell, the overlay has to be created and that needs a deploy action in the test job. This test job has that deploy, the X15 test job later does not, as Milosz has already noted.
prompts: - <linux_prompt> auto_login: login_prompt: <auto_login> username: root - test: timeout: minutes: 60 definitions: - repository: metadata: format: Lava-Test-Shell Test Definition 1.0 name: Copy description: "Copy files" run: steps: - cp /usr/local/<my_file> /boot/<target_file> - sync from: inline name: copy-file path: copy-file - boot: method: bootloader bootloader: u-boot commands: [] prompts: ['U-Boot'] timeout: minutes: 10 - test: timeout: minutes: 20 interactive: - name: firmware prompts: ['=>'] script: - command: env print name: command1 - command: env print name: command 2 - command: env print name: command 3 - command: env print name: command 4 - command: run bootcmd name: start_kernel patterns: - message: "login: root (automatic login)" result: success
syntax is wrong here, but when fixed this should work. Please check here: https://staging.validation.linaro.org/scheduler/job/247775/definition
What I tried didn't actually work. Here is a job: https://staging.validation.linaro.org/scheduler/job/247794/definition
LAVA reports it's missing all it's helpers. That is pretty obvious as there was no 'deploy to fastboot' stage. I tried adding it but than LAVA complains that 'namespace' and 'interactive' test don't work together.
You shouldn't need a namespace for this but there's nothing particular about interactive that would block using a namespace, as long as that
it just doesn't work. I suppose it's bug in LAVA. Here is the error message I'm getting when I add 'namespace' to interactive test section: "Invalid definition: required key not provided @ data['actions'][1]['test']['monitors']"
namespace is set consistently. Namespaces are useful when there is more than one target location for the files to be downloaded by LAVA. e.g. files into an LXC and files onto the device / TFTP locations. The namespace used to create the overlay needs to be the same as the namespace used to retrieve the overlay and the namespace used to execute files in that overlay. (i.e. namespaces allow two or more different POSIX test actions to occur in one test job, some in the LXC and some on device, by keeping the list of test definition scripts separate.) If namespaces are not used, LAVA uses a reserved namespace called "common" to keep everything together.
It's not going to be straightforward to test this using the X15. It'll need to be tested on something which is closer to the original test device, i.e. one which can do something useful with a deploy stage. Possibly the x15-evm-bl device once that support arrives on staging.validation.linaro.org.
I disagree. It works on x15 to the point when posix test shell should be started. But it's not started as deployment isn't possible earlier in the job. X15 requires LXC to deploy images to emmc. This requires separate namespace for deployment (LXC) and tests (target). However you can't (currently) do namespaces when there is interactive test section involved. Again, is this expected or is it LAVA bug?
milosz
With an available deploy action to build the overlay, the original test job may work by picking up the modifications in https://staging.validation.linaro.org/scheduler/job/247794/definition
milosz
milosz
- test: timeout: minutes: 500 definitions: - from: git repository: <my_repo> revision: iso/dhu path: tests-def/hacking_session.yaml name: hacking history: False
-----Original Message----- From: Milosz Wasilewski milosz.wasilewski@linaro.org Sent: vendredi 18 janvier 2019 16:32 To: Denis HUMEAU denis.humeau@st.com Cc: lava-users@lists.lavasoftware.org Subject: Re: [Lava-users] Piece of advice to combine interactive boot and Linux testing
On Fri, 18 Jan 2019 at 15:28, Denis HUMEAU denis.humeau@st.com wrote:
Hi Milosz,
Unfortunately not, I do have a job but I can't share it for re-execution on your side. I can share the job without internal sensitive data if you wish. I'm about to try the following trick: when starting kernel from u-boot, I want to add a kernel pattern (the last message before autologin), and maybe add a little delay to be sure that I'm logged
I think this approach might work.
Could you share with all the sensitive details removed? I just need to see how you call u-boot commands inside u-boot shell. You can remove sensitive stuff with 'env print'.
milosz
Denis
-----Original Message----- From: Milosz Wasilewski milosz.wasilewski@linaro.org Sent: vendredi 18 janvier 2019 16:25 To: Denis HUMEAU denis.humeau@st.com Cc: lava-users@lists.lavasoftware.org Subject: Re: [Lava-users] Piece of advice to combine interactive boot and Linux testing
On Fri, 18 Jan 2019 at 14:57, Denis HUMEAU denis.humeau@st.com wrote:
Dear Lava users,
I’m trying to create a job that performs the following steps :
Deploy to flasher our custom tool (OK)
Boot in bootloader mode – u-boot (OK)
Test in interactive mode (OK)
From interactive mode start kernel (OK)
Launch a test from kernel (KO)
The last part fails because I don’t know where to check the kernel prompt. I cannot add a boot stage and declare an additional prompt because I don’t want to reboot, that would reset the configuration done in interactive mode.
Do you have any piece of advice or example of job showing how to proceed to manage the kernel prompt & autologin in such a job?
I think I have an idea how to do that. Do you have your example job so I can experiment?
milosz
Best regards,
Denis
Lava-users mailing list Lava-users@lists.lavasoftware.org https://lists.lavasoftware.org/mailman/listinfo/lava-users
Lava-users mailing list Lava-users@lists.lavasoftware.org https://lists.lavasoftware.org/mailman/listinfo/lava-users
--
Neil Williams
neil.williams@linaro.org http://www.linux.codehelp.co.uk/