Christoph Forster
Christoph Forster

Reputation: 1858

Cloudbees Docker Plugin - "?" Folder

I'm using Cloudbees Docker Plugin 1.9 together with Jenkins 2.25 to Build my Project within Docker Containers.

Jenkins itself is also running under Docker 1.12.2 on Ubuntu 14.4.

The JENKINS_HOME directory is mounted as Volume so every job, workspace etc. is available under User "ubuntu" on the Host System.

When running a Job with Cloudbees Docker Plugin it creates a "?" folder in the workspace containing different hidden directories (e.g. .oracle_jre_usage, .m2, .gradle etc.)

Can anybody explain, what part / Plugin of the Jenkins Job creates this folder and why it is named "?"

Upvotes: 1

Views: 228

Answers (1)

leesei
leesei

Reputation: 6070

I encountered similar issue when mounting a source folder into a Maven container as WORKDIR for build.

JRE seems to take WORKDIR/$(id -un) as the home directory (${user.home} in the settings) and creates those folders.
The '?' probably is a result of failing to resolve the host's UID in the container, which I did with docker run --rm -u $(id -u):$(id -g) ....
I was able to modify apache-maven/conf/settings.xml to change the path if .m2 to persist the cache on another host mount. However due to this issue .oracle_jre_usage will always be created and log the timestamp.

The solution was probably to not set WORKDIR to the workspace, so that ${user.home} will point to /?/ which will be removed with the container.

Upvotes: 1

Related Questions