@Override public boolean deleteImage(String id) { try { AsyncCreateResponse deleteJob = client.getTemplateApi().deleteTemplate(id); jobComplete.apply(deleteJob.getJobId()); return true; } catch (Exception e) { return false; } }
public T fromAsyncCreateResponse(AsyncCreateResponse in) { return this .id(in.getId()) .jobId(in.getJobId()); } }
public T fromAsyncCreateResponse(AsyncCreateResponse in) { return this .id(in.getId()) .jobId(in.getJobId()); } }
public T fromAsyncCreateResponse(AsyncCreateResponse in) { return this .id(in.getId()) .jobId(in.getJobId()); } }
public void testAssociateDisassociatePublicIPAddress() throws Exception { if (!networksEnabled) return; AsyncCreateResponse job = client.getAddressClient().associateIPAddressInZone( Iterables.get(client.getNetworkClient().listNetworks(), 0).getZoneId()); checkState(jobComplete.apply(job.getJobId()), "job %s failed to complete", job.getJobId()); ip = client.getAsyncJobClient().<PublicIPAddress> getAsyncJob(job.getJobId()).getResult(); checkIP(ip); }
public void testAssociateDisassociatePublicIPAddress() throws Exception { if (!networksEnabled) return; AsyncCreateResponse job = client.getAddressApi().associateIPAddressInZone( Iterables.get(client.getNetworkApi().listNetworks(), 0).getZoneId()); checkState(jobComplete.apply(job.getJobId()), "job %s failed to complete", job.getJobId()); ip = client.getAsyncJobApi().<PublicIPAddress> getAsyncJob(job.getJobId()).getResult(); checkIP(ip); }
@Test(enabled = true, dependsOnMethods = "testRegisterTemplate") public void testExtractTemplate() throws Exception { // Initiate the extraction and wait for it to complete AsyncCreateResponse response = client.getTemplateClient().extractTemplate(registeredTemplate.getId(), ExtractMode.HTTP_DOWNLOAD, registeredTemplate.getZoneId()); assertTrue(jobComplete.apply(response.getJobId()), registeredTemplate.toString()); // Get the result AsyncJob<TemplateExtraction> asyncJob = client.getAsyncJobClient().getAsyncJob(response.getJobId()); TemplateExtraction extract = asyncJob.getResult(); assertNotNull(extract); // Check that the URL can be retrieved String extractUrl = extract.getUrl(); assertNotNull(extractUrl); URI uri = new URI(URLDecoder.decode(extractUrl, "utf-8")); assertTrue(cloudStackContext.utils().http().exists(uri), "does not exist: " + uri); }
@Test(dependsOnMethods = "testListResourceByTag") public void testDeleteTags() { AsyncCreateResponse job = client.getTagApi().deleteTags(DeleteTagsOptions.Builder.resourceType("Volume") .resourceIds(volumeToDelete) .tags(ImmutableMap.of(prefix + "-first-tag", "first-tag-value", prefix + "-second-tag", "second-tag-value"))); assertTrue(jobComplete.apply(job.getJobId())); }
@Test(dependsOnMethods = "testCreatePortForwardingRule") public void testCreateFirewallRule() { if (networksDisabled) return; AsyncCreateResponse job = client.getFirewallClient().createFirewallRuleForIpAndProtocol( ip.getId(), FirewallRule.Protocol.TCP, CreateFirewallRuleOptions.Builder.startPort(30).endPort(35)); assertTrue(jobComplete.apply(job.getJobId())); firewallRule = client.getFirewallClient().getFirewallRule(job.getId()); assertEquals(firewallRule.getStartPort(), 30); assertEquals(firewallRule.getEndPort(), 35); assertEquals(firewallRule.getProtocol(), FirewallRule.Protocol.TCP); checkFirewallRule(firewallRule); }
public void testCreateTags() { createVolumeToTag(); AsyncCreateResponse job = client.getTagApi().createTags(CreateTagsOptions.Builder.resourceType("Volume") .resourceIds(volumeToDelete) .tags(ImmutableMap.of(prefix + "-first-tag", "first-tag-value", prefix + "-second-tag", "second-tag-value"))); assertTrue(jobComplete.apply(job.getJobId())); }
@Test(dependsOnMethods = "testCreatePortForwardingRule") public void testCreateFirewallRule() { if (networksDisabled) return; AsyncCreateResponse job = client.getFirewallApi().createFirewallRuleForIpAndProtocol( ip.getId(), FirewallRule.Protocol.TCP, CreateFirewallRuleOptions.Builder.startPort(30).endPort(35)); assertTrue(jobComplete.apply(job.getJobId())); firewallRule = client.getFirewallApi().getFirewallRule(job.getId()); assertEquals(firewallRule.getStartPort(), 30); assertEquals(firewallRule.getEndPort(), 35); assertEquals(firewallRule.getProtocol(), FirewallRule.Protocol.TCP); checkFirewallRule(firewallRule); }
@Test(dependsOnMethods = "testCreatePortForwardingRule") public void testCreateEgressFirewallRule() { if (networksDisabled) return; AsyncCreateResponse job = client.getFirewallApi().createEgressFirewallRuleForNetworkAndProtocol( network.getId(), FirewallRule.Protocol.TCP, CreateFirewallRuleOptions.Builder.startPort(30).endPort(35)); assertTrue(jobComplete.apply(job.getJobId())); egressFirewallRule = client.getFirewallApi().getEgressFirewallRule(job.getId()); assertEquals(egressFirewallRule.getStartPort(), 30); assertEquals(egressFirewallRule.getEndPort(), 35); assertEquals(egressFirewallRule.getProtocol(), FirewallRule.Protocol.TCP); checkEgressFirewallRule(egressFirewallRule); }
public void testCreateFirewallRuleForIpAndProtocol() { FirewallClient client = requestSendsResponse( HttpRequest.builder() .method("GET") .endpoint( URI.create("http://localhost:8080/client/api?response=json&command=createFirewallRule&" + "ipaddressid=2&protocol=TCP&apiKey=identity&signature=d0MZ/yhQPAaV%2BYQmfZsQtQL2C28%3D")) .addHeader("Accept", "application/json") .build(), HttpResponse.builder() .statusCode(200) .payload(payloadFromResource("/createfirewallrulesresponse.json")) .build()); AsyncCreateResponse response = client.createFirewallRuleForIpAndProtocol("2", FirewallRule.Protocol.TCP); assertEquals(response.getJobId(), "2036"); assertEquals(response.getId(), "2017"); }
protected void createVolumeToTag() { AsyncCreateResponse job = client.getVolumeApi().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume", getPreferredDiskOffering().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); logger.info("created volume " + job.getId()); volumeToDelete = job.getId(); }
protected Volume createPreferredVolumeFromDisk() { AsyncCreateResponse job = client.getVolumeClient().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume", getPreferredDiskOffering().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); logger.info("created volume " + job.getId()); return findVolumeWithId(job.getId()); }
protected Volume createPreferredVolumeFromDisk() { AsyncCreateResponse job = client.getVolumeApi().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume", getPreferredDiskOffering().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); logger.info("created volume " + job.getId()); return findVolumeWithId(job.getId()); }
public void testCreateSnapshotFromVolume() { final Volume volume = getPreferredVolume(); //fail fast if none logger.info("creating snapshot from volume %s", volume); AsyncCreateResponse job = client.getSnapshotClient().createSnapshot(volume.getId()); assertTrue(jobComplete.apply(job.getJobId())); Snapshot snapshot = findSnapshotWithId(job.getId()); logger.info("created snapshot %s from volume %s", snapshot, volume); checkSnapshot(snapshot); client.getSnapshotClient().deleteSnapshot(snapshot.getId()); }
public void testCreateSnapshotFromVolume() { final Volume volume = getPreferredVolume(); //fail fast if none logger.info("creating snapshot from volume %s", volume); AsyncCreateResponse job = client.getSnapshotApi().createSnapshot(volume.getId()); assertTrue(jobComplete.apply(job.getJobId())); Snapshot snapshot = findSnapshotWithId(job.getId()); logger.info("created snapshot %s from volume %s", snapshot, volume); checkSnapshot(snapshot); client.getSnapshotApi().deleteSnapshot(snapshot.getId()); }
public void testCreateVolumeFromSnapshotInZoneAndDeleteVolume() { logger.info("testCreateVolumeFromSnapshotInZoneAndDeleteVolume (takes ~3m)"); assertNotNull(getPreferredSnapshot()); AsyncCreateResponse job = client.getVolumeClient().createVolumeFromSnapshotInZone(prefix + "-jclouds-volume", getPreferredSnapshot().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); Volume volume = findVolumeWithId(job.getId()); checkVolume(volume); client.getVolumeClient().deleteVolume(volume.getId()); }
public void testCreateVolumeFromSnapshotInZoneAndDeleteVolume() { logger.info("testCreateVolumeFromSnapshotInZoneAndDeleteVolume (takes ~3m)"); assertNotNull(getPreferredSnapshot()); AsyncCreateResponse job = client.getVolumeApi().createVolumeFromSnapshotInZone(prefix + "-jclouds-volume", getPreferredSnapshot().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); Volume volume = findVolumeWithId(job.getId()); checkVolume(volume); client.getVolumeApi().deleteVolume(volume.getId()); }