Skip to content

Commit

Permalink
[JENKINS-47779] why not
Browse files Browse the repository at this point in the history
  • Loading branch information
escoem committed Nov 3, 2017
1 parent 069fb03 commit 292dbb4
Showing 1 changed file with 41 additions and 33 deletions.
74 changes: 41 additions & 33 deletions src/main/java/com/cloudbees/jenkins/support/impl/AboutJenkins.java
Expand Up @@ -107,15 +107,19 @@ public String getDisplayName() {

@Override
public void addContents(@NonNull Container container) {
container.add(new AboutContent());
List<PluginWrapper> activePlugins = new ArrayList<PluginWrapper>();
List<PluginWrapper> disabledPlugins = new ArrayList<PluginWrapper>();

populatePluginsLists(activePlugins, disabledPlugins);

container.add(new AboutContent(activePlugins));
container.add(new ItemsContent());
container.add(new NodesContent());
container.add(new ActivePlugins("plugins/active.txt"));
container.add(new DisabledPlugins());
container.add(new ActivePlugins(activePlugins));
container.add(new DisabledPlugins(disabledPlugins));
container.add(new FailedPlugins());

// container.add(new ActivePlugins("docker/plugins.txt"));
container.add(new Dockerfile());
container.add(new Dockerfile(activePlugins, disabledPlugins));

container.add(new MasterChecksumsContent());
for (final Node node : Helper.getActiveInstance().getNodes()) {
Expand Down Expand Up @@ -540,8 +544,11 @@ public synchronized int n() {
}

private static class AboutContent extends PrintedContent {
AboutContent() {
private final Iterable<PluginWrapper> plugins;

AboutContent(Iterable<PluginWrapper> plugins) {
super("about.md");
this.plugins = plugins;
}
@Override protected void printTo(PrintWriter out) throws IOException {
final Jenkins jenkins = Helper.getActiveInstance();
Expand Down Expand Up @@ -583,7 +590,7 @@ private static class AboutContent extends PrintedContent {
out.println("Active Plugins");
out.println("--------------");
out.println();
Iterable<PluginWrapper> plugins = getPluginsSorted();

for (PluginWrapper w : plugins) {
if (w.isActive()) {
out.println(" * " + w.getShortName() + ":" + w.getVersion() + (w.hasUpdate()
Expand Down Expand Up @@ -697,33 +704,33 @@ private static class ItemsContent extends PrintedContent {
}

private static class ActivePlugins extends PrintedContent {
public ActivePlugins(String path) {
super(path);
private final Iterable<PluginWrapper> plugins;

public ActivePlugins(Iterable<PluginWrapper> plugins) {
super("plugins/active.txt");
this.plugins = plugins;
}

@Override
protected void printTo(PrintWriter out) throws IOException {
Iterable<PluginWrapper> plugins = getPluginsSorted();
for (PluginWrapper w : plugins) {
if (w.isActive()) {
out.println(w.getShortName() + ":" + w.getVersion() + ":" + (w.isPinned() ? "pinned" : "not-pinned"));
}
out.println(w.getShortName() + ":" + w.getVersion() + ":" + (w.isPinned() ? "pinned" : "not-pinned"));
}
}
}

private static class DisabledPlugins extends PrintedContent {
public DisabledPlugins() {
private final Iterable<PluginWrapper> plugins;

public DisabledPlugins(Iterable<PluginWrapper> plugins) {
super("plugins/disabled.txt");
this.plugins = plugins;
}

@Override
protected void printTo(PrintWriter out) throws IOException {
Iterable<PluginWrapper> plugins = getPluginsSorted();
for (PluginWrapper w : plugins) {
if (!w.isActive()) {
out.println(w.getShortName() + ":" + w.getVersion() + ":" + (w.isPinned() ? "pinned" : "not-pinned"));
}
out.println(w.getShortName() + ":" + w.getVersion() + ":" + (w.isPinned() ? "pinned" : "not-pinned"));
}
}
}
Expand All @@ -745,8 +752,13 @@ protected void printTo(PrintWriter out) throws IOException {
}

private static class Dockerfile extends PrintedContent {
public Dockerfile() {
private final List<PluginWrapper> activated;
private final List<PluginWrapper> disabled;

public Dockerfile(List<PluginWrapper> activated, List<PluginWrapper> disabled) {
super("docker/Dockerfile");
this.activated = activated;
this.disabled = disabled;
}

@Override
Expand All @@ -766,19 +778,6 @@ protected void printTo(PrintWriter out) throws IOException {

out.println("RUN mkdir -p /usr/share/jenkins/ref/plugins/");

Iterable<PluginWrapper> plugins = getPluginsSorted(pluginManager);

List<PluginWrapper> activated = new ArrayList<PluginWrapper>();
List<PluginWrapper> disabled = new ArrayList<PluginWrapper>();
for (PluginWrapper w : plugins) {
if (!w.isEnabled()) {
disabled.add(w);
}
if (w.isActive()) {
activated.add(w);
}
}

out.println("RUN curl \\");
Iterator<PluginWrapper> activatedIT = activated.iterator();
while (activatedIT.hasNext()) {
Expand Down Expand Up @@ -1018,10 +1017,19 @@ private static Iterable<PluginWrapper> getPluginsSorted(PluginManager pluginMana
return listToSortedIterable(pluginManager.getPlugins());
}


private static <T extends Comparable<T>> Iterable<T> listToSortedIterable(List<T> list) {
final List<T> sorted = new LinkedList<T>(list);
Collections.sort(sorted);
return sorted;
}

private static void populatePluginsLists(List<PluginWrapper> activePlugins, List<PluginWrapper> disabledPlugins) {
for(PluginWrapper plugin : getPluginsSorted()){
if(plugin.isActive()) {
activePlugins.add(plugin);
} else {
disabledPlugins.add(plugin);
}
}
}
}

0 comments on commit 292dbb4

Please sign in to comment.