blob: f894332fe046b5e3fad62558b5926039f060345e [file] [log] [blame]
Zachary Leaf5a9a2772024-10-15 15:07:23 +01001- job:
2 name: tf-a-main-tfa-next
3 node: docker-amd64-tf-a-jammy
4 project-type: multijob
5 concurrent: true
6 disabled: false
7 description: Main CI job for Trusted Firmware Next
8 properties:
9 - throttle:
10 option: project
11 enabled: true
12 max-total: 5
13 - build-discarder:
14 days-to-keep: 14
15 num-to-keep: 60
16 triggers:
17 - gerrit:
Zachary Leaf5a9a2772024-10-15 15:07:23 +010018 server-name: 'review.trustedfirmware.org'
19 projects:
20 - branches:
21 - branch-compare-type: PLAIN
Saheer Babu63e9d5d2025-02-12 13:47:50 +000022 branch-pattern: 'tfa-next'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010023 project-compare-type: PLAIN
Saheer Babu63e9d5d2025-02-12 13:47:50 +000024 project-pattern: 'TF-A/trusted-firmware-a'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010025 trigger-on:
26 - patchset-created-event:
27 exclude-drafts: true
Tomás González43ff3962024-11-12 12:24:33 +000028 exclude-trivial-rebase: false
Zachary Leaf5a9a2772024-10-15 15:07:23 +010029 exclude-no-code-change: true
30 exclude-private: true
31 exclude-wip: true
Zachary Leaf5b81ea02024-10-30 16:36:38 +000032 - comment-added-contains-event:
33 comment-contains-value: '^RUN_CI$'
Zachary Leaf9d17b662024-10-23 14:34:56 +010034 override-votes: true
35 gerrit-build-started-verified-value: 0
36 gerrit-build-successful-verified-value: 1
37 gerrit-build-failed-verified-value: -1
38 gerrit-build-unstable-verified-value: -1
39 gerrit-build-notbuilt-verified-value: 0
Zachary Leaf71632362024-11-04 16:36:05 +000040 # without explicitly setting these values to 0, the plugin will by
41 # default leave Code Review votes
42 gerrit-build-started-codereview-value: 0
43 gerrit-build-successful-codereview-value: 0
44 gerrit-build-failed-codereview-value: 0
45 gerrit-build-unstable-codereview-value: 0
46 gerrit-build-notbuilt-codereview-value: 0
Saheer Babu83bcc3d2025-02-25 13:40:18 +000047 silent: true
Zachary Leaf9d17b662024-10-23 14:34:56 +010048 silent-start: false
Zachary Leaf5a9a2772024-10-15 15:07:23 +010049 parameters:
50 # GERRIT_{PROJECT,BRANCH,REFSPEC} are set when triggered by a Gerrit
51 # patchset - defaults below are for manual triggers
52 - string:
53 name: GERRIT_PROJECT
54 default: 'TF-A/trusted-firmware-a'
55 - string:
56 name: GERRIT_BRANCH
57 default: 'refs/heads/tfa-next'
58 - string:
59 name: GERRIT_REFSPEC
60 default: '+refs/heads/tfa-next:refs/remotes/origin/tfa-next'
61 description: |
62 'e.g. refs/changes/13/31138/1'
63 - string:
64 name: TF_GERRIT_REFSPEC
65 default: ${GERRIT_REFSPEC}
66 description: |
67 'do-not-amend: used by scripts/clone.sh to fetch the correct Gerrit patchset - use GERRIT_REFSPEC instead'
68 - string:
Saheer Babu01b39d82025-02-12 14:15:11 +000069 name: TF_GERRIT_PROJECT
70 default: 'TF-A/trusted-firmware-a'
71 - string:
Zachary Leaf5a9a2772024-10-15 15:07:23 +010072 name: TFTF_GERRIT_PROJECT
73 default: 'TF-A/tf-a-tests'
74 - string:
75 name: TFTF_GERRIT_BRANCH
76 default: 'refs/heads/master'
77 - string:
78 name: TFTF_GERRIT_REFSPEC
79 default: '+refs/heads/master:refs/remotes/origin/master'
80 - string:
81 name: CI_REFSPEC
Saheer Babuea9fb402025-02-25 23:10:42 +000082 default: '+refs/heads/openci-migration-tfa-next:refs/remotes/origin/openci-migration-tfa-next'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010083 description: |
Zachary Leaf9d17b662024-10-23 14:34:56 +010084 'Refs to fetch for the tf-a-ci-scripts repo e.g. refs/changes/13/31138/1'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010085 - string:
Saheer Babub495f032025-01-21 23:01:11 +000086 name: JOBS_REFSPEC
Saheer Babuea9fb402025-02-25 23:10:42 +000087 default: 'refs/heads/openci-migration'
Saheer Babub495f032025-01-21 23:01:11 +000088 description: |
89 tf-a-job-configs refspec to use. The master branch is used by default.
90 - string:
Zachary Leaf5a9a2772024-10-15 15:07:23 +010091 name: SHARE_FOLDER
Zachary Leaf65d20a02024-10-22 09:25:47 +010092 default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010093 description: 'Folder containing shared repositories for downstream pipeline jobs'
94 - string:
95 name: CLONE_REPOS
96 default: "tf-a-ci-scripts,trusted-firmware-a"
97 description: |
98 Optional arg to clone only specific projects from default list (tf-a-ci-scripts,trusted-firmware-a,tf-a-tests,spm,tf-m-tests,tf-m-extras)
99 - string:
100 name: FETCH_SSH
101 default: 1
102 description: |
103 Fetch branches with authenticated SSH instead of anonymous HTTPS
104 wrappers:
105 - credentials-binding:
106 - ssh-user-private-key:
107 credential-id: TFA_CI_BOT_USER_SSH_KEY
108 key-file-variable: CI_BOT_KEY
109 username-variable: CI_BOT_USERNAME
110 passphrase-variable: ''
111 - workspace-cleanup
112 - timestamps
113 builders:
114 - shell:
115 !include-raw: scripts/clone.sh
116 - shell: |
117 #!/bin/bash
118 set -e
119 cat << EOF > tf-a-env.param
120 TF_GERRIT_PROJECT=${GERRIT_PROJECT}
121 TF_GERRIT_BRANCH=${GERRIT_BRANCH}
122 TF_GERRIT_REFSPEC=${GERRIT_REFSPEC}
123 SHARE_FOLDER=${SHARE_FOLDER}
124 EOF
125 - multijob:
Zachary Leaf28bc0012024-11-05 12:53:48 +0000126 name: Lint commit messages
127 condition: COMPLETED
128 projects:
129 - name: tf-a-commitlint-tfa-next
130 kill-phase-on: NEVER
131 predefined-parameters: |
132 REFSPEC=${GERRIT_REFSPEC}
133 REFNAME=${GERRIT_PATCHSET_REVISION}
134 REFNAME_BASE=origin/${GERRIT_BRANCH}
135 - multijob:
Zachary Leaf09235922024-11-01 17:52:16 +0000136 name: Code formatting, static checks and lints
137 condition: COMPLETED
138 projects:
139 - name: tf-a-static-tfa-next
140 current-parameters: true
141 kill-phase-on: NEVER
142 property-file: tf-a-env.param
143 - multijob:
Zachary Leaf5a9a2772024-10-15 15:07:23 +0100144 name: Build Trusted Firmware
145 condition: COMPLETED
146 projects:
147 - name: tf-a-ci-gateway-tfa-next
148 alias: tf-next-build
149 current-parameters: true
150 kill-phase-on: NEVER
151 predefined-parameters: |
152 TEST_GROUPS=tf-next-build
153 property-file: tf-a-env.param
Tomás Gonzálezf107cf82024-11-13 11:35:49 +0000154 - multijob:
155 name: FVP Tests
156 condition: COMPLETED
157 projects:
158 - name: tf-a-ci-gateway-tfa-next
159 alias: rfa-fvp
160 current-parameters: true
161 kill-phase-on: NEVER
162 predefined-parameters: |
163 TEST_GROUPS=rfa-fvp
164 property-file: tf-a-env.param