blob: 74d1d9ae54932bbc1cf6ee887f147893f2b4b7d3 [file] [log] [blame]
- job:
name: tf-a-eclair-daily
node: docker-tf-a-eclair-3.13
project-type: freestyle
concurrent: true
disabled: false
defaults: global
description: |
ECLAIR (MISRA compliance) testing of TF-A
properties:
- build-discarder:
days-to-keep: 40
parameters:
- string:
name: TF_CONFIG_LIST
default: |
fvp-aarch32-default fvp-aarch32-enable-runtime-instr fvp-aarch32-rst-to-sp-min fvp-boot-el3-payload fvp-default fvp-enable-runtime-instr fvp-ext-pstate-ea-el3 fvp-no-cohmem fvp-opteed fvp-r-default fvp-rst-bl31 fvp-tspd fvp-tspd-gicv2-symmetric-model fvp-tspd-irq2el3 fvp-tspd-quad-cluster fvp-tspd-tbb-mbedtls fvp-tspd-tsp-async juno-aarch32-rst-to-sp-min juno-aarch32-rst-to-sp-min-enable-runtime-instr juno-default juno-tspd
description: |
List of TF-A configs to build
- string:
name: MAKE_TARGET
default: ""
description: |
TF-A make target
- string:
name: MAKE_JOBS
default: "16"
description: |
--jobs to pass to make, etc.
- string:
name: DEBUG
default: "1"
description: |
TF-A make DEBUG setting
- string:
name: GERRIT_HOST
default: review.trustedfirmware.org
- string:
name: GERRIT_PROJECT
default: TF-A/trusted-firmware-a
description: |
Git project to build (also set by Gerrit trigger)
- string:
name: GERRIT_REFNAME
default: integration
description: |
Git branch to build (also set by Gerrit trigger)
- string:
name: GERRIT_NEWREV
default: ""
description: |
Git revision to build (also set by Gerrit ref-updated trigger)
- string:
name: MBEDTLS_URL
default: https://github.com/Mbed-TLS/mbedtls/archive/mbedtls-3.6.3.tar.gz
description: |
URL of mbedTLS library to use in build (only for some configurations)
- string:
name: SHARE_FOLDER
default: /srv/shared/${JOB_NAME}/${BUILD_NUMBER}
description: Folder containing shared repositories for downstream pipeline jobs
triggers:
- timed: H 2 * * *
# - gerrit:
# silent: true
# server-name: 'review.trustedfirmware.org'
# projects:
# - branches:
# - branch-compare-type: PLAIN
# branch-pattern: integration
# project-compare-type: PLAIN
# project-pattern: 'TF-A/trusted-firmware-a'
# trigger-on:
# - ref-updated-event
wrappers:
- timestamps
- timeout:
timeout: 420
fail: true
builders:
- shell: |
#!/bin/bash
set -ex
export PATH=~/.local/bin:$PATH
pwd
git clone https://git.trustedfirmware.org/ci/tf-a-ci-scripts.git
git clone https://git.trustedfirmware.org/ci/tf-ci-scripts.git
git clone https://${GERRIT_HOST}/${GERRIT_PROJECT} -b ${GERRIT_REFNAME}
ls -l
if [ -n "${GERRIT_NEWREV}" ]; then
(cd $(basename ${GERRIT_PROJECT}); git checkout ${GERRIT_NEWREV})
else
# Checkout last commit from yesterday, to have a stable commit for
# multiple builds.
(cd $(basename ${GERRIT_PROJECT}); git checkout $(git rev-list -n1 --before="today" HEAD))
fi
(cd $(basename ${GERRIT_PROJECT}); git log -n1)
export ECLAIR_CONFIG_DIR=$PWD/tf-a-ci-scripts/eclair
. tf-ci-scripts/eclair/utils.sh
# TODO
#. tf-a-ci-scripts/eclair/utils_tfa.sh
. tf-a-ci-scripts/eclair/eclair_vars.sh
detachLicense 600
trap "returnLicense || true" EXIT
export ECLAIR_ANALYSIS=ECLAIR
eclair_prepare
eclair_analyze tf-a-ci-scripts/eclair/build-tfa-multiple.sh
eclair_make_ecd
eclair_make_reports
eclair_compress_db
tf-ci-scripts/eclair/analyze_index_html.sh
publishers:
- archive:
artifacts: ECLAIR/**, index.html
excludes: ECLAIR/out/.data/**
latest-only: false
allow-empty: true