summaryrefslogtreecommitdiff
path: root/tools/docker
AgeCommit message (Collapse)Author
2025-07-25Docker, CI: Update to latest Ubuntu and DockerfileTom Rini
- Update to Ubuntu "Jammy" 20250714 tag - Update to current Dockerfile which brings us QEMU 10.0.2 and newer coreboot and pulls in lz4 via the non-legacy package name. Signed-off-by: Tom Rini <[email protected]>
2025-07-25CI: Update to coreboot 25.03Tom Rini
At this point there's problems rebuilding coreboot-24.08 without manual intervention. Let us upgrade to a newer version. Signed-off-by: Tom Rini <[email protected]>
2025-07-25Dockerfile: Update to QEMU 10.0.2Tom Rini
As QEMU 10.0.2 is the current release, update to that so that we can update other features within CI. Signed-off-by: Tom Rini <[email protected]>
2025-05-09Dockerfile: use lz4 instead of lz4-toolsHeinrich Schuchardt
Since Ubuntu Jammy lz4-tools is only a virtual package which pulls in lz4 as dependency. Update documentation too. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-04-29Docker, CI: Add vexpress_fvp / vexpress_fvp_bloblist supportTom Rini
This adds the vexpress_fvp and vexpress_fvp_bloblist platforms to the list of platforms we test via emulator in CI. In order to do this we need to first have our container runtime have TF-A builds for the vexpress_fvp platform, both with and without transfer list support as well as installing "telnet" so that we can access console. In the CI files we check for the existence of /opt/tf-a/${TEST_PY_BD} and if found, copy bl1.bin and fip.bin to /tmp and set the variables so that we can later run FVP to run. Note that we currently disable the hostfs (semihosting) tests as they trigger a bug in FVP. This has been reported upstream, and can be enabled when fixed. Reviewed-by: Harrison Mutai <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-04-24python: Use and refer to the venv module rather than virtualenvTom Rini
Using some form of sandbox with Python modules is a long standing best practice with the language. There are a number of ways to have a Python sandbox be created. At this point in time, it seems the Python community is moving towards using the "venv" module provided with Python rather than a separate tool. To match that we make the following changes: - Refer to a "Python sandbox" rather than virtualenv in comments, etc. - Install the python3-venv module in our container and not virtualenv. - In our CI files, invoke "python -m venv" rather than "virtualenv". - In documentation, tell users to install python3-venv and not virtualenv. Signed-off-by: Tom Rini <[email protected]>
2025-04-10CI: Move to latest container imagesTom Rini
- Bump up "Jammy" tag to jammy-20250404 - Include most recent changes to the Dockerfile itself Signed-off-by: Tom Rini <[email protected]>
2025-04-10Dockerfile: Add fdiskTom Rini
We had previously gotten this package through a chain of dependencies with guestfs-tools. Now that we no longer install that package, install fdisk (for sfdisk) directly. Fixes: eb1b90ec57a4 ("Dockerfile: Update to drop virt-make-fs packages") Signed-off-by: Tom Rini <[email protected]>
2025-04-10Dockerfile: Download the Arm FVP and extract itTom Rini
There are some reference platforms from Arm which are not found in QEMU but instead in the FVP tool. As we can make use of this in CI later on, download and extract it in our Dockerfile today. Signed-off-by: Tom Rini <[email protected]>
2025-04-10Dockerfile: Update to a more current TF-A release tagTom Rini
In preparation for using TF-A more in our CI loops, switch to the current release tag for TF-A. Signed-off-by: Tom Rini <[email protected]>
2025-04-10Dockerfile: install byaccLeonard Anderweit
Install byacc required to build cst from source. Signed-off-by: Leonard Anderweit <[email protected]>
2025-04-10Dockerfile: Update to gcc-14.2.0 and clang-18Tom Rini
Outside of changing versions here the other visible change is that we tell grub that riscv64 does not have "large model" support. Without this change the resulting mkimage is non-functional. This is known upstream already. Link: https://savannah.gnu.org/bugs/?65909 Signed-off-by: Tom Rini <[email protected]>
2025-04-08Merge patch series "Improve pytest runtime"Tom Rini
Tom Rini <[email protected]> says: One thing that Simon Glass has noted is that our pytest run time keeps getting longer. Looking at: https://source.denx.de/u-boot/u-boot/-/pipelines/25011/test_report?job_name=sandbox%20test.py%3A%20%5Bfast%20amd64%5D we can see that some of the longest running tests are a little puzzling. It turns out that we have two ways of making filesystem images without requiring root access and one of them is significantly slower than the other. This series changes us from using virt-make-fs to only using the mk_fs helper that currently resides in test_ut.py which uses standard userspace tools. The final result can be seen at: https://source.denx.de/u-boot/u-boot/-/pipelines/25015/test_report?job_name=sandbox%20test.py%3A%20%5Bfast%20amd64%5D and the tests changed here now run much quicker. Link: https://lore.kernel.org/r/[email protected]
2025-04-08Dockerfile: Update to drop virt-make-fs packagesTom Rini
Now that we do not need nor want people to use virt-make-fs for filesystem tests, remove the related packages from the installation list. Signed-off-by: Tom Rini <[email protected]>
2025-04-02test_fs: Add exfat testsMarek Vasut
Add tests for the exfat filesystem. These tests are largely an extension of the FS_GENERIC tests with the following notable exceptions. The filesystem image for exfat tests is generated using combination of exfatprogs mkfs.exfat and python fattools. The fattols are capable of generating exfat filesystem images too, but this is not used, the fattools are only used as a replacement for dosfstools 'mcopy' and 'mdir', which are used to insert files and directories into existing fatfs images and list existing fatfs images respectively, without the need for superuser access to mount such images. The exfat filesystem has no filesystem specific command, there is only the generic filesystem command interface, therefore check_ubconfig() has to special case exfat and skip check for CONFIG_CMD_EXFAT and instead check for CONFIG_FS_EXFAT. Signed-off-by: Marek Vasut <[email protected]>
2025-03-13Dockerfile: Add missing 'rm -rf /tmp/coreboot-24.08'Tom Rini
We had missed removing the coreboot directory once done, fix this. Signed-off-by: Tom Rini <[email protected]>
2025-02-14Dockerfile: Update for having more requirements.txt filesTom Rini
Now that we have more requirements.txt files we need to grab all of them for creating our cache. Also, we do longer should install python3-pyelftools on the host as it's not used. Signed-off-by: Tom Rini <[email protected]>
2024-12-21docker: Update to latest "Jammy" tagTom Rini
Bring us up to the current Ubuntu "Jammy" tag. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21docker: Prefer the kernelorg toolchains over "root"Tom Rini
We should always look in our downloaded toolchains first and then for host-provided toolchains. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21docker: Ensure we use the cross toolchain for aarch64 on arm64Tom Rini
We do not want to use the host toolchain for building our platforms in CI (it is both too old, and would be inconsistent with our CI practices). To do this we need to set the toolchain-prefix so that we don't end up guessing "/opt/.../aarch64-linux-aarch64-linux-" as the prefix. Link: https://source.denx.de/u-boot/custodians/u-boot-dm/-/issues/32 Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21docker: Use ${TCVER} more widelyTom Rini
Remove the rest of the places where we hard-code the version of the toolchain we're using. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21Docker/CI: Only test Xtensa on amd64 hostsTom Rini
The xtensa architecture is interesting in that the platforms we support are only valid on the binary-only toolchains as the DC233C instruction set requires those toolchains (and not the FSF instruction set). Only install the binary toolchain on amd64 hosts and only run the tests on them as well. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-02docker: Install toolchains on arm64 hostSimon Glass
Refactor the code to support downloading toolchains for arm64 as well as x86_64 There doesn't seem to be an xtensa toolchain for arm64 at the same location, so download that only on x86 Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-12-02docker: Fix LegacyKeyValueFormat warning with PYTHONPATHSimon Glass
Fix a warning due to the syntax used for PYTHONPATH: LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 304) Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-12-02docker: Adjust installed packages slightlySimon Glass
We no longer need to install libc6-i386 so we can drop that. Switch to installing linux-image-generic as that will be available on all hosts, to provide the /boot/vmlinu* file that's requires for various tools. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-12-02docker: Support building for multiple architecturesSimon Glass
Add instructions on how to build the file for multiple architectures. Add a message indicating what is happening. Update the documentation as well. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-12-02docker: Use cache mounts for aptTom Rini
Instead of deleting /var/lib/apt/lists after each relevant RUN line, use a cache mount as is the current best practices. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-12-02docker: Build grub for all architecturesTom Rini
For consistency now, and future ease of testing with non-amd64 hosts, build grub for all architectures rather than relying on host binaries for i386/x86_64. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-12-02docker: Update to grub-2.12Tom Rini
The current release of grub is 2.12 and it will be good to pick this up now so that we can update other parts of our stack. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-12-02docker: Use "make -j$(nproc)" when invoking makeTom Rini
We had a few places that were not using "make -j$(nproc)" but instead just plain "make" and so slowing down the overall build. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-12-02docker: Add kernel.org x86_64 toolchainTom Rini
Add in the x86_64 toolchain, but do not enforce using it for sandbox. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-10-18docker: Update corebootSimon Glass
Update to a newer version which supports settings in CMOS RAM and linear framebuffer. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-08-21CI: Update to latest DockerfileTom Rini
This primarily updates our python cache. Signed-off-by: Tom Rini <[email protected]>
2024-08-21Dockerfile: Update to namespace for some labelsTom Rini
Using "MAINTAINER" and "Description" have been replaced with org.opencontainers.image namespace variables. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-03-15CI: Move to latest container imageTom Rini
This moves us to our latest container image, which is now based on the current "Jammy" tag. Signed-off-by: Tom Rini <[email protected]>
2024-03-14CI: Cherry-pick reset support for m68k for QEMUTom Rini
In order to support the reset pytest on QEMU on m68k platforms we need to grab this change from upstream. Signed-off-by: Tom Rini <[email protected]>
2024-03-14CI: Update to using clang-17Tom Rini
Currently, llvm-17 is the stable release. Update our container and CI to fetch and use that. Signed-off-by: Tom Rini <[email protected]>
2024-03-14Dockerfile: install xilinx-bootgen packageHeinrich Schuchardt
Bootgen is used in a binman test. The test is skipped without the binary. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-03-14Dockerfile: build fiptoolHeinrich Schuchardt
Fiptool is used in a binman test. The test is skipped without the binary. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-02-27CI: Move to latest container imageTom Rini
This moves us to our latest container image, which is now based on the current "Jammy" tag. Signed-off-by: Tom Rini <[email protected]>
2024-02-27Dockerfile: Build coreboot from sourceTom Rini
To make CI runs rely less on external servers, build a coreboot release from source and populate /opt/coreboot with the output. Signed-off-by: Tom Rini <[email protected]>
2024-01-24docker: Add tools/buildman/requirements.txt to the cacheTom Rini
As we have had this file for a while now, we should include installing and populating our pip cache from here as well. Signed-off-by: Tom Rini <[email protected]>
2024-01-18CI: Move to latest Ubuntu "Jammy" tagTom Rini
Move to the latest "Jammy" tag from Ubuntu. Signed-off-by: Tom Rini <[email protected]>
2024-01-17docker: build QEMU v8.2.0Heinrich Schuchardt
ACPI support for RISC-V requires a recent QEMU. Upgrade the used QEMU to v8.2.0. QEMU commit 0c7ffc977195 ("hw/net: cadence_gem: Fix MDIO_OP_xxx values") is needed to fix the Ethernet PHY driver used by the emulated SiFive Unleashed Board emulation. Signed-off-by: Heinrich Schuchardt <[email protected]>
2023-10-02Merge branch 'next'Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2023-09-06CI: Drop some jobs we didn't really utilizeTom Rini
- We have added more TODO/etc comments since this task was created and never focused on removing them. - The output of sloccount isn't preserved or looked at, and if desired should be in the release stats pages instead somehow. - The results of cppcheck aren't investigated and require modeling work to be useful to start with. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-09-04nokia_rx51: Remove platformTom Rini
This platform is behind on migrations (it is the sole user of the oldest legacy version of the USB gadget stack and is long overdue for migration) and with Pali no longer being a maintainer, we remove this platform. Signed-off-by: Tom Rini <[email protected]>
2023-08-26CI: Move to latest Ubuntu "Jammy" tagTom Rini
Move to the latest "Jammy" tag from Ubuntu. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2023-08-26CI: Update to gcc-13.2.0Tom Rini
The latest kernel.org toolchains for gcc are now 13.2.0, so upgrade to that. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2023-08-26CI: Add ChromiumOS utilitiesSimon Glass
We need cgpt and futility for building test images. Add them. Signed-off-by: Simon Glass <[email protected]>