Package io.jenkins.plugins.swarmcloud
Class SwarmCloud
java.lang.Object
hudson.model.AbstractModelObject
hudson.model.Actionable
hudson.slaves.Cloud
io.jenkins.plugins.swarmcloud.SwarmCloud
- All Implemented Interfaces:
ExtensionPoint,Describable<Cloud>,ModelObject,SearchableModelObject,SearchItem,AccessControlled,ModelObjectWithContextMenu
Docker Swarm Cloud implementation for Jenkins.
Provisions agents on a Docker Swarm cluster.
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class hudson.slaves.Cloud
Cloud.CloudStateNested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudsonNested classes/interfaces inherited from interface jenkins.model.ModelObjectWithContextMenu
ModelObjectWithContextMenu.ContextMenu, ModelObjectWithContextMenu.ContextMenuVisibility, ModelObjectWithContextMenu.MenuItem, ModelObjectWithContextMenu.MenuItemType -
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanChecks if we can provision more agents.booleancanProvision(Cloud.CloudState state) intCounts the current number of agents provisioned by this cloud.Gets the Docker Swarm client, creating one if necessary.Returns the effective Jenkins URL for agents to connect to.intintlonggetTemplate(Label label) Finds a template matching the given label.getTemplateByName(String name) Finds a template by name.booleanprovision(Cloud.CloudState state, int excessWorkload) voidsetCredentialsId(String credentialsId) voidsetDockerHost(String dockerHost) voidsetJenkinsUrl(String jenkinsUrl) voidsetMaxConcurrentAgents(int maxConcurrentAgents) voidsetMaxProvisionsPerMinute(int maxProvisionsPerMinute) voidsetMinProvisionIntervalMs(long minProvisionIntervalMs) voidsetRateLimitEnabled(boolean rateLimitEnabled) voidsetSwarmNetwork(String swarmNetwork) voidsetTemplates(List<SwarmAgentTemplate> templates) Methods inherited from class hudson.slaves.Cloud
all, canProvision, doConfigSubmit, doDoDelete, getACL, getDescriptor, getDisplayName, getIcon, getIconAltText, getIconClassName, getSearchUrl, getUrl, provision, reconfigure, reconfigure, registerPermissionsMethods inherited from class hudson.model.Actionable
addAction, addOrReplaceAction, doContextMenu, doContextMenu, getAction, getAction, getActions, getActions, getAllActions, getDynamic, getDynamic, removeAction, removeActions, replaceAction, replaceActionsMethods inherited from class hudson.model.AbstractModelObject
getSearch, getSearchIndex, getSearchName, makeSearchIndex, requirePOST, sendError, sendError, sendError, sendError, sendError, sendError, sendError, sendErrorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface hudson.security.AccessControlled
checkAnyPermission, checkPermission, hasAnyPermission, hasPermission, hasPermission, hasPermission2Methods inherited from interface hudson.search.SearchItem
getSearchGroup, getSearchIcon
-
Constructor Details
-
SwarmCloud
-
-
Method Details
-
getDockerHost
-
setDockerHost
-
getCredentialsId
-
setCredentialsId
-
getJenkinsUrl
-
setJenkinsUrl
-
getSwarmNetwork
-
setSwarmNetwork
-
getMaxConcurrentAgents
public int getMaxConcurrentAgents() -
setMaxConcurrentAgents
@DataBoundSetter public void setMaxConcurrentAgents(int maxConcurrentAgents) -
getMaxProvisionsPerMinute
public int getMaxProvisionsPerMinute() -
setMaxProvisionsPerMinute
@DataBoundSetter public void setMaxProvisionsPerMinute(int maxProvisionsPerMinute) -
getMinProvisionIntervalMs
public long getMinProvisionIntervalMs() -
setMinProvisionIntervalMs
@DataBoundSetter public void setMinProvisionIntervalMs(long minProvisionIntervalMs) -
isRateLimitEnabled
public boolean isRateLimitEnabled() -
setRateLimitEnabled
@DataBoundSetter public void setRateLimitEnabled(boolean rateLimitEnabled) -
getTemplates
-
setTemplates
-
getEffectiveJenkinsUrl
Returns the effective Jenkins URL for agents to connect to. -
getDockerClient
Gets the Docker Swarm client, creating one if necessary. -
getTemplate
Finds a template matching the given label. -
getTemplateByName
Finds a template by name. Used for template inheritance resolution. -
canProvision
public boolean canProvision()Checks if we can provision more agents. -
countCurrentAgents
public int countCurrentAgents()Counts the current number of agents provisioned by this cloud. -
canProvision
- Overrides:
canProvisionin classCloud
-
provision
@NonNull public Collection<NodeProvisioner.PlannedNode> provision(@NonNull Cloud.CloudState state, int excessWorkload)
-