Changes between Version 8 and Version 9 of UsingLaunchd
- Timestamp:
- 05/17/11 17:48:29 (2 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UsingLaunchd
v8 v9 17 17 If setting up through dscl or Workgroup Manager, note that you should specify a home directory (a NFSHomeDirectory attribute in the !DirectoryServices user record) for the user you decide to run your buildbots as. This will ensure that programs who wish to write configuration or runtime files in their user's home directory (such as Subversion's .subversion directory or ssh's .ssh directory) may do so. In the case of this sample file, the buildbot user has its NFSHomeDirectory attribute set to /var/buildbot. 18 18 19 This properly list should be named after the job label (here net. sourceforge.buildbot.slave.test) with the addition of a plist extension (thus in this example, net.sourceforge.buildbot.slave.test.plist) and placed in the /Library/LaunchDaemons directory. The property list must be owned by root:wheel, otherwise the system will not load it. For details on managing launchd jobs, see the launchctl(1) man page.19 This properly list should be named after the job label (here net.buildbot.slave.test) with the addition of a plist extension (thus in this example, net.buildbot.slave.test.plist) and placed in the /Library/LaunchDaemons directory. The property list must be owned by root:wheel, otherwise the system will not load it. For details on managing launchd jobs, see the launchctl(1) man page. 20 20 21 21 Note that placing the launchd plist in /Library/LaunchDaemons will cause buildbot to launch on booting the machine, even if the buildbot user does not have a graphical context (auto login on boot, say). If the machine you're setting this up as is a test slave and requires a GUI context to run tests with, you should place this plist inside ~buildbot/Library/LaunchAgents, which means that builbot will only run when the buildbot user auto logs in (don't forget to set auto login in the Accounts prefpane). This will avoid any issues with a system-wide context trying to access a GUI context, which blocks certain API level calls.
![[Buildbot Logo]](/chrome/site/header-text-transparent.png)