【发布时间】:2012-10-12 01:48:42
【问题描述】:
我可能无法为此使用launchd,我只是找不到任何明确表示不的东西。那么问题来了……
我想在每小时 10 分钟后运行我的 Watir 脚本。此脚本启动 Firefox,执行测试,并将结果记录到标准输出。我像这样设置我的 plist 文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" \
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>client_checkout</string>
<key>Program</key>
<string>/Users/chris/svn/qa/watir/tests/client.sh</string>
<key>StartCalendarInterval</key>
<dict>
<key>Minute</key>
<integer>52</integer>
</dict>
</dict>
</plist>
在我拥有的那个 shell 脚本中:
echo 'hello' >> /Users/chris/results.txt
ruby /Users/chris/svn/qa/watir/tests/client_checkout.rb
回显用于调试目的。
当我将 plist 文件放在 /Library/LaunchDaemons 中时,脚本运行,我看到文本文件中写入了“Hello”。然后,当它碰到 Ruby 部分时它会失败。当我查看 system.log 时,我看到:
com.apple.launchd.peruser.502[118] (client_checkout[25285]): Exited with code: 1
我尝试将 plist 文件切换到 /Library/LaunchAgents,但结果完全相同。
另外,我认为这不是文件路径问题。当我提供完整的文件路径时,就像我在这里所做的那样,这些脚本可以在任何目录中正常运行。
我不能这样使用launchd吗?我“做错了”吗?这是怎么回事?谢谢!
【问题讨论】:
标签: ruby automation watir watir-webdriver launchd