blob: caf1d0a60c192b06dd2d672269cd7fd150edc44e [file] [log] [blame]
Leonardo Sandovald76d1e22020-10-06 16:02:52 -05001#!/usr/bin/env bash
2#
Leonardo Sandoval850a4862021-02-16 13:56:18 -06003# Copyright (c) 2019-2021 Arm Limited. All rights reserved.
Leonardo Sandovald76d1e22020-10-06 16:02:52 -05004#
5# SPDX-License-Identifier: BSD-3-Clause
6#
7
8# Generate a FVP-TFTF model agnostic YAML template. Note that this template is not ready to be
9# sent to LAVA by Jenkins so in order to produce file, variables in ${UPPERCASE} must be replaced
10# to correct values
11
12cat <<EOF
Leonardo Sandoval5d87b702021-05-10 11:53:13 -050013metadata:
14 test_config: {TEST_CONFIG}
15
Leonardo Sandovald76d1e22020-10-06 16:02:52 -050016device_type: fvp
Leonardo Sandoval850a4862021-02-16 13:56:18 -060017job_name: fvp-tftf-{MODEL}
Leonardo Sandovald76d1e22020-10-06 16:02:52 -050018
19timeouts:
20 connection:
21 minutes: 3
Leonardo Sandoval850a4862021-02-16 13:56:18 -060022 connections:
23 lava-test-monitor:
24 minutes: 10
Leonardo Sandovald76d1e22020-10-06 16:02:52 -050025 job:
Leonardo Sandoval3f1430d2020-11-20 10:33:07 -060026 minutes: 60
Leonardo Sandovald76d1e22020-10-06 16:02:52 -050027 actions:
28 auto-login-action:
29 minutes: 5
30 http-download:
31 minutes: 2
32 download-retry:
33 minutes: 2
34 fvp-deploy:
35 minutes: 5
36
37priority: medium
38visibility: public
39
40actions:
41- deploy:
42 to: fvp
43 images:
Leonardo Sandoval850a4862021-02-16 13:56:18 -060044 backup_fip:
45 url: {BACKUP_FIP}
Leonardo Sandovald76d1e22020-10-06 16:02:52 -050046 bl1:
Leonardo Sandoval850a4862021-02-16 13:56:18 -060047 url: {BL1}
48 bl2:
49 url: {BL2}
50 bl31:
51 url: {BL31}
52 bl32:
53 url: {BL32}
Leonardo Sandovaldf9c92f2021-03-12 11:31:09 -060054 busybox:
55 url: {BUSYBOX}
56 compression: gz
57 cactus_primary:
58 url: {CACTUS_PRIMARY}
59 cactus_secondary:
60 url: {CACTUS_SECONDARY}
61 cactus_tertiary:
62 url: {CACTUS_TERTIARY}
Leonardo Sandovald98f8332021-04-13 16:46:38 -050063 coverage_trace_plugin:
64 url: {COVERAGE_TRACE_PLUGIN}
Leonardo Sandoval850a4862021-02-16 13:56:18 -060065 dtb:
66 url: {DTB}
Leonardo Sandoval44ac9aa2020-11-09 12:55:57 -060067 el3_payload:
Leonardo Sandoval850a4862021-02-16 13:56:18 -060068 url: {EL3_PAYLOAD}
69 fip:
70 url: {FIP}
Leonardo Sandovalcc52beb2021-05-05 19:05:31 -050071 fip_gpt:
72 url: {FIP_GPT}
Leonardo Sandoval850a4862021-02-16 13:56:18 -060073 fwu_fip:
74 url: {FWU_FIP}
Leonardo Sandovaldf9c92f2021-03-12 11:31:09 -060075 generic_trace:
76 url: {GENERIC_TRACE}
77 hafnium:
78 url: {HAFNIUM}
Leonardo Sandoval850a4862021-02-16 13:56:18 -060079 image:
80 url: {IMAGE}
Leonardo Sandovaldf9c92f2021-03-12 11:31:09 -060081 mcp_rom:
82 url: {MCP_ROM}
83 mcp_rom_hyphen:
84 url: {MCP_ROM_HYPHEN}
Leonardo Sandoval850a4862021-02-16 13:56:18 -060085 ns_bl1u:
86 url: {NS_BL1U}
87 ns_bl2u:
88 url: {NS_BL2U}
89 ramdisk:
90 url: {RAMDISK}
91 romlib:
92 url: {ROMLIB}
93 rootfs:
94 url: {ROOTFS}
95 compression: gz
Leonardo Sandovaldf9c92f2021-03-12 11:31:09 -060096 secure_hafnium:
97 url: {SECURE_HAFNIUM}
98 scp_ram:
99 url: {SCP_RAM}
100 scp_ram_hyphen:
101 url: {SCP_RAM_HYPHEN}
102 scp_rom:
103 url: {SCP_ROM}
104 scp_rom_hyphen:
105 url: {SCP_ROM_HYPHEN}
Leonardo Sandoval850a4862021-02-16 13:56:18 -0600106 spm:
107 url: {SPM}
108 tftf:
109 url: {TFTF}
110 tmp:
111 url: {TMP}
112 uboot:
113 url: {UBOOT}
Leonardo Sandovald76d1e22020-10-06 16:02:52 -0500114
115- boot:
116 method: fvp
Leonardo Sandoval850a4862021-02-16 13:56:18 -0600117 license_variable: ARMLMD_LICENSE_FILE={ARMLMD_LICENSE_FILE}
Leonardo Sandovald76d1e22020-10-06 16:02:52 -0500118 docker:
Leonardo Sandoval850a4862021-02-16 13:56:18 -0600119 name: {BOOT_DOCKER_NAME}
Leonardo Sandovald76d1e22020-10-06 16:02:52 -0500120 local: true
Leonardo Sandoval850a4862021-02-16 13:56:18 -0600121 image: {BOOT_IMAGE_DIR}/{BOOT_IMAGE_BIN}
122 version_string: {BOOT_VERSION_STRING}
Leonardo Sandoval44ac9aa2020-11-09 12:55:57 -0600123 console_string: 'terminal_0: Listening for serial connection on port (?P<PORT>\d+)'
Leonardo Sandovalce3783b2021-03-05 12:04:02 -0600124 feedbacks:
125 - '(?P<NAME>terminal_1): Listening for serial connection on port (?P<PORT>\d+)'
126 - '(?P<NAME>terminal_2): Listening for serial connection on port (?P<PORT>\d+)'
127 - '(?P<NAME>terminal_3): Listening for serial connection on port (?P<PORT>\d+)'
Leonardo Sandoval44ac9aa2020-11-09 12:55:57 -0600128 arguments:
Leonardo Sandoval850a4862021-02-16 13:56:18 -0600129{BOOT_ARGUMENTS}
Leonardo Sandoval44ac9aa2020-11-09 12:55:57 -0600130
131- test:
Leonardo Sandovald76d1e22020-10-06 16:02:52 -0500132 timeout:
133 minutes: 30
134
135 monitors:
136 - name: TFTF
137 # LAVA looks for a testsuite start string...
138 start: 'Booting trusted firmware test framework'
139 # ...and a testsuite end string.
140 end: 'Exiting tests.'
141
142 # For each test case, LAVA looks for a string which includes the testcase
143 # name and result.
144 pattern: "(?s)> Executing '(?P<test_case_id>.+?(?='))'(.*) TEST COMPLETE\\\s+(?P<result>(Skipped|Passed|Failed|Crashed))"
145
146 # Teach to LAVA how to interpret the TFTF Tests results.
147 fixupdict:
148 Passed: pass
149 Failed: fail
150 Crashed: fail
151 Skipped: skip
152
Leonardo Sandovald76d1e22020-10-06 16:02:52 -0500153EOF