|
||||||||||
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
|
Method Summary | |
---|---|
void |
addElasticLogEntry(java.lang.String logEntry)
Add a line to the elastic activity logs |
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 agents. |
java.util.Set<com.atlassian.aws.ec2.EC2InstanceType> |
getAllowedInstanceTypes()
|
java.lang.String |
getDefaultImageId()
|
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> |
getRequestedElasticRemoteAgents()
Return the elastic instances which have been requested but not yet started up yet. |
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,
LocalAgentManager localAgentManager,
ElasticImageConfiguration elasticImageConfiguration)
|
void |
registerElasticAgentStarted(RemoteElasticInstance instance)
Tell the manager that the agent is up and running |
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
Method Detail |
---|
RemoteElasticInstance newElasticAgent(RemoteElasticInstanceListener listener, com.atlassian.aws.AWSAccount awsAccount, LocalAgentManager localAgentManager, 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()
java.util.List<RemoteElasticInstance> getAllElasticRemoteAgents()
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 registerElasticAgentStarted(@NotNull RemoteElasticInstance instance)
instance
- - the agent that is runningvoid addElasticLogEntry(java.lang.String logEntry)
logEntry
- - the line you want added to the logsjava.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)
@Nullable java.lang.String getDefaultImageId()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |