Job definition file - 3503 download


1
device_type: beaglebone-black
2
job_name: "[lavafed 2021.01.0018.gb56370de5] beaglebone-black - health-check"
3
priority: medium
4
5
timeouts:
6
job:
7
seconds: 600
8
9
visibility: public
10
11
12
tags:
13
- staging.validation.linaro.org
14
15
metadata:
16
device.name: "staging-black01"
17
device.type: "beaglebone-black"
18
job.url: "https://federation.lavasoftware.org/lava/scheduler/job/{id}"
19
job.name: "beaglebone-black - health-check"
20
job.type: "test"
21
lab.name: "staging.validation.linaro.org"
22
slave.arch: "amd64"
23
slave.version: "2021.01.0018.gb56370de5"
24
features.0.name: "deploy.tftp"
25
features.0.type: "device"
26
features.0.description: "Deploy to tftp"
27
features.0.action: "deploy"
28
features.1.name: "boot.u-boot.nfs"
29
features.1.type: "device"
30
features.1.description: "Boot from u-boot with an nfs rootfs"
31
features.1.action: "boot"
32
features.2.name: "test.definition.git"
33
features.2.type: "device"
34
features.2.description: "Test definition from git"
35
features.2.action: "test"
36
37
notify:
38
criteria:
39
status: finished
40
callback:
41
url: "https://federation.lavasoftware.org/api/v0.1/jobs/"
42
token: "federation.lavasoftware.org"
43
method: POST
44
dataset: all
45
content-type: json
46
47
48
49
actions:
50
- deploy:
51
timeout:
52
minutes: 4
53
to: tftp
54
kernel:
55
url: http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/vmlinuz
56
type: zimage
57
ramdisk:
58
url: http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/initramfs.cpio.gz
59
compression: gz
60
# the bootloader needs a u-boot header on the modified ramdisk
61
add-header: u-boot
62
modules:
63
url: http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/modules.tar.gz
64
compression: gz
65
nfsrootfs:
66
url: http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/jessie-armhf-nfs.tar.gz
67
compression: gz
68
os: debian
69
dtb:
70
url: http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/dtbs/am335x-boneblack.dtb
71
- boot:
72
method: u-boot
73
commands: nfs
74
auto_login:
75
login_prompt: 'login:'
76
username: root
77
prompts:
78
- 'root@jessie:'
79
timeout:
80
minutes: 4
81
- test:
82
timeout:
83
minutes: 3
84
definitions:
85
- repository: http://git.linaro.org/lava-team/lava-functional-tests.git
86
from: git
87
path: lava-test-shell/smoke-tests-basic.yaml
88
name: smoke-tests

Pipeline Description YAML

Pipeline jobs use the job definition to generate a descriptive YAML file when the pipeline is validated. The file represents the data sent to the dispatcher at the start of the job, including details of the device as well as the job parameters and the details of the parameters sent to each of the deploy, boot and test actions in the job pipeline.

Click on the Action headings below to see some of the structural information from the description file for this job or download the complete file as YAML using the link above. The name of the action can be used to change the timeout of that specific action. e.g.

timeouts:
  apply-overlay-image:
    minutes: 5

The information in this pane is based on the validation step prior to the job starting to run. This includes checks on remote URLs but does not operations which are only done at runtime. Therefore, the filesize of remote downloads can be displayed, based on the headers when checking that the URL was correct - checksums of the actual download will not appear as the actual download only happens after the job has started.

Pipeline

[ Sections ] [ List of actions ]

1: tftp deployment

name
tftp-deploy
description
download files and deploy using tftp
output
3503#action_1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.1: download-retry

name
download-retry
description
download with retry
output
3503#action_1.1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.1.1: http download

name
http-download
description
use http to download the file
output
3503#action_1.1.1
timeout
240 seconds
URL
http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/initramfs.cpio.gz
[ Sections ] [ List of actions ]

1.2: download-retry

name
download-retry
description
download with retry
output
3503#action_1.2
timeout
240 seconds
[ Sections ] [ List of actions ]

1.2.1: http download

name
http-download
description
use http to download the file
output
3503#action_1.2.1
timeout
240 seconds
URL
http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/vmlinuz
[ Sections ] [ List of actions ]

1.3: download-retry

name
download-retry
description
download with retry
output
3503#action_1.3
timeout
240 seconds
[ Sections ] [ List of actions ]

1.3.1: http download

name
http-download
description
use http to download the file
output
3503#action_1.3.1
timeout
240 seconds
URL
http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/dtbs/am335x-boneblack.dtb
[ Sections ] [ List of actions ]

1.4: download-retry

name
download-retry
description
download with retry
output
3503#action_1.4
timeout
240 seconds
[ Sections ] [ List of actions ]

1.4.1: http download

name
http-download
description
use http to download the file
output
3503#action_1.4.1
timeout
240 seconds
URL
http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/jessie-armhf-nfs.tar.gz
[ Sections ] [ List of actions ]

1.5: download-retry

name
download-retry
description
download with retry
output
3503#action_1.5
timeout
240 seconds
[ Sections ] [ List of actions ]

1.5.1: http download

name
http-download
description
use http to download the file
output
3503#action_1.5.1
timeout
240 seconds
URL
http://images.validation.linaro.org/snapshots.linaro.org/components/lava/standard/debian/jessie/armhf/4/modules.tar.gz
[ Sections ] [ List of actions ]

1.6: extract ramdisk or nfsrootfs

name
prepare-tftp-overlay
description
extract ramdisk or nfsrootfs in preparation for lava overlay
output
3503#action_1.6
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.1: unpack nfsrootfs, ready to apply lava overlay

name
extract-nfsrootfs
description
unpack nfsrootfs
output
3503#action_1.6.1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2: overlay the lava support scripts

name
lava-overlay
description
add lava scripts during deployment for test shell use
output
3503#action_1.6.2
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.1: add public key to authorized_keys

name
ssh-authorize
description
include public key in overlay and authorize root user
output
3503#action_1.6.2.1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.2: Add files detailing vlan configuration.

name
lava-vland-overlay
description
Populate specific vland scripts for tests to lookup vlan data.
output
3503#action_1.6.2.2
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.3: overlay the lava multinode scripts

name
lava-multinode-overlay
description
add lava scripts during deployment for multinode test shell use
output
3503#action_1.6.2.3
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.4: loading test definitions

name
test-definition
description
load test definitions into image
output
3503#action_1.6.2.4
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.4.1: clone git test repo

name
git-repo-action
description
apply git repository of tests to the test image
output
3503#action_1.6.2.4.1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.4.2: applying LAVA test overlay

name
test-overlay
description
overlay test support files onto image
output
3503#action_1.6.2.4.2
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.4.3: applying LAVA test install scripts

name
test-install-overlay
description
overlay dependency installation support files onto image
output
3503#action_1.6.2.4.3
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.4.4: applying LAVA test run script

name
test-runscript-overlay
description
overlay run script onto image
output
3503#action_1.6.2.4.4
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.5: Compress the lava overlay files

name
compress-overlay
description
Create a lava overlay tarball and store alongside the job
output
3503#action_1.6.2.5
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.2.6: add test overlay to NFS

name
persistent-nfs-overlay
description
unpack overlay into persistent NFS
output
3503#action_1.6.2.6
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.3: extract the ramdisk

name
extract-overlay-ramdisk
description
extract ramdisk to a temporary directory
output
3503#action_1.6.3
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.4: extract kernel modules

name
extract-modules
description
extract supplied kernel modules
output
3503#action_1.6.4
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.5: apply lava overlay test files

name
apply-overlay-tftp
description
unpack the overlay into the nfsrootfs or ramdisk
output
3503#action_1.6.5
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.6: add a kernel conversion

name
prepare-kernel
description
populates the pipeline with a kernel conversion action
output
3503#action_1.6.6
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.6.1: prepare/convert kernel

name
uboot-prepare-kernel
description
convert kernel to uimage
output
3503#action_1.6.6.1
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.7: add commands to installer config

name
configure-preseed-file
description
add commands to automated installers, to copy the lava test overlay to the installed system
output
3503#action_1.6.7
timeout
240 seconds
[ Sections ] [ List of actions ]

1.6.8: compress ramdisk with overlay

name
compress-ramdisk
description
recreate a ramdisk with the overlay applied.
output
3503#action_1.6.8
timeout
240 seconds
[ Sections ] [ List of actions ]

1.7: create lxc udev rule

name
lxc-create-udev-rule-action
description
create lxc udev rule action
output
3503#action_1.7
timeout
240 seconds
[ Sections ] [ List of actions ]

1.8: deploy device environment

name
deploy-device-env
description
deploy device environment
output
3503#action_1.8
timeout
240 seconds
[ Sections ] [ List of actions ]

2: pass uboot commands

name
uboot-action
description
interactive uboot action
output
3503#action_2
timeout
240 seconds
[ Sections ] [ List of actions ]

2.1: set uboot strings for deployed media

name
uboot-from-media
description
let uboot know where to find the kernel in the image on secondary media
output
3503#action_2.1
timeout
240 seconds
[ Sections ] [ List of actions ]

2.2: replace placeholders with job data

name
bootloader-overlay
description
substitute job data into bootloader command list
output
3503#action_2.2
timeout
240 seconds
[ Sections ] [ List of actions ]

2.3: run connection command

name
connect-device
description
use the configured command to connect serial to the device
output
3503#action_2.3
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4: uboot commands

name
uboot-commands
description
interactive uboot commands action
output
3503#action_2.4
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.1: reboot the device

name
reset-device
description
reboot or power-cycle the device
output
3503#action_2.4.1
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.1.1: hard reboot using PDU

name
pdu-reboot
description
issue commands to a PDU to power cycle a device
output
3503#action_2.4.1.1
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.2: interrupt bootloader to get an interactive shell

name
bootloader-interrupt
description
interrupt bootloader
output
3503#action_2.4.2
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.3: interactive bootloader

name
bootloader-commands
description
send commands to bootloader
output
3503#action_2.4.3
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.4: Auto-login after boot with support for kernel messages.

name
auto-login-action
description
automatically login after boot using job parameters and checking for messages.
output
3503#action_2.4.4
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.4.1: Login after boot.

name
login-action
description
Real login action.
output
3503#action_2.4.4.1
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.5: Expect a shell prompt

name
expect-shell-connection
description
Wait for a shell
output
3503#action_2.4.5
timeout
240 seconds
[ Sections ] [ List of actions ]

2.4.6: Exports environment variables action

name
export-device-env
description
Exports environment variables to the device
output
3503#action_2.4.6
timeout
240 seconds
[ Sections ] [ List of actions ]

3: Retry support for Lava Test Shell

name
lava-test-retry
description
Retry wrapper for lava-test-shell
output
3503#action_3
timeout
180 seconds
[ Sections ] [ List of actions ]

3.1: Lava Test Shell

name
lava-test-shell
description
Executing lava-test-runner
output
3503#action_3.1
timeout
180 seconds
[ Sections ] [ List of actions ]

4: finalize the job

name
finalize
description
finish the process and cleanup
output
3503#action_4
timeout
30 seconds
[ Sections ] [ List of actions ]

4.1: send power_off command

name
power-off
description
discontinue power to device
output
3503#action_4.1
timeout
10 seconds
[ Sections ] [ List of actions ]

4.2: Read from other namespaces

name
read-feedback
description
Check for messages on all other namespaces
output
3503#action_4.2
timeout
30 seconds

Pipeline actions

Pipeline sections