docker/coreboot-jenkins-node: Add more tools for zephyr

To build a CrOS-style zephyr, we need a couple of u-boot tools, so add
them here instead of rebuilding them on every zephyr build (which is
also harder to get right because search paths are no strength of python)

Change-Id: Ib95fcb644ac87c5f35f2228fe081c922452b5213
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/50744
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
diff --git a/util/docker/coreboot-jenkins-node/Dockerfile b/util/docker/coreboot-jenkins-node/Dockerfile
index a669439..19670b4 100644
--- a/util/docker/coreboot-jenkins-node/Dockerfile
+++ b/util/docker/coreboot-jenkins-node/Dockerfile
@@ -61,6 +61,21 @@
 
 COPY --from=zephyr-sdk /opt/zephyr-sdk /opt/zephyr-sdk
 
+RUN apt-get update && \
+	apt-get install -y python3-pip pykwalify python3-yaml \
+		python3-pyelftools python3-jsonschema python3-colorama \
+		python3-pyrsistent python3-setuptools swig && \
+	apt-get clean
+
+RUN mkdir /tmp/b && cd /tmp/b && \
+	git clone https://git.kernel.org/pub/scm/utils/dtc/dtc.git dtc && \
+	git clone https://chromium.googlesource.com/chromiumos/third_party/u-boot -b chromeos-v2020.10-rc1 u-boot && \
+	(cd dtc && make install_pylibfdt PREFIX=/usr/local) && \
+	(cd u-boot/tools/dtoc && python3 setup.py install) && \
+	(cd u-boot/tools/patman && python3 setup.py install) && \
+	(cd u-boot/tools/binman && python3 setup.py install) && \
+	cd / && rm -rf /tmp/b
+
 VOLUME /data/cache
 ENTRYPOINT mount /cb-build && \
 	mount /home/coreboot/node-root/workspace && \