blob: 536473bd852e1190d8b6351754e36226d99ae6dd [file] [log] [blame]
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -05001- job:
Leonardo Sandovalffaee982021-11-11 10:27:57 -06002 name: tf-a-ci-gateway
Boyan Karatotev5c87c072023-02-10 11:04:58 +00003 node: docker-amd64-tf-a-jammy
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -05004 project-type: freestyle
5 concurrent: true
6 disabled: false
7 defaults: global
8 description: |
9 Main job entry point for a Trusted Firmware A (TF-A) CI.
10 properties:
11 - build-discarder:
Benjamin Copeland12a152f2022-03-18 13:16:44 +000012 days-to-keep: 15
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050013 - throttle:
14 option: project
15 enabled: true
16 max-per-node: 3
17 max-total: 10
18 - authorization:
Leonardo Sandovalebca8822021-01-25 18:20:04 -060019 !include: authorization.yaml.inc
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050020 wrappers:
21 - credentials-binding:
22 - ssh-user-private-key:
23 credential-id: TFA_CI_BOT_USER_SSH_KEY
24 key-file-variable: CI_BOT_KEY
25 username-variable: CI_BOT_USERNAME
26 passphrase-variable: ''
27 - workspace-cleanup
28 - timeout:
Paul Sokolovskyf1c59282023-05-10 10:47:12 +030029 timeout: 240
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050030 fail: true
31 - timestamps
32 parameters:
33 - string:
34 name: TEST_GROUPS
35 default: tf-l2-boot-tests-cortex/fvp-default:fvp-linux-dtb-fip.uboot-cortexa35x4-debug
36 description: |
37 White space separated list of test configs: can be mix of specific
38 test configs (e.g., <code>l1/fvp-default:fvp-linux-default</code>) and
39 group names (e.g., <code>l1 l2</code>).
Zelalem Awekee8801df2021-10-25 13:41:44 -050040 - string:
41 name: TF_GERRIT_REFSPEC
42 default: '+refs/heads/master:refs/remotes/origin/master'
43 description: |
44 trusted-firmware-a refspec to use. The master branch is used by default.
45 - string:
46 name: TFTF_GERRIT_REFSPEC
47 default: '+refs/heads/master:refs/remotes/origin/master'
48 description: |
49 tf-a-tests refspec to use. The master branch is used by default.
50 - string:
Jimmy Brisson66786582023-05-30 18:19:23 -050051 name: TF_M_TESTS_GERRIT_REFSPEC
52 default: '+refs/heads/master:refs/remotes/origin/master'
53 description: |
54 tf-m-tests refspec to use. The master branch is used by default.
55 - string:
56 name: TF_M_EXTRAS_GERRIT_REFSPEC
57 default: '+refs/heads/master:refs/remotes/origin/master'
58 description: |
59 tf-m-extras refspec to use. The master branch is used by default.
60 - string:
Zelalem Aweke7f8b8b22021-10-28 13:11:17 -050061 name: SPM_REFSPEC
62 default: '+refs/heads/master:refs/remotes/origin/master'
63 description: |
64 SPM(Hafnium) refspec to use. The master branch is used by default.
65 - string:
Zelalem Awekee8801df2021-10-25 13:41:44 -050066 name: CI_REFSPEC
67 default: '+refs/heads/master:refs/remotes/origin/master'
68 description: |
69 tf-a-ci-scripts refspec to use. The master branch is used by default.
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050070 - bool:
71 name: ENABLE_STATIC_CHECK
72 default: false
Leonardo Sandovald1b6b5a2021-09-13 12:06:26 -050073 - string:
Paul Sokolovskye09ea342023-02-13 23:24:04 +070074 name: QA_TOOLS_REPO
Paul Sokolovsky95327fa2023-03-22 19:20:00 +070075 default: 'https://git.gitlab.arm.com/tooling/qa-tools.git'
Paul Sokolovskye09ea342023-02-13 23:24:04 +070076 - string:
77 name: QA_TOOLS_BRANCH
Paul Sokolovsky95327fa2023-03-22 19:20:00 +070078 default: 'master'
Paul Sokolovskye09ea342023-02-13 23:24:04 +070079 - string:
Paul Sokolovsky8ac6b2b2023-12-30 01:38:51 +030080 name: USE_TUXSUITE_FVP
Paul Sokolovsky7b144a82024-01-25 17:33:06 +070081 default: 1
Paul Sokolovsky8ac6b2b2023-12-30 01:38:51 +030082 description: |
83 Whether to submit FVP tests via TuxSuite (instead of LAVA)
84 - string:
Leonardo Sandovald1b6b5a2021-09-13 12:06:26 -050085 name: SHARE_FOLDER
86 default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
87 description: 'Folder containing shared repositories for downstream pipeline jobs'
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050088 builders:
Leonardo Sandovald1b6b5a2021-09-13 12:06:26 -050089 - shell:
90 !include-raw: scripts/clone.sh
Fathi Boudra9c8a9452020-12-08 22:16:57 +010091 - shell: |
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -050092 #!/bin/bash
93 set -e
94 CI_ROOT=${PWD}/tf-a-ci-scripts
95 export workspace=$PWD
96 export test_groups=$TEST_GROUPS
97 $CI_ROOT/script/gen_test_desc.py
Leonardo Sandovald1b6b5a2021-09-13 12:06:26 -050098 cat << EOF > share.param
99 SHARE_FOLDER=${SHARE_FOLDER}
100 EOF
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500101 - trigger-builds:
102 - project:
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600103 - tf-a-builder
104 block: true
Leonardo Sandovald1b6b5a2021-09-13 12:06:26 -0500105 property-file: share.param
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500106 current-parameters: true
107 property-file-fail-on-missing: false
108 parameter-factories:
Paul Sokolovsky7be2e052021-11-08 14:45:01 +0300109 - factory: filebuild
110 file-pattern: '*.testprop'
Leonardo Sandovaldc2a03a2020-10-05 18:12:19 -0500111 no-files-found-action: FAIL
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600112 publishers:
113 - postbuildscript:
114 builders:
Leonardo Sandovalb1961662021-02-02 09:29:27 -0600115 - role: SLAVE
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600116 build-on:
117 - SUCCESS
118 - FAILURE
119 - UNSTABLE
120 - ABORTED
121 - NOT_BUILT
122 build-steps:
123 - shell: |-
124 #!/bin/bash -e
125 export CI_ROOT=${PWD}/tf-a-ci-scripts
126 bash "$CI_ROOT/job/tf-ci-gateway/generate_report.sh"
127 - archive:
Paul Sokolovsky78411542022-04-26 01:34:40 +0300128 artifacts: report.json, report.html, merge/outdir/**
Leonardo Sandoval9f159802021-01-20 16:47:25 -0600129 - groovy-postbuild:
130 script:
131 !include-raw:
Leonardo Sandovalffaee982021-11-11 10:27:57 -0600132 - tf-a-ci-gateway/postbuild.groovy