List of usage examples for com.amazonaws.services.elasticbeanstalk.model DescribeEnvironmentResourcesResult getEnvironmentResources
public EnvironmentResourceDescription getEnvironmentResources()
A list of EnvironmentResourceDescription.
From source file:br.com.ingenieux.mojo.beanstalk.env.DumpInstancesMojo.java
License:Apache License
@Override protected Object executeInternal() throws Exception { AmazonEC2 ec2 = clientFactory.getService(AmazonEC2Client.class); DescribeEnvironmentResourcesResult envResources = getService().describeEnvironmentResources( new DescribeEnvironmentResourcesRequest().withEnvironmentId(curEnv.getEnvironmentId()) .withEnvironmentName(curEnv.getEnvironmentName())); List<String> instanceIds = new ArrayList<String>(); for (Instance i : envResources.getEnvironmentResources().getInstances()) { instanceIds.add(i.getId());//from w w w . j ava 2 s .c om } DescribeInstancesResult ec2Instances = ec2 .describeInstances(new DescribeInstancesRequest().withInstanceIds(instanceIds)); PrintStream printStream = null; if (null != outputFile) { printStream = new PrintStream(outputFile); } for (Reservation r : ec2Instances.getReservations()) { for (com.amazonaws.services.ec2.model.Instance i : r.getInstances()) { String ipAddress = dumpPrivateAddresses ? i.getPrivateIpAddress() : StringUtils.defaultString(i.getPublicIpAddress(), i.getPrivateDnsName()); String instanceId = i.getInstanceId(); if (null != printStream) { printStream.println(ipAddress + " # " + instanceId); } else { getLog().info(" * " + instanceId + ": " + ipAddress); } } } if (null != printStream) { printStream.close(); } return null; }
From source file:org.cloudml.connectors.BeanstalkConnector.java
License:Open Source License
public Collection<String> getEnvIPs(String envName, int timeout) { DescribeEnvironmentResourcesRequest request = new DescribeEnvironmentResourcesRequest() .withEnvironmentName(envName); List<Instance> instances = null; System.out.print("Waiting for environment ips"); while (timeout-- > 0) { try {// ww w . jav a2s. c om Thread.sleep(1000); } catch (InterruptedException ex) { Logger.getLogger(BeanstalkConnector.class.getName()).log(Level.SEVERE, null, ex); } System.out.print("-"); DescribeEnvironmentResourcesResult res = beanstalkClient.describeEnvironmentResources(request); instances = res.getEnvironmentResources().getInstances(); if (instances.size() == 0) continue; AmazonEC2Client ec2 = new AmazonEC2Client(awsCredentials); ec2.setEndpoint(beanstalkEndpoint.replace("elasticbeanstalk", "ec2")); List<String> instanceIds = new ArrayList<String>(); for (Instance instance : instances) { instanceIds.add(instance.getId()); } List<String> ips = new ArrayList<String>(); DescribeInstancesRequest desins = new DescribeInstancesRequest().withInstanceIds(instanceIds); DescribeInstancesResult desinres = ec2.describeInstances(desins); for (Reservation reservation : desinres.getReservations()) { for (com.amazonaws.services.ec2.model.Instance ins : reservation.getInstances()) { String ip = ins.getPublicIpAddress(); if (ip != null && ip.length() > 0) ips.add(ip); } } if (ips.size() > 0) return ips; } return Collections.EMPTY_LIST; }