diff options
Diffstat (limited to 'util/docker/coreboot-jenkins-node/Dockerfile')
-rw-r--r-- | util/docker/coreboot-jenkins-node/Dockerfile | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/util/docker/coreboot-jenkins-node/Dockerfile b/util/docker/coreboot-jenkins-node/Dockerfile index b60466dc69..230842c530 100644 --- a/util/docker/coreboot-jenkins-node/Dockerfile +++ b/util/docker/coreboot-jenkins-node/Dockerfile @@ -1,5 +1,20 @@ -FROM coreboot/coreboot-sdk:1.42 -MAINTAINER Martin Roth <gaumless@gmail.com> +# This dockerfile is not meant to be used directly by docker. The +# {{}} varibles are replaced with values by the makefile. Please generate +# the docker image for this file by running: +# +# make coreboot-jenkins-node +# +# Variables can be updated on the make command line or left blank to use +# the default values set by the makefile. +# +# SDK_VERSION is used to name the version of the coreboot sdk to use. +# Typically, this corresponds to the toolchain version. +# SSH_KEY is the contents of the file coreboot-jenkins-node/authorized_keys +# Because we're piping the contents of the dockerfile into the +# docker build command, the 'COPY' keyword isn't valid. + +FROM coreboot/coreboot-sdk:{{SDK_VERSION}} +MAINTAINER Martin Roth <martin@coreboot.org> USER root # Check to make sure /dev is a tmpfs file system @@ -10,13 +25,17 @@ RUN apt-get -y update && \ lua5.3 liblua5.3-dev openjdk-8-jre-headless openssh-server && \ apt-get clean -COPY authorized_keys /home/coreboot/.ssh/authorized_keys -RUN chown -R coreboot /home/coreboot/.ssh && \ +# Because of the way that the variables are being replaced, docker's 'COPY' +# command does not work +RUN mkdir -p /home/coreboot/.ssh && \ + echo "{{SSH_KEY}}" > /home/coreboot/.ssh/authorized_keys && \ + chown -R coreboot:coreboot /home/coreboot/.ssh && \ chmod 0700 /home/coreboot/.ssh && \ chmod 0600 /home/coreboot/.ssh/authorized_keys RUN mkdir /var/run/sshd && \ - chmod 0755 /var/run/sshd + chmod 0755 /var/run/sshd && \ + /usr/bin/ssh-keygen -A # Build encapsulate tool ADD https://raw.githubusercontent.com/pgeorgi/encapsulate/master/encapsulate.c /tmp/encapsulate.c @@ -24,7 +43,6 @@ RUN gcc -o /usr/sbin/encapsulate /tmp/encapsulate.c && \ chown root /usr/sbin/encapsulate && \ chmod +s /usr/sbin/encapsulate - VOLUME /data/cache ENTRYPOINT mkdir /dev/cb-build && chown coreboot /dev/cb-build && /usr/sbin/sshd -p 49151 -D EXPOSE 49151 |