Github Webhook отклонен AWS CodeBuild - PullRequest
4 голосов
/ 02 марта 2020

У меня на Github настроен webhook, который вызывает AWS Codebuild для запуска сборки этой ветки. Я вижу ошибку, возвращающуюся из CodeBuild, но мне неясно, каково решение.

Ответ - 400 со следующими подробностями. Полезная нагрузка webhook - это то, что Github обычно отправляет на новое событие pu sh в филиал.

Connection: close Content-Length: 89 Content-Type: application/json Date: Sun, 01 Mar 2020 21:20:05 GMT x-amzn-ErrorType: InvalidInputException:http://internal.amazon.com/coral/com.amazonaws.codebuild.webhooks/ x-amzn-RequestId: a4dbe4bd-244d-4f4a-826e-ed49bd72c099 {"message":"Invalid Webhook request received: Invalid source repository owner specified"}

Я добавлю несколько вещей:

  1. Событие PING для веб-крюка было успешно обработано.
  2. Проект Github принадлежит моей организации
  3. Я владелец этой организации
  4. Я подключил свой Codebuild для Github изначально использовал мой личный токен доступа с правильными нужными областями, и я попытался использовать OAuth для подключения. Оба соединения работают, но веб-крючок все равно не работает одинаково.

Ответы [ 2 ]

2 голосов
/ 07 марта 2020

На основании комментария от @Linghao Zhu я изменил URL-адрес моего репозитория github, чтобы использовать правильный регистр моего владельца репо, и теперь все работает.

Не уверен, что это так задокументировано где угодно, но может быть полезно знать, что проверка на стороне AWS CodeBuild выполняет сравнение с учетом регистра.

2 голосов
/ 06 марта 2020

Спасибо за использование AWS CodeBuild. Когда CodeBuild получает полезную нагрузку события webhook, мы сравниваем имя владельца репо, установленное в проекте CodeBuild, с информацией в полезной нагрузке. Например, если в качестве источника вашего проекта задано «https://github.com/ [владелец] / [репо] », мы возьмем [владельца] и сравним его с именем / логином владельца репозитория, указанным в полезной нагрузке webhook. , Если они не совпадают, будет выдано исключение «Указан неверный источник репозитория».

Вы можете найти имя владельца / логин в полезной нагрузке, посмотрев «repository» -> «owner» -> » поле логина "/" имя ".

Можете ли вы убедиться, что настройки вашего проекта соответствуют информации в полезной нагрузке?

...