AgeCommit message (Collapse)Author
12 dayshafnium: Add python package (FDT)HEADmasterBenjamin Copeland
Signed-off-by: Benjamin Copeland <ben.copeland@linaro.org> Change-Id: Ie8ec3231fd98d51892294f14332c1b424ad2fe96
2020-12-29TF-A: upgrade Arm GCC toolchain to 10.2-2020.11Fathi Boudra
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I7f94cee5b7f1c94c042fa2dcb1eff6c65943cc07
2020-12-17TF-M: set git default configFathi Boudra
cppcheck test requires to build mbedcrypto, which fails with a cmake fatal error: fatal: unable to auto-detect email address Set a git default config to avoid this error. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ice1337777ea294e0b93c573137fa9780c544a864
2020-12-17TF-M: add a new image used for QEMU device type in LAVAFathi Boudra
It will replace kevintownsend/lite-qemu5:v1 container. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I96d0f3c3a39dfefac862bc3947a8f6eea7a7f536
2020-11-27Jenkins: Add rich text publisher pluginBenjamin Copeland
As requested by TF-A project Signed-off-by: Benjamin Copeland <ben.copeland@linaro.org> Change-Id: I8c7f207e5d432243c2fa6630dcbef9ddfd6beacc
2020-11-24TF: upgrade CMake from 3.15.0 to 3.15.7Fathi Boudra
Avoid CMake build-dependency to rot. CMake 3.15.0 is very old. The 3.15.x serie received several bugfix releases since 3.15.0 release. CMake 3.15.0 has been released on July 2019. CMake 3.15.7 has been released on February 2020. Previous 3.15.x serie changelogs: https://cmake.org/cmake/help/v3.15/release/3.15.html https://blog.kitware.com/cmake-3-15-5-available-for-download/ https://blog.kitware.com/cmake-3-15-6-available-for-download/ https://blog.kitware.com/cmake-3-15-7-available-for-download/ Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ia82bbe770ecb78fc052b15f2318b662e60699a8d
2020-11-23TF-A: Do not remove all android zipsLeonardo Sandoval
Limit removal to only fvp*-android-*.zip thus juno related ones remain and can be used by the follwing test descriptions tf-l2-boot-tests-juno/juno-mbedtls-rsa-opteed:juno-linux.optee tf-l2-boot-tests-juno/juno-mbedtls-ecdsa-opteed:juno-linux.optee Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: If4c10fe28bcbeaac17d436ae5383228f5f28614b
2020-11-20TF-A: create /arm folder and chown to buildslaveLeonardo Sandoval
There is a temporary need to create softlinks (to be created at runtime, by CI jobs) on top of /arm folder, these pointing to TOOLS_DIR folder, so paths at CI scripts' tf_config folder, currently pointing to /arm are not required to change at this point. Ultimately, the reason not to change the /arm paths at CI scripts is that Arm CI is running and cannot be stopped, so once CR01 migration is over and all jobs running, then Arm CI can fully move to Open CI. One this happens, this patch can be reverted. CR01 https://developer.trustedfirmware.org/w/collaboration/openci/ Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Idb9d4a70bb3d134df65cc250cd862dcec87f28d5
2020-11-20chown to buildslave the linaro download folderLeonardo Sandoval
Besides the Linaro platform binaries, several files are copy and look up under this folder, thus enable buildslave permission. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Ifb091fb1cbff92718d953cebf9519af7634ad067
2020-11-20TF: preserve environment variables on ssh loginFathi Boudra
We're using docker with sshd. ENV aren't preserved. In addition, it keeps the environment variables settings in a single place, within the docker image itself. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I06005c608c2e6c6a22c0ed1acf4b84addcee22fc
2020-11-19TF-M: add ARMLMD_LICENSE_FILE environment variableFathi Boudra
ARMLMD_LICENSE_FILE is used by Arm Clang. It looks like a duplicate of the existing LICENSE_VARIABLE but the latter is used to substitute a string in the FVP jinija2 template used for LAVA. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I85bcc0afc4afca4e0ff64e64535ef00650aa051d
2020-11-18TF-A: Curl retryBenjamin Copeland
We should add a retry count to all curl commands. This will limit the possibility of failures when if there are any connection issues. Signed-off-by: Benjamin Copeland <ben.copeland@linaro.org> Change-Id: I693e4b61f79c58b516c45121c84bdd9667f6d7da
2020-11-18TF: add plantuml wrapper scriptLeonardo Sandoval
TF-A documentation build triggers the following python exception: Exception occurred: File "/usr/local/lib/python3.6/dist-packages/sphinxcontrib/plantuml.py", line 352, in _prepare_html_render self.builder.warn(str(err)) AttributeError: 'StandaloneHTMLBuilder' object has no attribute 'warn' The full traceback has been saved in /tmp/sphinx-err-oyao8gvj.log, if you want to report the issue to the developers. Please also report this if it was a user error, so that a better error message can be provided next time. A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks! Makefile:25: recipe for target 'html' failed make[2]: *** [html] Error 2 Makefile:1295: recipe for target 'doc' failed make[1]: *** [doc] Error 2 It's caused by sphinx trying to run plantuml command which doesn't exist since we install the jar manually. Add a wrapper shell script to fix the issue. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ie48273ee50581ca7c32f13629f6e95b18882b912
2020-11-11TF-A: fix Arm Clang 6.8 installationFathi Boudra
The tarball URL is incorrect. We install 6.13 twice. Fix the URL and the tarball name. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I9a49ab82d9dec2c9af1ba4b9175c08f5c9dfe176
2020-11-11TF: cmake: use the github mirrorFathi Boudra
We see connection timeout on cmake.org: curl: (7) Failed to connect to cmake.org port 443: Connection timed out Try the github mirror instead. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I438041633c72d83e1f0705de453ac5ee691e7947
2020-11-11TF: cmake: retries harder with curlFathi Boudra
Pass --connect-timeout 5 --retry 5 --retry-delay 1 parameters to curl, to be more resilient on connection time out failures: curl: (7) Failed to connect to cmake.org port 443: Connection timed out Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I0e8e38b42de661e385efd5efe65d01171906d6df
2020-11-11TF-A: minor cosmetic changesFathi Boudra
* Use 2 spaces for the URLs. * Re-order Clang versions (6.8, 6.13. 10.0) Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ib9ce475c71106a771bea2f3be540ac880bcb95d3
2020-11-11TF-A: Install clang 10.0.0 toolchainLeonardo Sandoval
The following TF configs requires clang as a toolchain: * fvp-default-clang * fvp-default-clang-bfd * juno-default-clang Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I447fa56afbe67e7571a5ae783b525aa5e7d7eaac
2020-11-11TF-M: add environment variables used by the CI scriptsFathi Boudra
They can be overriden (per instance) in: -> Jenkins configure system -> global properties -> environment variables Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I4d76103ec2bdbcf895d0b48ae95dbdb8d56452fb
2020-11-10TF-A: Install armclang 6.8 toolchainLeonardo Sandoval
The armclang 6.8 toolchain is used by the following build configurations: * juno-default-armclang * fvp-default-armclang Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I92c6785164f3ba981bc0879f879076044d640a3c
2020-11-10TF-M: revert to use semicolon separator in the RUN commandFathi Boudra
revert https://review.trustedfirmware.org/c/ci/dockerfiles/+/6672 It was working as expected, as long as we keep "set -e" in the RUN command. Split toolchains and binaries install into a shell script. it's easier to read and maintain a shell script than bundle it into a Dockerfile. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ib0d0dfd26c7ef3602547113a5172c1021c9e3ac2
2020-11-10hafnium: revert to use semicolon separator in the RUN commandFathi Boudra
revert https://review.trustedfirmware.org/c/ci/dockerfiles/+/6672 It was working as expected, as long as we keep "set -e" in the RUN command. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ifb6e0f6c3cbb781013eeaafd7d037dc528749378
2020-11-10TF-A: split toolchains and binaries install into a shell scriptFathi Boudra
it's easier to read and maintain a shell script than bundle it into a Dockerfile. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I2478c928a2198225456c866276882a9e423acb3f
2020-11-10TF-A: revert to use semicolon separator in the RUN commandFathi Boudra
revert https://review.trustedfirmware.org/c/ci/dockerfiles/+/6672 It was working as expected, as long as we keep "set -e" in the RUN command. We want to limit RUN commands as much possible to reduce the number of layers. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I78a687c24c0fb53ce252a441837b8e4df1076b5d
2020-11-10Remove Jenkins remoting supportFathi Boudra
As we don't use ECS anymore, remove jenkins remoting support deprecated in favor of sshd approach. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Ifc6dc9449be3290a766c3773b20fcd571408b4f4
2020-11-10TF-M: we don't use Arm platforms binariesFathi Boudra
remove binaries pulled from https://releases.linaro.org/members/arm/platforms as TF-M CI isn't using them. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I5d70de79974e6d85c38df75b6e5986f778ab9969
2020-11-10remove jenkins-slave filesLeonardo Sandoval
There is no need to use jenkins slaves because now the communication is with through ssh daemon (sshd) Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: If77cbb629748660104e5675311d8bc40c57492c5
2020-11-08tf-a: remove zip files to reduce the image sizeFathi Boudra
We don't use android binaries, SGI575/SGM775 platforms and don't need to keep the zip files bundled in the container. It reduces the images size from 16.5G to 6.5G. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: I1da73cf73e48ba98a19e06fd08658761eecadf56
2020-11-08tf-a: remove clang-tools-6.0 duplicateFathi Boudra
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: If0f3dc3544cd556b80b398b9c79f1c376c5d849b
2020-11-07include GNU GCC Linaro 6.2.1 toolchain into the docker imageLeonardo Sandoval
There are some platforms, i.e. marvell, that requires this particular toolchain so node should suppport it. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Ia7db4a75fb84f563a69e366d5060713a8888d9d3
2020-11-06include file packageLeonardo Sandoval
The tool 'file' is used in the CI script, so install it in the docker image. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Id9a2992dabb5c6ef989dcabce0cff417ea25c30d
2020-11-06jenkins: update to latest LTS (2.249.3)Fathi Boudra
* Fix extensions footer location (regression in 2.235.1). (issue 63798) * Show display names in change list again (regression in 2.249.1). (issue 63712) * Prevent radio buttons from moving when they are clicked. (issue 63332) Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Change-Id: Iedef2a424e9b9c106174d9f1a048f6d574235c28
2020-11-06bionic-amd64-tf-a-build: add deps for lava-test-plansMilosz Wasilewski
Signed-off-by: Milosz Wasilewski <milosz.wasilewski@linaro.org> Change-Id: I46bd23d41dfff71eb22f6f340c09fb03fc5d1982
2020-11-05Include llvm linkerLeonardo Sandoval
Install the LLVM linker; at least one test configuration requires it, i.e fvp-default-clang,nil,nil,nil:nil, otherwise we see this log on the build phase Makefile:237: *** "No ld.lld in PATH, make sure it is installed or set LD to a different linker". Stop. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I86e86ec14795ac83a212c92b58bdff21e0f0a9f1
2020-11-02bump linaro version platforms to 20.01Leonardo Sandoval
This is the versions currently being used by CI scripts. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I56962709eee0a1cfc5c76274d957aab3ee768eca
2020-11-02install clang-tools-6.0 packageLeonardo Sandoval
The clang-tools-6.0 package contains a 'scan-build' tool, required by CI scripts. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I8c3155756491f9c024908ca29a8404d3fe6a7bb8
2020-11-02jenkins: add postbuildscript pluginMilosz Wasilewski
Signed-off-by: Milosz Wasilewski <milosz.wasilewski@linaro.org> Change-Id: I9d699afa06efa408236d8225646c1b5697f86056
2020-10-30ignore .docker-tag files created on the build processLeonardo Sandoval
These files are not relevant so git-ignore them, leading to a less noisy git-status. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I1342d0008ceeeb5f581a1accc04c489da330b53e
2020-10-30use bash AND (&&) instead of command-separator (;) on docker imagesLeonardo Sandoval
Otherwise, image build phases yield images even though there may be erros in the build process. For example, the following image is built however there is a command that fails (false command) echo -e 'FROM ubuntu:bionic\nRUN false; true' | docker build - Sending build context to Docker daemon 2.048kB Step 1/2 : FROM ubuntu:bionic ---> 56def654ec22 Step 2/2 : RUN false; true ---> Running in 85759437ee6b Removing intermediate container 85759437ee6b ---> 44ee5447fd5d Successfully built 44ee5447fd5d versus this image that fails (correctly) due to errors echo -e 'FROM ubuntu:bionic\nRUN false && true' | docker build - Sending build context to Docker daemon 2.048kB Step 1/2 : FROM ubuntu:bionic ---> 56def654ec22 Step 2/2 : RUN false && true ---> Running in f4b9ac94bf12 The command '/bin/sh -c false && true' returned a non-zero code: 1 Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Iea48194869c884fc6d3d6c64a1fd6ea7be41ec84
2020-10-30Populate Hafnium image name based on dynamic valuesLeonardo Sandoval
Avoid hardcoding the hafnium image name and instead use folder values to create the image name. Also suffix the 'ubuntu' string into the image following the new image name nomemclature from parent commit, so now the image name would be trustedfirmware/ci-amd64-hafnium-ubuntu:bionic instead of trustedfirmware/ci-amd64-hafnium:bionic. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I206b35eb9f8c897e6b63eef7d733fee8e3db8083
2020-10-30Introduce bionic-amd64-tf-a-build dockerfile and build infrastructureLeonardo Sandoval
There is a need to have separate docker images, each one targeted for specific project, i.e. TF-A, TF-M and Hafnium, otherwise some toolchain triplets may collide, i.e arm-none-eabi for M-Profiles and arm-none-eabi for A-profiles, or there could be different toolchain versions requirements as seen in [1,2]. This commit introduce the definition of the docker image (Dockerfile), its dependencies and build script for the TF-A project. At this moment, the only difference between TF-A and TF-M dockerfile is the arm-none-eabi, each targeting its profile. As a consequence of this new image, the corresponding project-name is now part of the image, leading to two new images: * trustedfirmware/ci-amd64-tf-a-ubuntu:bionic * trustedfirmware/ci-amd64-tf-m-ubuntu:bionic [1] https://trustedfirmware-a.readthedocs.io/en/latest/getting_started/prerequisites.html?highlight=arm-none-eabi-gcc#toolchain [2] https://ci.trustedfirmware.org/view/TF-M/job/tf-m-build-docs-nightly/lastStableBuild/artifact/trusted-firmware-m/build/install/doc/user_guide/html/docs/getting_started/tfm_sw_requirement.html Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: Ia36551b29818d57dc08fb839032a16474dc59b79
2020-10-27Jenkins: Roll back GIT to 4.3.0Benjamin Copeland
Change-Id: I2a9404bd02d3c1921a6ab380cd59c797b3abbf53
2020-10-26Jenkins: Downgrade GIT pluginBenjamin Copeland
Noticed by Riku, we need to downgrade this plugin as a temp fix so TF-M can update there job config to checkout branch:master instead of "refs/heads/master" Signed-off-by: Benjamin Copeland <ben.copeland@linaro.org> Change-Id: I27c2ef886162666ad7b39378d8dc5ad4286e0cb7
2020-10-19Revert "Fetch and install Coverity on-line tool"Riku Voipio
This reverts commit ade88fcb5f50b8d47d930cb6b7d8aa0d7f6a81c8. Reason for revert: we can't embed the token here Change-Id: I56db900a411a813680dd016e09ad399c81829e97
2020-10-16Fetch and install Coverity on-line toolLeonardo Sandoval
Coverity is a static code analysis tool that is used in both TF core projects. Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I0a9f50d4badfce7270731ab432c3e9087b6a6492
2020-10-15Fetch and unzip Linaro's platform filesLeonardo Sandoval
Currently, the builders.sh [1] script fetches Linaro's platform files everytime a job runs but this can be avoided if the latter are already present on the image. [1] https://git.trustedfirmware.org/ci/tf-a-job-configs.git/tree/tf-a-builder/builders.sh Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I8736a73231111ae3304965268723b431013ab69d
2020-10-15Install clang-tools-6.0 packageLeonardo Sandoval
The clang-tools contains 'scan-build' binary, used for static analysis checks at TF-A project [1]. [1] https://git.trustedfirmware.org/ci/tf-a-ci-scripts.git/tree/script/scan_build_wrapper.sh Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I909b264f880821f61a1e49bafb11737f77c863f5
2020-10-15Include libxml-libxml-perl packageLeonardo Sandoval
The libxml package is required to build TF-A tests as indicated in [1] otherwise build failures are encountered when building tftf related test configs. [1] https://trustedfirmware-a-tests.readthedocs.io/en/latest/getting_started/requirements.html#build-host Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org> Change-Id: I0c22a219f27a5164037764604cbf23d7790c1e88
2020-10-12Fix flexible plugin nameRiku Voipio
Signed-off-by: Riku Voipio <riku.voipio@linaro.org> Change-Id: Ia9356b415836c05155c0a317bc7f163c5769b903
2020-10-12LTS and plugin updateRiku Voipio
Signed-off-by: Riku Voipio <riku.voipio@linaro.org> Change-Id: I6893092fc1681545beee6bd8d6eb55f024f78cdd