2

Я пытаюсь настроить сервер Appium на стат автоматически после запуска системы. Также я бы хотел, чтобы он перезагрузился после сбоя. Appium был установлен как пакет npm, и он запускается и работает нормально, когда я набираю "appium" в терминале.

Итак, я создал файл io.appium.server.plist в /Library /LaunchAgents / со следующим содержимым:

<?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>io.appium.server</string>
        <key>OnDemand</key>
        <false/>
        <key>UserName</key>
        <string><valid_user_name></string>
        <key>GroupName</key>
        <string>staff</string>
        <key>ProgramArguments</key>
        <array>
                <string>appium</string>
                <string>--session-override</string>
        </array>
</dict>
</plist>

Затем назначил правильного владельца (chown) и разрешения (chmod) для этого файла и выполнил команду:

sudo launchctl load /Library/LaunchAgents/io.appium.server.plist

По какой-то причине это не запустило сервер Appium, я не могу подключиться к нему. Команда "launchctl list" сообщила, что моя задача завершилась с кодом состояния 78, но в документации Appium я не могу найти, что означает этот код завершения.

$ launchctl list | grep appium
-       78      io.appium.server

Что я упустил? Почему appium запускается нормально, когда запускается из командной строки, но не запускается из launchd?


Я попытался переместить файл plist в каталог пользователя: ~/Library/LaunchAgents/, изменив имя пользователя, но ни один не помог. Я отладил его, установив ключи StandardOutPath и StandardErrorPath, и обнаружил, что выходные файлы были созданы, но были пустыми.

0