開源社區(qū)賦能,Walrus 用戶體驗(yàn)再升級

基于平臺工程理念的應(yīng)用管理平臺 Walrus 已于上月正式開源,目前在 GitHub 已收獲 177 顆星??
?
Walrus 希望打造簡潔清爽的應(yīng)用部署與管理體驗(yàn),幫助研發(fā)與運(yùn)維團(tuán)隊(duì)減少“內(nèi)耗”工作,提升開發(fā)體驗(yàn)。
?
我們十分重視 Walrus 用戶的體驗(yàn)與反饋,并希望與每位用戶分享 Walrus 的產(chǎn)品動態(tài)。正式開源一周內(nèi),我們就迎來了社區(qū)首個外部 PR,此后陸陸續(xù)續(xù)收到了來自社區(qū)用戶提交的 Bug 和 Issue。這里,我們將詳細(xì)描述目前已修復(fù)的兩個問題及其具體修復(fù)和優(yōu)化過程。
?
用戶信息資源權(quán)限的統(tǒng)計(jì)體驗(yàn)優(yōu)化
問題描述
在0.3.0
的版本中資源權(quán)限的表格中統(tǒng)計(jì)各個資源的動作權(quán)限的數(shù)量作為匯總,然而實(shí)際部分頁面的設(shè)計(jì)并沒有相關(guān)的動作,造成同一資源各個動作的匯總不一致,使得用戶無法直觀地理解表格的含義。
?

優(yōu)化方式
這里我們?nèi)サ舯砀裰小百Y源”一列,將相關(guān)的資源顯示在對應(yīng)的項(xiàng)目或者分組模塊下。
?
去掉權(quán)限數(shù)量的匯總數(shù)字,將匯總的結(jié)果通過三種不同的顏色呈現(xiàn),即紅色代表所有資源沒有權(quán)限, 黃色表示部分資源有權(quán)限,綠色則表示所有資源有權(quán)限。如下圖所示:
?

相關(guān) issue 詳情查看此鏈接:https://github.com/seal-io/walrus/issues/1266
?
內(nèi)置模板資源的更新支持
功能解析
Walrus 內(nèi)置了一些常用操作的模板,其中包括deploy-source-code
模板,用于從源碼構(gòu)建鏡像并將其部署到 Kubernetes 集群中。使用該模板的步驟如下:
首先,創(chuàng)建一個類型為 Kubernetes 的連接器。有關(guān)詳細(xì)信息,請參考 Walrus 文檔中的連接器創(chuàng)建指南。
創(chuàng)建一個新的環(huán)境,并將步驟 1 中創(chuàng)建的連接器添加到該環(huán)境中。
創(chuàng)建一個服務(wù),并選擇
deploy-source-code?
模板的最新版本。在配置服務(wù)時(shí),在?
Build
?部分輸入 GitHub 倉庫信息、鏡像信息、密鑰等配置。在?Deploy
?部分輸入副本數(shù)、所需資源、端口等相關(guān)信息。完成配置后,保存即可進(jìn)入打包部署流程。
?
這些步驟將幫助您使用 Walrus 快速進(jìn)行源碼構(gòu)建并部署成可用的 Kubernetes 服務(wù)。
?


問題描述
在 Walrus 提供的內(nèi)置模板?deploy-source-code
?中定義了?image
?資源,該資源代表容器鏡像資源。然而,在模板版本?0.0.1
?中,沒有提供該資源的更新支持。因此,使用該模板的服務(wù)構(gòu)建部署完成后,再次更新升級將出現(xiàn)錯誤,導(dǎo)致更新失敗。
?
可以在 issue 中(鏈接:?https://github.com/seal-io/walrus/issues/998?)找到詳細(xì)的問題復(fù)現(xiàn)過程。
?
修復(fù)過程
Walrus 基于容器鏡像構(gòu)建工具?Kaniko
?開發(fā)了 Terraform Provider?terraform-provider-kaniko
,image
?資源來自于 Provider 中定義的,用于從源代碼構(gòu)建容器鏡像,并推送到容器鏡像倉庫中。
?
在模板?deploy-source-code
?0.0.1
?版本中使用的 Provider 版本尚未支持?image
?資源的更新操作。但在該 Provider 的最新版本中,我們添加了對此功能的支持,并引入了更多優(yōu)化,以確保即使在 Provider 參數(shù)不變的情況,源代碼倉庫有了新內(nèi)容,該 Provider 也能進(jìn)行更新和升級。我們在的?deploy-source-code
?模板的0.0.4
版本中升級了 Provider,使用修復(fù)后的版本。
?
要解決這個問題,用戶可以使用修復(fù)后的?deploy-source-code
模板,即?0.0.4
?版本。最新部署的?sealio/walrus:v0.3.0
?鏡像中已經(jīng)包含了?deploy-source-code
?的最新版本,可以直接使用。
?

已運(yùn)行的 Walrus,Walrus 默認(rèn)會每天同步最新的模板,用戶可檢查 Walrus 是否已同步了最新版本,如已同步可直接使用deploy-source-code
的最新版本。
?
也可進(jìn)行手動同步,進(jìn)入運(yùn)維中心
,然后導(dǎo)航到模板?deploy-source-code
,并點(diǎn)擊刷新以獲取最新版本。這樣就可以使用修復(fù)后的新版本了。
?

以上就是目前已修復(fù)問題的詳細(xì)內(nèi)容與修復(fù)及優(yōu)化過程,在這里特別感謝?@cdryzun?與?@orangedeng?向我們提出的問題。后續(xù),我們將第一時(shí)間與大家分享 Walrus 的每一次產(chǎn)品更新與每一個重要動態(tài)。
?
Walrus 歡迎每一位開發(fā)者的參與與貢獻(xiàn),并積極向我們提出有質(zhì)量的問題與建議,經(jīng)研發(fā)團(tuán)隊(duì)采納,我們將會送出 Seal 精美周邊禮品??一份~
?
項(xiàng)目地址:https://github.com/seal-io/walrus
?