blob: dd46aa2860b1f0b583c0a75f6059c573c8dbb011 [file] [log] [blame]
Karl Zhang93a3c4c2020-07-10 12:40:34 +08001#-------------------------------------------------------------------------------
David Vincze16a9dac2023-01-06 15:16:47 +01002# Copyright (c) 2020-2023, Arm Limited. All rights reserved.
Karl Zhang93a3c4c2020-07-10 12:40:34 +08003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8- job:
Xinyu Zhang67880592022-12-07 14:05:27 +08009 name: tf-m-code-coverage
10 description: 'Build to generate code coverage data.'
Karl Zhang93a3c4c2020-07-10 12:40:34 +080011 project-type: pipeline
12 disabled: false
13 sandbox: true
14 concurrent: true
15 properties:
16 - build-discarder:
Paul Sokolovsky24884332022-08-08 16:38:25 +030017 days-to-keep: 90
Karl Zhang93a3c4c2020-07-10 12:40:34 +080018 num-to-keep: 45
Paul Sokolovsky33aa26c2022-07-22 12:10:06 +030019 triggers:
Paul Sokolovsky23dc6592022-12-05 21:20:22 +030020 - timed: 'H 21 */2 * *'
Karl Zhang93a3c4c2020-07-10 12:40:34 +080021 parameters:
22 - string:
23 name: 'FILTER_GROUP'
David Hue9b0dd72022-11-17 11:12:26 +080024 default: "coverage_profile_s coverage_profile_m coverage_profile_m_arotless \
Xinyu Zhangea289122022-11-21 17:56:38 +080025 coverage_profile_l coverage_ipc_backend coverage_nsce coverage_mmio coverage_fp"
Karl Zhang93a3c4c2020-07-10 12:40:34 +080026 description: |
27 Filter to a group of configurations as recognised by configs.py
28 - string:
29 name: 'CODE_REPO'
Karl Zhanga7cc3c42021-01-08 17:17:48 +080030 default: 'https://git.trustedfirmware.org/TF-M/trusted-firmware-m'
31 description: |
32 Change to https://review.trustedfirmware.org/TF-M/trusted-firmware-m use when triggering with unmerged Gerrit changes.
Karl Zhang93a3c4c2020-07-10 12:40:34 +080033 - string:
34 name: 'CI_SCRIPTS_REPO'
Karl Zhanga7cc3c42021-01-08 17:17:48 +080035 default: 'https://git.trustedfirmware.org/ci/tf-m-ci-scripts'
Karl Zhang93a3c4c2020-07-10 12:40:34 +080036 - string:
Fathi Boudraccaba542020-11-19 10:11:43 +010037 name: 'CI_SCRIPTS_BRANCH'
38 default: 'master'
39 - string:
Karl Zhang93a3c4c2020-07-10 12:40:34 +080040 name: 'GERRIT_REFSPEC'
41 default: 'refs/heads/master'
42 description: |
43 For use when triggering with specified tag or master 'refs/heads/master' or 'refs/tags/TF-Mv1.0'.
44 - string:
45 name: 'GERRIT_BRANCH'
46 default: 'master'
47 description: |
48 For use when triggering with unmerged Gerrit changes.
49 - string:
50 name: 'GERRIT_HOST'
51 description: |
52 For use when triggering with unmerged Gerrit changes.
53 - string:
54 name: 'GERRIT_CHANGE_NUMBER'
55 description: |
56 For use when triggering with unmerged Gerrit changes.
57 - string:
58 name: 'GERRIT_PATCHSET_REVISION'
59 description: |
60 For use when triggering with unmerged Gerrit changes.
61 - string:
Karl Zhang85c2d7a2020-08-20 11:17:58 +080062 name: 'MBEDTLS_VERSION'
Summer Qin8d6aae02023-01-20 11:15:51 +080063 default: 'mbedtls-3.3.0'
Karl Zhang85c2d7a2020-08-20 11:17:58 +080064 - string:
65 name: 'MBEDTLS_URL'
66 default: 'https://git.trustedfirmware.org/mirror/mbed-tls.git'
67 - string:
Xinyu Zhang79e1aa12022-11-23 17:50:21 +080068 name: 'QCBOR_URL'
69 default: 'https://github.com/laurencelundblade/QCBOR.git'
70 - string:
71 name: 'QCBOR_VERSION'
David Vincze16a9dac2023-01-06 15:16:47 +010072 default: '92d3f89030baff4af7be8396c563e6c8ef263622'
Xinyu Zhang79e1aa12022-11-23 17:50:21 +080073 - string:
Karl Zhang93a3c4c2020-07-10 12:40:34 +080074 name: 'LAVA_URL'
75 default: 'https://tf.validation.linaro.org'
76 - string:
Karl Zhang93a3c4c2020-07-10 12:40:34 +080077 name: 'CODE_COVERAGE_EN'
78 default: 'TRUE'
Dean Birchc4d4d672020-08-12 10:38:58 +010079 - string:
Paul Sokolovskybd1327d2022-12-28 00:24:13 +030080 name: 'LCOV_FLAGS'
81 default: '--quiet'
82 description: |
83 Additional flags to pass to lcov
84 - string:
Xinyu Zhang1a4d1102022-10-18 17:39:01 +080085 name: 'SQUAD_CONFIGURATIONS'
86 default: 'disabled'
87 description: 'Send metrics of reference configurations to a SQUAD Dashboard'
88 - string:
Dean Birchc4d4d672020-08-12 10:38:58 +010089 name: 'LAVA_CREDENTIALS'
90 default: 'LAVA_CREDENTIALS'
91 description: "Name of Jenkins credential for authentication with LAVA."
Leonardo Sandoval4a024212021-09-17 14:05:27 -050092 - string:
93 name: 'MCUBOOT_REFSPEC'
Sherry Zhang10ffcca2022-03-03 11:38:23 +080094 default: 'v1.9.0'
Leonardo Sandoval4a024212021-09-17 14:05:27 -050095 description: |
96 Specify which MCUboot version to use
97 refs/heads/master : Pick up latest master
98 refs/tags/<TAG_NAME> : Pick up a tagged version
99 - string:
100 name: 'MCUBOOT_URL'
101 default: 'https://git.trustedfirmware.org/mirror/mcuboot.git'
102 - string:
103 name: 'TFM_TESTS_URL'
104 default: 'https://git.trustedfirmware.org/TF-M/tf-m-tests.git'
105 - string:
106 name: 'TFM_TESTS_REFSPEC'
107 default: 'refs/heads/master'
108 - string:
109 name: 'PSA_ARCH_TESTS_URL'
110 default: 'https://git.trustedfirmware.org/mirror/psa-arch-tests.git'
111 - string:
112 name: 'PSA_ARCH_TESTS_VERSION'
Summer8858e3e2022-11-15 10:40:04 +0800113 default: 'cf8bd7191219df9bdef387abcd750f0709283f98'
Leonardo Sandoval4a024212021-09-17 14:05:27 -0500114 - string:
Paul Sokolovskyb86aa392022-12-12 19:52:18 +0300115 name: 'EMAIL_NOTIFICATION'
116 default: 'xinyu.zhang@arm.com, paul.sokolovsky@linaro.org'
117 - string:
Leonardo Sandoval4a024212021-09-17 14:05:27 -0500118 name: SHARE_FOLDER
119 default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
120 description: 'Folder containing shared repositories for downstream pipeline jobs'
Paul Sokolovskycd6c0362022-04-28 21:00:32 +0300121 - string:
122 name: 'DEVICE_FILTER'
Paul Sokolovsky60c972a2022-04-30 18:13:14 +0300123 default: '--fvp-only'
Paul Sokolovskycd6c0362022-04-28 21:00:32 +0300124 description: |
125 Parameter to lava_create_jobs.py to filter by device type (e.g. --fvp-only or --physical-board-only)
Xinyu Zhang59f7fee2021-05-21 14:04:11 +0800126 wrappers:
127 - timestamps
Karl Zhang93a3c4c2020-07-10 12:40:34 +0800128 pipeline-scm:
129 scm:
130 - git:
131 url: '$CI_SCRIPTS_REPO'
132 branches:
133 - '$CI_SCRIPTS_BRANCH'
134 credentials-id: GIT_SSH_KEY
135 wipe-workspace: false
136 script-path: jenkins/ci.jpl