未验证 提交 d24ad650 编写于 作者: LinuxSuRen's avatar LinuxSuRen 提交者: GitHub

Carry certificate of the update center mirror (#115)

* Carry certificate of the update center mirror

* Add redirect button
上级 5974591c
package io.jenkins.plugins.localization_zh_cn;
import hudson.Extension;
import hudson.model.RootAction;
import jenkins.model.Jenkins;
import org.apache.commons.io.IOUtils;
import org.kohsuke.stapler.StaplerResponse;
import org.kohsuke.stapler.interceptor.RequirePOST;
import javax.annotation.CheckForNull;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
@Extension
public class UpdateCenterAction implements RootAction {
private final String CRT = "mirror-adapter.crt";
@RequirePOST
public void doUse(StaplerResponse response) throws IOException {
if (!Jenkins.get().hasPermission(Jenkins.ADMINISTER)) {
response.sendError(HttpServletResponse.SC_FORBIDDEN);
return;
}
try (InputStream input = this.getClass().getResourceAsStream("/" + CRT);
OutputStream output = new FileOutputStream(new File(Jenkins.get().getRootDir(),
"/war/WEB-INF/update-center-rootCAs/" + CRT))) {
if (input == null) {
return;
}
IOUtils.copy(input, output);
}
response.sendRedirect(Jenkins.get().getRootUrl() + "/chinese");
}
@RequirePOST
public void doRemove(StaplerResponse response) throws IOException {
if (!Jenkins.get().hasPermission(Jenkins.ADMINISTER)) {
response.sendError(HttpServletResponse.SC_FORBIDDEN);
return;
}
File crtFile = new File(Jenkins.get().getRootDir(),
"/war/WEB-INF/update-center-rootCAs/" + CRT);
if(crtFile.isFile()) {
crtFile.delete();
}
response.sendRedirect(Jenkins.get().getRootUrl() + "/chinese");
}
@CheckForNull
@Override
public String getIconFileName() {
return null;
}
@CheckForNull
@Override
public String getDisplayName() {
return "Use mirror of update center";
}
@CheckForNull
@Override
public String getUrlName() {
return "/update-center-mirror";
}
}
......@@ -15,6 +15,20 @@
<li>版本更新发布</li>
<img width="300px" height="300px" src="${rootURL}/plugin/localization-zh-cn/images/jenkins-wechat.png" alt="Jenkins 微信公众号二维码"/>
</div>
<h2>更新中心镜像设置</h2>
修改更新中心的地址为
https://jenkins-zh.gitee.io/update-center-mirror/tsinghua/update-center.json
<f:form method="post" action="/update-center-mirror/use">
<f:submit name="reload" value="使用"/>
</f:form>
<f:form method="post" action="/update-center-mirror/remove">
<f:submit name="reload" value="移除"/>
</f:form>
<a href="${rootURL}/pluginManager/advanced">设置更新中心地址</a>
</l:main-panel>
</l:layout>
</j:jelly>
\ No newline at end of file
-----BEGIN CERTIFICATE-----
MIICcTCCAdoCCQD/jZ7AgrzJKTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJD
TjELMAkGA1UECAwCR0QxCzAJBgNVBAcMAlNaMQ4wDAYDVQQKDAV2aWhvbzEMMAoG
A1UECwwDZGV2MREwDwYDVQQDDAhkZW1vLmNvbTEjMCEGCSqGSIb3DQEJARYUYWRt
aW5AamVua2lucy16aC5jb20wHhcNMTkxMTA5MTA0MDA5WhcNMjIxMTA4MTA0MDA5
WjB9MQswCQYDVQQGEwJDTjELMAkGA1UECAwCR0QxCzAJBgNVBAcMAlNaMQ4wDAYD
VQQKDAV2aWhvbzEMMAoGA1UECwwDZGV2MREwDwYDVQQDDAhkZW1vLmNvbTEjMCEG
CSqGSIb3DQEJARYUYWRtaW5AamVua2lucy16aC5jb20wgZ8wDQYJKoZIhvcNAQEB
BQADgY0AMIGJAoGBAN+6jN8rCIjVkQ0Q7ZbJLk4IdcHor2WdskOQMhlbR0gOyb4g
RX+CorjDRjDm6mj2OohqlrtRxLGYxBnXFeQGU7wWjQHyfKDghtP51G/672lXFtzB
KXukHByHjtzrDxAutKTdolyBCuIDDGJmRk+LavIBY3/Lxh6f0ZQSeCSJYiyxAgMB
AAEwDQYJKoZIhvcNAQELBQADgYEAD92l26PoJcbl9GojK2L3pyOQjeeDm/vV9e3R
EgwGmoIQzlubM0mjxpCz1J73nesoAcuplTEps/46L7yoMjptCA3TU9FZAHNQ8dbz
a0vm4CF9841/FIk8tsLtwCT6ivkAi0lXGwhX0FK7FaAyU0nNeo/EPvDwzTim4XDK
9j1WGpE=
-----END CERTIFICATE-----
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册