讓開發更絲滑,KodeRover開源分佈式持續交付項目Zadig | TGO喜報

{"type":"doc","content":[{"type":"blockquote","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#7b7f83","name":"user"}}],"text":"近日,由TGO鯤鵬會會員李倩帶領的KodeRover團隊重磅開源了分佈式持續交付項目Zadig。從首發到現在近一週時間裏,已經有很多架構師、產品經理以及CTO對使用Zadig和爲Zadig貢獻代碼感興趣,在GitHub倉庫裏面已經有幾十個分支,其中有十個左右的貢獻者提交了問題和拉取請求。此外,在5月28號由該團隊舉辦的第一次Zadig線上答疑環節,引來幾百人參與觀看和討論。","attrs":{}}]}],"attrs":{}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"背景介紹","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"隨着微服務及容器化交付使用的普及,使得開發效率大大提高,一定程度上解決了開發過程中不順暢的問題,尤其是在前後端聯調方面。但是隨着項目的複雜程度,微服務越來越多,開發者在更新的時候會相互依賴,造成代碼驗證工作和自動化測試工作越來越難做,甚至環境不能保持一致,導致環境更難維護。正是微服務帶來的機遇和挑戰,促使了Zadig的誕生。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"Zadig是一個基於Kubernetes 自主設計、研發的開源分佈式持續交付 (Continues Delivery) 產品,爲開發者提供雲原生運行環境,支持開發者本地聯調、微服務並行構建和部署、集成測試等。Zadig 內置了面向 Kubernetes、Helm、雲主機、大體量微服務等複雜業務場景的最佳實踐,可以爲工程師一鍵生成自動化工作流 (workflow)。Zadig 不改變現有習慣和流程,幾乎兼容所有軟件架構,無縫集成 GitHub/GitLab、Jenkins、多家雲廠商等,運維成本極低。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"KodeRover是Zadig背後的研發團隊,專注於雲原生軟件交付,致力於提升企業交付效能,實現研發交付體系的數字化轉型。KodeRover創始團隊由來自 Facebook、七牛雲、谷歌、微軟、華爲和斯坦福大學的資深產業專家聯合組成。李倩是KodeRover團隊創始人兼CEO/CTO,她也是TGO 鯤鵬會上海分會會員。在創立 KodeRover 前,李倩曾構建了中國第一支使用 Go 語言爲基礎支撐的高效能工程團隊,達到業內領先水平,完成了研發持續交付體系建設,在研發自動化、環境服務化、全流程質效度量、魯棒性測試等基礎領域深耕探索。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"Zadig能做什麼?","attrs":{}}]},{"type":"heading","attrs":{"align":"center","level":3},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"主要功能","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"目前Zadig分爲兩個版本:針對開發者用戶的開源版,以及針對企業專屬的企業版。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"開源版","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"具有產品持續交付、持續測試、持續追蹤的全流程能力,包括以下核心功能:","attrs":{}}]},{"type":"bulletedlist","content":[{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"項目管理:服務管理、構建管理、環境管理","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"工作流交付:產品工作流併發隊列","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"質量管理:持續集成度量、自動化測試、性能測試管理","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"交付中心:交付物和製品追蹤 (代碼、構建、工作流、測試、操作人等信息)","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"質效中心:質效看板-持續集成、持續交付、持續部署","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"集成管理:GitHub/GitLab/Gerrit 集成、內部賬號管理、Jira 集成、郵件集成","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"基礎組件:Registry 管理、應用與構建依賴管理、對象存儲、集羣管理","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"支持 Python,Java,Go,C,C++,.Net Linux 版等幾乎所有編程語言。","attrs":{}}]}]}],"attrs":{}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"企業版","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"除產品核心功能版所描述功能外,還支持大規模研發體量、企業級功能:","attrs":{}}]},{"type":"bulletedlist","content":[{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"項目管理:共享服務、環境授權","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"工作流交付:自由編排交付工作流","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"交付中心:產品級版本管理","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"質效中心:DevOps 洞察 - 構建、測試、持續交付洞察","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"集成管理:SSO/LDAP/AD賬號、多集羣接入","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"企業管理:RBAC 權限、操作日誌審計","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"專屬技術支持羣","attrs":{}}]}]}],"attrs":{}},{"type":"heading","attrs":{"align":"center","level":3},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"核心能力","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"以服務爲核心:","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"服務編排能力和服務共享能力。Zadig可以對服務進行很好的編排處理,同時可以把服務變成一種共享服務,如中臺服務的使用,就可以把中臺服務變成一個共享服務來處理。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"高併發的工作流:","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"系統通過簡單配置,即可自動生成高併發工作流,高效執行構建、部署、測試等任務。這一設計很好的解決了微服務架構下帶來的多服務交付效率低下、代碼驗證和自動化測試工作難做等問題。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"無侵入的自動化測試:","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"便捷對接已有的自動化測試框架,通過辦公IM機器人爲開發者提供第一時間的質量反饋,有效實現“測試左移”,充分體現測試價值所在。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"開發本地聯調CLI:","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"開發者可以本地編輯代碼,然後一鍵構建、部署到聯調環境,無需處理過於複雜且繁瑣的操作流程,可以遠程聯調、測試,爲開發者節省出大量寶貴時間去創造更多產品價值。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"heading","attrs":{"align":"center","level":3},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"應用場景","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"對於單個工程師或者一個微服務來說,Zadig的交付流暢程度不夠明顯。但是對於兩人以上的開發團隊,10個微服務及以上的情況下,有一定體量的團隊比較適合使用Zadig。Zadig的服務對象包括:開發工程師、測試開發工程師、DevOps","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":" ","attrs":{}},{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"工程師以及項目管理人員等。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"開源及商業化的考量","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"一個好的軟件一定要有生命力才能活下去。生命力從何而來?來源於用戶的體驗,來源於不同各種各樣的場景,來源於不同聲音的反饋。KodeRover團隊創始人兼CEO/CTO李倩表示:“好的產品,要有足夠的開發者使用率,獲取不同的反饋,同時使產品可以在更多更復雜的場景中運用,獲取和積累不同的場景,引導更多的開發者來參與和使用產品,這就是保持產品生命力的最好途徑,也就是爲什麼要開源的原因所在。\"","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"當前基於雲上應用的市場纔剛剛開始。不管是雲的市場,還是基於雲上的應用和工具開發市場,隨着應用場景的多元化和複雜化趨勢,市場肯定是會跟着變化的。對於Zadig來說,項目本身的價值對其未來市場的影響也是至關重要的。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"至於商業化,KodeRover團隊創始人兼CEO/CTO李倩認爲這將是一個水到渠成的事情,將Zadig項目開源並不意味着團隊就不考慮項目商業化的問題,相反Zadig團隊對於商業化有他們獨到的見解。李倩老師分享到,面向開發者的部分都應該是開源的,因爲真正有價值的東西並不是代碼本身,軟件本身並不值錢,能夠應用於不同場景下的解決方案纔是項目的核心價值,這個價值是在技術層面之上的,是面向客戶的。軟件之外所積累的場景和解決方案能夠真正幫助企業賺錢,或者幫助企業運營更順暢。不過,當前開源項目的商業化依然還在摸索階段。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"後續規劃","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"從開源到現在,Zadig一直在不斷改進和完善,解決了集成環境驗證的問題,優化了環境不穩定,以及可擴展性提升不足的前期優化等。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":"截至目前,Zadig已經開源了佔整體60%的功能,未來一個月將開源到95%以上的程度。另外,KodeRover團隊計劃在未來三個月內實現Zadig可擴展性提升的短板問題。Zadig對應的文檔站也在不斷完善中,在Zadig項目開源之後,Zadig文檔站也計劃開源。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"heading","attrs":{"align":"center","level":3},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#40A9FF","name":"blue"}}],"text":"相關鏈接","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"Zadig Github 地址:","attrs":{}},{"type":"link","attrs":{"href":"https://github.com/koderover/zadig","title":null,"type":null},"content":[{"type":"text","text":"https://github.com/koderover/zadig","attrs":{}}],"marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"Zadig 快速入門指南:","attrs":{}},{"type":"link","attrs":{"href":"https://docs.koderover.com/zadig/quick-start/introduction/","title":null,"type":null},"content":[{"type":"text","text":"https://docs.koderover.com/zadig/quick-start/introduction/","attrs":{}}],"marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}],"text":" ","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}},{"type":"strong","attrs":{}}],"text":"KodeRover官網:","attrs":{}},{"type":"link","attrs":{"href":"https://www.koderover.com","title":null,"type":null},"content":[{"type":"text","text":"https://www.koderover.com","attrs":{}}],"marks":[{"type":"color","attrs":{"color":"#494949","name":"user"}}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章