blob: 2b0f738167b49f5f2aa311d99b0c5e4fbc429580 [file] [log] [blame]
- job:
name: tf-a-gerrit-tforg-l2
node: docker-amd64-tf-a-bionic
project-type: multijob
concurrent: true
disabled: false
description: |
Job that triggers for every TF-A patch approved with the Allow-CI+2
label on review.trustedfirmware.org.
properties:
- throttle:
option: project
enabled: true
max-total: 5
- build-discarder:
days-to-keep: 14
- authorization:
!include: authorization.yaml.inc
parameters:
- string:
name: GERRIT_PROJECT
default: 'TF-A/trusted-firmware-a'
- string:
name: GERRIT_BRANCH
default: 'refs/heads/integration'
- string:
name: GERRIT_REFSPEC
default: '+refs/heads/integration:refs/remotes/origin/integration'
- string:
name: GERRIT_PATCHSET_NUMBER
default: ''
- string:
name: GERRIT_CHANGE_NUMBER
default: ''
- string:
name: TF_GERRIT_REFSPEC
default: ${GERRIT_REFSPEC}
description: 'Parameter only used by the clone script'
- string:
name: SHARE_FOLDER
default: '/srv/shared/${JOB_NAME}/${BUILD_NUMBER}'
description: 'Folder containing shared repositories for downstream pipeline jobs'
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 > env.param
GERRIT_PATCHSET_NUMBER=${GERRIT_PATCHSET_NUMBER}
GERRIT_CHANGE_NUMBER=${GERRIT_CHANGE_NUMBER}
GERRIT_HOST=${GERRIT_HOST}
QA_SERVER_PROJECT=${JOB_NAME}
QA_SERVER_VERSION=${BUILD_NUMBER}
TF_GERRIT_PROJECT=${GERRIT_PROJECT}
TF_GERRIT_BRANCH=${GERRIT_BRANCH}
TF_GERRIT_REFSPEC=${GERRIT_REFSPEC}
SHARE_FOLDER=${SHARE_FOLDER}
EOF
- multijob:
condition: COMPLETED
name: Carry out level 1 tests
projects:
- kill-phase-on: NEVER
name: tf-a-gerrit-tforg-l1
current-parameters: true
property-file: env.param
- multijob:
condition: COMPLETED
name: Build Trusted Firmware
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=tf-l2-build-fvp tf-l2-build-juno
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
- multijob:
condition: COMPLETED
name: Run basic boot tests
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=tf-l1-boot-tests-aarch32 tf-l1-boot-tests-bl2_el3 tf-l1-boot-tests-cortex tf-l1-boot-tests-foundation tf-l1-boot-tests-gicv2 tf-l1-boot-tests-misc
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
- multijob:
condition: COMPLETED
name: TFTF tests
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=tftf-l1-fvp tftf-l1-juno tftf-l2-fvp-auxiliary tftf-l2-fvp-dynamiq tftf-l2-fwu tftf-l2-fvp
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
- multijob:
condition: COMPLETED
name: Boot up to the Linux shell prompt
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=tf-l1-boot-tests-juno tf-l2-boot-tests-aarch32 tf-l2-boot-tests-bl2_el3 tf-l2-boot-tests-cortex tf-l2-boot-tests-foundation tf-l2-boot-tests-juno tf-l2-boot-tests-latest tf-l2-boot-tests-misc tf-l2-boot-tests-rootfs tf-l2-boot-tests-spm-mm spm-l2-boot-tests
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
- multijob:
condition: COMPLETED
name: Coverity Scan
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=tf-l2-coverity-misra
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
- conditional-step:
condition-command: |-
[ "$NOMINATION_FILE" ]
condition-kind: shell
on-evaluation-failure: dont-run
steps:
- multijob:
condition: COMPLETED
name: Nominated tests
projects:
- kill-phase-on: NEVER
name: tf-a-ci-gateway
predefined-parameters: |
TEST_GROUPS=@$NOMINATION_FILE
TF_REFSPEC=$GERRIT_REFSPEC
property-file: env.param
triggers:
- gerrit:
server-name: review.trustedfirmware.org
trigger-on:
- comment-added-event:
approval-category: "Allow-CI"
approval-value: 2
projects:
- project-compare-type: PLAIN
project-pattern: TF-A/trusted-firmware-a
branches:
- branch-compare-type: PLAIN
branch-pattern: integration
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
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
failure-message: 'OpenCI: build failed'
successful-message: 'OpenCI: build successful'
unstable-message: 'OpenCI: build unstable'
notbuilt-message: 'OpenCI: no builds executed'
silent: false
silent-start: false