com.xebialabs.deployit.plugin.ec2.ci
Class HostTemplate

java.lang.Object
  extended by com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
      extended by com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate
          extended by com.xebialabs.deployit.plugin.ec2.ci.HostTemplate
All Implemented Interfaces:
com.xebialabs.deployit.plugin.api.udm.ConfigurationItem, java.io.Serializable, java.lang.Comparable<com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem>

@Metadata(description="Amazon EC2 instance template",
          root=CONFIGURATION)
public class HostTemplate
extends com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
id, syntheticProperties, type
 
Fields inherited from interface com.xebialabs.deployit.plugin.api.udm.ConfigurationItem
SYNTHETIC_PROPERTIES_FIELD, TYPE_FIELD
 
Constructor Summary
HostTemplate()
           
 
Method Summary
 java.lang.String getAmi()
           
 Credentials getCredentials()
           
 java.util.Set<java.lang.String> getGroups()
           
 java.lang.String getInstanceIpAddress(java.lang.String cloudId)
           
 EC2InstanceType getInstanceType()
           
 java.lang.String getKeyPair()
           
 java.lang.String getRegion()
           
 java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> instantiate(com.xebialabs.deployit.plugin.cloud.ci.HostParameters params)
           
 java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> produceCreateSteps(java.lang.String environmentTemplateName, int instanceSeq)
           
 java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> produceDestroySteps(com.xebialabs.deployit.plugin.api.udm.ConfigurationItem instance)
           
 void setAmi(java.lang.String ami)
           
 void setCredentials(Credentials credentials)
           
 void setGroups(java.util.Set<java.lang.String> groups)
           
 void setInstanceType(EC2InstanceType instanceType)
           
 void setKeyPair(java.lang.String keyPair)
           
 void setRegion(java.lang.String region)
           
 java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> validateDescriptor()
           
 
Methods inherited from class com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate
getBootTimeout, getConnectionType, getMarkerPath, getOs, getPassword, getPrivateKeyFile, getRetryDelay, getUsername, getXmlDescriptor, setConnectionType, setMarkerPath, setOs, setPrivateKeyFile, setXmlDescriptor
 
Methods inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
compareTo, equals, get$token, getId, getName, getProperty, getPropertyDescriptor, getSyntheticProperties, getSyntheticProperty, getType, hashCode, hasProperty, hasSyntheticProperty, putSyntheticProperties, putSyntheticProperty, set$token, setId, setProperty, setSyntheticProperties, setType, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

HostTemplate

public HostTemplate()
Method Detail

instantiate

@ControlTask(label="Instantiate",
             description="Create instance from template",
             parameterType="cloud.HostParameters")
public java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> instantiate(com.xebialabs.deployit.plugin.cloud.ci.HostParameters params)

validateDescriptor

@ControlTask(label="Validate descriptor",
             description="Validate XML descriptor")
public java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> validateDescriptor()

getInstanceType

public EC2InstanceType getInstanceType()

getKeyPair

public java.lang.String getKeyPair()

getGroups

public java.util.Set<java.lang.String> getGroups()

getAmi

public java.lang.String getAmi()

getRegion

public java.lang.String getRegion()

setCredentials

public void setCredentials(Credentials credentials)

getCredentials

public Credentials getCredentials()

setGroups

public void setGroups(java.util.Set<java.lang.String> groups)

setAmi

public void setAmi(java.lang.String ami)

setRegion

public void setRegion(java.lang.String region)

setInstanceType

public void setInstanceType(EC2InstanceType instanceType)

setKeyPair

public void setKeyPair(java.lang.String keyPair)

produceCreateSteps

public java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> produceCreateSteps(java.lang.String environmentTemplateName,
                                                                                                int instanceSeq)
Specified by:
produceCreateSteps in class com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate

produceDestroySteps

public java.util.List<? extends com.xebialabs.deployit.plugin.api.flow.Step> produceDestroySteps(com.xebialabs.deployit.plugin.api.udm.ConfigurationItem instance)
Specified by:
produceDestroySteps in class com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate

getInstanceIpAddress

public java.lang.String getInstanceIpAddress(java.lang.String cloudId)
Specified by:
getInstanceIpAddress in class com.xebialabs.deployit.plugin.cloud.ci.BaseHostTemplate