還在使用 Git 倉庫作為 CocoaPod 私服?--使用Artifactory 1分鐘搭建 CocoaPod 私服
痛點
目前的 CocoaPod 私服,很多公司使用 Git 倉庫進行搭建,這導致的問題是,CocoaPod 的構建產出物通常較大,上傳到 Git 倉庫時,會導致 Git 倉庫持續增大, Git Clone 的速度大大降低,進而導致軟體部署,交付的時間變長,影響了研發上線的效率。
不僅如此,您可能還需要為安卓的開發者搭建 Gradle 倉庫,Java 開發者搭建 Maven 私服,容器團隊搭建 Docker 私服,各個私服獨立維護,佔用大量系統資源,維護成本呈幾何指數增長。
JFrog Artifactory 能夠解決這個問題,通過搭建 Artifactory,能夠在內網建立統一全語言的私有制品倉庫,支援 CocoaPod,Gradle,Maven,Docker 等等。程式設計師通過 Artifactory 可以實現全語言的依賴下載,並且可以將構建產出物上傳到 Artifactory 進行管理。
下載 Artifactory
獲得 Artifactory 的安裝檔案很簡單,訪問https://jfrog.com/download-artifactory-pro/, 然後在http://www.jfrogchina.com/artifactory/free-trial/ 申請免費試用版 License 即可。可以用 StandAlone 方案安裝,無需配置資料庫即可使用。也支援 RPM,Debian,Docker 的安裝方式。
建立 CocoaPod 倉庫
解壓下載的安裝包後,進入 bin 目錄,執行 artifactory.sh檔案,隨後訪問 localhost:8081即可進入 Artifactory 頁面:
輸入 License 資訊,即可開始使用 Artifactory。建立倉庫時,選擇 CocoaPod:
在此,我們建立兩個倉庫,一個是 CocoaPod Local,目的是儲存所有本地的CocoaPod 構建產出物,另一個是 CocoaPod Remote,能夠作為外網 CocoaPod 源的本地代理,在內網提供服務。
在使用 CocoaPod 倉庫之前,需要安裝 cocoapod-art 外掛:gem install cocoapod-art。安裝完之後,選擇 CocoaPod Remote 倉庫,右上角點選 Set Me Up,會彈出如下對話方塊:
該對話方塊裡會提示如何使用該倉庫,包括如何安裝 cocoapod-art 外掛,如何在 pod 新增 Artifactory 作為源:
然後將Podfile 中新增該源作為 pod 的依賴解析源:
下載依賴,上傳構建包到 Artifactory
完成之前步驟之後,再執行 pod install 的時候,可以看到依賴已經被快取在遠端倉庫:
在打包 CocoaPod 專案時,我們執行 pod spec create jfrogapp,並且通過 JFrog 的Rest API 上傳到 CocoaPod Local 倉庫,供後面的測試,運維團隊使用該構建包。
上傳完成之後,可以看到構建的 tar 包已經被儲存到 Artifactory 的 local 倉庫,而不需要儲存到 Git 倉庫。
除了全語言的包管理支援,Artifactory 還支援構建包的元資料和漏洞掃描。通過元資料的能力,能夠展示包相關的生命週期資料資訊,例如需求 ID,和單元測試覆蓋率,通過率等等指標。
總結
通過Artifactory CocoaPod 倉庫的使用,能夠快速在公司內網搭建一套 CocoaPod 私服,既可以代理外網依賴,也可以作為本地私服儲存構建包,並且記錄該構建包管理的需求 ID,單元測試,效能測試等結果,Artifactory 企業版也支援高可用架構的搭建,實現0宕機的私服服務,更重要的是您也可以將 Maven,Docker,NPM 等30多種語言包都儲存在 Artifactory 進行全公司統一管理,標準化交付流水線,提高軟體交付的速度。
試用 JFrog Artifactory 地址:
http://www.jfrogchina.com/artifactory/free-trial/