tf-a-eclair-daily: New version of job, producing cumulative report
Across all configs being built.
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
Change-Id: I20c7473ba7ecd76479e11bc8f43ea5fd7457a9a3
diff --git a/tf-a-eclair-daily.yaml b/tf-a-eclair-daily.yaml
new file mode 100644
index 0000000..d349072
--- /dev/null
+++ b/tf-a-eclair-daily.yaml
@@ -0,0 +1,156 @@
+- job:
+ name: tf-a-eclair-daily
+ node: docker-tf-a-eclair
+ project-type: freestyle
+ concurrent: true
+ disabled: false
+ defaults: global
+ Description: |
+ ECLAIR (MISRA compliance) testing of TF-A
+ properties:
+ - build-discarder:
+ days-to-keep: 40
+ - authorization:
+ !include: authorization.yaml.inc
+ 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.4.0.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: 300
+ fail: true
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -ex
+ 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
+
+ export CROSS_COMPILE=aarch64-none-elf-
+ export CROSS_COMPILE2=arm-none-eabi-
+ export CC_ALIASES="${CROSS_COMPILE}gcc"
+ export CC_ALIASES="${CC_ALIASES} ${CROSS_COMPILE2}gcc"
+ export CXX_ALIASES="${CROSS_COMPILE}g++"
+ export LD_ALIASES="${CROSS_COMPILE}ld"
+ export AR_ALIASES="${CROSS_COMPILE}ar"
+ export AS_ALIASES="${CROSS_COMPILE}as"
+ export FILEMANIP_ALIASES="cp mv ${CROSS_COMPILE}objcopy"
+ export ECLAIR_PROJECT_NAME="TF_A_${JOB_NAME}_${BUILD_NUMBER}"
+ export ECLAIR_PROJECT_ROOT="${WORKSPACE}/trusted-firmware-a"
+
+ detachLicense 600
+ trap "returnLicense" 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
+ - email:
+ recipients: 'paul.sokolovsky@linaro.org'