aboutsummaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
Diffstat (limited to 'util')
-rw-r--r--util/docker/Makefile18
-rw-r--r--util/docker/coreboot-jenkins-node/Dockerfile20
2 files changed, 16 insertions, 22 deletions
diff --git a/util/docker/Makefile b/util/docker/Makefile
index 60e244f162..8bec631ab0 100644
--- a/util/docker/Makefile
+++ b/util/docker/Makefile
@@ -22,9 +22,6 @@ export COREBOOT_JENKINS_PORT?=49151
# Local cache directory - for storing files shared with the docker image
export COREBOOT_JENKINS_CACHE_DIR?=/srv/docker/coreboot-builder/cache
-# Local ccache directory
-export COREBOOT_JENKINS_CCACHE_DIR?=/srv/docker/coreboot-builder/ccache
-
# Name of the jenkins container
export COREBOOT_JENKINS_CONTAINER?=coreboot_jenkins
@@ -134,33 +131,19 @@ docker-jenkins-server: test-docker
else \
rm -f "$(COREBOOT_JENKINS_CACHE_DIR)/testfile"; \
fi
- @if [ ! -d "$(COREBOOT_JENKINS_CCACHE_DIR)" ]; then \
- printf "\nError: %s does not exist.\n" "$(COREBOOT_JENKINS_CCACHE_DIR)"; \
- printf "Please run:\nsudo mkdir -p %s\n\n" "$(COREBOOT_JENKINS_CCACHE_DIR)"; \
- false; \
- fi
- @if ! touch "$(COREBOOT_JENKINS_CCACHE_DIR)/testfile" 2>/dev/null; then \
- printf "\nError: Cannot create file in %s." "$(COREBOOT_JENKINS_CCACHE_DIR)"; \
- printf 'Please run:\nsudo chown -R $$(whoami):$$(whoami) %s\n\n' "$(COREBOOT_JENKINS_CCACHE_DIR)"; \
- else \
- rm -f "$(COREBOOT_JENKINS_CCACHE_DIR)/testfile"; \
- fi
$(DOCKER) run -d --privileged --restart=always \
-p $(COREBOOT_JENKINS_PORT):49151 \
-v $(COREBOOT_JENKINS_CACHE_DIR):/data/cache \
- -v $(COREBOOT_JENKINS_CCACHE_DIR):/home/coreboot/.ccache \
--name=$(COREBOOT_JENKINS_CONTAINER) \
coreboot/coreboot-jenkins-node:$(COREBOOT_CONTAINER_VERSION)
docker-jenkins-shell: test-docker
@if [ ! -d $(COREBOOT_JENKINS_CACHE_DIR) ]; then printf "\nError: %s does not exist.\nPlease run:\nsudo mkdir -p %s\n\n" "$(COREBOOT_JENKINS_CACHE_DIR)" "$(COREBOOT_JENKINS_CACHE_DIR)"; false; fi
- @if [ ! -d $(COREBOOT_JENKINS_CCACHE_DIR) ]; then printf "\nError: %s does not exist.\nPlease run:\nsudo mkdir -p %s\n\n" "$(COREBOOT_JENKINS_CCACHE_DIR)" "$(COREBOOT_JENKINS_CCACHE_DIR)"; false; fi
$(DOCKER) run -u root -it --privileged \
--entrypoint="/bin/bash" \
-p $(COREBOOT_JENKINS_PORT):49151 \
-v $(top):/home/coreboot/coreboot \
-v $(COREBOOT_JENKINS_CACHE_DIR):/data/cache \
- -v $(COREBOOT_JENKINS_CCACHE_DIR):/home/coreboot/.ccache \
--name=$(COREBOOT_JENKINS_CONTAINER) \
--rm coreboot/coreboot-jenkins-node:$(COREBOOT_CONTAINER_VERSION)
@@ -195,7 +178,6 @@ help:
@echo "Variables:"
@echo " COREBOOT_JENKINS_PORT=$(COREBOOT_JENKINS_PORT)"
@echo " COREBOOT_JENKINS_CACHE_DIR=$(COREBOOT_JENKINS_CACHE_DIR)"
- @echo " COREBOOT_JENKINS_CCACHE_DIR=$(COREBOOT_JENKINS_CCACHE_DIR)"
@echo " COREBOOT_JENKINS_CONTAINER=$(COREBOOT_JENKINS_CONTAINER)"
@echo " COREBOOT_CONTAINER_VERSION=$(COREBOOT_CONTAINER_VERSION)"
@echo " DOCKER_COMMIT=$(DOCKER_COMMIT)"
diff --git a/util/docker/coreboot-jenkins-node/Dockerfile b/util/docker/coreboot-jenkins-node/Dockerfile
index 230842c530..5c5c5296e7 100644
--- a/util/docker/coreboot-jenkins-node/Dockerfile
+++ b/util/docker/coreboot-jenkins-node/Dockerfile
@@ -17,9 +17,6 @@ FROM coreboot/coreboot-sdk:{{SDK_VERSION}}
MAINTAINER Martin Roth <martin@coreboot.org>
USER root
-# Check to make sure /dev is a tmpfs file system
-RUN mount | grep "on /dev type tmpfs" > /dev/null || exit 1
-
RUN apt-get -y update && \
apt-get -y install \
lua5.3 liblua5.3-dev openjdk-8-jre-headless openssh-server && \
@@ -37,6 +34,16 @@ RUN mkdir /var/run/sshd && \
chmod 0755 /var/run/sshd && \
/usr/bin/ssh-keygen -A
+# Create /cb-build as a tmpfs directory to build in
+RUN mkdir /cb-build && \
+ chown coreboot:coreboot /cb-build && \
+ echo "tmpfs /cb-build tmpfs rw,mode=1777 0 0" > /etc/fstab && \
+ mkdir -p /home/coreboot/slave-root/workspace && \
+ chown -R coreboot:coreboot /home/coreboot/slave-root && \
+ echo "tmpfs /home/coreboot/slave-root/workspace tmpfs rw,mode=1777 0 0" >> /etc/fstab && \
+ chown coreboot:coreboot /home/coreboot/.ccache && \
+ echo "tmpfs /home/coreboot/.ccache tmpfs rw,mode=1777 0 0" >> /etc/fstab
+
# Build encapsulate tool
ADD https://raw.githubusercontent.com/pgeorgi/encapsulate/master/encapsulate.c /tmp/encapsulate.c
RUN gcc -o /usr/sbin/encapsulate /tmp/encapsulate.c && \
@@ -44,6 +51,11 @@ RUN gcc -o /usr/sbin/encapsulate /tmp/encapsulate.c && \
chmod +s /usr/sbin/encapsulate
VOLUME /data/cache
-ENTRYPOINT mkdir /dev/cb-build && chown coreboot /dev/cb-build && /usr/sbin/sshd -p 49151 -D
+ENTRYPOINT mount /cb-build && \
+ mount /home/coreboot/slave-root/workspace && \
+ chown -R coreboot:coreboot /home/coreboot/slave-root && \
+ mount /home/coreboot/.ccache && \
+ chown coreboot:coreboot /home/coreboot/.ccache && \
+ /usr/sbin/sshd -p 49151 -D
EXPOSE 49151
ENV PATH $PATH:/usr/sbin