簡體   English   中英

將 Github Enterprise 與 AWS Codepipeline 集成

[英]Integrating Github Enterprise with AWS Codepipeline

我在 [公司托管] GitHub 企業站點中有一個存儲庫,我需要使用 CodePipeline 服務將其集成到 AWS 中的 CI/CD 管道中。 然后,CodePipeline 服務將與在 EC2 實例中運行的 Jenkins 服務連接。 我正在按照此AWS 文檔執行此操作。

請注意,這是一個企業 GitHub 存儲庫,不在 GitHub.com 上托管。

我無法在“創建管道”向導中連接到 GitHub Enterprise 站點。 選擇 GitHub 作為源只會讓我連接到 GitHub.com,而不是我組織的企業站點。

如何連接到企業 GitHub 站點,以便我可以將存儲庫添加為我的代碼管道的源?


更新:最終為 github 企業發布了與 AWS Codepipeline 一起使用的集成。 請參閱 Pedreiro 的這個答案


正如 Sid Malani 在評論中所說,在 AWS CodePipeline 中沒有直接或直接的方法來使用私有托管的 GitHub Enterprise 存儲庫。

一種方法是使用 CodeBuild, 它允許添加自定義 github 存儲庫,然后可以在 CodePipeline 中使用這些存儲庫 然而,這只能被視為權宜之計。

感謝Sid Malani的替代策略

我懷疑 AWS 是否會在短期內發布此功能(希望我相信我的話),因為該解決方法有據可查且工作正常。 它的要點可以在這里找到,我將總結如下:

  1. 創建一個 CodeBuild 項目(可以將 GitHub Enterprise 作為源),它本質上只是偵聽開發或主分支的推送事件(webhook),並將源代碼的 .zip 文件輸出到 S3 存儲桶中。
  2. 使用 S3 存儲桶作為 CodePipeline 的源。

有一種方法可以將 3rd 方 Git 存儲庫與 AWS CodePipeline 集成。 AWS 建議采用以下流程 它使用 S3 存儲桶、API 網關和 Lambda 將 Github 企業存儲庫連接到 CodePipeline。 這並不理想,但它可以工作。

非官方:我聽說 CodePipeline 對 Github Enterprise 的支持將在 2019 年下半年停止。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM