aboutsummaryrefslogtreecommitdiffstats
path: root/tools/docker/env
Commit message (Collapse)AuthorAgeFilesLines
* tools/create-image.sh: update default Debian release to trixieAndrew Donnellan2025-12-111-1/+1
| | | | | | | | | | Debian bullseye is now oldoldstable, so update the default release to trixie. While we're at it, update documentation references to old Debian releases to match. Signed-off-by: Andrew Donnellan <ajd@linux.ibm.com>
* tools/docker: update to debian trixiePimyn Girgis2025-12-031-17/+15
| | | | | Update our docker containers to Debian Trixie. Fixes #6432
* tools/docker: update golang to 1.24.4Taras Madan2025-07-011-1/+1
|
* tools/docker: add rust compilerAleksandr Nogikh2025-05-201-0/+14
| | | | | Add the new dependencies necessary for generating RUST=y Linux configs and for building RUST=y kernels.
* tools/docker/env: update gcloud to 519Taras Madan2025-04-291-19/+7
| | | | | It requires appengine dependency update to match golang versions. gcloud-appengine-python patching is needed to fix #4785.
* tools/docker: migrate to llvm-20Aleksandr Nogikh2025-04-241-7/+7
| | | | | | | clang-15 is now the minimum required version, so we're already on the verge of not being able to compile the Linux kernel. But keep clang-15 anyway - it will be used during bisections.
* tools/docker: add ld.lld to envAleksandr Nogikh2025-04-171-1/+2
| | | | | We use the env container to update kernel configs and the lack of ld.lld in it prevents the usage of LLVM=1.
* tools/docker: golang toolchain is autoupdated since 1.21Taras Madan2025-02-061-0/+2
| | | | "go mod go@1.23" updates go.mod to the latest 1.23.*.
* tools/docker/syz-env: persist GOMODCACHEAleksandr Nogikh2025-01-231-1/+2
| | | | | Prevent Go from downloading all external dependencies each time syz-env is called. It will become a problem once vendor/ is deleted.
* tools/docker/env: download toolchains in a separate builderAleksandr Nogikh2025-01-141-40/+48
| | | | This allows for better caching and parallelization.
* tools/docker/env: add a Spanner emulatorAleksandr Nogikh2025-01-141-0/+8
|
* tools/docker/env: build python in a separate containerAleksandr Nogikh2025-01-141-6/+15
| | | | | It allows for better caching/parallelization. Also, the resulting image is now ~100MB smaller.
* Revert "tools/docker: add qemu-user-binfmt to syz-env"Alexander Potapenko2024-12-061-1/+1
| | | | | | | This reverts commit 8c86a475f5d807fe4cf26fb366871a55402e38d6. Apparently binfmt_misc cannot be mounted within the Docker container, so we don't need these hooks.
* tools/docker: add qemu-user-binfmt to syz-envAlexander Potapenko2024-12-051-1/+1
| | | | This is needed to be able to run alien binaries in tests under qemu-user
* tools/docker: add various fsck-like commands to the environmentFlorent Revest2024-11-291-0/+4
| | | | | | As part of #5518, I'm adding fsck logs as annotation to the mounted file system assets. For this, I need a variety of fsck-like commands in the ci environment as well as eventually in the production environment.
* tools/docker: update Go in the containersAleksandr Nogikh2024-09-101-1/+1
| | | | Use 1.22.7.
* all: add npm package to syz-envJoey Jiao2024-08-291-0/+3
| | | | | | | | | | act(https://github.com/nektos/act) is used to build github workflow locally. When running `act -j build` in local host, it reports: exec failed: unable to start container process: exec: "node": executable file not found in $PATH: unknown. Adding nodejs package can fix the build error. Updated docs with act usage too.
* tools/docker: add flatbuffers packagesDmitry Vyukov2024-05-031-1/+2
| | | | | | Also update to Go1.22 while we are here. We've bumped min Go version to 1.21 in old-env, so we ought to test with 1.22 in other containers.
* all: remove akaros supportDmitry Vyukov2024-04-151-1/+0
| | | | | | | Akaros support is unused, it was shutdown on syzbot for a while, the akaros development seems to be frozen for years as well. We have a bunch of hacks for Akaros since it supported only super old gcc and haven't supported Go. Remove it.
* go: update to 1.20.11 and 1.21.4Taras Madan2023-11-281-1/+1
| | | | 1.22 release is expected in Feb 2024. We'll go 1.21 - 1.22 then.
* tools/docker/env: use Go 1.20Aleksandr Nogikh2023-07-201-2/+0
| | | | | By mistake, we're installing Go twice in this Dockerfile. Remove the 1.19 installation and only leave the 1.20 one.
* all: remove mentions of big-envAleksandr Nogikh2023-07-121-1/+1
| | | | Use just env instead of that.
* tools/docker: merge big-env into envAleksandr Nogikh2023-07-121-0/+59
| | | | There's not much sense to keep both.
* tools/docker/env: use the default gitAleksandr Nogikh2023-07-121-6/+1
| | | | | As we're using a new Debian image now, there's no sense to take git from backports. It's new enough.
* tools/docker: update to bookworm imagesAleksandr Nogikh2023-07-111-6/+5
| | | | | | | Closes #3973. As Python 2.7 is no longer present in the packages, build it directly in Dockerfile. It's rather small and doesn't take much time.
* tools/docker: update git versionMarco Vanotti2023-05-041-1/+6
| | | | | | The git version used in bullseye is too old and is not compatible with Fuchsia. This change modifies the dockerfile to install git from bullseye-backports, which is more recent.
* tools/docker: add unzip dependency to syz-envMarco Vanotti2023-05-041-1/+1
|
* tools/docker: use go1.19.6 and go1.20.1Taras Madan2023-02-241-1/+1
| | | | | env and syzbot containers will use go1.20.1 big-env and old-env containers will use go1.19.6
* tools/docker: delete clang-kmsanAlexander Potapenko2023-02-081-6/+0
| | | | We are using stock Clang to build KMSAN now
* tools/docker: switch to Clang 15Alexander Potapenko2023-02-071-6/+6
| | | | | | This is a prerequisite for building KMSAN-instrumented kernels. Now that https://github.com/google/syzkaller/pull/3649 is landed, the tests should be passing.
* Revert "tools/docker: switch to Clang 15"Alexander Potapenko2023-01-271-6/+6
| | | | | | | | The new compiler introduced some test failures, so we had to roll back the containers. Revert the patch to Docker specs, so that they reflect the actual state of the things. This reverts commit 3d904c7acdbdd69b8c6e85799af7565955025201.
* tools/docker: switch to Clang 15Alexander Potapenko2023-01-241-6/+6
| | | | This is a prerequisite for building KMSAN-instrumented kernels.
* tools/docker: update Clang for KMSANAlexander Potapenko2022-06-171-1/+1
| | | | | | Switch to the upstream Clang version 610139d2d9ce. This retires the custom -msan-pass-caller-to-runtime flag, but instead allows us to use -fsanitize-memory-param-retval on syzbot.
* tools/docker: update Clang for KMSANAlexander Potapenko2022-05-251-1/+1
| | | | | | | Switch to a custom Clang version built from LLVM trunk 9ffb5944a699 with a patch on top of it implementing the -msan-pass-caller-to-runtime flag. This flag is needed to detect noinstr->instr transitions in the kernel. Once it is tested on syzbot, it will be added to upstream Clang.
* tools/docker: configure an alias for clang++Aleksandr Nogikh2022-04-191-0/+1
| | | | It's required by the NetBSD-KMSAN instance.
* tools/docker: use clang-13Aleksandr Nogikh2022-04-061-2/+13
|
* docker: make clang-kmsan hermeticAlexander Potapenko2022-02-111-2/+3
| | | | | The existing build lacked some headers, which prevented us from being able to configure newer kernels.
* tools/docker: download custom clang to build KMSANAlexander Potapenko2022-01-271-0/+5
| | | | | | Until KMSAN compiler API is finalized, we often need to use ToT Clang to build the kernel. Download the latest compiler build from GS, and put it under /syzkaller/clang-kmsan.
* tools/docker: switch from buster to bullseyeDmitry Vyukov2021-10-131-7/+7
| | | | | | The gcc 8 and clang 7 provided by buster are too old to build kernel. Gcc 8 does not support MTE anymore and clang 7 is plain unsupported. Update to bullseye which provides gcc 10 and clang 11.
* tools/docker: use apt-get update --allow-releaseinfo-changeDmitry Vyukov2021-09-301-1/+1
| | | | | | | | | Without this flag I am getting: D: Repository 'http://security.debian.org/debian-security buster/updates InRelease' changed its 'Suite' value from 'stable' to 'oldstable' Error: Process completed with exit code 100.
* tools/docker/env: switch to Go 1.16Dmitry Vyukov2021-02-201-1/+1
| | | | Update #2446
* tools/docker/env: switch to Go 1.15Dmitry Vyukov2020-10-261-1/+1
| | | | | Go 1.15 is the latest release and it finds new bugs. Leave old-env on 1.14 so that we test with both.
* tools/docker: mirror images on githubDmitry Vyukov2020-09-121-13/+1
| | | | | Some users don't have access to the gcr.io registry. Mirror images on github as well.
* tools/docker/env: install qemu-userDmitry Vyukov2020-08-221-1/+4
| | | | qemu-user allows to run cross-arch binaries in tests.
* Makefile: enable clang-tidy in presubmit testsDmitry Vyukov2020-08-041-1/+1
| | | | | Fix all errors it points to. The one in netlink_send_ext is concerning.
* go.mod: add go-fuzz-buildDmitry Vyukov2020-07-041-4/+1
| | | | | | | | Otherwise go-fuzz-build now fails with: + go-fuzz-build -libfuzzer -func FuzzDeserialize -o fuzzer.a ./prog/test -: cannot find package "." in: /syzkaller/gopath/src/github.com/google/syzkaller/vendor/github.com/dvyukov/go-fuzz/go-fuzz-dep
* go.mod: vendor golangci-lintDmitry Vyukov2020-07-041-6/+1
|
* tools/docker/env: add s390x and riscv64 toolchainsDmitry Vyukov2020-06-251-1/+2
| | | | These arches are in-progress now. Need them in the image.
* tools: add syz-big-envDmitry Vyukov2020-06-021-0/+59
On top of syz-env it provides akaros/fuchsia/netbsd toolchains and gcloud sdk. With this it's possible to run dashboard/app tests on CI and locally and test executor build and pkg/{csource,cover} for these OSes. Update #1765