arm-{CRATE}-main: add jobs to test different crates
* arm-fvp-base-pac
* arm-gic
* arm-pl011-uart
* arm-psci
* arm-sp805
* arm-xlat
* firmware-development-guide
Change-Id: Iece4975fd4df3a778ab2535e4beb0ed13e605fac
Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
diff --git a/arm-psci-main.yaml b/arm-psci-main.yaml
new file mode 100644
index 0000000..2ed64dc
--- /dev/null
+++ b/arm-psci-main.yaml
@@ -0,0 +1,126 @@
+- job:
+ name: arm-psci-main
+ node: docker-amd64-tf-a-jammy
+ project-type: multijob
+ concurrent: true
+ disabled: false
+ description: Main CI job for the arm-psci crate
+ properties:
+ - throttle:
+ option: project
+ enabled: true
+ max-total: 5
+ - build-discarder:
+ days-to-keep: 14
+ num-to-keep: 60
+ triggers:
+ - gerrit:
+ server-name: 'review.trustedfirmware.org'
+ projects:
+ - branches:
+ - branch-compare-type: PLAIN
+ branch-pattern: 'main'
+ project-compare-type: PLAIN
+ project-pattern: 'rust-spmc/arm-psci'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: true
+ exclude-trivial-rebase: false
+ exclude-no-code-change: true
+ exclude-private: true
+ exclude-wip: true
+ - comment-added-contains-event:
+ comment-contains-value: '^RUN_CI$'
+ override-votes: true
+ gerrit-build-started-verified-value: 0
+ gerrit-build-successful-verified-value: 1
+ gerrit-build-failed-verified-value: -1
+ gerrit-build-unstable-verified-value: -1
+ gerrit-build-notbuilt-verified-value: 0
+ # without explicitly setting these values to 0, the plugin will by
+ # default leave Code Review votes
+ gerrit-build-started-codereview-value: 0
+ gerrit-build-successful-codereview-value: 0
+ gerrit-build-failed-codereview-value: 0
+ gerrit-build-unstable-codereview-value: 0
+ gerrit-build-notbuilt-codereview-value: 0
+ silent: false
+ silent-start: false
+ parameters:
+ # GERRIT_{PROJECT,BRANCH,REFSPEC} are set when triggered by a Gerrit
+ # patchset - defaults below are for manual triggers
+ - string:
+ name: GERRIT_PROJECT
+ default: 'rust-spmc/arm-psci'
+ - string:
+ name: GERRIT_BRANCH
+ default: 'refs/heads/main'
+ - string:
+ name: GERRIT_REFSPEC
+ default: '+refs/heads/main:refs/remotes/origin/main'
+ description: |
+ 'e.g. refs/changes/13/31138/1'
+ - string:
+ name: ARM_PSCI_GERRIT_REFSPEC
+ default: ${GERRIT_REFSPEC}
+ description: |
+ 'do-not-amend: used by scripts/clone.sh to fetch the correct Gerrit patchset - use GERRIT_REFSPEC instead'
+ - string:
+ name: CI_REFSPEC
+ default: '+refs/heads/tfa-next:refs/remotes/origin/tfa-next'
+ description: |
+ 'Refs to fetch for the tf-a-ci-scripts repo e.g. refs/changes/13/31138/1'
+ - string:
+ name: JOBS_REFSPEC
+ default: 'refs/heads/master'
+ description: |
+ tf-a-job-configs refspec to use. The master branch is used by default.
+ - string:
+ name: TEST_FEATURES
+ description: 'Features the arm-psci crate will be tested against'
+ - string:
+ name: SHARE_FOLDER
+ default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
+ description: 'Folder containing shared repositories for downstream pipeline jobs'
+ - string:
+ name: CLONE_REPOS
+ default: "tf-a-ci-scripts,arm-psci"
+ description: |
+ 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.)
+ - string:
+ name: FETCH_SSH
+ default: 1
+ description: |
+ Fetch branches with authenticated SSH instead of anonymous HTTPS
+ wrappers:
+ - credentials-binding:
+ - ssh-user-private-key:
+ credential-id: TFA_CI_BOT_USER_SSH_KEY
+ key-file-variable: CI_BOT_KEY
+ username-variable: CI_BOT_USERNAME
+ passphrase-variable: ''
+ - workspace-cleanup
+ - timestamps
+ builders:
+ - shell:
+ !include-raw: scripts/clone.sh
+ - shell: |
+ #!/bin/bash
+ set -e
+ cat << EOF > tf-a-env.param
+ ARM_PSCI_GERRIT_PROJECT=${GERRIT_PROJECT}
+ ARM_PSCI_GERRIT_REFSPEC=${GERRIT_REFSPEC}
+ SHARE_FOLDER=${SHARE_FOLDER}
+ EOF
+ - multijob:
+ name: Platform independent tests
+ condition: COMPLETED
+ projects:
+ - name: generic-lib-testing
+ current-parameters: true
+ kill-phase-on: NEVER
+ predefined-parameters: |
+ TEST_REPO_NAME=arm-psci
+ TEST_REPO_PROJECT=rust-spmc
+ TEST_FEATURES=${TEST_FEATURES}
+ property-file: tf-a-env.param