Class PrlDevopsCloud

All Implemented Interfaces:
ExtensionPoint, Describable<Cloud>, ModelObject, SearchableModelObject, SearchItem, AccessControlled, ModelObjectWithContextMenu

public class PrlDevopsCloud extends Cloud
  • Constructor Details

    • PrlDevopsCloud

      @DataBoundConstructor public PrlDevopsCloud(String name)
  • Method Details

    • getServiceUrl

      public String getServiceUrl()
    • getCredentialsId

      public String getCredentialsId()
    • getConnectionMode

      public ConnectionMode getConnectionMode()
    • getMaxAgents

      public int getMaxAgents()
    • getTemplates

      public List<AgentTemplate> getTemplates()
    • setServiceUrl

      @DataBoundSetter public void setServiceUrl(String serviceUrl)
    • setCredentialsId

      @DataBoundSetter public void setCredentialsId(String credentialsId)
    • setConnectionMode

      @DataBoundSetter public void setConnectionMode(ConnectionMode connectionMode)
    • setMaxAgents

      @DataBoundSetter public void setMaxAgents(int maxAgents)
    • setTemplates

      @DataBoundSetter public void setTemplates(List<AgentTemplate> templates)
    • getTemplateForLabel

      public AgentTemplate getTemplateForLabel(Label label)
      Returns the first AgentTemplate whose label set satisfies the given Jenkins Label, or null if none match.
    • canProvision

      public boolean canProvision(Cloud.CloudState state)
      Overrides:
      canProvision in class Cloud
    • provision

      public Collection<NodeProvisioner.PlannedNode> provision(Cloud.CloudState state, int excessWorkload)
      Overrides:
      provision in class Cloud
    • buildApiClient

      protected PrlDevopsApiClient buildApiClient() throws PrlApiException
      Looks up the configured credentials and constructs a PrlDevopsApiClient pointed at the configured service URL.
      • StringCredentials — API key mode: sends X-API-Key: <encoded>.
      • StandardUsernamePasswordCredentials — Bearer mode: exchanges username+password for a JWT via POST /api/v1/auth/token.

      Protected so tests can override and inject a mock client.

      Throws:
      PrlApiException - if credentials cannot be resolved.