Class ComputeEngineCloud
- java.lang.Object
-
- hudson.model.AbstractModelObject
-
- hudson.model.Actionable
-
- hudson.slaves.Cloud
-
- hudson.slaves.AbstractCloudImpl
-
- com.google.jenkins.plugins.computeengine.ComputeEngineCloud
-
- All Implemented Interfaces:
ExtensionPoint
,Describable<Cloud>
,ModelObject
,SearchableModelObject
,SearchItem
,AccessControlled
,ModelObjectWithContextMenu
public class ComputeEngineCloud extends AbstractCloudImpl
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ComputeEngineCloud.GoogleCloudDescriptor
-
Nested classes/interfaces inherited from class hudson.slaves.Cloud
Cloud.CloudState
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Nested classes/interfaces inherited from interface jenkins.model.ModelObjectWithContextMenu
ModelObjectWithContextMenu.ContextMenu, ModelObjectWithContextMenu.ContextMenuVisibility, ModelObjectWithContextMenu.MenuItem, ModelObjectWithContextMenu.MenuItemType
-
-
Field Summary
Fields Modifier and Type Field Description static String
CLOUD_ID_LABEL_KEY
static String
CLOUD_PREFIX
static String
CONFIG_LABEL_KEY
-
Constructor Summary
Constructors Constructor Description ComputeEngineCloud(String cloudName, String projectId, String credentialsId, String instanceCapStr)
ComputeEngineCloud(String cloudName, String projectId, String credentialsId, String instanceCapStr, List<InstanceConfiguration> configurations)
Deprecated.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addConfiguration(InstanceConfiguration configuration)
Deprecated.boolean
canProvision(Label label)
org.kohsuke.stapler.HttpResponse
doProvision(String configuration)
com.google.cloud.graphite.platforms.plugin.client.ComputeClient
getClient()
Returns GCP client for that cloud.String
getCloudName()
List<InstanceConfiguration>
getConfigurations()
String
getCredentialsId()
String
getDisplayName()
InstanceConfiguration
getInstanceConfigurationByDescription(String description)
GetsInstanceConfiguration
that has the matching Description.List<InstanceConfiguration>
getInstanceConfigurations(Label label)
Gets all instances ofInstanceConfiguration
that has the matchingLabel
.String
getInstanceId()
String
getProjectId()
boolean
isNoDelayProvisioning()
static void
log(Logger logger, Level level, TaskListener listener, String message)
static void
log(Logger logger, Level level, TaskListener listener, String message, Throwable exception)
Collection<NodeProvisioner.PlannedNode>
provision(Label label, int excessWorkload)
protected Object
readResolve()
void
setConfigurations(List<InstanceConfiguration> configurations)
Set configurations for this cloud.void
setInstanceId(String instanceId)
Sets unique ID of that cloud instance.void
setNoDelayProvisioning(boolean noDelayProvisioning)
-
Methods inherited from class hudson.slaves.AbstractCloudImpl
getInstanceCap, getInstanceCapStr, setInstanceCap, setInstanceCapStr
-
Methods inherited from class hudson.slaves.Cloud
all, canProvision, getACL, getDescriptor, getSearchUrl, getUrl, provision, registerPermissions
-
Methods inherited from class hudson.model.Actionable
addAction, addOrReplaceAction, doContextMenu, getAction, getAction, getActions, getActions, getAllActions, getDynamic, removeAction, removeActions, replaceAction, replaceActions
-
Methods inherited from class hudson.model.AbstractModelObject
getSearch, getSearchIndex, getSearchName, makeSearchIndex, requirePOST, sendError, sendError, sendError, sendError, sendError
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface hudson.security.AccessControlled
checkAnyPermission, checkPermission, hasAnyPermission, hasPermission, hasPermission, hasPermission2
-
-
-
-
Field Detail
-
CLOUD_PREFIX
public static final String CLOUD_PREFIX
- See Also:
- Constant Field Values
-
CONFIG_LABEL_KEY
public static final String CONFIG_LABEL_KEY
- See Also:
- Constant Field Values
-
CLOUD_ID_LABEL_KEY
public static final String CLOUD_ID_LABEL_KEY
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ComputeEngineCloud
@DataBoundConstructor public ComputeEngineCloud(String cloudName, String projectId, String credentialsId, String instanceCapStr)
-
ComputeEngineCloud
@Deprecated public ComputeEngineCloud(String cloudName, String projectId, String credentialsId, String instanceCapStr, List<InstanceConfiguration> configurations)
Deprecated.
-
-
Method Detail
-
log
public static void log(Logger logger, Level level, TaskListener listener, String message)
-
log
public static void log(Logger logger, Level level, TaskListener listener, String message, Throwable exception)
-
getCloudName
public String getCloudName()
-
getDisplayName
public String getDisplayName()
- Specified by:
getDisplayName
in interfaceModelObject
- Overrides:
getDisplayName
in classCloud
-
isNoDelayProvisioning
public boolean isNoDelayProvisioning()
-
setNoDelayProvisioning
@DataBoundSetter public void setNoDelayProvisioning(boolean noDelayProvisioning)
-
readResolve
protected Object readResolve()
-
setInstanceId
@DataBoundSetter public void setInstanceId(String instanceId)
Sets unique ID of that cloud instance.This ID allows us to find machines from our cloud in GCP. This value should not change between config reload, or nodes may be lost in GCP side
-
getClient
public com.google.cloud.graphite.platforms.plugin.client.ComputeClient getClient()
Returns GCP client for that cloud.- Returns:
- GCP client object.
-
setConfigurations
@DataBoundSetter public void setConfigurations(List<InstanceConfiguration> configurations)
Set configurations for this cloud.- Parameters:
configurations
- configurations to be used
-
addConfiguration
@Deprecated public void addConfiguration(InstanceConfiguration configuration)
Deprecated.Adds one configuration.- Parameters:
configuration
- configuration to add
-
provision
public Collection<NodeProvisioner.PlannedNode> provision(Label label, int excessWorkload)
-
canProvision
public boolean canProvision(Label label)
- Overrides:
canProvision
in classCloud
-
getInstanceConfigurations
public List<InstanceConfiguration> getInstanceConfigurations(Label label) throws NoConfigurationException
Gets all instances ofInstanceConfiguration
that has the matchingLabel
.- Throws:
NoConfigurationException
-
getInstanceConfigurationByDescription
public InstanceConfiguration getInstanceConfigurationByDescription(String description)
GetsInstanceConfiguration
that has the matching Description.
-
doProvision
public org.kohsuke.stapler.HttpResponse doProvision(@QueryParameter String configuration) throws javax.servlet.ServletException, IOException
- Throws:
javax.servlet.ServletException
IOException
-
getProjectId
public String getProjectId()
-
getCredentialsId
public String getCredentialsId()
-
getInstanceId
public String getInstanceId()
-
getConfigurations
public List<InstanceConfiguration> getConfigurations()
-
-