1
0
mirror of https://github.com/lework/jenkins-update-center.git synced 2024-11-21 10:05:55 +02:00
Jenkins mirror update center generator
Go to file
2024-11-13 02:15:17 +00:00
.github/workflows Update generator.yml 2023-05-30 17:21:20 +08:00
rootCA
updates This is an github action commit. 2024-11-13 02:15:17 +00:00
generator.py use https://updates.jenkins-ci.org/current/update-center.json 2023-05-30 17:28:20 +08:00
LICENSE
mirrors.json
README.md Update README.md 2024-01-08 17:59:47 +08:00
requirements.txt use pycryptodome==3.18.0 2023-05-30 17:09:10 +08:00
speed-test.sh

jenkins-update-center

GitHub

Jenkins mirror update center generator

Update time

Updated daily at 1 AM UTC

Mirror site

file update-center.json

Site Source CDN
tencent https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/tencent/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/tencent/update-center.json
huawei https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/huawei/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/huawei/update-center.json
tsinghua https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/tsinghua/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/tsinghua/update-center.json
ustc https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/ustc/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/ustc/update-center.json
bit https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/bit/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/bit/update-center.json
aliyun https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/aliyun/update-center.json https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/aliyun/update-center.json

mirror site speed test

curl -sSL https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/speed-test.sh | bash

Usage mirror site

  1. Upload custom CA file.

    [ ! -d /var/lib/jenkins/update-center-rootCAs ] && mkdir /var/lib/jenkins/update-center-rootCAs
    wget https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/rootCA/update-center.crt -O /var/lib/jenkins/update-center-rootCAs/update-center.crt
    chown jenkins.jenkins -R /var/lib/jenkins/update-center-rootCAs
    

    Or turn off the signature verification of the update service.

    sed -i 's#$JENKINS_JAVA_OPTIONS#$JENKINS_JAVA_OPTIONS -Dhudson.model.DownloadService.noSignatureCheck=true#g' /etc/init.d/jenkins
    
    systemctl daemon-reload
    
  2. Change Update Site url.

    sed -i 's#https://updates.jenkins.io/update-center.json#https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/tsinghua/update-center.json#' /var/lib/jenkins/hudson.model.UpdateCenter.xml
    rm -f /var/lib/jenkins/updates/default.json
    
    systemctl restart jenkins
    

    Or it can be modified on the web.

    Go to JenkinsManage JenkinsManage PluginsAdvanced → Update Site and submit URL to your https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/updates/tsinghua/update-center.json

Steps to create local mirror of Jenkins update center:

  1. Clone code:
git clone https://github.com/lework/jenkins-update-center.git 
  1. Generate self-signed certificate:
cd jenkins-update-center
openssl genrsa -out rootCA/update-center.key 2048
openssl req -new -x509 -days 3650 -key rootCA/update-center.key -out rootCA/update-center.crt
  1. Rsync into your www root directory:
rsync -avz --delete rsync://rsync.osuosl.org/jenkins/ /var/www/jenkins
  1. Install dependencies:
yum -y install make gcc automake autoconf python3-devel git
pip install -r requirements.txt
  1. Setup mirrors json:

    Set your mirror url

    # mirrors.json
    {
        "localhost": "http://localhost/jenkins/"
    }
    
  2. Run the following python code:

python3 generator.py
cp localhost/update-center.json /var/www/jenkins/
  1. Put update-center.crt into ${JENKINS_HOME}/update-center-rootCAs folder.
  2. Go to Jenkins → Manage Jenkins → Manage Plugins → Advanced → Update Site and submit URL to your update-center.json.