mirror of
https://github.com/lework/jenkins-update-center.git
synced 2024-11-21 10:05:55 +02:00
126 lines
4.6 KiB
Markdown
126 lines
4.6 KiB
Markdown
# jenkins-update-center
|
|
|
|
![GitHub](https://img.shields.io/github/license/lework/jenkins-update-center)
|
|
[![](https://data.jsdelivr.com/v1/package/gh/lework/jenkins-update-center/badge)](https://www.jsdelivr.com/package/gh/lework/jenkins-update-center)
|
|
|
|
Jenkins mirror update center generator
|
|
|
|
|
|
## Update time
|
|
|
|
Updated daily at 1 AM UTC
|
|
|
|
|
|
## Mirror site
|
|
|
|
- tencent https://mirrors.cloud.tencent.com/jenkins/
|
|
- huawei https://mirrors.huaweicloud.com/jenkins/
|
|
- tsinghua https://mirrors.tuna.tsinghua.edu.cn/jenkins/
|
|
- ustc https://mirrors.ustc.edu.cn/jenkins/
|
|
- bit https://mirrors.bit.edu.cn/jenkins/
|
|
- aliyun https://mirrors.aliyun.com/jenkins/
|
|
|
|
|
|
|
|
**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**
|
|
|
|
```bash
|
|
curl -sSL https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/speed-test.sh | bash
|
|
```
|
|
|
|
|
|
|
|
## Usage mirror site
|
|
|
|
1. Upload custom CA file.
|
|
|
|
```bash
|
|
[ ! -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.
|
|
>
|
|
> ```bash
|
|
> 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.
|
|
|
|
```bash
|
|
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 `Jenkins` → `Manage Jenkins` → `Manage Plugins` → `Advanced` → 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:
|
|
|
|
```bash
|
|
git clone https://github.com/lework/jenkins-update-center.git
|
|
```
|
|
|
|
2. Generate self-signed certificate:
|
|
|
|
```bash
|
|
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
|
|
```
|
|
|
|
3. Rsync into your www root directory:
|
|
|
|
```bash
|
|
rsync -avz --delete rsync://rsync.osuosl.org/jenkins/ /var/www/jenkins
|
|
```
|
|
|
|
4. Install dependencies:
|
|
|
|
```bash
|
|
yum -y install make gcc automake autoconf python3-devel git
|
|
pip install -r requirements.txt
|
|
```
|
|
5. Setup mirrors json:
|
|
|
|
> Set your mirror url
|
|
|
|
```
|
|
# mirrors.json
|
|
{
|
|
"localhost": "http://localhost/jenkins/"
|
|
}
|
|
```
|
|
|
|
6. Run the following python code:
|
|
|
|
```bash
|
|
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`.
|
|
|