Skip to content

Instantly share code, notes, and snippets.

Created August 18, 2015 06:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/919c6345afb5c589d398 to your computer and use it in GitHub Desktop.
Save anonymous/919c6345afb5c589d398 to your computer and use it in GitHub Desktop.
AWS instance creating helper method that sleeps on a timely manner until instances are ready
private static void sleepUntilInstancesIsRunning(AmazonEC2 ec2, Set<String> instanceIdList) throws InterruptedException {
while(true) {
DescribeInstancesResult instanceStatusResult = ec2.describeInstances(new DescribeInstancesRequest().withInstanceIds(instanceIdList));
if(Iterables.all(instanceStatusResult.getReservations(), new Predicate<Reservation>() {
@Override
public boolean apply(Reservation input) {
return Iterables.all(input.getInstances(), new Predicate<Instance>() {
@Override
public boolean apply(Instance input) {
return input.getState().getName().equalsIgnoreCase(InstanceStateName.Running.toString());
}
});
}
})){
break;
} else {
System.out.println("waiting...");
Thread.sleep(1000);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment