blob: b3109f9bb14915f63e4f4c071f2aa671f65b20ee [file] [log] [blame]
Karl Zhang637695a2021-01-08 18:33:30 +08001#-------------------------------------------------------------------------------
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +03002# Copyright (c) 2020-2023, Arm Limited. All rights reserved.
Karl Zhang637695a2021-01-08 18:33:30 +08003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8- job:
Xinyu Zhang22a54542022-12-07 14:12:43 +08009 name: tf-m-code-coverage
10 description: 'Build to generate code coverage data.'
Karl Zhang637695a2021-01-08 18:33:30 +080011 project-type: pipeline
12 disabled: false
13 sandbox: true
14 concurrent: true
15 properties:
16 - build-discarder:
Paul Sokolovskyebbce5d2022-12-01 20:12:26 +030017 days-to-keep: 90
18 num-to-keep: 45
Karl Zhang637695a2021-01-08 18:33:30 +080019# triggers:
Paul Sokolovskyc0eadb62024-04-29 14:26:24 +070020# - timed: 'H 19 * * 6'
Karl Zhang637695a2021-01-08 18:33:30 +080021 parameters:
22 - string:
23 name: 'FILTER_GROUP'
Paul Sokolovsky15ff6d42023-04-07 20:13:33 +030024 default: "coverage_profile_s coverage_profile_m coverage_profile_l \
25 coverage_ipc_backend coverage_nsce coverage_mmio coverage_fp"
Karl Zhang637695a2021-01-08 18:33:30 +080026 description: |
27 Filter to a group of configurations as recognised by configs.py
28 - string:
29 name: 'CODE_REPO'
Paul Sokolovsky0f91a902022-04-26 22:22:09 +030030 default: 'https://git.trustedfirmware.org/TF-M/trusted-firmware-m'
Karl Zhang637695a2021-01-08 18:33:30 +080031 - string:
32 name: 'CI_SCRIPTS_REPO'
Paul Sokolovskyc0eadb62024-04-29 14:26:24 +070033 default: 'https://git.trustedfirmware.org/ci/tf-m-ci-scripts'
Karl Zhang637695a2021-01-08 18:33:30 +080034 - string:
35 name: 'CI_SCRIPTS_BRANCH'
36 default: 'master'
37 - string:
38 name: 'GERRIT_REFSPEC'
Xinyu Zhang26437432023-09-25 11:50:23 +080039 default: 'refs/heads/main'
Karl Zhang637695a2021-01-08 18:33:30 +080040 description: |
Paul Sokolovsky2e28cf62023-12-01 21:57:07 +030041 For use when triggering with specified tag or master 'refs/heads/main' or 'refs/tags/TF-Mv1.0'.
Karl Zhang637695a2021-01-08 18:33:30 +080042 - string:
43 name: 'GERRIT_BRANCH'
Xinyu Zhang26437432023-09-25 11:50:23 +080044 default: 'main'
Karl Zhang637695a2021-01-08 18:33:30 +080045 description: |
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030046 TF-M branch.
Karl Zhang637695a2021-01-08 18:33:30 +080047 - string:
48 name: 'GERRIT_HOST'
49 description: |
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030050 No need to change.
Karl Zhang637695a2021-01-08 18:33:30 +080051 - string:
52 name: 'GERRIT_CHANGE_NUMBER'
53 description: |
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030054 No need to change.
Karl Zhang637695a2021-01-08 18:33:30 +080055 - string:
56 name: 'GERRIT_PATCHSET_REVISION'
57 description: |
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030058 No need to change.
Karl Zhang637695a2021-01-08 18:33:30 +080059 - string:
60 name: 'MBEDTLS_VERSION'
Xinyu Zhang26437432023-09-25 11:50:23 +080061 default: ''
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030062 description: |
63 Specify which MBEDTLS version to use
64 refs/heads/<branch_name> : Pick up latest HEAD on branch
65 TAG_NAME : Pick up a tagged version
66 full commit hash : Pick up a specific commit
Karl Zhang637695a2021-01-08 18:33:30 +080067 - string:
68 name: 'MBEDTLS_URL'
69 default: 'https://git.trustedfirmware.org/mirror/mbed-tls.git'
70 - string:
Xinyu Zhang1a6ab202022-12-09 07:46:20 +010071 name: 'QCBOR_URL'
72 default: 'https://github.com/laurencelundblade/QCBOR.git'
73 - string:
74 name: 'QCBOR_VERSION'
Paul Sokolovsky2e28cf62023-12-01 21:57:07 +030075 default: ''
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030076 description: |
77 Specify which QCBOR version to use
78 refs/heads/<branch_name> : Pick up latest HEAD on branch
79 TAG_NAME : Pick up a tagged version
80 full commit hash : Pick up a specific commit
Xinyu Zhang1a6ab202022-12-09 07:46:20 +010081 - string:
Karl Zhang637695a2021-01-08 18:33:30 +080082 name: 'LAVA_URL'
83 default: 'https://tf.validation.linaro.org'
84 - string:
85 name: 'CODE_COVERAGE_EN'
86 default: 'TRUE'
87 - string:
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +030088 name: 'LCOV_FLAGS'
89 default: '--quiet'
90 description: |
91 Additional flags to pass to lcov
92 - string:
Karl Zhang637695a2021-01-08 18:33:30 +080093 name: 'LAVA_CREDENTIALS'
94 default: 'LAVA_CREDENTIALS'
95 description: "Name of Jenkins credential for authentication with LAVA."
Leonardo Sandoval3208aea2021-09-17 14:05:27 -050096 - string:
97 name: 'MCUBOOT_REFSPEC'
Xinyu Zhang26437432023-09-25 11:50:23 +080098 default: ''
Leonardo Sandoval3208aea2021-09-17 14:05:27 -050099 description: |
100 Specify which MCUboot version to use
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +0300101 refs/heads/<branch_name> : Pick up latest HEAD on branch
102 TAG_NAME : Pick up a tagged version
103 full commit hash : Pick up a specific commit
Leonardo Sandoval3208aea2021-09-17 14:05:27 -0500104 - string:
105 name: 'MCUBOOT_URL'
106 default: 'https://git.trustedfirmware.org/mirror/mcuboot.git'
107 - string:
108 name: 'TFM_TESTS_URL'
109 default: 'https://git.trustedfirmware.org/TF-M/tf-m-tests.git'
110 - string:
111 name: 'TFM_TESTS_REFSPEC'
Xinyu Zhang26437432023-09-25 11:50:23 +0800112 default: ''
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +0300113 description: |
114 Specify which tf-m-tests version to use
115 refs/heads/<branch_name> : Pick up latest HEAD on branch
116 TAG_NAME : Pick up a tagged version
117 full commit hash : Pick up a specific commit
Leonardo Sandoval3208aea2021-09-17 14:05:27 -0500118 - string:
119 name: 'PSA_ARCH_TESTS_URL'
120 default: 'https://git.trustedfirmware.org/mirror/psa-arch-tests.git'
121 - string:
122 name: 'PSA_ARCH_TESTS_VERSION'
Xinyu Zhang26437432023-09-25 11:50:23 +0800123 default: ''
Paul Sokolovsky73d0dc82023-04-06 21:28:38 +0300124 description: |
125 Specify which psa-arch-tests version to use
126 refs/heads/<branch_name> : Pick up latest HEAD on branch
127 TAG_NAME : Pick up a tagged version
128 full commit hash : Pick up a specific commit
129 - string:
130 name: 'EMAIL_NOTIFICATION'
131 default: ''
Leonardo Sandoval3208aea2021-09-17 14:05:27 -0500132 - string:
133 name: SHARE_FOLDER
Xinyu Zhanged109d92023-10-24 10:52:50 +0800134 default: '/srv/shared/staging/${JOB_NAME}/${BUILD_NUMBER}'
Leonardo Sandoval3208aea2021-09-17 14:05:27 -0500135 description: 'Folder containing shared repositories for downstream pipeline jobs'
Paul Sokolovskyebbce5d2022-12-01 20:12:26 +0300136 - string:
137 name: 'DEVICE_FILTER'
138 default: '--fvp-only'
139 description: |
140 Parameter to lava_create_jobs.py to filter by device type (e.g. --fvp-only or --physical-board-only)
Paul Sokolovskyc0eadb62024-04-29 14:26:24 +0700141 - string:
142 name: USE_TUXSUITE_FVP
143 default: 1
144 description: |
145 Whether to submit FVP tests via TuxSuite (instead of LAVA)
Xinyu Zhang33881cc2021-05-21 14:04:11 +0800146 wrappers:
147 - timestamps
Karl Zhang637695a2021-01-08 18:33:30 +0800148 pipeline-scm:
149 scm:
150 - git:
151 url: '$CI_SCRIPTS_REPO'
152 branches:
153 - '$CI_SCRIPTS_BRANCH'
Paul Sokolovskyada22ab2024-07-11 14:38:42 +0300154 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/remotes/origin/refs/changes/*'
Karl Zhang637695a2021-01-08 18:33:30 +0800155 credentials-id: GIT_SSH_KEY
156 wipe-workspace: false
157 script-path: jenkins/ci.jpl