Jazz Build Permissons error on LInux build machine
Using RTC 4.0.6
Executing a JAZZ Command line build using a Linux build machine. The JBE is running. We logged onto the build machine as a normal user then did "su -" entered the root password and then started the build engine. The User being used to execute the JBE has the Build System Licence allocated. When the build executed it fails with a permissions error as below. 2014-12-08 11:45:10 [Jazz build engine] running on host: RTSLINUX.ibm.com 2014-12-08 11:45:10 [Jazz build engine] Should build occur? 2014-12-08 11:45:10 [Jazz build engine] Yes: Always build a user initiated request. 2014-12-08 11:45:10 [Jazz build engine] Invoking pre-build participant "com.ibm.team.build.jazzscm" 2014-12-08 11:45:11 [Jazz build engine] Accepting changes into workspace "CMD Stream Workspace" ... 2014-12-08 11:45:12 [Jazz build engine] Fetching files to fetch destination "/data/workspace/Build" ... 2014-12-08 11:46:47 [Jazz build engine] Invoking build participant "com.ibm.team.build.cmdline" java.io.IOException: Cannot run program "/data/workspace/Build/Build_Files/wcbd-ant" (in directory "/data/workspace/Build/Build_Files"): java.io.IOException: error=13, Permission denied at java.lang.ProcessBuilder.start(ProcessBuilder.java:460) at com.ibm.team.build.internal.engine.CommandLineBuildParticipant.execute(CommandLineBuildParticipant.java:312) at com.ibm.team.build.internal.engine.CommandLineBuildParticipant.build(CommandLineBuildParticipant.java:108) at com.ibm.team.build.internal.engine.BuildLoop.invokeBuildParticipants(BuildLoop.java:917) at com.ibm.team.build.internal.engine.BuildLoop$2.run(BuildLoop.java:699) at java.lang.Thread.run(Thread.java:736) Caused by: java.io.IOException: java.io.IOException: error=13, Permission denied at java.lang.UNIXProcess.<init>(UNIXProcess.java:252) at java.lang.ProcessImpl.start(ProcessImpl.java:101) at java.lang.ProcessBuilder.start(ProcessBuilder.java:453) ... 5 more The Load Directory defined in the Build Definition is /data/workspace/Build The permissions on the Build Machine are - Any guidance is most appreciated. |
Accepted answer
I don't know exactly how you would want to set the permissions, but one permission group must have eXecute set
you would use the chmod command to set the permissions. 744 would give root (the owner) permission to reade/write and execute , and all others just read Basic File Permissions Permission Groups Each file and directory has three user based permission groups:
Permission TypesEach file or directory has three basic permission types:
Viewing the PermissionsDavid Beange selected this answer as the correct answer
Comments
sam detweiler
commented Dec 08 '14, 9:29 a.m.
if that pgm (/wcbd-ant) is extracted from the source mgmt system, the permissions will be lost. (least they were for me).. so you would have to add that call to chmod as part of the build process.
David Beange
commented Dec 08 '14, 10:27 a.m.
Hi Sam
I changed to use ant with a build.xml that executed the chmod, then my script.
On another job, I used tar to hold my local executables with their permissions set. Then did an untar before executing
Most I switched to Jenkins build engine with the RTC pligin so I can easily create these extra steps
|
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.
Comments
could you post the permissions for the file /data/workspace/Build/Build_Files/wcbd-ant
looks like you left those off of your prior post
also be nice to confirm the user at the time
is that command in a script? if so, can u add the whois command in front of this command?
The user that was used to execute the JBE is also the same user who requested the Team Build. This user is also a member of the project area and has an allocated roll which has all the Build Permissions selected.
Permissions for wcbd-ant are "-rw-r--r--." and root root.
If this is not everything just shout,
there is no execute flag, so you WILL get permission to execute denied.
being root cannot override that.
Cannot run program "/data/workspace/Build/Build_Files/wcbd-ant" (in directory "/data/workspace/Build/Build_Files"): java.io.IOException: error=13, Permission denied
Ah. Ok what should the permissions be set as?
Thanks