mirror of https://github.com/apache/jclouds.git
Issue 968:
Add DNS Name as public address when describe instance response doesn't contain IPAddress
This commit is contained in:
parent
6cdad28359
commit
9cceb4e05f
|
@ -122,6 +122,9 @@ public class RunningInstanceToNodeMetadata implements Function<RunningInstance,
|
|||
Builder<String> addressesBuilder = ImmutableSet.builder();
|
||||
if (Strings.emptyToNull(instance.getIpAddress()) != null)
|
||||
addressesBuilder.add(instance.getIpAddress());
|
||||
//Set ipAddress to be
|
||||
else if(Strings.emptyToNull(instance.getDnsName()) != null)
|
||||
addressesBuilder.add(instance.getDnsName());
|
||||
if (Strings.emptyToNull(instance.getPrivateIpAddress()) != null)
|
||||
addressesBuilder.add(instance.getPrivateIpAddress());
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ public class RunningInstanceToNodeMetadataTest {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testPrivateIpAddressIncorrectlyInPublicAddressFieldGoesToPrivateAddressCollection() {
|
||||
RunningInstance instance = RunningInstance.builder().instanceId("id").imageId("image").instanceType("m1.small")
|
||||
|
@ -98,7 +98,22 @@ public class RunningInstanceToNodeMetadataTest {
|
|||
ImmutableSet.<String> of()).publicAddresses(ImmutableSet.of("1.1.1.1")).id("us-east-1/id").imageId(
|
||||
"us-east-1/image").providerId("id").build().toString());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testIPAddressIsSetToDnsNameWhenIPAddressIsNull() {
|
||||
RunningInstance instance = RunningInstance.builder().instanceId("id").imageId("image").instanceType("m1.small")
|
||||
.instanceState(InstanceState.RUNNING).rawState("running").region("us-east-1").dnsName("jclouds-1-1-1-1.jclouds.org").build();
|
||||
|
||||
RunningInstanceToNodeMetadata parser = createNodeParser(ImmutableSet.<Hardware> of(), ImmutableSet
|
||||
.<Location> of(), ImmutableSet.<Image> of(), ImmutableMap.<String, Credentials> of());
|
||||
|
||||
assertEquals(parser.apply(instance).toString(), new NodeMetadataBuilder().status(Status.RUNNING).backendStatus("running").privateAddresses(
|
||||
ImmutableSet.<String> of()).publicAddresses(ImmutableSet.of("jclouds-1-1-1-1.jclouds.org")).id("us-east-1/id").imageId(
|
||||
"us-east-1/image").providerId("id").build().toString());
|
||||
|
||||
}
|
||||
|
||||
|
||||
static Location provider = new LocationBuilder().scope(LocationScope.REGION).id("us-east-1")
|
||||
.description("us-east-1").build();
|
||||
|
||||
|
@ -145,7 +160,7 @@ public class RunningInstanceToNodeMetadataTest {
|
|||
.privateAddresses(ImmutableSet.of("10.243.42.70")).publicAddresses(ImmutableSet.of("174.129.81.68"))
|
||||
.imageId("us-east-1/ami-82e4b5c7").id("us-east-1/i-0799056f").providerId("i-0799056f")
|
||||
.location(provider).build();
|
||||
|
||||
|
||||
assertEquals(parser.apply(server).toString(), expected.toString());
|
||||
}
|
||||
|
||||
|
@ -246,7 +261,7 @@ public class RunningInstanceToNodeMetadataTest {
|
|||
final ImmutableSet<Location> locations, final Set<org.jclouds.compute.domain.Image> images,
|
||||
Map<String, Credentials> credentialStore) {
|
||||
Map<InstanceState, Status> instanceToNodeStatus = EC2ComputeServiceDependenciesModule.toPortableNodeStatus;
|
||||
|
||||
|
||||
CacheLoader<RegionAndName, Image> getRealImage = new CacheLoader<RegionAndName, Image>() {
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue