|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ElasticInstanceManager
Field Summary | |
---|---|
static com.atlassian.aws.ec2.EC2InstanceType |
DEFAULT_INSTANCE_TYPE_32
|
static com.atlassian.aws.ec2.EC2InstanceType |
DEFAULT_INSTANCE_TYPE_64
|
static java.lang.String |
DEFAULT_PRODUCT_FOR_LINUX_PLATFORM
|
static java.lang.String |
DEFAULT_PRODUCT_FOR_WINDOWS_PLATFORM
|
static java.lang.String |
ELASTIC_BAMBOO_KEY_PAIR
|
static java.lang.String |
ELASTIC_BAMBOO_KEY_PAIR_FILE
|
static java.lang.String |
ELASTIC_BAMBOO_SECURITY_GROUP
|
Method Summary | |
---|---|
void |
addElasticLogEntry(org.apache.log4j.Logger log,
java.lang.String logEntry)
|
void |
addElasticLogEntry(java.lang.String logEntry)
Deprecated. since 3.2 use addElasticLogEntry(Logger, String) |
void |
ensureLoginKeyPairExists(com.atlassian.aws.AWSAccount awsAccount)
Ensures that a key pair, named "elasticbamboo", has been defined in the configured AWS account. |
com.google.common.collect.SetMultimap<ElasticImageConfiguration,RemoteElasticInstance> |
getAllElasticAgentsAsMap()
Returns all elastic instances in a SetMultimap , keyed by the ElasticImageConfiguration |
java.util.List<RemoteElasticInstance> |
getAllElasticRemoteAgents()
Returns all elastic instances. |
java.util.Set<com.atlassian.aws.ec2.EC2InstanceType> |
getAllowedInstanceTypes()
|
java.util.List<java.lang.String> |
getElasticAgentLogs()
Retrieve activity logs |
RemoteElasticInstance |
getElasticRemoteAgentByInstanceId(java.lang.String instanceId)
Retrieve elastic instance of the given ID. |
java.util.List<RemoteElasticInstance> |
getElasticRemoteAgents()
Retrieve a readonly list of any currently existing EC2 instances |
java.util.List<RemoteElasticInstance> |
getElasticRemoteAgentsByConfiguration(ElasticImageConfiguration elasticImageConfiguration)
|
java.util.List<RemoteElasticInstance> |
getElasticRemoteAgentsByConfiguration(long id)
|
java.util.List<RemoteElasticInstance> |
getInstancesWithStartingAgents()
Returns those elastic instances that have already started but their agents have not yet connected to the bamboo server. |
java.util.List<RemoteElasticInstance> |
getRequestedElasticRemoteAgents()
Returns the elastic instances which have been requested but not yet identified. |
java.util.List<RemoteElasticInstance> |
getStartingElasticInstances()
Return the elastic instances which have been identified but not started up yet, i.e. |
int |
getTotalNumElasticRemoteAgents()
Return how many license spots are currently being occupied by elastic instances (pending and running) |
boolean |
isElasticSupportEnabled()
|
RemoteElasticInstance |
newElasticAgent(RemoteElasticInstanceListener listener,
com.atlassian.aws.AWSAccount awsAccount,
AgentManager agentManager,
ElasticImageConfiguration elasticImageConfiguration)
|
void |
onInstanceIdentified(RemoteElasticInstance remoteElasticInstance)
Tell the manager that the instance is up and running |
void |
onInstanceRunning(RemoteElasticInstance remoteElasticInstance)
Invoked when the instance enters the 'running' state |
void |
registerElasticAgentStopped(RemoteElasticInstance instance)
Remove and EC2 instance from the "currently Running map |
boolean |
validateAwsCredentials(java.lang.String awsAccessID,
java.lang.String awsSecretKey,
ErrorCollection errorCollection)
Validate a set of supplied AWS credentials. |
Methods inherited from interface com.atlassian.bamboo.agent.elastic.tunnel.ElasticAgentTunnelPorts |
---|
getHTTPProxyPort, getJMSProxyPort, getTunnelPort |
Field Detail |
---|
static final com.atlassian.aws.ec2.EC2InstanceType DEFAULT_INSTANCE_TYPE_32
static final com.atlassian.aws.ec2.EC2InstanceType DEFAULT_INSTANCE_TYPE_64
static final java.lang.String DEFAULT_PRODUCT_FOR_LINUX_PLATFORM
static final java.lang.String DEFAULT_PRODUCT_FOR_WINDOWS_PLATFORM
static final java.lang.String ELASTIC_BAMBOO_SECURITY_GROUP
static final java.lang.String ELASTIC_BAMBOO_KEY_PAIR
static final java.lang.String ELASTIC_BAMBOO_KEY_PAIR_FILE
Method Detail |
---|
RemoteElasticInstance newElasticAgent(RemoteElasticInstanceListener listener, com.atlassian.aws.AWSAccount awsAccount, AgentManager agentManager, ElasticImageConfiguration elasticImageConfiguration) throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException, java.io.IOException, java.security.cert.CertificateException, java.security.UnrecoverableKeyException, java.security.KeyStoreException
java.security.NoSuchAlgorithmException
java.security.KeyManagementException
java.io.IOException
java.security.cert.CertificateException
java.security.UnrecoverableKeyException
java.security.KeyStoreException
void ensureLoginKeyPairExists(com.atlassian.aws.AWSAccount awsAccount) throws com.atlassian.aws.AWSException
Ensures that a key pair, named "elasticbamboo", has been defined in the configured AWS account.
awsAccount
- that should contain the key pair
com.atlassian.aws.AWSException
- if there is a problem communicating with EC2.boolean validateAwsCredentials(java.lang.String awsAccessID, java.lang.String awsSecretKey, ErrorCollection errorCollection)
Validate a set of supplied AWS credentials.
awsAccessID
- The Access ID of the Amazon Web Services AccountawsSecretKey
- The Secret Key of the Amazon Web Services AccounterrorCollection
- An ErrorCollection
to which validation errors should be added, or
null
if validation errors are not required.
true
if the supplied credentials are successfully validated; false
otherwise.@NotNull java.util.List<RemoteElasticInstance> getElasticRemoteAgents()
RemoteElasticInstance
@NotNull java.util.List<RemoteElasticInstance> getRequestedElasticRemoteAgents()
@NotNull java.util.List<RemoteElasticInstance> getStartingElasticInstances()
java.util.List<RemoteElasticInstance> getAllElasticRemoteAgents()
@NotNull java.util.List<RemoteElasticInstance> getInstancesWithStartingAgents()
getRequestedElasticRemoteAgents()
)
but the agent on the instance has not yet connected to the bamboo server. Elastic instances in such state are returned by this method
and the list is a subset of the list returned by getElasticRemoteAgents()
.
RemoteElasticInstance
com.google.common.collect.SetMultimap<ElasticImageConfiguration,RemoteElasticInstance> getAllElasticAgentsAsMap()
SetMultimap
, keyed by the ElasticImageConfiguration
int getTotalNumElasticRemoteAgents()
@Nullable RemoteElasticInstance getElasticRemoteAgentByInstanceId(java.lang.String instanceId)
instanceId
- of the instance
void registerElasticAgentStopped(@NotNull RemoteElasticInstance instance)
instance
- - the one to be deleted from the mapvoid onInstanceIdentified(@NotNull RemoteElasticInstance remoteElasticInstance)
remoteElasticInstance
- the instance identifiedvoid onInstanceRunning(@NotNull RemoteElasticInstance remoteElasticInstance)
remoteElasticInstance
- the instance that entered running state@Deprecated void addElasticLogEntry(java.lang.String logEntry)
addElasticLogEntry(Logger, String)
logEntry
- - the line you want added to the logsvoid addElasticLogEntry(org.apache.log4j.Logger log, java.lang.String logEntry)
java.util.List<java.lang.String> getElasticAgentLogs()
boolean isElasticSupportEnabled()
@NotNull java.util.Set<com.atlassian.aws.ec2.EC2InstanceType> getAllowedInstanceTypes()
@NotNull java.util.List<RemoteElasticInstance> getElasticRemoteAgentsByConfiguration(ElasticImageConfiguration elasticImageConfiguration)
@NotNull java.util.List<RemoteElasticInstance> getElasticRemoteAgentsByConfiguration(long id)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |