Как создать webhook между Bitbucket и Azure DevOps? - PullRequest
0 голосов
/ 29 октября 2018

У нас есть все наши репозитории в Bitbucket, и я пытаюсь настроить службы непрерывной интеграции для DevOps Azure, которые будут создавать проект после каждого нажатия.

Мы создали специальную учетную запись пользователя для репозиториев Bitbucket, которая имеет реальный доступ ко всем репозиториям.

Однако создание триггера CI webhook из Bitbucket в Azure Devops требует административного доступа к репозиториям. Мы не хотим предоставлять этот уровень доступа к учетной записи пользователя CI.

Я мог бы добавить веб-крючок в репозиторий Bitbucket вручную, но у меня отсутствует URL-адрес , по которому веб-крючок должен опубликовать триггер.

URL-адрес похож на https://dev.azure.com/myorganization/_apis/public/hooks/externalEvents?publisherId ...

Я думаю, что он называется URL триггера развертывания , но я нигде не могу его найти. Поддерживает ли новый DevOps Azure добавление веб-хуков вручную или мы должны каким-то образом делать это вручную?

1 Ответ

0 голосов
/ 27 марта 2019

Я в одной лодке со всеми вами. Я не хочу отдавать свои права администратора учетной записи CI ЛЮБОМ РЕПО.

Мой обходной путь до сих пор заключался в предоставлении временного доступа к учетной записи CI, чтобы создать веб-крючок при первом сохранении конвейера, а затем понизить его после создания веб-крюка, зная, что для любых изменений потребуется другое временное повышение прав.

FWIW, используется URL-адрес webhook: https://[REDACTED].visualstudio.com/_apis/public/hooks/externalEvents?publisherId=bitbucket&channelId=[REDACTED]&api-version=5.1-preview

Как вы можете видеть, мы находимся в некотором роде здесь Catch-22, потому что мы могли бы создать конвейер и использовать его channelId для ручного создания webhook в Bitbucket, но не можем даже СОХРАНИТЬ конвейер без прав администратора репо, поэтому мы не можем получить channelId.

Хотелось бы, чтобы был способ отключить создание веб-крюка, чтобы мы могли вручную создать его на стороне Bitbucket.

...