blob: 2fffca4409ab74412d90272e41bfa81d11c04089 [file] [log] [blame]
Tomás Gonzálezda115e22025-06-09 16:20:23 +01001- job:
2 name: arm-psci-main
3 node: docker-amd64-tf-a-jammy
4 project-type: multijob
5 concurrent: true
6 disabled: false
7 description: Main CI job for the arm-psci crate
8 properties:
Chris Kaybb674402025-06-24 15:20:02 +01009 - throttle:
10 option: project
11 enabled: true
12 max-total: 5
13 - build-discarder:
14 days-to-keep: 14
15 num-to-keep: 60
Tomás Gonzálezda115e22025-06-09 16:20:23 +010016 parameters:
Chris Kaybb674402025-06-24 15:20:02 +010017 # GERRIT_{PROJECT,BRANCH,REFSPEC} are set when triggered by a Gerrit
18 # patchset - defaults below are for manual triggers
19 - string:
20 name: GERRIT_PROJECT
Tomás González411d7392025-08-15 11:04:54 +010021 default: arm-firmware-crates/arm-psci
Chris Kaybb674402025-06-24 15:20:02 +010022 - string:
23 name: GERRIT_BRANCH
24 default: refs/heads/main
25 - string:
26 name: GERRIT_REFSPEC
27 default: +refs/heads/main:refs/remotes/origin/main
28 description: |
29 'e.g. refs/changes/13/31138/1'
30 - string:
31 name: ARM_PSCI_GERRIT_REFSPEC
32 default: ${GERRIT_REFSPEC}
33 description: |
34 'do-not-amend: used by scripts/clone.sh to fetch the correct Gerrit patchset - use GERRIT_REFSPEC instead'
35 - string:
36 name: CI_REFSPEC
37 default: +refs/heads/tfa-next:refs/remotes/origin/tfa-next
38 description: |
39 'Refs to fetch for the tf-a-ci-scripts repo e.g. refs/changes/13/31138/1'
40 - string:
41 name: JOBS_REFSPEC
42 default: refs/heads/master
43 description: |
44 tf-a-job-configs refspec to use. The master branch is used by default.
45 - string:
46 name: TEST_FEATURES
47 description: Features the arm-psci crate will be tested against
48 - string:
49 name: SHARE_FOLDER
50 default: /srv/shared/staging/${JOB_NAME}/${BUILD_NUMBER}
51 description: Folder containing shared repositories for downstream pipeline jobs
52 - string:
53 name: CLONE_REPOS
54 default: tf-a-ci-scripts,arm-psci
55 description: |
56 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,etc.)
Tomás Gonzálezda115e22025-06-09 16:20:23 +010057 wrappers:
58 - credentials-binding:
59 - ssh-user-private-key:
60 credential-id: TFA_CI_BOT_USER_SSH_KEY
61 key-file-variable: CI_BOT_KEY
62 username-variable: CI_BOT_USERNAME
Chris Kaybb674402025-06-24 15:20:02 +010063 passphrase-variable: ""
Tomás Gonzálezda115e22025-06-09 16:20:23 +010064 - workspace-cleanup
65 - timestamps
66 builders:
Chris Kaybb674402025-06-24 15:20:02 +010067 - shell: !include-raw: scripts/clone.sh
68 - shell: |
69 #!/bin/bash
70 set -e
71 cat << EOF > tf-a-env.param
72 ARM_PSCI_GERRIT_PROJECT=${GERRIT_PROJECT}
73 ARM_PSCI_GERRIT_REFSPEC=${GERRIT_REFSPEC}
74 SHARE_FOLDER=${SHARE_FOLDER}
75 EOF
76 - multijob:
77 name: Platform independent tests
78 condition: COMPLETED
79 projects:
80 - name: generic-lib-testing
81 current-parameters: true
82 kill-phase-on: NEVER
83 predefined-parameters: |
84 TEST_REPO_NAME=arm-psci
Tomás González411d7392025-08-15 11:04:54 +010085 TEST_REPO_PROJECT=arm-firmware-crates
Chris Kaybb674402025-06-24 15:20:02 +010086 TEST_FEATURES=${TEST_FEATURES}
87 property-file: tf-a-env.param