Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 1 | #!/usr/bin/env bash |
| 2 | # |
Leonardo Sandoval | 579c737 | 2020-10-23 15:23:32 -0500 | [diff] [blame] | 3 | # Copyright (c) 2019-2020 Arm Limited. All rights reserved. |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 4 | # |
| 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 | |
| 12 | cat <<EOF |
| 13 | device_type: fvp |
Leonardo Sandoval | 44ac9aa | 2020-11-09 12:55:57 -0600 | [diff] [blame^] | 14 | job_name: fvp-tftf |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 15 | |
| 16 | timeouts: |
| 17 | connection: |
| 18 | minutes: 3 |
| 19 | job: |
| 20 | minutes: 10 |
| 21 | actions: |
| 22 | auto-login-action: |
| 23 | minutes: 5 |
| 24 | http-download: |
| 25 | minutes: 2 |
| 26 | download-retry: |
| 27 | minutes: 2 |
| 28 | fvp-deploy: |
| 29 | minutes: 5 |
| 30 | |
| 31 | priority: medium |
| 32 | visibility: public |
| 33 | |
| 34 | actions: |
| 35 | - deploy: |
| 36 | to: fvp |
| 37 | images: |
| 38 | bl1: |
| 39 | url: \${ACTIONS_DEPLOY_IMAGES_BL1} |
| 40 | fip: |
| 41 | url: \${ACTIONS_DEPLOY_IMAGES_FIP} |
| 42 | ns_bl1u: |
| 43 | url: \${ACTIONS_DEPLOY_IMAGES_NS_BL1U} |
| 44 | ns_bl2u: |
| 45 | url: \${ACTIONS_DEPLOY_IMAGES_NS_BL2U} |
Leonardo Sandoval | 44ac9aa | 2020-11-09 12:55:57 -0600 | [diff] [blame^] | 46 | el3_payload: |
| 47 | url: \${ACTIONS_DEPLOY_IMAGES_EL3_PAYLOAD} |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 48 | |
| 49 | - boot: |
| 50 | method: fvp |
Leonardo Sandoval | be690bd | 2020-10-12 17:59:39 -0500 | [diff] [blame] | 51 | license_variable: ARMLMD_LICENSE_FILE=\${ARMLMD_LICENSE_FILE} |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 52 | docker: |
| 53 | name: \${BOOT_DOCKER_NAME} |
| 54 | local: true |
Leonardo Sandoval | 5d90dff | 2020-10-12 17:59:39 -0500 | [diff] [blame] | 55 | image: \${BOOT_IMAGE_DIR}/\${BOOT_IMAGE_BIN} |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 56 | version_string: \${BOOT_VERSION_STRING} |
Leonardo Sandoval | 44ac9aa | 2020-11-09 12:55:57 -0600 | [diff] [blame^] | 57 | console_string: 'terminal_0: Listening for serial connection on port (?P<PORT>\d+)' |
| 58 | timeout: |
| 59 | minutes: 30 |
| 60 | |
| 61 | arguments: |
| 62 | \${BOOT_ARGUMENTS} |
| 63 | |
| 64 | - test: |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 65 | timeout: |
| 66 | minutes: 30 |
| 67 | |
| 68 | monitors: |
| 69 | - name: TFTF |
| 70 | # LAVA looks for a testsuite start string... |
| 71 | start: 'Booting trusted firmware test framework' |
| 72 | # ...and a testsuite end string. |
| 73 | end: 'Exiting tests.' |
| 74 | |
| 75 | # For each test case, LAVA looks for a string which includes the testcase |
| 76 | # name and result. |
| 77 | pattern: "(?s)> Executing '(?P<test_case_id>.+?(?='))'(.*) TEST COMPLETE\\\s+(?P<result>(Skipped|Passed|Failed|Crashed))" |
| 78 | |
| 79 | # Teach to LAVA how to interpret the TFTF Tests results. |
| 80 | fixupdict: |
| 81 | Passed: pass |
| 82 | Failed: fail |
| 83 | Crashed: fail |
| 84 | Skipped: skip |
| 85 | |
Leonardo Sandoval | d76d1e2 | 2020-10-06 16:02:52 -0500 | [diff] [blame] | 86 | EOF |