org.jenkinsci.plugins.openjdk_native
Class OpenJDKInstaller

java.lang.Object
  extended by hudson.tools.ToolInstaller
      extended by org.jenkinsci.plugins.openjdk_native.OpenJDKInstaller
All Implemented Interfaces:
hudson.ExtensionPoint, hudson.model.Describable<hudson.tools.ToolInstaller>

public class OpenJDKInstaller
extends hudson.tools.ToolInstaller

Auto-installer of native OpenJDK packages for RedHat-like distors Switch to required OpenJDK version via Linux alternatives. If required OpenJDK is not installed, try to install it via yum. Alternatives and yum are run via sudo, therefore appropriate sudoers setup is requited (including switching off tty requirement). Example setup:

  #Defaults    requiretty
  User_Alias JENKINS = test
  Cmnd_Alias OPENJDK = /usr/sbin/alternatives, /usr/bin/yum
  JENKINS ALL = NOPASSWD: OPENJDK
 

Author:
vjuranek

Nested Class Summary
static class OpenJDKInstaller.DescriptorImpl
           
static class OpenJDKInstaller.OpenJDKPackage
           
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
 java.lang.String OPENJDK_BIN
           
 java.lang.String OPENJDK_HOME_BIN
           
 java.lang.String OPENJDK_HOME_PREFIX
           
 OpenJDKInstaller.OpenJDKPackage openjdkPackage
           
 
Fields inherited from class hudson.tools.ToolInstaller
tool
 
Constructor Summary
OpenJDKInstaller(OpenJDKInstaller.OpenJDKPackage openjdkPackage)
           
 
Method Summary
 OpenJDKInstaller.OpenJDKPackage getPackageName()
           
 hudson.FilePath performInstallation(hudson.tools.ToolInstallation tool, hudson.model.Node node, hudson.model.TaskListener log)
           
 
Methods inherited from class hudson.tools.ToolInstaller
appliesTo, getDescriptor, getLabel, preferredLocation, setTool
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OPENJDK_HOME_PREFIX

public final java.lang.String OPENJDK_HOME_PREFIX
See Also:
Constant Field Values

OPENJDK_HOME_BIN

public final java.lang.String OPENJDK_HOME_BIN
See Also:
Constant Field Values

OPENJDK_BIN

public final java.lang.String OPENJDK_BIN
See Also:
Constant Field Values

openjdkPackage

public final OpenJDKInstaller.OpenJDKPackage openjdkPackage
Constructor Detail

OpenJDKInstaller

@DataBoundConstructor
public OpenJDKInstaller(OpenJDKInstaller.OpenJDKPackage openjdkPackage)
Method Detail

getPackageName

public OpenJDKInstaller.OpenJDKPackage getPackageName()

performInstallation

public hudson.FilePath performInstallation(hudson.tools.ToolInstallation tool,
                                           hudson.model.Node node,
                                           hudson.model.TaskListener log)
                                    throws java.io.IOException,
                                           java.lang.InterruptedException
Specified by:
performInstallation in class hudson.tools.ToolInstaller
Throws:
java.io.IOException
java.lang.InterruptedException


Copyright © 2004-2012. All Rights Reserved.