From f75d1dfad3691562110a70523ad892b8fa480064 Mon Sep 17 00:00:00 2001 From: Martin Roth Date: Mon, 16 May 2016 11:27:56 -0600 Subject: util/docker: Add docker files for coreboot-sdk & jenkins builders Add the coreboot specific docker configuration files to the coreboot repo. These have been copied directly from Patrick's repo where they had been being stored. - coreboot-sdk: debian sid with the coreboot toolchain - coreboot-jenkins-node: built on top of the coreboot-sdk, adds the pieces required for building everything with the coreboot jenkins builders. Change-Id: I8628d4edb298264e814e02e124a8bfb4bc04e0c7 Signed-off-by: Martin Roth Reviewed-on: https://review.coreboot.org/14830 Tested-by: build bot (Jenkins) Reviewed-by: Alexander Couzens Reviewed-by: Patrick Georgi --- util/docker/coreboot-jenkins-node/Dockerfile | 22 ++++++++++++++++++++++ util/docker/coreboot-jenkins-node/README.md | 3 +++ util/docker/coreboot-jenkins-node/authorized_keys | 1 + util/docker/coreboot-sdk/Dockerfile | 15 +++++++++++++++ 4 files changed, 41 insertions(+) create mode 100644 util/docker/coreboot-jenkins-node/Dockerfile create mode 100644 util/docker/coreboot-jenkins-node/README.md create mode 100644 util/docker/coreboot-jenkins-node/authorized_keys create mode 100644 util/docker/coreboot-sdk/Dockerfile diff --git a/util/docker/coreboot-jenkins-node/Dockerfile b/util/docker/coreboot-jenkins-node/Dockerfile new file mode 100644 index 0000000000..b675f80997 --- /dev/null +++ b/util/docker/coreboot-jenkins-node/Dockerfile @@ -0,0 +1,22 @@ +FROM coreboot/coreboot-sdk:1.37 +MAINTAINER Patrick Georgi +USER root +ADD https://raw.githubusercontent.com/pgeorgi/encapsulate/master/encapsulate.c /tmp/encapsulate.c +COPY authorized_keys /home/coreboot/.ssh/authorized_keys +RUN mount |grep "on /dev type tmpfs" > /dev/null || exit 1 +RUN apt-get -y update && \ + apt-get -y install \ + curl p7zip-full unrar-free libusb-1.0-0-dev pkg-config libreadline-dev libglib2.0-dev \ + subversion libpci-dev libusb-dev libftdi-dev \ + lua5.3 liblua5.3-dev \ + ccache openjdk-8-jre-headless openssh-server libssl-dev vim-common libgmp-dev && \ + apt-get clean && \ + mkdir /home/coreboot/.ccache && chown coreboot /home/coreboot/.ccache && \ + mkdir -p /home/coreboot/.ssh && chown -R coreboot /home/coreboot/.ssh && chmod 0700 /home/coreboot/.ssh && chmod 0600 /home/coreboot/.ssh/authorized_keys && \ + gcc -o /usr/sbin/encapsulate /tmp/encapsulate.c && chown root /usr/sbin/encapsulate && chmod +s /usr/sbin/encapsulate && \ + mkdir /var/run/sshd && chmod 0755 /var/run/sshd +VOLUME /home/coreboot/.ccache +VOLUME /data/cache +ENTRYPOINT mkdir /dev/cb-build && chown coreboot /dev/cb-build && /usr/sbin/sshd -p 49151 -D +EXPOSE 49151 +ENV PATH $PATH:/usr/sbin diff --git a/util/docker/coreboot-jenkins-node/README.md b/util/docker/coreboot-jenkins-node/README.md new file mode 100644 index 0000000000..839ccb12a9 --- /dev/null +++ b/util/docker/coreboot-jenkins-node/README.md @@ -0,0 +1,3 @@ +run with + + docker run --privileged --restart=always -d -p 49151:49151 -v $host/path/to/ccache:/home/coreboot/.ccache -v $host/path/to/data/cache:/data/cache coreboot/coreboot-jenkins-node diff --git a/util/docker/coreboot-jenkins-node/authorized_keys b/util/docker/coreboot-jenkins-node/authorized_keys new file mode 100644 index 0000000000..8a35868bb0 --- /dev/null +++ b/util/docker/coreboot-jenkins-node/authorized_keys @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA238BmMin79Xl5bo5cqAnzCv+uEdkajz16qu4xV0szX8XgEtyVQZp02aUP3wJGSBA6AqY8UAbWITfUZ7UF5xcTyRl/n38BYPkFuXje1WDtocv/aUNjBfkmSQGMKuyKAveAaWcUCP2esbpDbF0L4J/DRagg9NAndOkXxifPuCsBx1v5aipNnZWWCOIvOVGoxcyAUv29SO0D6ZAgjlHzV9zSdmxtGur9ctp4XAwXgd/VR9O9njXyO1IJOLPOxoRv11D7pyBYpZeEWW5N9Q1WM04A4ozncNieBLloqEZANlMcMEzb82nChkGdO/1Yy7asQmFFd13rIzjybQrLOeuAX6+cw== codeqa@ra diff --git a/util/docker/coreboot-sdk/Dockerfile b/util/docker/coreboot-sdk/Dockerfile new file mode 100644 index 0000000000..18c165db78 --- /dev/null +++ b/util/docker/coreboot-sdk/Dockerfile @@ -0,0 +1,15 @@ +FROM debian:sid +MAINTAINER Patrick Georgi +RUN \ + useradd -p locked -m coreboot && \ + apt-get -qq update && \ + apt-get -qqy install git gcc g++ make patch python diffutils bison flex m4 wget bzip2 libssl-dev libgmp-dev vim-common cmake xz-utils zlib1g-dev && \ + apt-get clean && \ + cd /root && \ + git clone http://review.coreboot.org/coreboot && \ + cd coreboot/util/crossgcc && \ + make all_without_gdb CPUS=$(grep -c "^processor\>" /proc/cpuinfo) DEST=/opt/xgcc && \ + cd /root && \ + rm -rf coreboot +ENV PATH $PATH:/opt/xgcc/bin +USER coreboot -- cgit v1.2.3