Class CloudProvisioningAlgorithm

java.lang.Object
org.jenkinsci.plugins.vsphere.tools.CloudProvisioningAlgorithm

public final class CloudProvisioningAlgorithm extends Object
How we decide what template to create the next agent on.
  • Method Details

    • findTemplateWithMostFreeCapacity

      public static CloudProvisioningRecord findTemplateWithMostFreeCapacity(Collection<? extends CloudProvisioningRecord> provisionables)
      Given a bunch of templates to choose from, works out which one we should use next.
      Parameters:
      provisionables - Template records to decide between.
      Returns:
      The record with the most free capacity, or null if there are none with any capacity.
    • findUnusedName

      public static String findUnusedName(CloudProvisioningRecord record)
      Chooses a name for a new node. The name will start with the vSphereCloudSlaveTemplate.getCloneNamePrefix().
      • If the template has a limited number of instances available then the name will be of the form "prefixnumber" where "number" is a number that should be between 1 and the number of permitted instances.
      • If the template has an unlimited number of instances available then the name will be of the form "prefixrandom" where "random" is a random UUID's 32-byte (128 bit) number (rendered using a high radix to keep the string short).
      Parameters:
      record - Our record regarding the template the agent will be created from.
      Returns:
      A name for the new node. This will start with the vSphereCloudSlaveTemplate.getCloneNamePrefix().