Class LauncherFactory

java.lang.Object
hudson.model.AbstractDescribableImpl<LauncherFactory>
jenkins.plugins.openstack.compute.slaveopts.LauncherFactory
All Implemented Interfaces:
Describable<LauncherFactory>, Serializable
Direct Known Subclasses:
LauncherFactory.JNLP, LauncherFactory.SSH, LauncherFactory.Unspecified

@Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public abstract class LauncherFactory extends AbstractDescribableImpl<LauncherFactory> implements Serializable
Node launcher factory.
Author:
ogondza.
See Also:
  • Constructor Details

    • LauncherFactory

      public LauncherFactory()
  • Method Details

    • createLauncher

      public abstract ComputerLauncher createLauncher(@Nonnull JCloudsSlave slave) throws IOException
      Create launcher to be used to start the computer.
      Throws:
      IOException
    • isWaitingFor

      @CheckForNull public abstract String isWaitingFor(@Nonnull JCloudsSlave slave) throws JCloudsCloud.ProvisioningFailedException
      Detect the machine is provisioned and can be added to Jenkins for launching. This is guaranteed to be called after server is/was ACTIVE.
      Parameters:
      slave - Slave we are waiting to be ready.
      Returns:
      null if it is ready or string cause if it is not. The cause will be reported alongside the timeout exception if this will not become ready in time.
      Throws:
      JCloudsCloud.ProvisioningFailedException - If the provisioning needs to be aborted right away without waiting for the timeout.
    • onNodeTerminated

      public void onNodeTerminated()
      Callback run when the node is being terminated. This is before the resources are removed.