blob: e334896808c07e4dc6985bdede656cf13b031058 [file] [log] [blame]
Fathi Boudra9e402bf2019-12-05 11:16:41 +02001- scm:
2 name: tf-a-ci-scripts
3 scm:
4 - git:
5 url: https://git.trustedfirmware.org/ci/tf-a-ci-scripts.git
6 refspec: +refs/heads/master:refs/remotes/origin/master
7 name: origin
8 branches:
9 - refs/heads/master
10 basedir: tf-a-ci-scripts
11 skip-tag: true
12 shallow-clone: true
13 wipe-workspace: false
14- scm:
Arthur She5fc74272021-03-26 21:24:34 -070015 name: tf-a-job-configs
16 scm:
17 - git:
18 url: https://git.trustedfirmware.org/ci/tf-a-job-configs.git
19 refspec: +refs/heads/master:refs/remotes/origin/master
20 name: origin
21 branches:
22 - refs/heads/master
23 basedir: tf-a-job-configs
24 skip-tag: true
25 shallow-clone: true
26 wipe-workspace: false
27- scm:
Fathi Boudra9e402bf2019-12-05 11:16:41 +020028 name: trusted-firmware-a
29 scm:
30 - git:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050031 url: https://review.trustedfirmware.org/${TF_GERRIT_PROJECT}
32 refspec: ${TF_GERRIT_REFSPEC}
Fathi Boudra9e402bf2019-12-05 11:16:41 +020033 name: origin
34 branches:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050035 - ${TF_GERRIT_BRANCH}
Fathi Boudra9e402bf2019-12-05 11:16:41 +020036 basedir: trusted-firmware-a
Leonardo Sandoval94abc042021-03-29 19:32:39 -060037 choosing-strategy: gerrit
Fathi Boudra9e402bf2019-12-05 11:16:41 +020038 skip-tag: true
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050039 shallow-clone: false
Fathi Boudra9e402bf2019-12-05 11:16:41 +020040 wipe-workspace: false
41- scm:
42 name: tf-a-tests
43 scm:
44 - git:
Leonardo Sandoval94abc042021-03-29 19:32:39 -060045 url: https://review.trustedfirmware.org/${TFTF_GERRIT_PROJECT}
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050046 refspec: ${TFTF_GERRIT_REFSPEC}
Fathi Boudra9e402bf2019-12-05 11:16:41 +020047 name: origin
48 branches:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050049 - ${TFTF_GERRIT_BRANCH}
Fathi Boudra9e402bf2019-12-05 11:16:41 +020050 basedir: tf-a-tests
Leonardo Sandoval94abc042021-03-29 19:32:39 -060051 choosing-strategy: gerrit
Fathi Boudra9e402bf2019-12-05 11:16:41 +020052 skip-tag: true
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050053 shallow-clone: false
Fathi Boudra9e402bf2019-12-05 11:16:41 +020054 wipe-workspace: false
55- job:
56 name: tf-a-builder
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050057 node: docker-amd64-tf-a-bionic
Fathi Boudra9e402bf2019-12-05 11:16:41 +020058 project-type: freestyle
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050059 concurrent: true
60 disabled: false
Fathi Boudra9e402bf2019-12-05 11:16:41 +020061 defaults: global
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050062 Description: |
63 Trusted Firmware A (TF-A) builder
Fathi Boudra9e402bf2019-12-05 11:16:41 +020064 properties:
65 - build-discarder:
Leonardo Sandovala4feb552021-03-02 12:10:21 -060066 days-to-keep: 14
Riku Voipiobc87be22020-09-04 15:56:09 +030067 - authorization:
Leonardo Sandovalebca8822021-01-25 18:20:04 -060068 !include: authorization.yaml.inc
Fathi Boudra9e402bf2019-12-05 11:16:41 +020069 parameters:
70 - string:
Leonardo Sandovalafdd5ce2020-07-06 11:35:36 -050071 name: import_cc
Leonardo Sandovalafdd5ce2020-07-06 11:35:36 -050072 - string:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050073 name: TEST_DESC
Fathi Boudra18eca5c2020-01-16 17:50:42 +020074 - string:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050075 name: TF_GERRIT_PROJECT
Fathi Boudra18eca5c2020-01-16 17:50:42 +020076 default: 'TF-A/trusted-firmware-a'
77 - string:
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050078 name: TF_GERRIT_BRANCH
Fathi Boudra18eca5c2020-01-16 17:50:42 +020079 default: 'refs/heads/master'
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050080 - string:
81 name: TF_GERRIT_REFSPEC
82 default: '+refs/heads/master:refs/remotes/origin/master'
83 - string:
84 name: TFTF_GERRIT_PROJECT
85 default: 'TF-A/tf-a-tests'
86 - string:
87 name: TFTF_GERRIT_BRANCH
88 default: 'refs/heads/master'
89 - string:
90 name: TFTF_GERRIT_REFSPEC
91 default: '+refs/heads/master:refs/remotes/origin/master'
92 - string:
93 name: DOCKER_REGISTRY
94 default: '987685672616.dkr.ecr.us-east-1.amazonaws.com'
95 - string:
96 name: ARMLMD_LICENSE_FILE
Riku Voipioaf06a082021-08-24 13:58:13 +030097 default: '27000@flexnet.trustedfirmware.org'
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050098 - string:
99 name: JUNO_ROOTFS_URL
100 default: 'http://releases.linaro.org/openembedded/aarch64/17.01/linaro-image-minimal-genericarmv8-20170127-888.rootfs.tar.gz'
101 - string:
102 name: MBEDTLS_URL
Manish V Badarkhe2043c932021-04-14 12:38:29 +0100103 default: 'https://github.com/ARMmbed/mbedtls/archive/mbedtls-2.26.0.tar.gz'
Milosz Wasilewski10438582020-12-03 11:36:21 +0000104 - string:
105 name: GERRIT_PATCHSET_NUMBER
106 default: ''
107 - string:
108 name: GERRIT_CHANGE_NUMBER
109 default: ''
110 - string:
Milosz Wasilewski204a27e2020-12-10 10:29:45 +0000111 name: GERRIT_HOST
112 default: 'review.trustedfirmware.org'
113 - string:
Milosz Wasilewski10438582020-12-03 11:36:21 +0000114 name: QA_SERVER_TEAM
115 default: 'tf'
116 - string:
117 name: QA_SERVER_PROJECT
118 default: 'tf-a'
119 - string:
Leonardo Sandoval3791fe42021-05-12 11:52:54 -0500120 name: QA_SERVER_VERSION
121 default: ${BUILD_NUMBER}
122 - string:
Milosz Wasilewski10438582020-12-03 11:36:21 +0000123 name: QA_SERVER
124 default: 'https://qa-reports.linaro.org'
Leonardo Sandoval425ed9f2021-09-06 17:48:10 -0500125 - string:
126 name: QA_TOOLS_REPO
127 default: 'https://git.gitlab.arm.com/tooling/qa-tools.git'
Fathi Boudra9e402bf2019-12-05 11:16:41 +0200128 scm:
129 - tf-a-ci-scripts
Arthur She5fc74272021-03-26 21:24:34 -0700130 - tf-a-job-configs
Fathi Boudra9e402bf2019-12-05 11:16:41 +0200131 - trusted-firmware-a
132 - tf-a-tests
133 wrappers:
134 - timestamps
Fathi Boudrab4e04c02021-02-11 16:32:12 +0100135 - timeout:
136 timeout: 120
137 fail: true
Milosz Wasilewski10438582020-12-03 11:36:21 +0000138 - credentials-binding:
139 - text:
140 credential-id: QA_REPORTS_TOKEN
141 variable: QA_REPORTS_TOKEN
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600142 - credentials-binding:
143 - text:
144 credential-id: LAVA_USER_TF
145 variable: LAVA_USER
146 - credentials-binding:
147 - text:
148 credential-id: LAVA_TOKEN_TF
149 variable: LAVA_TOKEN
Fathi Boudra9e402bf2019-12-05 11:16:41 +0200150 builders:
151 - shell:
152 !include-raw: tf-a-builder/builders.sh
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500153 - conditional-step:
154 condition-kind: file-exists
155 on-evaluation-failure: dont-run
156 condition-filename: artefacts/debug/job.yaml
157 condition-basedir: workspace
158 steps:
159 - shell: |
160 #!/bin/bash
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500161 set -e
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500162 DEVICE_TYPE=fvp
163 CUSTOM_YAML_URL=${BUILD_URL}/artifact/artefacts/debug/job.yaml
164 DEVICE_TYPE=$(awk -F': ' '/device_type/ {print $2}' ${WORKSPACE}/artefacts/debug/job.yaml)
Fathi Boudraf5537c32021-01-21 09:28:05 +0100165 cat << EOF > ${WORKSPACE}/lava.param
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500166 DEVICE_TYPE=${DEVICE_TYPE}
Milosz Wasilewski10438582020-12-03 11:36:21 +0000167 LAVA_SERVER=tf.validation.linaro.org
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500168 EOF
Fathi Boudra9e402bf2019-12-05 11:16:41 +0200169 publishers:
170 - archive:
171 artifacts: 'artefacts/**'
172 latest-only: false
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500173 allow-empty: true
174 - conditional-publisher:
175 - condition-kind: file-exists
176 on-evaluation-failure: dont-run
177 condition-filename: artefacts/debug/job.yaml
178 condition-basedir: workspace
179 action:
Milosz Wasilewski10438582020-12-03 11:36:21 +0000180 - postbuildscript:
181 builders:
182 - role: SLAVE
183 build-on:
184 - SUCCESS
185 build-steps:
186 - inject:
Fathi Boudraf5537c32021-01-21 09:28:05 +0100187 properties-file: ${WORKSPACE}/lava.param
Leonardo Sandovale9450132021-04-19 13:51:11 -0500188 - shell: |
189 #!/bin/bash
190
191 squad='tf-a-job-configs/tf-a-builder/squad.sh'
192 if ! $squad; then
193 # Juno jobs may fail due to LAVA lab infrastructure issues (see
194 # https://projects.linaro.org/browse/LSS-2128) so we need to
195 # resubmit it if first job failed
196 if grep -q 'device_type: juno' artefacts/debug/job.yaml; then
197 if ! $squad; then
198 echo "LAVA JOB RESULT: 1"
199 fi
200 else
201 echo "LAVA JOB RESULT: 1"
202 fi
203 else
204 echo "LAVA JOB RESULT: 0"
205 fi
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600206 - conditional-publisher:
207 - condition-kind: file-exists
208 on-evaluation-failure: dont-run
Arthur She2586b5c2021-05-11 21:00:20 -0700209 condition-filename: lava-raw-debug.log
210 condition-basedir: workspace
211 action:
212 - archive:
213 artifacts: lava-raw-debug.log
214 latest-only: false
215 allow-empty: true
216 - conditional-publisher:
217 - condition-kind: file-exists
218 on-evaluation-failure: dont-run
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600219 condition-filename: lava.log
220 condition-basedir: workspace
221 action:
222 - archive:
Arthur She5fc74272021-03-26 21:24:34 -0700223 artifacts: lava.log, lava-uart?.log
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600224 latest-only: false
225 allow-empty: true
Milosz Wasilewski10438582020-12-03 11:36:21 +0000226 - groovy-postbuild:
227 script:
228 !include-raw:
Fathi Boudraf5537c32021-01-21 09:28:05 +0100229 - tf-a-builder/postbuild.groovy