@Test public void testNewServerWithoutHostIdSetsZoneAsLocation() { Set<Image> images = ImmutableSet.<Image> of(); Set<Hardware> hardwares = ImmutableSet.<Hardware> of(); Server serverToConvert = expectedServer(); ServerInZone serverInZoneToConvert = new ServerInZone(serverToConvert, "az-1.region-a.geo-1"); ServerInZoneToNodeMetadata converter = new ServerInZoneToNodeMetadata( NovaComputeServiceContextModule.toPortableNodeStatus, locationIndex, Suppliers .<Set<? extends Image>> ofInstance(images), Suppliers .<Set<? extends Hardware>> ofInstance(hardwares), namingConvention); NodeMetadata convertedNodeMetadata = converter.apply(serverInZoneToConvert); assertEquals(serverInZoneToConvert.slashEncode(), convertedNodeMetadata.getId()); assertEquals(serverToConvert.getId(), convertedNodeMetadata.getProviderId()); assertEquals(convertedNodeMetadata.getLocation(), zone); URI expectedURI = URI.create("https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/71752"); assertEquals(convertedNodeMetadata.getUri(), expectedURI); }
@Test public void testNewServerWithoutHostIdSetsRegionAsLocation() { Set<Image> images = ImmutableSet.<Image> of(); Set<Hardware> hardwares = ImmutableSet.<Hardware> of(); Server serverToConvert = expectedServer(); ServerInRegion serverInRegionToConvert = new ServerInRegion(serverToConvert, "az-1.region-a.geo-1"); ServerInRegionToNodeMetadata converter = new ServerInRegionToNodeMetadata( NovaComputeServiceContextModule.toPortableNodeStatus, locationIndex, Suppliers .<Set<? extends Image>> ofInstance(images), Suppliers .<Set<? extends Hardware>> ofInstance(hardwares), namingConvention); NodeMetadata convertedNodeMetadata = converter.apply(serverInRegionToConvert); assertEquals(serverInRegionToConvert.slashEncode(), convertedNodeMetadata.getId()); assertEquals(serverToConvert.getId(), convertedNodeMetadata.getProviderId()); assertEquals(convertedNodeMetadata.getLocation(), region); URI expectedURI = URI.create("https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v2/37936628937291/servers/71752"); assertEquals(convertedNodeMetadata.getUri(), expectedURI); }
assertEquals(convertedNodeMetadata.getUri(), expectedURI);
assertEquals(convertedNodeMetadata.getUri(), expectedURI);
@Test public void testCreateServer() throws Exception { Properties overrides = new Properties(); overrides.setProperty(ComputeServiceProperties.POLL_INITIAL_PERIOD, "10000"); overrides.setProperty(ComputeServiceProperties.POLL_MAX_PERIOD, "10000"); ComputeServiceContext context = ContextBuilder.newBuilder("rackspace-cloudservers-us") .credentials(identity, credential) .overrides(overrides) .buildView(ComputeServiceContext.class); computeService = context.getComputeService(); nova = context.unwrapApi(NovaApi.class); Template template = computeService.templateBuilder().smallest().build(); NodeMetadata nodeMetadata = computeService.createNodesInGroup("jclouds-reverse-dns-test", 1, template).iterator().next(); serverId = nodeMetadata.getId(); serverURI = nodeMetadata.getUri(); ServerApi serverApi = nova.getServerApi(nodeMetadata.getLocation().getParent().getId()); Server server = serverApi.get(nodeMetadata.getProviderId()); serverIPv4 = server.getAccessIPv4(); serverIPv6 = server.getAccessIPv6(); System.out.println("serverURI = " + serverURI); System.out.println("serverIPv4 = " + serverIPv4); System.out.println("serverIPv6 = " + serverIPv6); }
@Test public void testExtendedOptionsWithCustomizationScript() throws Exception { String PARSE_VMTOOLSD = "vmtoolsd --cmd=\"info-get guestinfo.ovfenv\" |grep vCloud_CustomizationInfo|sed 's/.*value=\"\\(.*\\)\".*/\\1/g'"; String group = prefix + "cus"; NodeMetadata node = null; try { TemplateOptions options = client.templateOptions(); options.blockOnPort(22, 180); options.as(VCloudTemplateOptions.class).customizationScript(script); options.as(VCloudTemplateOptions.class).description(group); node = getOnlyElement(client.createNodesInGroup(group, 1, options)); VApp vapp = client.getContext().unwrap(VCloudApiMetadata.CONTEXT_TOKEN).getApi().getVAppClient().getVApp( node.getUri()); assertEquals(vapp.getDescription(), group); Vm vm = Iterables.get(vapp.getChildren(), 0); String apiOutput = vm.getGuestCustomizationSection().getCustomizationScript(); checkApiOutput(apiOutput); ExecResponse vmTools = client.runScriptOnNode(node.getId(), PARSE_VMTOOLSD, wrapInInitScript(false).runAsRoot(false)); checkApiOutput(new String(base64().decode(vmTools.getOutput().trim()), UTF_8)); ExecResponse foo = client.runScriptOnNode(node.getId(), "cat /root/foo.txt", wrapInInitScript(false) .runAsRoot(false)); checkCustomizationOccurred(foo); } finally { if (node != null) client.destroyNode(node.getId()); } }
public static NodeMetadataBuilder fromNodeMetadata(NodeMetadata node) { return new NodeMetadataBuilder().providerId(node.getProviderId()).name(node.getName()).id(node.getId()).location( node.getLocation()).uri(node.getUri()).userMetadata(node.getUserMetadata()).tags(node.getTags()).group( node.getGroup()).hardware(node.getHardware()).imageId(node.getImageId()).operatingSystem( node.getOperatingSystem()).status(node.getStatus()).backendStatus(node.getBackendStatus()).loginPort( node.getLoginPort()).publicAddresses(node.getPublicAddresses()).privateAddresses( node.getPrivateAddresses()).credentials(node.getCredentials()).hostname(node.getHostname()); }
public static NodeMetadataBuilder fromNodeMetadata(NodeMetadata node) { return new NodeMetadataBuilder().providerId(node.getProviderId()).name(node.getName()).id(node.getId()).location( node.getLocation()).uri(node.getUri()).userMetadata(node.getUserMetadata()).tags(node.getTags()).group( node.getGroup()).hardware(node.getHardware()).imageId(node.getImageId()).operatingSystem( node.getOperatingSystem()).status(node.getStatus()).backendStatus(node.getBackendStatus()).loginPort( node.getLoginPort()).publicAddresses(node.getPublicAddresses()).privateAddresses( node.getPrivateAddresses()).credentials(node.getCredentials()).hostname(node.getHostname()); }
public static NodeMetadataBuilder fromNodeMetadata(NodeMetadata node) { return new NodeMetadataBuilder().providerId(node.getProviderId()).name(node.getName()).id(node.getId()).location( node.getLocation()).uri(node.getUri()).userMetadata(node.getUserMetadata()).tags(node.getTags()).group( node.getGroup()).hardware(node.getHardware()).imageId(node.getImageId()).operatingSystem( node.getOperatingSystem()).status(node.getStatus()).backendStatus(node.getBackendStatus()).loginPort( node.getLoginPort()).publicAddresses(node.getPublicAddresses()).privateAddresses( node.getPrivateAddresses()).credentials(node.getCredentials()).hostname(node.getHostname()); }
public static NodeMetadataBuilder fromNodeMetadata(NodeMetadata node) { return new NodeMetadataBuilder().providerId(node.getProviderId()).name(node.getName()).id(node.getId()).location( node.getLocation()).uri(node.getUri()).userMetadata(node.getUserMetadata()).tags(node.getTags()).group( node.getGroup()).hardware(node.getHardware()).imageId(node.getImageId()).operatingSystem( node.getOperatingSystem()).status(node.getStatus()).backendStatus(node.getBackendStatus()).loginPort( node.getLoginPort()).publicAddresses(node.getPublicAddresses()).privateAddresses( node.getPrivateAddresses()).credentials(node.getCredentials()).hostname(node.getHostname()); }