Jenkins 修改 update center 到國內(nèi)源

https://github.com/lework/jenkins-update-center
https://lework.github.io/2020/03/05/jenkins-update-center/
https://www.haxi.cc/archives/change-jenkins-plugin-mirror.html
https://www.north-47.com/update-jenkins-plugins-behind-a-corporate-proxy/
https://zhuanlan.zhihu.com/p/125558756

一届腐、修改 UpdateCenter

UpdateCenter 指定獲取更新文件(update-center.json)的地址培他。
該文件(update-center.json)下載后,將會被修改后存入 .jenkins/updates/目錄意推。

修改 .jenkins/hudson.model.UpdateCenter.xml 如下

<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
  </site>
</sites>

sed 命令替換:

sed -i 's#https://updates.jenkins.io/update-center.json#https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/huawei/update-center.json#' /var/lib/jenkins/hudson.model.UpdateCenter.xml

如上也可在圖形界面修改,"Manage Jenkins" ---> "Manage Plugins" ---> "Advanced Settings" ---> "Update Site"

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json下載的是始終是最新的插件珊蟀,老版本的Jenkins不兼容的菊值。

根據(jù)當前版本,替換為https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/dynamic-stable-{$VERSION}/update-center.json育灸,其中{$VERSION}是當前Jenkins的版本腻窒。

如果不是LTS版本,則dynamic-stable-VERSION要換成dynamic-VERSION磅崭。

image.png
2023-06-28 09:17:43.752+0000 [id=42]    INFO    hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Download metadata
2023-06-28 09:17:43.786+0000 [id=42]    INFO    hudson.util.Retrier#start: Attempt #1 to do the action check updates server
2023-06-28 09:17:44.332+0000 [id=29]    INFO    jenkins.InitReactorRunner$1#onAttained: Completed initialization
2023-06-28 09:17:44.480+0000 [id=22]    INFO    hudson.WebAppMain$3#run: Jenkins is fully up and running


2023-06-28 09:18:02.065+0000 [id=42]    WARNING h.m.DownloadService$Downloadable#updateNow: No tool installer metadata found for hudson.tasks.Maven.MavenInstaller
2023-06-28 09:18:02.066+0000 [id=42]    INFO    hudson.util.Retrier#start: Performed the action check updates server successfully at the attempt #1
2023-06-28 09:18:02.069+0000 [id=42]    INFO    hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Download metadata. 18,316 ms

如上儿子,Jenkisn啟動后,開始下載更新文件砸喻。
倒數(shù)三行日志是下載update-center.json的日志柔逼,update-center.json會被轉(zhuǎn)義到 .jenkins/updates/default.json文件。該文件保存著當前版本的依賴關(guān)系割岛。

案例:
Jenkins latest 版本 2.412愉适,但是需要部署低版本,以與生產(chǎn)環(huán)境 2.277.1 保持一致癣漆。
在初始化插件的時候维咸,大部分安裝不上,會提示 Jenkins (2.289.1) or higher required 惠爽,插件依賴于更高版本的Jenkins腰湾。

二、修改從清華源下載插件

上面的配置修改的下載 update-center.json 的路徑疆股,update-center.json內(nèi)下載插件的路徑任然源自 jenkins费坊。如下對插件的下載地址進行替換:
https://updates.jenkins.io/download 替換為 https://mirrors.tuna.tsinghua.edu.cn/jenkins

sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json

三、報錯解決 - Signature verification failed in update site

Jenkins 修改清華源后旬痹,提示日志報錯信息 “Signature verification failed in update site”

https://support.cloudbees.com/hc/en-us/articles/115000494608-Why-is-there-Failed-Signature-Check-when-using-update-server-

Jenkins: signature verification failed in update site 'default' (show details) - Stack Overflow

解決:Jenkins: signature verification failed in update site ‘default‘ (show details)_老徐愛編程的博客-CSDN博客

解決方式:

增加配置 -Dhudson.model.DownloadService.noSignatureCheck=true

java -Dhudson.model.DownloadService.noSignatureCheck=true -jar jenkins.2.277.1.war 

附一:updates/default.json 文件解析

cat .jenkins/updates/default.json |jq 'keys'

[
  "connectionCheckUrl",
  "core",
  "deprecations",
  "generationTimestamp",
  "id",
  "plugins",
  "signature",
  "updateCenterVersion",
  "warnings"
]

cat .jenkins/updates/default.json |jq '.plugins'

查看所有 plugins 信息附井,略

cat .jenkins/updates/default.json |jq '.plugins.zoom' 查看 zoom 插件詳細信息
cat .jenkins/updates/default.json |jq '.plugins."maven-plugin"' 查看 maven-plugin 插件詳細信息

{
  "buildDate": "Apr 28, 2023",
  "defaultBranch": "master",
  "dependencies": [
    {
      "name": "commons-lang3-api",
      "optional": false,
      "version": "3.12.0-36.vd97de6465d5b_"
    },
    {
      "name": "apache-httpcomponents-client-4-api",
      "optional": false,
      "version": "4.5.13-1.0"
    },
    {
      "name": "javadoc",
      "optional": false,
      "version": "217.v905b_86277a_2a_"
    },
    {
      "name": "jsch",
      "optional": false,
      "version": "0.1.55.2"
    },
    {
      "name": "junit",
      "optional": false,
      "version": "1119.va_a_5e9068da_d7"
    },
    {
      "name": "mailer",
      "optional": false,
      "version": "414.vcc4c33714601"
    },
    {
      "name": "token-macro",
      "optional": true,
      "version": "293.v283932a_0a_b_49"
    }
  ],
  "developers": [
    {
      "developerId": "integer",
      "name": "Kanstantsin Shautsou"
    },
    {
      "developerId": "jglick",
      "name": "Jesse Glick"
    },
    {
      "developerId": "kohsuke",
      "name": "Kohsuke Kawaguchi"
    },
    {
      "developerId": "olamy",
      "name": "Olivier Lamy"
    },
    {
      "developerId": "olivergondza",
      "name": "Oliver Gond?a"
    },
    {
      "developerId": "aheritier",
      "name": "Arnaud Héritier"
    },
    {
      "developerId": "jtaboada",
      "name": "Jose Blas Camacho Taboada"
    }
  ],
  "excerpt": "This plugin provides a deep integration between Jenkins and Maven. It adds support for automatic triggers between projects depending on SNAPSHOTs as well as the automated configuration of various Jenkins publishers such as Junit.",
  "gav": "org.jenkins-ci.main:maven-plugin:3.22",
  "issueTrackers": [
    {
      "reportUrl": "https://www.jenkins.io/participate/report-issue/redirect/#16033",
      "type": "jira",
      "viewUrl": "https://issues.jenkins.io/issues/?jql=component=16033"
    }
  ],
  "labels": [
    "builder"
  ],
  "name": "maven-plugin",
  "popularity": 142274,
  "previousTimestamp": "2023-03-01T03:31:07.00Z",
  "previousVersion": "3.21",
  "releaseTimestamp": "2023-04-28T07:42:14.00Z",
  "requiredCore": "2.332.1",
  "scm": "https://github.com/jenkinsci/maven-plugin",
  "sha1": "iVu4F5xFOzzMzV6ISJRxU6nqwNQ=",
  "sha256": "a1vbnllzvvspscrWflgLVOYTJttgWa8xzw37Xb0U7G0=",
  "size": 5488120,
  "title": "Maven Integration",
  "url": "https://updates.jenkins.io/download/plugins/maven-plugin/3.22/maven-plugin.hpi",
  "version": "3.22",
  "wiki": "https://plugins.jenkins.io/maven-plugin"
}

下載插件的地址是,"url": "https://updates.jenkins.io/download/plugins/maven-plugin/3.22/maven-plugin.hpi"

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末两残,一起剝皮案震驚了整個濱河市永毅,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌人弓,老刑警劉巖沼死,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異崔赌,居然都是意外死亡意蛀,警方通過查閱死者的電腦和手機耸别,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來县钥,“玉大人秀姐,你說我怎么就攤上這事∪糁” “怎么了省有?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長谴麦。 經(jīng)常有香客問我蠢沿,道長,這世上最難降的妖魔是什么匾效? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任舷蟀,我火速辦了婚禮,結(jié)果婚禮上弧轧,老公的妹妹穿的比我還像新娘雪侥。我一直安慰自己,他們只是感情好精绎,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布速缨。 她就那樣靜靜地躺著,像睡著了一般代乃。 火紅的嫁衣襯著肌膚如雪旬牲。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天搁吓,我揣著相機與錄音原茅,去河邊找鬼。 笑死堕仔,一個胖子當著我的面吹牛擂橘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播摩骨,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼通贞,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了恼五?” 一聲冷哼從身側(cè)響起昌罩,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎灾馒,沒想到半個月后茎用,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年轨功,在試婚紗的時候發(fā)現(xiàn)自己被綠了旭斥。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡夯辖,死狀恐怖琉预,靈堂內(nèi)的尸體忽然破棺而出董饰,到底是詐尸還是另有隱情蒿褂,我是刑警寧澤,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布卒暂,位于F島的核電站啄栓,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏也祠。R本人自食惡果不足惜昙楚,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望诈嘿。 院中可真熱鬧堪旧,春花似錦、人聲如沸奖亚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽昔字。三九已至爆袍,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間作郭,已是汗流浹背陨囊。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留夹攒,地道東北人蜘醋。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像咏尝,于是被迫代替她去往敵國和親压语。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內(nèi)容