Jenkins 外掛中心國內映象源釋出

京東科技開發者發表於2019-11-13
以下文章來源於Jenkins,作者LinuxSuRen

Jenkins 外掛中心國內映象源釋出

Jenkins 社群的網路基礎設施都是架設在國外的伺服器上,而且,並沒有在國內有 CDN 或者負載均衡的配置。對所有的 Jenkins 使用者而言,1500+的外掛可以幫助他們解決很多問題。然而,我相信,對於國內的很多使用者來說, 可能有過一些不太愉快的經歷——外掛下載速度很慢,甚至會超時。難道遇到這種情況下,我們就只能等嗎?

程式設計師,作為天生懶惰的人,總是希望能透過手中的鍵盤來解決各種個樣的問題。憑什麼?下載一個外掛, 我還的苦苦地等待來自美國的資料包呢?數數你手裡的 Jenkins 都安裝了多少個外掛。30個算少的吧。經過一番搜尋,發現果然已經有前人幫忙把大樹種好了。讓我們一起感謝“清華大學開源軟體映象站”提供的映象服務:

mirrors.tuna.tsinghua.edu.cn

但是,當我興沖沖地把 Jenkins 外掛管理頁面的更新中心的地址修改後,卻發現了一個奇怪的情況,好像還是那麼慢啊。不管是換地址,還是換4G,換電腦都解決不了這個網路排隊的問題。本著開源的精神(不滿意就提 issue 或者 Pull Request), 我只好繼續挖掘這裡的秘密。下面,是我向 TUNA 提的一個 issue(可以看到貌似我並不是第一個吐槽的人):

github.com/tuna/issues/

是的, rsync  可以幫我們把106G的檔案同步過來,免去了出國下載外掛的麻煩,可沒有解決最後一公里的痛。透過下面的 PR 我們可以大致瞭解到,Jenkins 是透過解析  update-center.json  檔案的方式來獲取外掛版本, 以及下載外掛的。另外,如果你認為只是修改下檔案裡的 URL 就能解決這個問題的話,那麼,請再仔細想一下這個事情。既然小白兔可以把地址修改為一個比較方便的值,那麼,大灰狼為啥不能往那些外掛里加點辣椒水呢。Jenkins 作為一個在 CI/CD 領域裡領先了15年之久的大叔,當然不會輸給了一些小毛賊。簡單來說呢,這個事情 是透過兩把鑰匙來解決的——官方用其中一把鑰匙給檔案做了簽名,並保管起來;把另外一把鑰匙對外公佈(儲存在發行版中)。只有透過了公鑰驗證的  update-center.json  檔案,才會被使用到。

github.com/jenkins-infr

知道了問題所在,解決起來自然就容易了。Jenkins 中文社群幫大家把鑰匙和地址的問題解決了,按圖索驥三步走:

Jenkins 外掛中心國內映象源釋出


想了解技術細節?擔心我們是大灰狼?我們歡迎喜歡學習的同學,更歡迎大家的檢閱。提問題、提需求、提程式碼、提文件......都是可以的。實際上,我們的整套方案中,所有的部分(除了拿一把鑰匙以外) 都是開源的,包括還不夠完善的設計文件。而且,並不需要花一分錢,完全利用現有的計算、儲存資源。此處,讓我們再次感謝清華開源映象站點、GitHub Actions、碼雲 Page 等。

github.com/jenkins-zh/m

最重要的事情,一定要在最後才說出來(不喜歡認真閱讀文件的同學,對不起了)。想要體驗極速 安裝外掛的同學,請認準 Jenkins 簡體中文外掛的版本:1.0.10

點選“ 閱讀 ”瞭解京東雲Jenkins外掛產品
歡迎點選“ 京東雲 ”瞭解更多精彩內容

Jenkins 外掛中心國內映象源釋出

Jenkins 外掛中心國內映象源釋出


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69912185/viewspace-2663875/,如需轉載,請註明出處,否則將追究法律責任。

相關文章