AWS Thinkbox Discussion Forums

running pulse from crontab - mono not found

When executing pulse directly from a cron job, it fails to start the housecleaning process, because it cant find mono:

Log:
2013-11-24 00:00:04: Creating New Console: False
2013-11-24 00:00:04: Executable: “/opt/Thinkbox/Deadline6/bin/deadlinecommand”
2013-11-24 00:00:04: Argument: -DoHouseCleaning 10 True
2013-11-24 00:00:04: Startup Directory: “/opt/Thinkbox/Deadline6/bin”
2013-11-24 00:00:04: Process Priority: BelowNormal
2013-11-24 00:00:04: Process Affinity: default
2013-11-24 00:00:04: Process is now running
2013-11-24 00:00:04: /opt/Thinkbox/Deadline6/bin/deadlinecommand: line 5: exec: mono: not found

The cron command:
/opt/mono-2.10.9/bin/mono /opt/Thinkbox/Deadline6/bin/deadlinepulse.exe -nogui >/dev/null 2>&1

We needed to reference mono directly in there, because otherwise cron itself would not find mono neither. Seems like some env variables are not set up for the cron user

Just wondering…
Does the user that is executing the cron job have mono in its PATH?
ie: as the cron user if you do “mono -V” does it return a result?
Also, is there any difference if you add not just Mono to your PATH but also /opt/Thinkbox/Deadline6/bin/ to PATH?

You could edit the shell scripts in /opt/Thinkbox/Deadline6/bin (deadlineslave, deadlinemonitor, deadlinepulse, deadlinecommand, deadlinecommandbg) so that they use the full path to Mono instead of assuming it’s in the PATH.

The cron user has a minimal set of env variables as far as i know. Ill try adding the mono folder to the cron file. Maybe best would be to change this within the shell scripts upon installation, to avoid this problem for other users

I am doing this now, also adding the --gc=sgen line to the command line. So the launcher simply triggers these shell scripts directly?

Yes, that’s correct.

Privacy | Site terms | Cookie preferences