發(fā)布服務(CloudRelease)為軟件開發(fā)企業(yè)提供管理軟件發(fā)布過程的能力,保障軟件發(fā)布過程的規(guī)范化、可視化及可追溯。
相對于開發(fā)過程中的“源代碼”,發(fā)布服務關注和管理的是開發(fā)產(chǎn)生的待部署的“軟件包”(通常由源碼編譯構(gòu)建或打包而成)及其生命周期元數(shù)據(jù)(如名稱、大小等基本屬性、由哪些源碼生成、構(gòu)建時間、經(jīng)過哪些測試、部署到什么地方等)。
“軟件包”及其屬性的管理是發(fā)布過程管理的基礎,也是軟件開發(fā)過程中的重要資產(chǎn),常見的軟件研發(fā)過程如下:
布服務是什么.jpg)
圖中的“Repository”是我們常說的“軟件制品庫”,用于管理軟件開發(fā)過程產(chǎn)生的“軟件包”,它是連接持續(xù)集成和持續(xù)交付的重要環(huán)節(jié),軟件包的發(fā)布評審、追溯和安全控制等操作通常在其中進行。
綜上,發(fā)布服務主要包含如下功能:
軟件發(fā)布庫
用戶管理所有編譯構(gòu)建或打包生成的軟件包實體及其生命周期屬性。
私有依賴庫
相對于“maven central”等開源中央倉,私有依賴庫提供企業(yè)內(nèi)部管理私有公共組件的私服,適配各種語言及依賴包管理工具,如maven、npm等。