2016-01-08 3 views
1

Я использую Visual Studio Online с Git и настроил непрерывную сборку с агентом сборки, работающим на виртуальной машине, которую я контролирую.git fetch теги на Visual Studio онлайн агент сборки

Я добавил шаг сценария PowerShell для создания файла msi на версиях, означающих, что у них есть тег. Проблема в том, что теги автоматически не извлекаются, когда репо синхронизируется на первом этапе (Visual studio).

Я думал, что я мог бы это исправить, просто добавив «мерзавец принести --tags» в начале сценария PowerShell, но это выводит эту ошибку:

[error]bash: /dev/tty: No such device or address 
[error]error: failed to execute prompt script (exit code 1) 
[error]fatal: could not read Username for 'https://myaccount.visualstudio.com': Invalid argument 

Когда я создал агент построения он создан токен доступа, но это явно не используется, и он запрашивает имя пользователя/пароль.

Кто-нибудь знает, как это решить?

+0

Я нашел одно решение, которое должно сделать пользователя для агента и установить диспетчер учетных данных. Было бы неплохо использовать тот же токен доступа, что и визуальная студия. – jan

ответ

3

Существует Git Build Tools, расширение для VSTS, которое предоставляет две новые задачи сборки для перезаписи удаленного URL-адреса с помощью токена OAuth, предоставленного VSTS (вам нужно включить это определение сборки). При таком подходе вам не нужна определенная учетная запись пользователя службы и диспетчер учетных данных в агенте сборки.

  • Установите расширение Git Build Tools в расширение VSTS.
  • Сначала вы должны убедиться, что у вас есть опция Allow Scripts to Access OAuth Token в настройках определения сборки.
  • Затем вы можете добавить задачу Enable Git Remote Access, чтобы переписать удаленный репозиторий Git на агенте, чтобы разрешить доступ к репозиторию upstream в Visual Studio Team Services.
  • После выполнения операций, требующих доступа к удаленному репозиторию, убедитесь, что пульт восстановлен до значения по умолчанию, используя задачу Restore Git Remote.

Вы можете найти полный исходный код here и дальнейшую документацию в wiki.

+0

Отлично! Спасибо. – jan