Some more information...

Without any extra knowledge about the install being done by root - there are two immediate workarounds that I can see at the moment:

1) Add the jenkins gradle plugin to the build farm. This would let jenkins manage its own GRADLE_USER_HOME. I need to test.
2) Have the ros packages themselves utilise a GRADLE_USER_HOME in devel/share/gradle when building. This would be isolated to the workspace though and chained workspaces would need duplicates.

Daniel.


On 15 September 2013 00:49, Daniel Stonier <d.stonier@gmail.com> wrote:

This is with regards to the failed build: http://jenkins.ros.org/job/ros-hydro-rosjava-bootstrap_binarydeb_precise_i386/1/

What's happening in brief:

  • CMake is delegating to java's gradle to do the building
  • When gradle builds the project, it first checks to see if the appropriate version of gradle is around, and if not, it downloads to ~/.gradle
  • Compile step in the report is successful, install step fails (I think this is the correct interpretation).
The compile step is being done as some sandbox'd user? That succeeds at the following line:

Unzipping /tmp/buildd/.gradle/wrapper/dists/gradle-1.7-bin/2g3i7gan25uopmtc0lnjb1l9ff/gradle-1.7-bin.zip to /tmp/buildd/.gradle/wrapper/dists/gradle-1.7-bin/2g3i7gan25uopmtc0lnjb1l9ff

The install step seems to be done as root which has a permission failure...

Exception in thread "main" java.io.FileNotFoundException: /root/.gradle/wrapper/dists/gradle-1.7-bin/2g3i7gan25uopmtc0lnjb1l9ff/gradle-1.7-bin.zip.part (Permission denied)

Why is the second step being done as root? Any suggestions how I might work around this problem? Some relevant information:

  • I can't use the system installable gradle
    • too old
    • best practice is this way anyway - more control over the build
Thanks,
Daniel.



--
Phone : +82-10-5400-3296 (010-5400-3296)
Home: http://snorriheim.dnsdojo.com/
Yujin R&D: http://rnd.yujinrobot.com/