I have been attempting to run the Apple "xip" command (digitally sign a 
file and store it in a .xip file) in a bash script from within Jenkins 
running on OS X 10.7 (Lion) but I get failure messages from the command. 
The error messages are not helpful. But, when I run the script from 
Terminal, it runs successfully.

The command line is similar to:
xip --timestamp=none --sign "<our digital certificate name>" 
OurInstallerPackage.pkg OurInstallerXip.xip

The error message is, "The archive can't be written to 
'OurInstallerXip.xip' becuase there was a problem creating the signature"

My first thought was the identity of who is running the script but I've now 
configured Jenkins to run as the login user and that made no difference. My 
second thought was that there is no tty attached to the script when run 
from Jenkins but there is a tty attached when run from Terminal. But I can 
run the script using 'at' (scheduled to run when Terminal is closed) and 
this also has no attached tty and that succeeds. Finally, I thought the 
difference might be that Jenkins starts 'sh' by default but our scripts are 
'bash' scripts. But I set up Jenkins to use /bin/bash as the shell and that 
made no difference, either.

Can anyone think of a difference between running this command in Terminal 
and running this command from Jenkins?

Thanks,
Jim Dodd
Onset Computer Corporation

Reply via email to