| - 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 |