util/docker: Update Dockerfiles for building the documentation

The doc.coreboot.org container is several years out of date, using the
three year old Alpine 3.8 as the base image along with Sphinx related
pip packages which are even older. Accordingly, update the documentation
related pip packages in the coreboot-jenkins-node container as well.

- Update doc.coreboot.org to Alpine 3.18.3
- Update documentation related pip packages on coreboot-jenkins-node
  and doc.coreboot.org to the latest versions on PyPI
- Update Sphinx to 6.2.1 as the latest version of sphinx_rtd_theme does
  not yet support sphinx >= 7

The updates also noticeably improve performance, dropping documentation
build times from ~75 s down to ~42 s on my system from the Alpine+Python
updates alone, and further down to ~35 s with the rest of the updates.

TEST: The documentation builds and renders properly when built using the
updated container.

Change-Id: I38dfd22ee71c3779ab5fd3b3060e4675e9e3fe54
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/73159
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Nicholas Chin 2023-02-22 11:55:22 -07:00 committed by Martin L Roth
parent fd63492205
commit 2fe63a1ad6
3 changed files with 18 additions and 20 deletions

View File

@ -75,12 +75,12 @@ RUN echo "export PATH=$PATH:/opt/xgcc/bin" >> /home/coreboot/.bashrc && \
pip3 install --upgrade --no-cache-dir pip \ pip3 install --upgrade --no-cache-dir pip \
&& pip3 install --no-cache-dir \ && pip3 install --no-cache-dir \
setuptools==58.2.0 \ setuptools==58.2.0 \
jinja2==3.0.3 \ jinja2==3.1.2 \
recommonmark===0.5.0 \ recommonmark===0.7.1 \
sphinx===1.8.3 \ sphinx===6.2.1 \
sphinxcontrib-ditaa===0.6 \ sphinxcontrib-ditaa===1.0.2 \
sphinx_autobuild===0.7.1 \ sphinx_autobuild===2021.3.14 \
sphinx_rtd_theme===0.4.2 \ sphinx_rtd_theme===1.2.2 \
&& mkdir -p /home/coreboot/.ssh && \ && mkdir -p /home/coreboot/.ssh && \
echo "{{SSH_KEY}}" > /home/coreboot/.ssh/authorized_keys && \ echo "{{SSH_KEY}}" > /home/coreboot/.ssh/authorized_keys && \
chmod 0700 /home/coreboot/.ssh && \ chmod 0700 /home/coreboot/.ssh && \

View File

@ -1,23 +1,21 @@
FROM alpine:3.8 FROM alpine:3.18.3
COPY makeSphinx.sh /makeSphinx.sh COPY makeSphinx.sh /makeSphinx.sh
ADD https://sourceforge.net/projects/ditaa/files/ditaa/0.9/ditaa0_9.zip/download /tmp/ditaa.zip RUN apk add --no-cache python3 py3-pip make bash git openjdk8-jre ttf-dejavu fontconfig \
RUN apk add --no-cache python3 make bash git openjdk8-jre ttf-dejavu fontconfig \
&& pip3 install --upgrade --no-cache-dir pip \ && pip3 install --upgrade --no-cache-dir pip \
&& pip3 install --no-cache-dir \ && pip3 install --no-cache-dir \
jinja2==3.0.3 \ jinja2==3.1.2 \
recommonmark===0.5.0 \ recommonmark===0.7.1\
sphinx===1.8.3 \ sphinx===6.2.1 \
sphinxcontrib-ditaa===0.6 \ sphinxcontrib-ditaa===1.0.2 \
sphinx_autobuild===0.7.1 \ sphinx_autobuild===2021.3.14 \
sphinx_rtd_theme===0.4.2 \ sphinx_rtd_theme===1.2.2 \
&& chmod 755 /makeSphinx.sh && chmod 755 /makeSphinx.sh
RUN cd /tmp \ ADD https://github.com/stathissideris/ditaa/releases/download/v0.11.0/ditaa-0.11.0-standalone.jar \
&& unzip ditaa.zip \ /usr/lib/ditaa-0.11.0-standalone.jar
&& mv ditaa0_9.jar /usr/lib
ADD ditaa.sh /usr/bin/ditaa ADD ditaa.sh /usr/bin/ditaa
VOLUME /data-in /data-out VOLUME /data-in /data-out

View File

@ -1,2 +1,2 @@
#!/usr/bin/env sh #!/usr/bin/env sh
exec java -jar /usr/lib/ditaa0_9.jar $* exec java -jar /usr/lib/ditaa-0.11.0-standalone.jar $*