Интеграция Github Enterprise с AWS Codepipeline

У меня есть репозиторий на корпоративном сайте GitHub [в компании], который мне нужно интегрировать в конвейер CI/CD в AWS с помощью сервиса CodePipeline. Затем служба CodePipeline подключится к службе Jenkins, работающей в экземпляре EC2. Я следую этой документации AWS, чтобы сделать это.

Обратите внимание, что это корпоративное хранилище GitHub, а не размещенное на GitHub.com.

Я не могу подключиться к сайту GitHub Enterprise в мастере "Создание конвейера". Выбор GitHub в качестве источника позволяет мне подключаться только к GitHub.com, а не к корпоративному сайту моей организации.

Как подключиться к корпоративному сайту GitHub, чтобы я мог добавить репо в качестве источника моей кодовой линии?

1 ответ

Как сказал в своих комментариях Сид Малани, в AWS CodePipeline нет прямого или прямого способа использовать частный репозиторий GitHub Enterprise.

Одним из способов является использование CodeBuild, которое позволяет добавлять собственные репозитории github, которые затем можно использовать в CodePipeline. Это, однако, следует рассматривать только как временное решение.

Спасибо Sid Malani за альтернативную стратегию

Я сомневаюсь, что AWS предоставит эту функцию в ближайшее время (надеюсь, я ем свои слова), поскольку обходной путь хорошо документирован и отлично работает. Суть этого можно найти здесь, и я резюмирую ее следующим образом:

  1. Создайте проект CodeBuild (который может принимать GitHub Enterprise в качестве источника), который по сути просто прослушивает событие push (веб-перехватчик) вашей разработки или основной ветки и выводит файл.zip с исходным кодом в корзину S3.
  2. Используйте корзину S3 в качестве источника вашего CodePipeline.

Наконец-то была выпущена официальная интеграция.

https://aws.amazon.com/about-aws/whats-new/2020/09/aws-codepipeline-supports-github-enterprise-server

Вот документация:

https://docs.aws.amazon.com/codepipeline/latest/userguide/connections-ghes.html

Существует способ интеграции сторонних репозиториев Git с AWS CodePipeline. AWS предложила следующий процесс. Он использовал S3-контейнеры, шлюзы API и Lambdas для подключения корпоративных репозиториев Github к CodePipeline. Это не идеально, но это может работать.

Неофициально: я слышал, что поддержка CodePipeline для Github Enterprise выйдет во второй половине 201 года.

Другие вопросы по тегам