ANDROID_HOME не установлен (агент VSTS работает как служба в OS X)

Я настроил агент VSTS на своем MacBook Pro, и он отлично работает, когда я запускаю его вручную (используя ./run.sh).

Однако, когда я настраиваю агент VSTS для работы в качестве службы (используя ./svc.sh install и ./svc.sh start) и ставлю в очередь новую сборку в VSTS, я получаю сообщение об ошибке (на этапе подписания) «ANDROID_HOME не установлено».

В моем .bash_profile настроено следующее:

export ANDROID_HOME=/Users/$(whoami)/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

Путь правильный, а также запуск echo $ANDROID_HOME возвращает ожидаемое значение (в данном случае /Users/mvanbeusekom/Library/Android/sdk).

Кто-нибудь знает, что может быть не так?


person Maurits van Beusekom    schedule 17.06.2016    source источник


Ответы (1)


В папке вашего агента есть файл с именем runvc.sh. Добавьте свой экспорт туда. Вы увидите закомментированную строку с подсказкой, куда поместить настройки env:

# insert anything to setup env when running as a service
export ANDROID_HOME=/Users/$(whoami)/Library/Android/sdk

Обязательно перезапустите службу.

Причина, по которой .bash_profile не работает для вас, заключается в том, что служба не имеет к ней доступа при запуске.

У меня была та же проблема, и я нашел решение здесь: https://github.com/Microsoft/vsts-tasks/issues/1726#issuecomment-219725321

Для тех, кто разрабатывает с помощью Xamarin, вам обычно понадобится это:

# insert anything to setup env when running as a service
export ANDROID_HOME=/Users/$(whoami)/Library/Developer/Xamarin/android-sdk-macosx
person NovaJoe    schedule 20.06.2016
comment
Большой! Рад помочь! - person NovaJoe; 20.06.2016
comment
Кроме того, вы можете напрямую добавить эту строку в свой run.sh, если вы запускаете ее не в службе. Сегодня я столкнулся с этой проблемой, и что бы я ни делал, она не поднималась, пока я не добавил ее туда. - person JamesMontemagno; 30.03.2017
comment
Проголосовал за последний бит. Пользователь Xamarin здесь. - person WernerCD; 14.06.2017