Я пытаюсь использовать PRAW API для размещения бота для публикации ежедневных веток Википедии на / r / Wikipedaily, и я решил использовать launchd / launchctl, чтобы планировать запуск сообщений каждые 24 часа.Сценарий запускается (это запущенный процесс launchctl), но он постоянно имеет код состояния 78 для некоторой ошибки.
Я попытался поместить файл plist в LaunchAgents и LaunchDaemons, запустив его с помощью sudo, указав путьв Python env как в файле script, так и в файле launchd, и все 3 приводят к одному и тому же коду ошибки.Это не проблема с самим скриптом Python, я не думаю, что запуск этого вручную из командной строки, кажется, работает нормально.
Моя интуиция заключается в том, что проблема связана с самим файлом plist, что-тоделать со спецификацией среды Python или разрешениями для файлов / каталогов.Я дал разрешения скрипту Python через chmod + x, но этого может быть недостаточно.
Это файл plist (StartInterval имеет значение 60 для целей отладки, а не 86400, не работает независимо):
com.nathansbud.wikipedaily.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>com.nathansbud.wikipedaily</string>
<key>Program</key>
<string>/Users/zackamiton/Code/Wikipedaily/main.py</string>
<key>ProgramArguments</key>
<array>
<string>/Users/zackamiton/Code/Wikipedaily/main.py</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>60</integer>
<key>StandardErrorPath</key>
<string>/var/log/wikipedaily.log</string>
<key>StandardOutPath</key>
<string>/var/log/wikipedaily.log</string>
<key>WorkingDirectory</key>
<string>/Users/zackamiton/Code/Wikipedaily/</string>
</dict>
</plist>
Запуская его из командной строки, публикация Reddit работает просто отлично, но если запустить launchd для выполнения скрипта, произойдет сбой со следующим сообщением об ошибке в консоли:
Он работает, по крайней мере, каждую минуту (согласно выводу консоли), но, к сожалению, 78 - это общий код ошибки, который мне мало что объясняет, и я не уверен, что делать со строкой xpcproxy.
Буду признателен за любую помощь в этом!Заранее спасибо!