Skip to content

Commit

Permalink
Add proxy information to update center section.
Browse files Browse the repository at this point in the history
Make sure that content from update center is flushed.
  • Loading branch information
christ66 committed Sep 7, 2016
1 parent 0df6d15 commit 3a2e11d
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 12 deletions.
6 changes: 6 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,12 @@
<artifactId>metrics</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>async-http-client</artifactId>
<version>1.7.8</version>
<optional>true</optional>
</dependency>
</dependencies>

</project>
41 changes: 29 additions & 12 deletions src/main/java/com/cloudbees/jenkins/support/impl/UpdateCenter.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,17 @@
import com.cloudbees.jenkins.support.api.Container;
import com.cloudbees.jenkins.support.api.Content;
import com.cloudbees.jenkins.support.api.StringContent;
import com.ning.http.client.ProxyServer;
import edu.umd.cs.findbugs.annotations.NonNull;
import hudson.Extension;
import hudson.model.UpdateSite;
import hudson.security.ACL;
import hudson.security.Permission;
import jenkins.model.Jenkins;
import jenkins.plugins.asynchttpclient.AHCUtils;

import java.io.*;
import java.util.Arrays;
import java.util.Collections;
import java.util.Set;

Expand Down Expand Up @@ -41,22 +45,35 @@ public void addContents(@NonNull Container container) {
@Override
public void writeTo(OutputStream os) throws IOException {
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(os, "utf-8")));
try {
Jenkins instance = Jenkins.getInstance();
if (instance == null) {
out.println("Jenkins has not started yet. No update center information is available.");
} else {
hudson.model.UpdateCenter updateCenter = instance.getUpdateCenter();
out.println("=== Sites ===");
for (UpdateSite c : updateCenter.getSiteList()) {
out.println(" - Url: " + c.getUrl());
out.println(" - Connection Url: " + c.getConnectionCheckUrl());
out.println(" - Implementation Type: " + c.getClass().getName());
}

Jenkins instance = Jenkins.getInstance();
if (instance == null) {
out.println("Jenkins has not started yet. No update center information is available.");
} else {
hudson.model.UpdateCenter updateCenter = instance.getUpdateCenter();
out.println("=== Sites ===");
for (UpdateSite c : updateCenter.getSiteList()) {
out.println(" - Url: " + c.getUrl());
out.println(" - Connection Url: " + c.getConnectionCheckUrl());
out.println(" - Implementation Type: " + c.getClass().getName());
out.println("======");

out.println("Last updated: " + updateCenter.getLastUpdatedString());
}

out.println("======");
out.println("=== Proxy ===");
ProxyServer proxyServer = AHCUtils.getProxyServer();
out.println(" - Host: " + proxyServer.getHost());
out.println(" - Port: " + proxyServer.getPort());

out.println("Last updated: " + updateCenter.getLastUpdatedString());
out.println(" - No Proxy Hosts: ");
for (String noHost : proxyServer.getNonProxyHosts()) {
out.println(" * " + noHost);
}
} finally {
out.flush();
}
}
}
Expand Down

0 comments on commit 3a2e11d

Please sign in to comment.