aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--trusty-amd64-tcwg/Dockerfile13
-rw-r--r--trusty-arm64-tcwg-test/Dockerfile6
-rw-r--r--trusty-arm64-tcwg/Dockerfile13
-rw-r--r--trusty-armhf-tcwg-test/Dockerfile6
-rw-r--r--trusty-armhf-tcwg/Dockerfile13
-rw-r--r--trusty-i386-tcwg/Dockerfile13
6 files changed, 52 insertions, 12 deletions
diff --git a/trusty-amd64-tcwg/Dockerfile b/trusty-amd64-tcwg/Dockerfile
index a4cf8b2..3ab8d93 100644
--- a/trusty-amd64-tcwg/Dockerfile
+++ b/trusty-amd64-tcwg/Dockerfile
@@ -74,15 +74,22 @@ RUN chmod 0700 /etc/skel/.ssh \
&& chmod 440 /etc/sudoers.d/jenkins \
&& install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
&& sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
- && mkdir -p /var/run/sshd
+ && mkdir -p /var/run/sshd \
+ && mkdir -p /home/tcwg-buildslave/workspace \
+ && chown tcwg-buildslave:tcwg-infra /home/tcwg-buildslave/workspace
# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
# Therefore, the bind-mounts for the following paths are configured in
# the ci.linaro.org's docker plugin.
# Sources caches (read-only):
# /home/tcwg-buildslave/snapshots-ref:/home/tcwg-buildslave/snapshots-ref:ro
-# Workspace (read-write):
-# /home/tcwg-buildslave/workspace:/home/tcwg-buildslave/workspace:rw
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
+# We write most of the data inside workspace, so make it a scratch mount.
+# Note that bind-mounting workspace from host will make jobs with parallel
+# builds fail.
+VOLUME /home/tcwg-buildslave/workspace
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount
diff --git a/trusty-arm64-tcwg-test/Dockerfile b/trusty-arm64-tcwg-test/Dockerfile
index 22c7ca3..5336426 100644
--- a/trusty-arm64-tcwg-test/Dockerfile
+++ b/trusty-arm64-tcwg-test/Dockerfile
@@ -39,6 +39,12 @@ RUN chmod 0700 /etc/skel/.ssh \
&& echo "MaxSessions 256" >> /etc/ssh/sshd_config \
&& echo "PermitRootLogin without-password" >> /etc/ssh/sshd_config
+# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
+# Therefore, the bind-mounts for the following paths are configured in
+# the ci.linaro.org's docker plugin.
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount
# for /tmp. This requires that we add --rm option to "docker run"
diff --git a/trusty-arm64-tcwg/Dockerfile b/trusty-arm64-tcwg/Dockerfile
index dacdfb8..3c18f0f 100644
--- a/trusty-arm64-tcwg/Dockerfile
+++ b/trusty-arm64-tcwg/Dockerfile
@@ -71,15 +71,22 @@ RUN chmod 0700 /etc/skel/.ssh \
&& chmod 440 /etc/sudoers.d/jenkins \
&& install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
&& sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
- && mkdir -p /var/run/sshd
+ && mkdir -p /var/run/sshd \
+ && mkdir -p /home/tcwg-buildslave/workspace \
+ && chown tcwg-buildslave:tcwg-infra /home/tcwg-buildslave/workspace
# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
# Therefore, the bind-mounts for the following paths are configured in
# the ci.linaro.org's docker plugin.
# Sources caches (read-only):
# /home/tcwg-buildslave/snapshots-ref:/home/tcwg-buildslave/snapshots-ref:ro
-# Workspace (read-write):
-# /home/tcwg-buildslave/workspace:/home/tcwg-buildslave/workspace:rw
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
+# We write most of the data inside workspace, so make it a scratch mount.
+# Note that bind-mounting workspace from host will make jobs with parallel
+# builds fail.
+VOLUME /home/tcwg-buildslave/workspace
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount
diff --git a/trusty-armhf-tcwg-test/Dockerfile b/trusty-armhf-tcwg-test/Dockerfile
index 96d3618..24bcf3a 100644
--- a/trusty-armhf-tcwg-test/Dockerfile
+++ b/trusty-armhf-tcwg-test/Dockerfile
@@ -39,6 +39,12 @@ RUN chmod 0700 /etc/skel/.ssh \
&& echo "MaxSessions 256" >> /etc/ssh/sshd_config \
&& echo "PermitRootLogin without-password" >> /etc/ssh/sshd_config
+# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
+# Therefore, the bind-mounts for the following paths are configured in
+# the ci.linaro.org's docker plugin.
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount
# for /tmp. This requires that we add --rm option to "docker run"
diff --git a/trusty-armhf-tcwg/Dockerfile b/trusty-armhf-tcwg/Dockerfile
index 2428634..8361fd8 100644
--- a/trusty-armhf-tcwg/Dockerfile
+++ b/trusty-armhf-tcwg/Dockerfile
@@ -71,15 +71,22 @@ RUN chmod 0700 /etc/skel/.ssh \
&& chmod 440 /etc/sudoers.d/jenkins \
&& install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
&& sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
- && mkdir -p /var/run/sshd
+ && mkdir -p /var/run/sshd \
+ && mkdir -p /home/tcwg-buildslave/workspace \
+ && chown tcwg-buildslave:tcwg-infra /home/tcwg-buildslave/workspace
# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
# Therefore, the bind-mounts for the following paths are configured in
# the ci.linaro.org's docker plugin.
# Sources caches (read-only):
# /home/tcwg-buildslave/snapshots-ref:/home/tcwg-buildslave/snapshots-ref:ro
-# Workspace (read-write):
-# /home/tcwg-buildslave/workspace:/home/tcwg-buildslave/workspace:rw
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
+# We write most of the data inside workspace, so make it a scratch mount.
+# Note that bind-mounting workspace from host will make jobs with parallel
+# builds fail.
+VOLUME /home/tcwg-buildslave/workspace
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount
diff --git a/trusty-i386-tcwg/Dockerfile b/trusty-i386-tcwg/Dockerfile
index a8b8b9f..26d881b 100644
--- a/trusty-i386-tcwg/Dockerfile
+++ b/trusty-i386-tcwg/Dockerfile
@@ -75,15 +75,22 @@ RUN chmod 0700 /etc/skel/.ssh \
&& chmod 440 /etc/sudoers.d/jenkins \
&& install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
&& sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
- && mkdir -p /var/run/sshd
+ && mkdir -p /var/run/sshd \
+ && mkdir -p /home/tcwg-buildslave/workspace \
+ && chown tcwg-buildslave:tcwg-infra /home/tcwg-buildslave/workspace
# Unfortunately, VOLUME doesn't support bind-mounts for portability reasons.
# Therefore, the bind-mounts for the following paths are configured in
# the ci.linaro.org's docker plugin.
# Sources caches (read-only):
# /home/tcwg-buildslave/snapshots-ref:/home/tcwg-buildslave/snapshots-ref:ro
-# Workspace (read-write):
-# /home/tcwg-buildslave/workspace:/home/tcwg-buildslave/workspace:rw
+# Jenkins .jar cache (read-write):
+# /home/tcwg-buildslave/.jenkins:/home/tcwg-buildslave/.jenkins:rw
+
+# We write most of the data inside workspace, so make it a scratch mount.
+# Note that bind-mounting workspace from host will make jobs with parallel
+# builds fail.
+VOLUME /home/tcwg-buildslave/workspace
# We use ssh multiplexing, which creates sockets in /tmp. Overlayfs,
# which docker is using can't host sockets, so we use a scratch mount