blob: fea67ed9248e863f49ed936215f5ae73056d8a13 [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:
Saheer Babu63e9d5d2025-02-12 13:47:50 +000018 silent: true
Zachary Leaf5a9a2772024-10-15 15:07:23 +010019 server-name: 'review.trustedfirmware.org'
20 projects:
21 - branches:
22 - branch-compare-type: PLAIN
Saheer Babu63e9d5d2025-02-12 13:47:50 +000023 branch-pattern: 'tfa-next'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010024 project-compare-type: PLAIN
Saheer Babu63e9d5d2025-02-12 13:47:50 +000025 project-pattern: 'TF-A/trusted-firmware-a'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010026 trigger-on:
27 - patchset-created-event:
28 exclude-drafts: true
Tomás González43ff3962024-11-12 12:24:33 +000029 exclude-trivial-rebase: false
Zachary Leaf5a9a2772024-10-15 15:07:23 +010030 exclude-no-code-change: true
31 exclude-private: true
32 exclude-wip: true
Zachary Leaf5b81ea02024-10-30 16:36:38 +000033 - comment-added-contains-event:
34 comment-contains-value: '^RUN_CI$'
Zachary Leaf9d17b662024-10-23 14:34:56 +010035 override-votes: true
36 gerrit-build-started-verified-value: 0
37 gerrit-build-successful-verified-value: 1
38 gerrit-build-failed-verified-value: -1
39 gerrit-build-unstable-verified-value: -1
40 gerrit-build-notbuilt-verified-value: 0
Zachary Leaf71632362024-11-04 16:36:05 +000041 # without explicitly setting these values to 0, the plugin will by
42 # default leave Code Review votes
43 gerrit-build-started-codereview-value: 0
44 gerrit-build-successful-codereview-value: 0
45 gerrit-build-failed-codereview-value: 0
46 gerrit-build-unstable-codereview-value: 0
47 gerrit-build-notbuilt-codereview-value: 0
Zachary Leaf9d17b662024-10-23 14:34:56 +010048 silent: false
49 silent-start: false
Zachary Leaf5a9a2772024-10-15 15:07:23 +010050 parameters:
51 # GERRIT_{PROJECT,BRANCH,REFSPEC} are set when triggered by a Gerrit
52 # patchset - defaults below are for manual triggers
53 - string:
54 name: GERRIT_PROJECT
55 default: 'TF-A/trusted-firmware-a'
56 - string:
57 name: GERRIT_BRANCH
58 default: 'refs/heads/tfa-next'
59 - string:
60 name: GERRIT_REFSPEC
61 default: '+refs/heads/tfa-next:refs/remotes/origin/tfa-next'
62 description: |
63 'e.g. refs/changes/13/31138/1'
64 - string:
65 name: TF_GERRIT_REFSPEC
66 default: ${GERRIT_REFSPEC}
67 description: |
68 'do-not-amend: used by scripts/clone.sh to fetch the correct Gerrit patchset - use GERRIT_REFSPEC instead'
69 - string:
70 name: TFTF_GERRIT_PROJECT
71 default: 'TF-A/tf-a-tests'
72 - string:
73 name: TFTF_GERRIT_BRANCH
74 default: 'refs/heads/master'
75 - string:
76 name: TFTF_GERRIT_REFSPEC
77 default: '+refs/heads/master:refs/remotes/origin/master'
78 - string:
79 name: CI_REFSPEC
80 default: '+refs/heads/tfa-next:refs/remotes/origin/tfa-next'
81 description: |
Zachary Leaf9d17b662024-10-23 14:34:56 +010082 'Refs to fetch for the tf-a-ci-scripts repo e.g. refs/changes/13/31138/1'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010083 - string:
Saheer Babub495f032025-01-21 23:01:11 +000084 name: JOBS_REFSPEC
85 default: 'refs/heads/master'
86 description: |
87 tf-a-job-configs refspec to use. The master branch is used by default.
88 - string:
Zachary Leaf5a9a2772024-10-15 15:07:23 +010089 name: SHARE_FOLDER
Zachary Leaf65d20a02024-10-22 09:25:47 +010090 default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
Zachary Leaf5a9a2772024-10-15 15:07:23 +010091 description: 'Folder containing shared repositories for downstream pipeline jobs'
92 - string:
93 name: CLONE_REPOS
94 default: "tf-a-ci-scripts,trusted-firmware-a"
95 description: |
96 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)
97 - string:
98 name: FETCH_SSH
99 default: 1
100 description: |
101 Fetch branches with authenticated SSH instead of anonymous HTTPS
102 wrappers:
103 - credentials-binding:
104 - ssh-user-private-key:
105 credential-id: TFA_CI_BOT_USER_SSH_KEY
106 key-file-variable: CI_BOT_KEY
107 username-variable: CI_BOT_USERNAME
108 passphrase-variable: ''
109 - workspace-cleanup
110 - timestamps
111 builders:
112 - shell:
113 !include-raw: scripts/clone.sh
114 - shell: |
115 #!/bin/bash
116 set -e
117 cat << EOF > tf-a-env.param
118 TF_GERRIT_PROJECT=${GERRIT_PROJECT}
119 TF_GERRIT_BRANCH=${GERRIT_BRANCH}
120 TF_GERRIT_REFSPEC=${GERRIT_REFSPEC}
121 SHARE_FOLDER=${SHARE_FOLDER}
122 EOF
123 - multijob:
Zachary Leaf28bc0012024-11-05 12:53:48 +0000124 name: Lint commit messages
125 condition: COMPLETED
126 projects:
127 - name: tf-a-commitlint-tfa-next
128 kill-phase-on: NEVER
129 predefined-parameters: |
130 REFSPEC=${GERRIT_REFSPEC}
131 REFNAME=${GERRIT_PATCHSET_REVISION}
132 REFNAME_BASE=origin/${GERRIT_BRANCH}
133 - multijob:
Zachary Leaf09235922024-11-01 17:52:16 +0000134 name: Code formatting, static checks and lints
135 condition: COMPLETED
136 projects:
137 - name: tf-a-static-tfa-next
138 current-parameters: true
139 kill-phase-on: NEVER
140 property-file: tf-a-env.param
141 - multijob:
Zachary Leaf5a9a2772024-10-15 15:07:23 +0100142 name: Build Trusted Firmware
143 condition: COMPLETED
144 projects:
145 - name: tf-a-ci-gateway-tfa-next
146 alias: tf-next-build
147 current-parameters: true
148 kill-phase-on: NEVER
149 predefined-parameters: |
150 TEST_GROUPS=tf-next-build
151 property-file: tf-a-env.param
Tomás Gonzálezf107cf82024-11-13 11:35:49 +0000152 - multijob:
153 name: FVP Tests
154 condition: COMPLETED
155 projects:
156 - name: tf-a-ci-gateway-tfa-next
157 alias: rfa-fvp
158 current-parameters: true
159 kill-phase-on: NEVER
160 predefined-parameters: |
161 TEST_GROUPS=rfa-fvp
162 property-file: tf-a-env.param