AWS進一步強化Apple生態系的開發,在CodeBuild新增macOS執行個體選項,推出CodeBuild for macOS,讓開發者可以建置iOS與macOS等Apple平臺的應用程式,這提供了Apple應用程式開發團隊可擴展性、較低基礎設施管理負擔,以及專用macOS建置環境等優點。

過去,開發者通常在本地環境或是自建的CI/CD伺服器上開發和建置Apple應用程式。要在iOS、iPadOS、watchOS、tvOS或macOS上進行建置、測試、簽署和發布必須使用Xcode,而Xcode只能在macOS上運作。開發者也可以自行配置CI系統來自動執行建置和測試任務,但這需要管理基礎設施,並且必須處理不同版本的macOS和Xcode,還有其軟體更新的問題。

AWS CodeBuild則提供了一個全託管持續整合服務,其主要功能可協助開發者自動編譯程式碼、執行測試,以及生成可部署的軟體套件。macOS應用程式開發者可利用CodeBuild自動化和標準化建置流程,CodeBuild可依據使用者的需求自動擴展資源。而且CodeBuild也能整合其他AWS服務,讓程式碼管理到應用部署都可以在同一個平臺上進行。

典型的CI/CD流程,從開發者提交新的程式碼或是拉取請求開始,安裝在機器上的儲存庫代理會觸發各種腳本來配置環境、建置和測試應用程式,最終將其部署至App Store Connect。而過去AWS所推出的EC2 Mac,已可供開發者方便管理和自動化macOS機器。

不過,即便使用EC2 Mac仍會面臨兩個問題,首先是開發者需要準備AMI(Amazon Machine Image),這通常包括安裝Xcode、Fastlane和其他開發工具來配置建置環境,不同的macOS和Xcode需要多種建置環境,第二個問題,對於每天需要進行數百數千次建置的大型組織,需要彈性縮放機器規模,而要根據建置的數量和持續時間擴展與縮減機隊的任務複雜且耗時。

CodeBuild for macOS解決了這些問題,該服務仍是以EC2 Mac執行個體為基礎運作。CodeBuild for macOS提供預配置的AMI,其中預先安裝開發常用的工具和函式庫,開發者可以直接使用這些標準化映像檔。另外,CodeBuild for macOS還支援預留容量機隊功能,CodeBuild可自動分配和管理執行個體資源,開發者只需要指定容量,系統便會自動處理擴展和縮減的細節。

使用EC2 Mac執行個體第一次進行建置需要8到10分鐘的準備時間,在這個期間提交的建置將進入佇列等候。由於CodeBuild for macOS使用預留容量機隊,與按分鐘計費的按需機隊不同,沒有建置任務仍會持續產生費用。建置期間CodeBuild會清理工作目錄,允許使用本地快取加速後續建置。目前CodeBuild for macOS已經在美東、美西、歐洲和亞太區域提供。

熱門新聞

Advertisement