Merge branch 'master' into cloudstack-template-live-test

Conflicts:
	apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/TemplateClientLiveTest.java
This commit is contained in:
Richard Downer 2011-12-02 19:51:02 +02:00
commit 9939237c6b
84 changed files with 1468 additions and 1925 deletions

View File

@ -48,6 +48,18 @@ public class BindTemplateMetadataToQueryParams implements Binder {
request = ModifyRequest.addQueryParam(request, "name", metadata.getName(), uriBuilderProvider.get());
request = ModifyRequest.addQueryParam(request, "ostypeid", metadata.getOsTypeId(), uriBuilderProvider.get());
request = ModifyRequest.addQueryParam(request, "displaytext", metadata.getDisplayText(), uriBuilderProvider.get());
if (metadata.getSnapshotId() != null) {
request = ModifyRequest.addQueryParam(request, "snapshotid", metadata.getSnapshotId(), uriBuilderProvider.get());
}
if (metadata.getVolumeId() != null) {
request = ModifyRequest.addQueryParam(request, "volumeid", metadata.getVolumeId(), uriBuilderProvider.get());
}
if (metadata.getVirtualMachineId() != null) {
request = ModifyRequest.addQueryParam(request, "virtualmachineid", metadata.getVirtualMachineId(), uriBuilderProvider.get());
}
if (metadata.getPasswordEnabled() != null) {
request = ModifyRequest.addQueryParam(request, "passwordenabled", metadata.getPasswordEnabled(), uriBuilderProvider.get());
}
return request;
}
}

View File

@ -0,0 +1,73 @@
package org.jclouds.cloudstack.domain;
import com.google.gson.annotations.SerializedName;
/**
* The result of an operation.
*
* A handful of Cloudstack API calls return this structure when there is no domain model data to return - for example,
* when deleting an object.
*
* @author Richard Downer
*/
public class JobResult implements Comparable<JobResult> {
private boolean success;
@SerializedName("displaytext")
private String displayText;
/**
* present only for the serializer
*/
JobResult() {
}
public JobResult(boolean success, String displayText) {
this.success = success;
this.displayText = displayText;
}
public boolean getSuccess() {
return success;
}
public String getDisplayText() {
return displayText;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
JobResult that = (JobResult) o;
if (success != that.success) return false;
if (displayText != null ? !displayText.equals(that.displayText) : that.displayText != null) return false;
return true;
}
@Override
public int hashCode() {
int result = (success ? 1 : 0);
result = 31 * result + (displayText != null ? displayText.hashCode() : 0);
return result;
}
@Override
public String toString() {
return "[" +
"success=" + success +
", displayText=" + (displayText != null ? '\'' + displayText + '\'' : "null") +
']';
}
@Override
public int compareTo(JobResult other) {
int comparison = Boolean.valueOf(success).compareTo(other.success);
if (comparison == 0)
comparison = displayText.compareTo(other.displayText);
return comparison;
}
}

View File

@ -18,11 +18,13 @@
*/
package org.jclouds.cloudstack.domain;
import com.google.gson.annotations.SerializedName;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.Date;
import static com.google.common.base.Preconditions.checkNotNull;
import com.google.common.base.CaseFormat;
import com.google.common.base.Objects;
import com.google.gson.annotations.SerializedName;
/**
* @author Richard Downer
@ -48,7 +50,7 @@ public class Snapshot implements Comparable<Snapshot> {
private State state;
private long volumeId;
private String volumeName;
private String volumeType;
private Volume.VolumeType volumeType;
/**
* @param id ID of the snapshot
@ -157,27 +159,37 @@ public class Snapshot implements Comparable<Snapshot> {
/**
* @param volumeType type of the disk volume
*/
public Builder volumeType(String volumeType) {
public Builder volumeType(Volume.VolumeType volumeType) {
this.volumeType = volumeType;
return this;
}
public Snapshot build() {
return new Snapshot(id, account, created, domain, domainId, interval, jobId,
jobStatus, name, snapshotType, state, volumeId, volumeName, volumeType);
}
public static enum State {
}
BackedUp, Creating, BackingUp, UNRECOGNIZED;
public enum State {
public static State fromValue(String type) {
BACKED_UP, CREATING, BACKING_UP, UNRECOGNIZED;
@Override
public String toString() {
return CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, name());
}
public static State fromValue(String state) {
try {
return valueOf(checkNotNull(type, "type"));
return valueOf(CaseFormat.UPPER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, checkNotNull(state, "state")));
} catch (IllegalArgumentException e) {
return UNRECOGNIZED;
}
}
}
public static enum Type {
public enum Type {
MANUAL, RECURRING, UNRECOGNIZED;
@ -190,7 +202,7 @@ public class Snapshot implements Comparable<Snapshot> {
}
}
public static enum Interval {
public enum Interval {
HOURLY, DAILY, WEEKLY, MONTHLY, template, none, UNRECOGNIZED;
@ -224,7 +236,25 @@ public class Snapshot implements Comparable<Snapshot> {
@SerializedName("volumename")
private String volumeName;
@SerializedName("volumetype")
private String volumeType; // FIXME: replace this with a proper enumerated type (blocked until volume API implemented)
private Volume.VolumeType volumeType;
public Snapshot(long id, String account, Date created, String domain, long domainId, Interval interval, long jobId,
String jobStatus, String name, Type snapshotType, State state, long volumeId, String volumeName, Volume.VolumeType volumeType) {
this.id = id;
this.account = account;
this.created = created;
this.domain = domain;
this.domainId = domainId;
this.interval = interval;
this.jobId = jobId;
this.jobStatus = jobStatus;
this.name = name;
this.snapshotType = snapshotType;
this.state = state;
this.volumeId = volumeId;
this.volumeName = volumeName;
this.volumeType = volumeType;
}
/**
* present only for serializer
@ -326,7 +356,7 @@ public class Snapshot implements Comparable<Snapshot> {
/**
* @return type of the disk volume
*/
public String getVolumeType() {
public Volume.VolumeType getVolumeType() {
return volumeType;
}
@ -335,22 +365,22 @@ public class Snapshot implements Comparable<Snapshot> {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Snapshot snapshot = (Snapshot) o;
Snapshot that = (Snapshot) o;
if (domainId != snapshot.domainId) return false;
if (id != snapshot.id) return false;
if (jobId != snapshot.jobId) return false;
if (volumeId != snapshot.volumeId) return false;
if (account != null ? !account.equals(snapshot.account) : snapshot.account != null) return false;
if (created != null ? !created.equals(snapshot.created) : snapshot.created != null) return false;
if (domain != null ? !domain.equals(snapshot.domain) : snapshot.domain != null) return false;
if (interval != snapshot.interval) return false;
if (jobStatus != null ? !jobStatus.equals(snapshot.jobStatus) : snapshot.jobStatus != null) return false;
if (name != null ? !name.equals(snapshot.name) : snapshot.name != null) return false;
if (snapshotType != snapshot.snapshotType) return false;
if (state != snapshot.state) return false;
if (volumeName != null ? !volumeName.equals(snapshot.volumeName) : snapshot.volumeName != null) return false;
if (volumeType != null ? !volumeType.equals(snapshot.volumeType) : snapshot.volumeType != null) return false;
if (!Objects.equal(domainId, that.domainId)) return false;
if (!Objects.equal(id, that.id)) return false;
if (!Objects.equal(jobId, that.jobId)) return false;
if (!Objects.equal(volumeId, that.volumeId)) return false;
if (!Objects.equal(account, that.account)) return false;
if (!Objects.equal(created, that.created)) return false;
if (!Objects.equal(domain, that.domain)) return false;
if (!Objects.equal(interval, that.interval)) return false;
if (!Objects.equal(jobStatus, that.jobStatus)) return false;
if (!Objects.equal(name, that.name)) return false;
if (!Objects.equal(snapshotType, that.snapshotType)) return false;
if (!Objects.equal(state, that.state)) return false;
if (!Objects.equal(volumeName, that.volumeName)) return false;
if (!Objects.equal(volumeType, that.volumeType)) return false;
return true;
}

View File

@ -86,6 +86,9 @@ public class SnapshotPolicy implements Comparable<SnapshotPolicy> {
return this;
}
public SnapshotPolicy build() {
return new SnapshotPolicy(id, interval, numberToRetain, schedule, timezone, volumeId);
}
}
private long id;
@ -98,6 +101,15 @@ public class SnapshotPolicy implements Comparable<SnapshotPolicy> {
@SerializedName("volumeid")
private long volumeId;
public SnapshotPolicy(long id, Snapshot.Interval interval, long numberToRetain, String schedule, String timezone, long volumeId) {
this.id = id;
this.interval = interval;
this.numberToRetain = numberToRetain;
this.schedule = schedule;
this.timezone = timezone;
this.volumeId = volumeId;
}
/**
* present only for serializer
*/

View File

@ -211,6 +211,7 @@ public class Template implements Comparable<Template> {
USER, BUILTIN, UNRECOGNIZED;
//TODO do we need camel case routines (e.g. see enums in VirtualMachine) ?
public static Type fromValue(String type) {
try {
return valueOf(checkNotNull(type, "type"));

View File

@ -18,6 +18,8 @@
*/
package org.jclouds.cloudstack.domain;
import com.google.common.base.Objects;
/**
* @author Richard Downer
*/
@ -28,13 +30,17 @@ public class TemplateMetadata {
}
public static class Builder {
private String name;
private long osTypeId;
private String displayText;
private Long snapshotId;
private Long volumeId;
private Long virtualMachineId;
private Boolean passwordEnabled;
/**
* @param name the name of the template
* @param name
* the name of the template
*/
public Builder name(String name) {
this.name = name;
@ -42,7 +48,8 @@ public class TemplateMetadata {
}
/**
* @param osTypeId the ID of the OS Type that best represents the OS of this template.
* @param osTypeId
* the ID of the OS Type that best represents the OS of this template.
*/
public Builder osTypeId(long osTypeId) {
this.osTypeId = osTypeId;
@ -50,15 +57,58 @@ public class TemplateMetadata {
}
/**
* @param displayText the display text of the template. This is usually used for display purposes.
* @param displayText
* the display text of the template. This is usually used for display purposes.
*/
public Builder displayText(String displayText) {
this.displayText = displayText;
return this;
}
/**
* @param snapshotId
* the ID of the snapshot the template is being created from.
* Either this parameter, or volumeId has to be passed in
*/
public Builder snapshotId(Long snapshotId) {
this.snapshotId = snapshotId;
return this;
}
/**
* @param volumeId
* the ID of the disk volume the template is being created from.
* Either this parameter, or snapshotId has to be passed in
*/
public Builder volumeId(Long volumeId) {
this.volumeId = volumeId;
return this;
}
/**
* @param virtualMachineId
* the ID of the disk volume the template is being created from
*/
public Builder virtualMachineId(Long virtualMachineId) {
this.virtualMachineId = virtualMachineId;
return this;
}
/**
* the template supports the password reset feature.
*/
public Builder passwordEnabled() {
this.passwordEnabled = true;
return this;
}
public TemplateMetadata build() {
return new TemplateMetadata(name, osTypeId, displayText);
TemplateMetadata template = new TemplateMetadata(name, osTypeId, displayText);
template.setPasswordEnabled(passwordEnabled);
template.setSnapshotId(snapshotId);
template.setVirtualMachineId(virtualMachineId);
template.setVolumeId(volumeId);
return template;
}
}
@ -66,6 +116,11 @@ public class TemplateMetadata {
private long osTypeId;
private String displayText;
private Long snapshotId;
private Long volumeId;
private Long virtualMachineId;;
private Boolean passwordEnabled;
public TemplateMetadata(String name, long osTypeId, String displayText) {
this.name = name;
this.osTypeId = osTypeId;
@ -78,6 +133,50 @@ public class TemplateMetadata {
TemplateMetadata() {
}
/**
* @return the ID of the snapshot the template is being created from
*/
public Long getSnapshotId() {
return snapshotId;
}
public void setSnapshotId(Long snapshotId) {
this.snapshotId = snapshotId;
}
/**
* @return the ID of the disk volume the template is being created from
*/
public Long getVolumeId() {
return volumeId;
}
public void setVolumeId(Long volumeId) {
this.volumeId = volumeId;
}
/**
* @return Optional, VM ID
*/
public Long getVirtualMachineId() {
return virtualMachineId;
}
public void setVirtualMachineId(Long virtualMachineId) {
this.virtualMachineId = virtualMachineId;
}
/**
* @return true if the template supports the password reset feature; default is false
*/
public Boolean getPasswordEnabled() {
return passwordEnabled;
}
public void setPasswordEnabled(Boolean passwordEnabled) {
this.passwordEnabled = passwordEnabled;
}
/**
* @return the name of the template
*/
@ -106,28 +205,24 @@ public class TemplateMetadata {
TemplateMetadata that = (TemplateMetadata) o;
if (osTypeId != that.osTypeId) return false;
if (displayText != null ? !displayText.equals(that.displayText) : that.displayText != null) return false;
if (name != null ? !name.equals(that.name) : that.name != null) return false;
if (!Objects.equal(osTypeId, that.osTypeId)) return false;
if (!Objects.equal(snapshotId, that.snapshotId)) return false;
if (!Objects.equal(volumeId, that.volumeId)) return false;
if (!Objects.equal(virtualMachineId, that.virtualMachineId)) return false;
if (!Objects.equal(passwordEnabled, that.passwordEnabled)) return false;
if (!Objects.equal(displayText, that.displayText)) return false;
if (!Objects.equal(name, that.name)) return false;
return true;
}
@Override
public int hashCode() {
int result = name != null ? name.hashCode() : 0;
result = 31 * result + (int) (osTypeId ^ (osTypeId >>> 32));
result = 31 * result + (displayText != null ? displayText.hashCode() : 0);
return result;
return Objects.hashCode(name, displayText, osTypeId, snapshotId, volumeId, passwordEnabled, virtualMachineId);
}
@Override
public String toString() {
return "[" +
"name='" + name + '\'' +
", osTypeId=" + osTypeId +
", displayText='" + displayText + '\'' +
']';
return "[" + "name='" + name + '\'' + ", osTypeId=" + osTypeId + ", displayText='" + displayText + '\'' + ']';
}
}

View File

@ -955,18 +955,23 @@ public class VirtualMachine implements Comparable<VirtualMachine> {
@Override
public String toString() {
return "[id=" + id + ", account=" + account + ", cpuCount=" + cpuCount + ", cpuSpeed=" + cpuSpeed + ", cpuUsed="
+ cpuUsed + ", displayName=" + displayName + ", created=" + created + ", domain=" + domain + ", domainId="
+ domainId + ", usesVirtualNetwork=" + usesVirtualNetwork + ", group=" + group + ", groupId=" + groupId
+ ", guestOSId=" + guestOSId + ", HAEnabled=" + HAEnabled + ", hostId=" + hostId + ", hostname=" + hostname
+ ", IPAddress=" + IPAddress + ", ISODisplayText=" + ISODisplayText + ", ISOId=" + ISOId + ", ISOName="
+ ISOName + ", jobId=" + jobId + ", jobStatus=" + jobStatus + ", memory=" + memory + ", name=" + name
+ ", networkKbsRead=" + networkKbsRead + ", networkKbsWrite=" + networkKbsWrite + ", password=" + password
+ ", passwordEnabled=" + passwordEnabled + ", rootDeviceId=" + rootDeviceId + ", rootDeviceType="
+ rootDeviceType + ", serviceOfferingId=" + serviceOfferingId + ", serviceOfferingName="
+ serviceOfferingName + ", state=" + state + ", templateDisplayText=" + templateDisplayText
+ ", templateId=" + templateId + ", templateName=" + templateName + ", zoneId=" + zoneId + ", zoneName="
+ zoneName + ", nics=" + nics + ", hypervisor=" + hypervisor + ", securityGroups=" + securityGroups + "]";
return "[id=" + id
// + ", account=" + account + ", cpuCount=" + cpuCount + ", cpuSpeed=" + cpuSpeed + ", cpuUsed=" + cpuUsed
+ ", displayName=" + displayName + ", created=" + created
// + ", domain=" + domain + ", domainId="
// + domainId + ", usesVirtualNetwork=" + usesVirtualNetwork + ", group=" + group + ", groupId=" + groupId
// + ", guestOSId=" + guestOSId + ", HAEnabled=" + HAEnabled + ", hostId=" + hostId + ", hostname=" + hostname
+ ", IPAddress=" + IPAddress
// + ", ISODisplayText=" + ISODisplayText + ", ISOId=" + ISOId + ", ISOName="
// + ISOName + ", jobId=" + jobId + ", jobStatus=" + jobStatus + ", memory=" + memory + ", name=" + name
// + ", networkKbsRead=" + networkKbsRead + ", networkKbsWrite=" + networkKbsWrite + ", password=" + password
// + ", passwordEnabled=" + passwordEnabled + ", rootDeviceId=" + rootDeviceId + ", rootDeviceType="
// + rootDeviceType + ", serviceOfferingId=" + serviceOfferingId + ", serviceOfferingName=" + serviceOfferingName
+ ", state=" + state
// + ", templateDisplayText=" + templateDisplayText
// + ", templateId=" + templateId + ", templateName=" + templateName + ", zoneId=" + zoneId + ", zoneName="
// + zoneName + ", nics=" + nics + ", hypervisor=" + hypervisor + ", securityGroups=" + securityGroups
+ "]";
}
@Override

View File

@ -24,6 +24,9 @@ import static com.google.common.base.Preconditions.checkNotNull;
import java.util.Date;
import java.util.Map;
import org.jclouds.cloudstack.domain.VirtualMachine.State;
import com.google.common.base.CaseFormat;
import com.google.common.base.Function;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Maps;
@ -61,9 +64,8 @@ public class Volume implements Comparable<Volume> {
private String serviceOfferingName;
private long size;
private long snapshotId;
private String state;
private State state;
private String storage;
// TODO enum
private String storageType;
private VolumeType type;
private long virtualMachineId;
@ -173,7 +175,7 @@ public class Volume implements Comparable<Volume> {
return this;
}
public Builder state(String state) {
public Builder state(State state) {
this.state = state;
return this;
}
@ -231,11 +233,6 @@ public class Volume implements Comparable<Volume> {
}
}
// for deserialization
Volume() {
}
private long id;
private Date attached;
private Date created;
@ -257,7 +254,6 @@ public class Volume implements Comparable<Volume> {
@SerializedName("jobid")
private long jobId;
@SerializedName("jobstatus")
//TODO Change to enum
private String jobStatus;
private String name;
@SerializedName("serviceofferingdisplaytext")
@ -269,9 +265,10 @@ public class Volume implements Comparable<Volume> {
private long size;
@SerializedName("snapshotid")
private long snapshotId;
private String state;
private State state;
private String storage;
@SerializedName("storagetype")
// MAYDO: this should perhaps be an enum; only value I have seen is "shared"
private String storageType;
private VolumeType type;
@SerializedName("virtualmachineid")
@ -291,7 +288,7 @@ public class Volume implements Comparable<Volume> {
String diskOfferingDisplayText, long diskOfferingId, String diskOfferingName,
String domain, long domainId, String hypervisor, boolean extractable, long jobId,
String jobStatus, String name, String serviceOfferingDisplayText, long serviceOfferingId,
String serviceOfferingName, long size, long snapshotId, String state, String storage,
String serviceOfferingName, long size, long snapshotId, State state, String storage,
String storageType, VolumeType type, long virtualMachineId, String vmDisplayName, String vmName,
VirtualMachine.State vmState, long zoneId, String zoneName) {
this.id = id;
@ -326,6 +323,10 @@ public class Volume implements Comparable<Volume> {
this.zoneName = zoneName;
}
// for deserialization
Volume() {
}
public long getId() {
return id;
}
@ -334,7 +335,6 @@ public class Volume implements Comparable<Volume> {
return attached;
}
public Date getCreated() {
return created;
}
@ -407,7 +407,7 @@ public class Volume implements Comparable<Volume> {
return snapshotId;
}
public String getState() {
public State getState() {
return state;
}
@ -535,6 +535,40 @@ public class Volume implements Comparable<Volume> {
return result;
}
@Override
public String toString() {
return getClass().getCanonicalName()+"["+id+"; "+name+"; "+vmState+"]";
}
public enum State {
/** indicates that the volume record is created in the DB, but not on the backend */
ALLOCATED,
/** the volume is being created on the backend */
CREATING,
/** the volume is ready to be used */
READY,
/** the volume is destroyed (either as a result of deleteVolume command for DataDisk or as a part of destroyVm) */
DESTROYED,
/** the volume has failed somehow, e.g. during creation (in cloudstack development) */
FAILED,
UNRECOGNIZED;
@Override
public String toString() {
return CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, name());
}
public static State fromValue(String state) {
try {
return valueOf(CaseFormat.UPPER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, checkNotNull(state, "state")));
} catch (IllegalArgumentException e) {
return UNRECOGNIZED;
}
}
}
public enum VolumeType {
ROOT(0),
DATADISK(1),

View File

@ -116,8 +116,9 @@ public interface TemplateAsyncClient {
*/
@GET
@QueryParams(keys = "command", values = "deleteTemplate")
@ExceptionParser(ReturnVoidOnNotFoundOr404.class)
ListenableFuture<Void> deleteTemplate(@QueryParam("id") long id, DeleteTemplateOptions... options);
@Unwrap
@Consumes(MediaType.APPLICATION_JSON)
ListenableFuture<AsyncCreateResponse> deleteTemplate(@QueryParam("id") long id, DeleteTemplateOptions... options);
/**
* @see TemplateClient#listTemplates

View File

@ -130,7 +130,7 @@ public interface TemplateClient {
* @param options
* optional arguments
*/
void deleteTemplate(long id, DeleteTemplateOptions... options);
AsyncCreateResponse deleteTemplate(long id, DeleteTemplateOptions... options);
/**
* List all executable templates.

View File

@ -25,30 +25,34 @@ import java.util.Set;
import javax.inject.Singleton;
import com.google.inject.TypeLiteral;
import org.jclouds.cloudstack.domain.AsyncJob;
import org.jclouds.domain.JsonBall;
import org.jclouds.http.HttpResponse;
import org.jclouds.http.functions.ParseFirstJsonValueNamed;
import org.jclouds.http.functions.UnwrapOnlyNestedJsonValue;
import com.google.common.base.Function;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
import com.google.inject.Inject;
import org.jclouds.json.internal.GsonWrapper;
/**
*
* @author Adrian Cole
*/
@Singleton
public class ParseAsyncJobsFromHttpResponse implements Function<HttpResponse, Set<AsyncJob<?>>> {
private final UnwrapOnlyNestedJsonValue<Set<AsyncJob<Map<String, JsonBall>>>> parser;
private final ParseFirstJsonValueNamed<Set<AsyncJob<Map<String, JsonBall>>>> parser;
private final ParseTypedAsyncJob parseTyped;
@Inject
public ParseAsyncJobsFromHttpResponse(ParseTypedAsyncJob parseTyped,
UnwrapOnlyNestedJsonValue<Set<AsyncJob<Map<String, JsonBall>>>> parser) {
public ParseAsyncJobsFromHttpResponse(ParseTypedAsyncJob parseTyped, GsonWrapper gsonWrapper) {
this.parseTyped = checkNotNull(parseTyped, "parseTyped");
this.parser = checkNotNull(parser, "parser");
this.parser = new ParseFirstJsonValueNamed<Set<AsyncJob<Map<String, JsonBall>>>>(
checkNotNull(gsonWrapper, "gsonWrapper"),
new TypeLiteral<Set<AsyncJob<Map<String, JsonBall>>>>() { },
"asyncjobs");
}
public Set<AsyncJob<?>> apply(HttpResponse response) {

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.cloudstack.features;
import static org.jclouds.cloudstack.domain.AsyncJob.ResultCode;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertTrue;
@ -33,13 +34,15 @@ import org.testng.annotations.Test;
*/
@Test(groups = "live", singleThreaded = true, testName = "AsyncJobClientLiveTest")
public class AsyncJobClientLiveTest extends BaseCloudStackClientLiveTest {
// disabled as it takes too long
@Test(enabled = false)
@Test(enabled = true)
public void testListAsyncJobs() throws Exception {
Set<AsyncJob<?>> response = client.getAsyncJobClient().listAsyncJobs();
assert null != response;
long asyncJobCount = response.size();
assertTrue(asyncJobCount >= 0);
for (AsyncJob<?> asyncJob : response) {
assert asyncJob.getCmd() != null : asyncJob;
assert asyncJob.getUserId() >= 0 : asyncJob;
@ -57,12 +60,11 @@ public class AsyncJobClientLiveTest extends BaseCloudStackClientLiveTest {
assert query.getStatus().code() >= 0 : query;
assert query.getResultCode().code() >= 0 : query;
assert query.getProgress() >= 0 : query;
if (query.getResultCode().code() == 0) {
if (query.getResult() != null)// null is ok for result of success =
// true
// ensure we parsed properly
assert (query.getResult().getClass().getPackage().equals(AsyncJob.class.getPackage())) : query;
} else if (query.getResultCode().code() > 400) {
if (query.getResultCode() == ResultCode.SUCCESS) {
if (query.getResult() != null) {
assertEquals(query.getResult().getClass().getPackage(), AsyncJob.class.getPackage());
}
} else if (query.getResultCode() == ResultCode.FAIL) {
assert query.getResult() == null : query;
assert query.getError() != null : query;
} else {

View File

@ -49,6 +49,7 @@ import org.jclouds.cloudstack.predicates.VirtualMachineDestroyed;
import org.jclouds.cloudstack.predicates.VirtualMachineRunning;
import org.jclouds.cloudstack.strategy.BlockUntilJobCompletesAndReturnResult;
import org.jclouds.compute.BaseVersionedServiceLiveTest;
import org.jclouds.compute.ComputeService;
import org.jclouds.compute.ComputeServiceContextFactory;
import org.jclouds.compute.domain.ExecResponse;
import org.jclouds.domain.Credentials;
@ -130,6 +131,7 @@ public class BaseCloudStackClientLiveTest extends BaseVersionedServiceLiveTest {
protected String prefix = System.getProperty("user.name");
protected CloudStackContext computeContext;
protected ComputeService computeClient;
protected RestContext<CloudStackClient, CloudStackAsyncClient> context;
protected CloudStackClient client;
protected CloudStackClient adminClient;
@ -173,8 +175,10 @@ public class BaseCloudStackClientLiveTest extends BaseVersionedServiceLiveTest {
public void setupClient() {
setupCredentials();
computeContext = CloudStackContext.class.cast(new ComputeServiceContextFactory().createContext(provider,
ImmutableSet.<Module> of(new Log4JLoggingModule(), new SshjSshClientModule()), setupProperties()));
computeContext = CloudStackContext.class.cast(new ComputeServiceContextFactory(setupRestProperties()).
createContext(provider, ImmutableSet.<Module> of(
new Log4JLoggingModule(), new SshjSshClientModule()), setupProperties()));
computeClient = computeContext.getComputeService();
context = computeContext.getProviderSpecificContext();
client = context.getApi();
user = verifyCurrentUserIsOfType(context, Account.Type.USER);
@ -182,9 +186,9 @@ public class BaseCloudStackClientLiveTest extends BaseVersionedServiceLiveTest {
domainAdminEnabled = setupAdminProperties() != null;
if (domainAdminEnabled) {
domainAdminComputeContext = CloudStackContext.class.cast(new ComputeServiceContextFactory().createContext(
provider, ImmutableSet.<Module> of(new Log4JLoggingModule(), new SshjSshClientModule()),
setupAdminProperties()));
domainAdminComputeContext = CloudStackContext.class.cast(new ComputeServiceContextFactory(setupRestProperties()).
createContext(provider, ImmutableSet.<Module> of(
new Log4JLoggingModule(), new SshjSshClientModule()), setupAdminProperties()));
domainAdminContext = domainAdminComputeContext.getDomainContext();
domainAdminClient = domainAdminContext.getApi();
domainAdminUser = verifyCurrentUserIsOfType(domainAdminContext, Account.Type.DOMAIN_ADMIN);

View File

@ -28,9 +28,15 @@ import static org.testng.AssertJUnit.assertTrue;
import java.util.Set;
import javax.annotation.Resource;
import org.jclouds.cloudstack.domain.AsyncCreateResponse;
import org.jclouds.cloudstack.domain.Snapshot;
import org.jclouds.cloudstack.domain.Volume;
import org.jclouds.cloudstack.options.ListSnapshotsOptions;
import org.jclouds.logging.Logger;
import org.jclouds.predicates.PredicateCallable;
import org.jclouds.predicates.Retryables;
import org.testng.annotations.Test;
import com.google.common.base.Function;
@ -40,11 +46,13 @@ import com.google.common.collect.Iterables;
/**
* Tests behavior of {@code SnapshotClient}
*
* @author grkvlt@apache.org
* @author grkvlt@apache.org, Alex Heneveld
*/
@Test(groups = "live", singleThreaded = true, testName = "SnapshotClientLiveTest")
public class SnapshotClientLiveTest extends BaseCloudStackClientLiveTest {
@Resource Logger logger = Logger.NULL;
public void testListSnapshots() {
Set<Snapshot> snapshots = client.getSnapshotClient().listSnapshots();
assertNotNull(snapshots);
@ -102,24 +110,30 @@ public class SnapshotClientLiveTest extends BaseCloudStackClientLiveTest {
assertNull(found);
}
protected Volume getPreferredVolume() {
for (Volume candidate : client.getVolumeClient().listVolumes()) {
if (candidate.getState() == Volume.State.READY)
return candidate;
}
throw new AssertionError("No suitable Volume found.");
}
public void testCreateSnapshotFromVolume() {
// Pick some volume
long volumeId = Iterables.get(client.getVolumeClient().listVolumes(), 0).getId();
final Volume volume = getPreferredVolume(); //fail fast if none
Snapshot snapshot = null;
while (snapshot == null) {
try {
AsyncCreateResponse job = client.getSnapshotClient().createSnapshot(volumeId);
Snapshot snapshot = Retryables.retryGettingResultOrFailing(new PredicateCallable<Snapshot>() {
public Snapshot call() {
logger.info("creating snapshot from volume %s", volume);
AsyncCreateResponse job = client.getSnapshotClient().createSnapshot(volume.getId());
assertTrue(jobComplete.apply(job.getJobId()));
snapshot = findSnapshotWithId(job.getId());
} catch (IllegalStateException e) {
// TODO snapshot creation failed - retry?
return findSnapshotWithId(job.getId());
}
protected void onFailure() {
logger.info("failed creating snapshot (retrying): %s", getLastFailure());
}
}, null, 60*1000, "failed to create snapshot");
logger.info("created snapshot %s from volume %s", snapshot, volume);
checkSnapshot(snapshot);
// Delete the snapshot
client.getSnapshotClient().deleteSnapshot(snapshot.getId());
}

View File

@ -170,12 +170,12 @@ public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<Templ
HttpRequest httpRequest = processor.createRequest(method, 17);
assertRequestLineEquals(httpRequest, "GET http://localhost:8080/client/api?response=json&command=deleteTemplate&id=17 HTTP/1.1");
assertNonPayloadHeadersEqual(httpRequest, "");
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
assertPayloadEquals(httpRequest, null, null, false);
assertResponseParserClassEquals(method, httpRequest, ReleasePayloadAndReturn.class);
assertResponseParserClassEquals(method, httpRequest, UnwrapOnlyJsonValue.class);
assertSaxResponseParserClassEquals(method, null);
assertExceptionParserClassEquals(method, ReturnVoidOnNotFoundOr404.class);
assertExceptionParserClassEquals(method, MapHttp4xxCodesToExceptions.class);
checkFilters(httpRequest);
}
@ -185,12 +185,12 @@ public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<Templ
HttpRequest httpRequest = processor.createRequest(method, 17, DeleteTemplateOptions.Builder.zoneId(8));
assertRequestLineEquals(httpRequest, "GET http://localhost:8080/client/api?response=json&command=deleteTemplate&id=17&zoneid=8 HTTP/1.1");
assertNonPayloadHeadersEqual(httpRequest, "");
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
assertPayloadEquals(httpRequest, null, null, false);
assertResponseParserClassEquals(method, httpRequest, ReleasePayloadAndReturn.class);
assertResponseParserClassEquals(method, httpRequest, UnwrapOnlyJsonValue.class);
assertSaxResponseParserClassEquals(method, null);
assertExceptionParserClassEquals(method, ReturnVoidOnNotFoundOr404.class);
assertExceptionParserClassEquals(method, MapHttp4xxCodesToExceptions.class);
checkFilters(httpRequest);
}

View File

@ -37,7 +37,7 @@ import static org.jclouds.cloudstack.options.ListTemplatesOptions.Builder.zoneId
import static org.testng.Assert.*;
/**
* Tests behavior of {@code TemplateClientLiveTest}
* Tests behavior of {@code TemplateClient}
*
* @author Adrian Cole
*/
@ -187,6 +187,8 @@ public class TemplateClientLiveTest extends BaseCloudStackClientLiveTest {
assert virtualMachineDestroyed.apply(vm);
}
if (createdTemplate != null) {
AsyncCreateResponse deleteJob = client.getTemplateClient().deleteTemplate(template.getId());
assertTrue(jobComplete.apply(deleteJob.getJobId()));
client.getTemplateClient().deleteTemplate(createdTemplate.getId());
}
if (registeredTemplate != null) {

View File

@ -18,31 +18,46 @@
*/
package org.jclouds.cloudstack.features;
import static com.google.common.collect.Iterables.*;
import static org.testng.AssertJUnit.*;
import static org.testng.AssertJUnit.assertEquals;
import static org.testng.AssertJUnit.assertFalse;
import static org.testng.AssertJUnit.assertNotNull;
import static org.testng.AssertJUnit.assertNotSame;
import static org.testng.AssertJUnit.assertNull;
import static org.testng.AssertJUnit.assertTrue;
import java.util.NoSuchElementException;
import java.util.Set;
import com.google.common.base.Function;
import javax.annotation.Resource;
import org.jclouds.cloudstack.CloudStackClient;
import org.jclouds.cloudstack.domain.AsyncCreateResponse;
import org.jclouds.cloudstack.domain.DiskOffering;
import org.jclouds.cloudstack.domain.Snapshot;
import org.jclouds.cloudstack.domain.VirtualMachine;
import org.jclouds.cloudstack.domain.Volume;
import org.jclouds.cloudstack.domain.Zone;
import org.jclouds.cloudstack.options.ListVolumesOptions;
import org.jclouds.logging.Logger;
import org.jclouds.predicates.PredicateCallable;
import org.jclouds.predicates.Retryables;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.google.common.base.Predicate;
import com.google.common.base.Function;
import com.google.common.collect.Iterables;
/**
* Tests behavior of {@code VolumeClient}
*
* @author Vijay Kiran
* @author Vijay Kiran, Alex Heneveld
*/
@Test(groups = "live", singleThreaded = true, testName = "VolumeClientLiveTest")
public class VolumeClientLiveTest extends BaseCloudStackClientLiveTest {
protected String prefix = System.getProperty("user.name");
@Resource Logger logger = Logger.NULL;
protected String prefix = System.getProperty("user.name")+"-"+getClass().getSimpleName();
private long zoneId;
@ -111,114 +126,141 @@ public class VolumeClientLiveTest extends BaseCloudStackClientLiveTest {
assertNull(found);
}
public void testCreateVolumeFromDiskofferingInZoneAndDeleteVolume() {
// Pick some disk offering
long diskOfferingId = Iterables.get(client.getOfferingClient().listDiskOfferings(), 0).getId();
protected DiskOffering getPreferredDiskOffering() {
for (DiskOffering candidate : client.getOfferingClient().listDiskOfferings()) {
//any will do
return candidate;
}
throw new AssertionError("No suitable DiskOffering found.");
}
protected Snapshot getPreferredSnapshot() {
for (Snapshot candidate : client.getSnapshotClient().listSnapshots()) {
if (candidate.getState()==Snapshot.State.BACKED_UP)
return candidate;
}
throw new AssertionError("No suitable Snapshot found.");
}
Volume volume = null;
while (volume == null) {
try {
AsyncCreateResponse job = client.getVolumeClient().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume",
diskOfferingId, zoneId);
protected VirtualMachine getPreferredVirtualMachine() {
for (VirtualMachine candidate : client.getVirtualMachineClient().listVirtualMachines()) {
// this is a guess::
if (candidate.getState()==VirtualMachine.State.RUNNING || candidate.getState()==VirtualMachine.State.STOPPED)
return candidate;
}
throw new AssertionError("No suitable VirtualMachine found.");
}
protected Volume createPreferredVolumeFromDisk() {
return Retryables.retryGettingResultOrFailing(new PredicateCallable<Volume>() {
public Volume call() {
AsyncCreateResponse job = client.getVolumeClient().createVolumeFromDiskOfferingInZone(
prefix+"-jclouds-volume", getPreferredDiskOffering().getId(), zoneId);
assertTrue(jobComplete.apply(job.getJobId()));
volume = findVolumeWithId(job.getId());
} catch (IllegalStateException e) {
// TODO volume creation failed - retry?
logger.info("created volume "+job.getId());
return findVolumeWithId(job.getId());
}
}, null, 60*1000, "failed to create volume");
}
public void testCreateVolumeFromDiskofferingInZoneAndDeleteVolume() {
logger.info("testCreateVolumeFromDiskofferingInZoneAndDeleteVolume");
Volume volume = createPreferredVolumeFromDisk();
checkVolume(volume);
// Delete the volume
client.getVolumeClient().deleteVolume(volume.getId());
}
/** test requires that a VM exist */
public void testCreateVolumeFromDiskofferingInZoneAndAttachVolumeToVirtualMachineAndDetachAndDelete() {
// Pick some disk offering
long diskOfferingId = Iterables.get(client.getOfferingClient().listDiskOfferings(), 0).getId();
Volume volume = null;
while (volume == null) {
logger.info("testCreateVolumeFromDiskofferingInZoneAndAttachVolumeToVirtualMachineAndDetachAndDelete");
final Volume volume = createPreferredVolumeFromDisk();
try {
AsyncCreateResponse job = client.getVolumeClient().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume",
diskOfferingId, zoneId);
assertTrue(jobComplete.apply(job.getJobId()));
volume = findVolumeWithId(job.getId());
} catch (IllegalStateException e) {
// TODO volume creation failed - retry?
}
}
checkVolume(volume);
long virtualMachineId = Iterables.get(client.getVirtualMachineClient().listVirtualMachines(), 0).getId();
// Attach Volume
Volume attachedVolume = null;
while (attachedVolume == null) {
try {
AsyncCreateResponse job = client.getVolumeClient().attachVolume(volume.getId(), virtualMachineId);
final VirtualMachine virtualMachine = getPreferredVirtualMachine();
Volume attachedVolume = Retryables.retryGettingResultOrFailing(new PredicateCallable<Volume>() {
public Volume call() {
logger.info("attaching volume %s to vm %s", volume, virtualMachine);
AsyncCreateResponse job = client.getVolumeClient().attachVolume(volume.getId(), virtualMachine.getId());
assertTrue(jobComplete.apply(job.getJobId()));
attachedVolume = findVolumeWithId(volume.getId());
assertEquals(virtualMachineId, attachedVolume.getVirtualMachineId());
return findVolumeWithId(volume.getId());
}
int failures=0;
protected void onFailure() {
logger.info("failed attaching volume (retrying): %s", getLastFailure());
if (failures++==0) logger.warn(getLastFailure(), "first failure attaching volume");
}
}, null, 60*1000, "failed to attach volume");
checkVolume(attachedVolume);
assertEquals(virtualMachine.getId(), attachedVolume.getVirtualMachineId());
assertNotNull(attachedVolume.getAttached());
} catch (IllegalStateException e) {
// TODO volume creation failed - retry?
}
}
// Detach Volume
Volume detachedVolume = null;
while (detachedVolume == null) {
try {
Volume detachedVolume = Retryables.retryGettingResultOrFailing(new PredicateCallable<Volume>() {
public Volume call() {
logger.info("detaching volume %s from vm %s", volume, virtualMachine);
AsyncCreateResponse job = client.getVolumeClient().detachVolume(volume.getId());
assertTrue(jobComplete.apply(job.getJobId()));
detachedVolume = findVolumeWithId(volume.getId());
return findVolumeWithId(volume.getId());
}
protected void onFailure() {
logger.debug("failed detaching volume (retrying): %s", getLastFailure());
}
}, null, 60*1000, "failed to detach volume");
checkVolume(detachedVolume);
} catch (IllegalStateException e) {
//TODO volume creation failed - retry?
}
}
assertNull(detachedVolume.getAttached());
// Cleanup
} finally {
client.getVolumeClient().deleteVolume(volume.getId());
}
}
public void testCreateVolumeFromSnapshotInZoneAndDeleteVolume() {
Set<Snapshot> snapshots = client.getSnapshotClient().listSnapshots();
assertNotNull(snapshots);
assertFalse(snapshots.isEmpty());
long snapshotId = Iterables.get(snapshots, 0).getId();
Volume volume = null;
while (volume == null) {
try {
AsyncCreateResponse job = client.getVolumeClient().createVolumeFromSnapshotInZone(prefix + "-jclouds-volume",
snapshotId, zoneId);
logger.info("testCreateVolumeFromSnapshotInZoneAndDeleteVolume (takes ~3m)");
assertNotNull(getPreferredSnapshot());
Volume volume = Retryables.retryGettingResultOrFailing(new PredicateCallable<Volume>() {
public Volume call() {
AsyncCreateResponse job = client.getVolumeClient().createVolumeFromSnapshotInZone(
prefix+"-jclouds-volume", getPreferredSnapshot().getId(), zoneId);
assertTrue(jobComplete.apply(job.getJobId()));
volume = findVolumeWithId(job.getId());
} catch (IllegalStateException e) {
// TODO volume creation failed - retry?
return findVolumeWithId(job.getId());
}
protected void onFailure() {
logger.debug("failed creating volume (retrying): %s", getLastFailure());
}
}, null, 60*1000, "failed to create volume");
checkVolume(volume);
// Delete the volume
client.getVolumeClient().deleteVolume(volume.getId());
}
private void checkVolume(final Volume volume) {
static void checkVolume(final Volume volume) {
assertNotNull(volume.getId());
assertNotNull(volume.getName());
assertNotSame(Volume.VolumeType.UNRECOGNIZED, volume.getType());
}
private Volume findVolumeWithId(final long id) {
return find(client.getVolumeClient().listVolumes(), new Predicate<Volume>() {
@Override
public boolean apply(Volume arg0) {
return arg0.getId() == id;
Volume findVolumeWithId(final long id) {
return findVolumeWithId(client, id);
}
});
static Volume findVolumeWithId(final CloudStackClient client, final long id) {
for (Volume v: client.getVolumeClient().listVolumes())
if (v.getId()==id) return v;
throw new NoSuchElementException("no volume with id "+id);
}
// //uncomment to force a cleanup of volumes (since test failures can leave messes)
// public void deleteAllWeUsed() {
// for (Volume v: client.getVolumeClient().listVolumes()) {
// if (v.getName().startsWith(prefix)) {
// logger.warn("found apparent detritus, deleting: %s", v);
// try {
// client.getVolumeClient().deleteVolume(v.getId());
// } catch (Exception e) {
// logger.warn(e, "failed to delete %s: %s", v, e);
// }
// }
// }
// }
}

View File

@ -39,7 +39,7 @@ import com.google.inject.Injector;
@Test(groups = "unit")
public class ParseAsyncJobsFromHttpResponseTest {
Injector i = Guice.createInjector(new GsonModule() {
Injector injector = Guice.createInjector(new GsonModule() {
@Override
protected void configure() {
@ -52,7 +52,7 @@ public class ParseAsyncJobsFromHttpResponseTest {
public void testCanParse() {
InputStream is = getClass().getResourceAsStream("/listasyncjobsresponse.json");
ParseAsyncJobsFromHttpResponse parser = i.getInstance(ParseAsyncJobsFromHttpResponse.class);
ParseAsyncJobsFromHttpResponse parser = injector.getInstance(ParseAsyncJobsFromHttpResponse.class);
Set<AsyncJob<?>> response = parser.apply(new HttpResponse(200, "ok", Payloads.newInputStreamPayload(is)));
assertEquals(response.size(), 77);

View File

@ -0,0 +1,45 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.jclouds.cloudstack.parse;
import org.jclouds.cloudstack.domain.AsyncJob;
import org.jclouds.cloudstack.domain.JobResult;
import org.jclouds.json.BaseItemParserTest;
import org.jclouds.rest.annotations.SelectJson;
import org.testng.annotations.Test;
/**
*
* @author Richard Downer
*/
@Test(groups = "unit", testName = "DeleteNetworkResponseTest")
public class JobResultResponseTest extends BaseItemParserTest<JobResult> {
@Override
public String resource() {
return "/deletetemplateresponse.json";
}
@Override
@SelectJson("jobresult")
public JobResult expected() {
return new JobResult(true, null);
}
}

View File

@ -0,0 +1 @@
{ "queryasyncjobresultresponse" : {"jobid":118,"jobstatus":1,"jobprocstatus":0,"jobresultcode":0,"jobresulttype":"object","jobresult":{"success":true}} }

View File

@ -1,5 +1,6 @@
{
"listasyncjobsresponse": {
"count": 77,
"asyncjobs": [{
"jobid": 1084,
"accountid": 3,

View File

@ -103,24 +103,12 @@ $symbol_dollar = '$' )
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.${lcaseProviderName}.identity</name>
<value>\$\{test.${lcaseProviderName}.identity\}</value>
</property>
<property>
<name>test.${lcaseProviderName}.credential</name>
<value>\$\{test.${lcaseProviderName}.credential\}</value>
</property>
<property>
<name>test.${lcaseProviderName}.endpoint</name>
<value>\$\{test.${lcaseProviderName}.endpoint\}</value>
</property>
<property>
<name>test.${lcaseProviderName}.apiversion</name>
<value>\$\{test.${lcaseProviderName}.apiversion\}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.${lcaseProviderName}.identity>\$\{test.${lcaseProviderName}.identity\}</test.${lcaseProviderName}.identity>
<test.${lcaseProviderName}.credential>\$\{test.${lcaseProviderName}.credential\}</test.${lcaseProviderName}.credential>
<test.${lcaseProviderName}.endpoint>\$\{test.${lcaseProviderName}.endpoint\}</test.${lcaseProviderName}.endpoint>
<test.${lcaseProviderName}.apiversion>\$\{test.${lcaseProviderName}.apiversion\}</test.${lcaseProviderName}.apiversion>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -0,0 +1,66 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.jclouds.predicates;
import java.util.concurrent.Callable;
import com.google.common.annotations.Beta;
/** Provides a facility to convert an arbitrary Callable to a Predicate, implementing PredicateWithResult,
* for use e.g. with Retryables.retryGetting... methods */
@Beta
public abstract class PredicateCallable<Result> implements PredicateWithResult<Void, Result>, Callable<Result> {
Result lastResult;
Exception lastFailure;
@Override
public boolean apply(Void input) {
try {
lastResult = call();
onCompletion();
return isAcceptable(lastResult);
} catch (Exception e) {
lastFailure = e;
onFailure();
return false;
}
}
protected void onFailure() {
}
protected void onCompletion() {
}
protected boolean isAcceptable(Result result) {
return result!=null;
}
@Override
public Result getResult() {
return lastResult;
}
@Override
public Throwable getLastFailure() {
return lastFailure;
}
}

View File

@ -0,0 +1,31 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.jclouds.predicates;
import com.google.common.annotations.Beta;
import com.google.common.base.Predicate;
@Beta
public interface PredicateWithResult<Input,Result> extends Predicate<Input> {
Result getResult();
Throwable getLastFailure();
}

View File

@ -34,6 +34,11 @@ import com.google.common.base.Predicate;
/**
*
* Retries a condition until it is met or a timeout occurs.
* maxWait parameter is required.
* Initial retry period and retry maxPeriod are optionally configurable,
* defaulting to 50ms and 1000ms respectively,
* with the retrier increasing the interval by a factor of 1.5 each time within these constraints.
* All values taken as millis unless TimeUnit specified.
*
* @author Adrian Cole
*/
@ -92,6 +97,7 @@ public class RetryablePredicate<T> implements Predicate<T> {
}
protected long nextMaxInterval(long attempt, Date end) {
// FIXME i think this should be pow(1.5, attempt) -- or alternatively newInterval = oldInterval*1.5
long interval = (period * (long) Math.pow(attempt, 1.5));
interval = interval > maxPeriod ? maxPeriod : interval;
long max = end.getTime() - System.currentTimeMillis();

View File

@ -0,0 +1,61 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.jclouds.predicates;
import java.util.concurrent.TimeUnit;
import com.google.common.annotations.Beta;
import com.google.common.base.Predicate;
/** convenience methods to retry application of a predicate, and optionally (reducing quite a bit of boilerplate)
* get the final result or throw assertion error
*
* @author alex heneveld
*/
@Beta
public class Retryables {
public static <Input> boolean retry(Predicate<Input> predicate, Input input, long maxWaitMillis) {
return new RetryablePredicate<Input>(predicate, maxWaitMillis).apply(input);
}
public static <Input> boolean retry(Predicate<Input> predicate, Input input, long maxWait, long period, TimeUnit unit) {
return new RetryablePredicate<Input>(predicate, maxWait, period, unit).apply(input);
}
public static <Input> void assertEventually(Predicate<Input> predicate, Input input,
long maxWaitMillis, String failureMessage) {
if (!new RetryablePredicate<Input>(predicate, maxWaitMillis).apply(input))
throw new AssertionError(failureMessage);
}
public static <Input,Result> Result retryGettingResultOrFailing(PredicateWithResult<Input,Result> predicate,
Input input, long maxWaitMillis, String failureMessage) {
if (!new RetryablePredicate<Input>(predicate, maxWaitMillis).apply(input))
throw (AssertionError)new AssertionError(failureMessage).initCause(predicate.getLastFailure());
return predicate.getResult();
}
public static <Input,Result> Result retryGettingResultOrFailing(PredicateWithResult<Input,Result> predicate,
Input input, long maxWait, long period, TimeUnit unit, String failureMessage) {
if (!new RetryablePredicate<Input>(predicate, maxWait, period, unit).apply(input))
throw (AssertionError)new AssertionError(failureMessage).initCause(predicate.getLastFailure());
return predicate.getResult();
}
}

View File

@ -0,0 +1,128 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.jclouds.predicates;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
import static org.jclouds.predicates.Retryables.retry;
import static org.jclouds.predicates.Retryables.retryGettingResultOrFailing;
import static org.testng.Assert.*;
import org.testng.annotations.Test;
@Test
public class RetryablesTest {
public static class FindX implements PredicateWithResult<String,Character> {
Character result;
Throwable lastFailure;
int attempts=0;
@Override
public boolean apply(String input) {
try {
result = input.charAt(attempts++);
return (result=='x');
} catch (Exception e) {
lastFailure = e;
return false;
}
}
public Character getResult() {
return result;
}
public Throwable getLastFailure() {
return lastFailure;
}
}
public void testPredicateWithResult() {
FindX findX = new FindX();
assertFalse(findX.apply("hexy"));
assertEquals((char)findX.getResult(), 'h');
assertFalse(findX.apply("hexy"));
assertTrue(findX.apply("hexy"));
assertEquals((char)findX.getResult(), 'x');
assertFalse(findX.apply("hexy"));
assertNull(findX.getLastFailure());
//now we get error
assertFalse(findX.apply("hexy"));
assertNotNull(findX.getLastFailure());
assertEquals((char)findX.getResult(), 'y');
}
public void testRetry() {
FindX findX = new FindX();
assertTrue(retry(findX, "hexy", 1000, 1, MILLISECONDS));
assertEquals(findX.attempts, 3);
assertEquals((char)findX.getResult(), 'x');
assertNull(findX.getLastFailure());
//now we'll be getting errors
assertFalse(retry(findX, "hexy", 100, 1, MILLISECONDS));
assertEquals((char)findX.getResult(), 'y');
assertNotNull(findX.getLastFailure());
}
public void testRetryGetting() {
FindX findX = new FindX();
assertEquals((char)retryGettingResultOrFailing(findX, "hexy", 1000, "shouldn't happen"), 'x');
//now we'll be getting errors
boolean secondRetrySucceeds=false;
try {
retryGettingResultOrFailing(findX, "hexy", 100, "expected");
secondRetrySucceeds = true;
} catch (AssertionError e) {
assertTrue(e.toString().contains("expected"));
}
if (secondRetrySucceeds) fail("should have thrown");
assertNotNull(findX.getLastFailure());
assertFalse(findX.getLastFailure().toString().contains("expected"));
}
//using PredicateCallable we can repeat the above test, with the job expressed more simply
public static class FindXSimpler extends PredicateCallable<Character> {
String input = "hexy";
int attempts=0;
public Character call() {
return input.charAt(attempts++);
}
public boolean isAcceptable(Character result) {
return result=='x';
}
}
public void testSimplerPredicateCallableRetryGetting() {
FindXSimpler findX = new FindXSimpler();
assertEquals((char)retryGettingResultOrFailing(findX, null, 1000, "shouldn't happen"), 'x');
//now we'll be getting errors
boolean secondRetrySucceeds=false;
try {
retryGettingResultOrFailing(findX, null, 100, "expected");
secondRetrySucceeds = true;
} catch (AssertionError e) {
assertTrue(e.toString().contains("expected"));
}
if (secondRetrySucceeds) fail("should have thrown");
assertNotNull(findX.getLastFailure());
assertFalse(findX.getLastFailure().toString().contains("expected"));
}
}

View File

@ -96,40 +96,16 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.identity.azureblob</name>
<value>${jclouds.azure.storage.account}</value>
</property>
<property>
<name>test.credential.azureblob</name>
<value>${jclouds.azure.storage.key}</value>
</property>
<property>
<name>test.identity.cloudfiles</name>
<value>${jclouds.rackspace.user}</value>
</property>
<property>
<name>test.credential.cloudfiles</name>
<value>${jclouds.rackspace.key}</value>
</property>
<property>
<name>test.identity.s3</name>
<value>${jclouds.aws.accesskeyid}</value>
</property>
<property>
<name>test.credential.s3</name>
<value>${jclouds.aws.secretaccesskey}</value>
</property>
<property>
<name>jclouds.getpath.container</name>
<value>${jclouds.getpath.container}</value>
</property>
<property>
<name>jclouds.getpath.path</name>
<value>${jclouds.getpath.path}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.identity.azureblob>${jclouds.azure.storage.account}</test.identity.azureblob>
<test.credential.azureblob>${jclouds.azure.storage.key}</test.credential.azureblob>
<test.identity.cloudfiles>${jclouds.rackspace.user}</test.identity.cloudfiles>
<test.credential.cloudfiles>${jclouds.rackspace.key}</test.credential.cloudfiles>
<test.identity.s3>${jclouds.aws.accesskeyid}</test.identity.s3>
<test.credential.s3>${jclouds.aws.secretaccesskey}</test.credential.s3>
<jclouds.getpath.container>${jclouds.getpath.container}</jclouds.getpath.container>
<jclouds.getpath.path>${jclouds.getpath.path}</jclouds.getpath.path>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -151,34 +151,14 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.aws.identity</name>
<!-- same for EC2 -->
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws.credential</name>
<!-- same for EC2 -->
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>appengine.sdk.root</name>
<value>${appengine.sdk.root}</value>
</property>
<property>
<name>devappserver.address</name>
<value>${devappserver.address}</value>
</property>
<property>
<name>devappserver.port</name>
<value>${devappserver.port}</value>
</property>
<property>
<name>warfile</name>
<value>${project.build.directory}/${project.artifactId}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws.identity>${test.aws-s3.identity}</test.aws.identity>
<test.aws.credential>${test.aws-s3.credential}</test.aws.credential>
<appengine.sdk.root>${appengine.sdk.root}</appengine.sdk.root>
<devappserver.address>${devappserver.address}</devappserver.address>
<devappserver.port>${devappserver.port}</devappserver.port>
<warfile>${project.build.directory}/${project.artifactId}</warfile>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -132,24 +132,12 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.aws-s3.identity</name>
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws-s3.credential</name>
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>test.aws-s3.loopcount</name>
<value>${test.aws-s3.loopcount}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws-s3.identity>${test.aws-s3.identity}</test.aws-s3.identity>
<test.aws-s3.credential>${test.aws-s3.credential}</test.aws-s3.credential>
<test.initializer>${test.initializer}</test.initializer>
<test.aws-s3.loopcount>${test.aws-s3.loopcount}</test.aws-s3.loopcount>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -95,88 +95,28 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.twitter.consumer.identity</name>
<value>${test.twitter.gae-tweetstore-spring.consumer.identity}</value>
</property>
<property>
<name>test.twitter.consumer.credential</name>
<value>${test.twitter.gae-tweetstore-spring.consumer.credential}</value>
</property>
<property>
<name>test.twitter.access.identity</name>
<value>${test.twitter.gae-tweetstore-spring.access.identity}</value>
</property>
<property>
<name>test.twitter.access.credential</name>
<value>${test.twitter.gae-tweetstore-spring.access.credential}</value>
</property>
<property>
<name>test.azureblob.identity</name>
<value>${test.azureblob.identity}</value>
</property>
<property>
<name>test.azureblob.credential</name>
<value>${test.azureblob.credential}</value>
</property>
<property>
<name>test.cloudfiles-us.identity</name>
<value>${test.cloudfiles-us.identity}</value>
</property>
<property>
<name>test.cloudfiles-us.credential</name>
<value>${test.cloudfiles-us.credential}</value>
</property>
<property>
<name>test.aws-s3.identity</name>
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws-s3.credential</name>
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>test.cloudonestorage.identity</name>
<value>${test.cloudonestorage.identity}</value>
</property>
<property>
<name>test.cloudonestorage.credential</name>
<value>${test.cloudonestorage.credential}</value>
</property>
<property>
<name>test.ninefold-storage.identity</name>
<value>${test.ninefold-storage.identity}</value>
</property>
<property>
<name>test.ninefold-storage.credential</name>
<value>${test.ninefold-storage.credential}</value>
</property>
<property>
<name>appengine.sdk.root</name>
<value>${appengine.sdk.root}</value>
</property>
<property>
<name>devappserver.address</name>
<value>${devappserver.address}</value>
</property>
<property>
<name>devappserver.port</name>
<value>${devappserver.port}</value>
</property>
<property>
<name>jclouds.tweetstore.blobstores</name>
<value>${jclouds.tweetstore.blobstores}</value>
</property>
<property>
<name>jclouds.tweetstore.container</name>
<value>test.${jclouds.tweetstore.container}</value>
</property>
<property>
<name>warfile</name>
<value>${project.build.directory}/${project.artifactId}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.twitter.consumer.identity>${test.twitter.gae-tweetstore-spring.consumer.identity}</test.twitter.consumer.identity>
<test.twitter.consumer.credential>${test.twitter.gae-tweetstore-spring.consumer.credential}</test.twitter.consumer.credential>
<test.twitter.access.identity>${test.twitter.gae-tweetstore-spring.access.identity}</test.twitter.access.identity>
<test.twitter.access.credential>${test.twitter.gae-tweetstore-spring.access.credential}</test.twitter.access.credential>
<test.azureblob.identity>${test.azureblob.identity}</test.azureblob.identity>
<test.azureblob.credential>${test.azureblob.credential}</test.azureblob.credential>
<test.cloudfiles-us.identity>${test.cloudfiles-us.identity}</test.cloudfiles-us.identity>
<test.cloudfiles-us.credential>${test.cloudfiles-us.credential}</test.cloudfiles-us.credential>
<test.aws-s3.identity>${test.aws-s3.identity}</test.aws-s3.identity>
<test.aws-s3.credential>${test.aws-s3.credential}</test.aws-s3.credential>
<test.cloudonestorage.identity>${test.cloudonestorage.identity}</test.cloudonestorage.identity>
<test.cloudonestorage.credential>${test.cloudonestorage.credential}</test.cloudonestorage.credential>
<test.ninefold-storage.identity>${test.ninefold-storage.identity}</test.ninefold-storage.identity>
<test.ninefold-storage.credential>${test.ninefold-storage.credential}</test.ninefold-storage.credential>
<appengine.sdk.root>${appengine.sdk.root}</appengine.sdk.root>
<devappserver.address>${devappserver.address}</devappserver.address>
<devappserver.port>${devappserver.port}</devappserver.port>
<jclouds.tweetstore.blobstores>${jclouds.tweetstore.blobstores}</jclouds.tweetstore.blobstores>
<jclouds.tweetstore.container>test.${jclouds.tweetstore.container}</jclouds.tweetstore.container>
<warfile>${project.build.directory}/${project.artifactId}</warfile>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -84,88 +84,28 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.twitter.consumer.identity</name>
<value>${test.twitter.gae-tweetstore.consumer.identity}</value>
</property>
<property>
<name>test.twitter.consumer.credential</name>
<value>${test.twitter.gae-tweetstore.consumer.credential}</value>
</property>
<property>
<name>test.twitter.access.identity</name>
<value>${test.twitter.gae-tweetstore.access.identity}</value>
</property>
<property>
<name>test.twitter.access.credential</name>
<value>${test.twitter.gae-tweetstore.access.credential}</value>
</property>
<property>
<name>test.azureblob.identity</name>
<value>${test.azureblob.identity}</value>
</property>
<property>
<name>test.azureblob.credential</name>
<value>${test.azureblob.credential}</value>
</property>
<property>
<name>test.cloudfiles-us.identity</name>
<value>${test.cloudfiles-us.identity}</value>
</property>
<property>
<name>test.cloudfiles-us.credential</name>
<value>${test.cloudfiles-us.credential}</value>
</property>
<property>
<name>test.aws-s3.identity</name>
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws-s3.credential</name>
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>appengine.sdk.root</name>
<value>${appengine.sdk.root}</value>
</property>
<property>
<name>test.cloudonestorage.identity</name>
<value>${test.cloudonestorage.identity}</value>
</property>
<property>
<name>test.cloudonestorage.credential</name>
<value>${test.cloudonestorage.credential}</value>
</property>
<property>
<name>test.ninefold-storage.identity</name>
<value>${test.ninefold-storage.identity}</value>
</property>
<property>
<name>test.ninefold-storage.credential</name>
<value>${test.ninefold-storage.credential}</value>
</property>
<property>
<name>devappserver.address</name>
<value>${devappserver.address}</value>
</property>
<property>
<name>devappserver.port</name>
<value>${devappserver.port}</value>
</property>
<property>
<name>jclouds.tweetstore.blobstores</name>
<value>${jclouds.tweetstore.blobstores}</value>
</property>
<property>
<name>jclouds.tweetstore.container</name>
<value>test.${jclouds.tweetstore.container}</value>
</property>
<property>
<name>warfile</name>
<value>${project.build.directory}/${project.artifactId}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.twitter.consumer.identity>${test.twitter.gae-tweetstore.consumer.identity}</test.twitter.consumer.identity>
<test.twitter.consumer.credential>${test.twitter.gae-tweetstore.consumer.credential}</test.twitter.consumer.credential>
<test.twitter.access.identity>${test.twitter.gae-tweetstore.access.identity}</test.twitter.access.identity>
<test.twitter.access.credential>${test.twitter.gae-tweetstore.access.credential}</test.twitter.access.credential>
<test.azureblob.identity>${test.azureblob.identity}</test.azureblob.identity>
<test.azureblob.credential>${test.azureblob.credential}</test.azureblob.credential>
<test.cloudfiles-us.identity>${test.cloudfiles-us.identity}</test.cloudfiles-us.identity>
<test.cloudfiles-us.credential>${test.cloudfiles-us.credential}</test.cloudfiles-us.credential>
<test.aws-s3.identity>${test.aws-s3.identity}</test.aws-s3.identity>
<test.aws-s3.credential>${test.aws-s3.credential}</test.aws-s3.credential>
<appengine.sdk.root>${appengine.sdk.root}</appengine.sdk.root>
<test.cloudonestorage.identity>${test.cloudonestorage.identity}</test.cloudonestorage.identity>
<test.cloudonestorage.credential>${test.cloudonestorage.credential}</test.cloudonestorage.credential>
<test.ninefold-storage.identity>${test.ninefold-storage.identity}</test.ninefold-storage.identity>
<test.ninefold-storage.credential>${test.ninefold-storage.credential}</test.ninefold-storage.credential>
<devappserver.address>${devappserver.address}</devappserver.address>
<devappserver.port>${devappserver.port}</devappserver.port>
<jclouds.tweetstore.blobstores>${jclouds.tweetstore.blobstores}</jclouds.tweetstore.blobstores>
<jclouds.tweetstore.container>test.${jclouds.tweetstore.container}</jclouds.tweetstore.container>
<warfile>${project.build.directory}/${project.artifactId}</warfile>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -85,88 +85,28 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.twitter.consumer.identity</name>
<value>${test.twitter.runatcloud-tweetstore.consumer.identity}</value>
</property>
<property>
<name>test.twitter.consumer.credential</name>
<value>${test.twitter.runatcloud-tweetstore.consumer.credential}</value>
</property>
<property>
<name>test.twitter.access.identity</name>
<value>${test.twitter.runatcloud-tweetstore.access.identity}</value>
</property>
<property>
<name>test.twitter.access.credential</name>
<value>${test.twitter.runatcloud-tweetstore.access.credential}</value>
</property>
<property>
<name>test.azureblob.identity</name>
<value>${test.azureblob.identity}</value>
</property>
<property>
<name>test.azureblob.credential</name>
<value>${test.azureblob.credential}</value>
</property>
<property>
<name>test.cloudfiles-us.identity</name>
<value>${test.cloudfiles-us.identity}</value>
</property>
<property>
<name>test.cloudfiles-us.credential</name>
<value>${test.cloudfiles-us.credential}</value>
</property>
<property>
<name>test.aws-s3.identity</name>
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws-s3.credential</name>
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>test.cloudonestorage.identity</name>
<value>${test.cloudonestorage.identity}</value>
</property>
<property>
<name>test.cloudonestorage.credential</name>
<value>${test.cloudonestorage.credential}</value>
</property>
<property>
<name>test.ninefold-storage.identity</name>
<value>${test.ninefold-storage.identity}</value>
</property>
<property>
<name>test.ninefold-storage.credential</name>
<value>${test.ninefold-storage.credential}</value>
</property>
<property>
<name>bees.address</name>
<value>${test.bees.address}</value>
</property>
<property>
<name>bees.port</name>
<value>${test.bees.port}</value>
</property>
<property>
<name>jclouds.tweetstore.blobstores</name>
<value>${jclouds.tweetstore.blobstores}</value>
</property>
<property>
<name>jclouds.tweetstore.container</name>
<value>test.${jclouds.tweetstore.container}</value>
</property>
<property>
<name>bees.basedir</name>
<value>${project.build.directory}/bees</value>
</property>
<property>
<name>warfile</name>
<value>${project.build.directory}/${project.artifactId}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.twitter.consumer.identity>${test.twitter.runatcloud-tweetstore.consumer.identity}</test.twitter.consumer.identity>
<test.twitter.consumer.credential>${test.twitter.runatcloud-tweetstore.consumer.credential}</test.twitter.consumer.credential>
<test.twitter.access.identity>${test.twitter.runatcloud-tweetstore.access.identity}</test.twitter.access.identity>
<test.twitter.access.credential>${test.twitter.runatcloud-tweetstore.access.credential}</test.twitter.access.credential>
<test.azureblob.identity>${test.azureblob.identity}</test.azureblob.identity>
<test.azureblob.credential>${test.azureblob.credential}</test.azureblob.credential>
<test.cloudfiles-us.identity>${test.cloudfiles-us.identity}</test.cloudfiles-us.identity>
<test.cloudfiles-us.credential>${test.cloudfiles-us.credential}</test.cloudfiles-us.credential>
<test.aws-s3.identity>${test.aws-s3.identity}</test.aws-s3.identity>
<test.aws-s3.credential>${test.aws-s3.credential}</test.aws-s3.credential>
<test.cloudonestorage.identity>${test.cloudonestorage.identity}</test.cloudonestorage.identity>
<test.cloudonestorage.credential>${test.cloudonestorage.credential}</test.cloudonestorage.credential>
<test.ninefold-storage.identity>${test.ninefold-storage.identity}</test.ninefold-storage.identity>
<test.ninefold-storage.credential>${test.ninefold-storage.credential}</test.ninefold-storage.credential>
<bees.address>${test.bees.address}</bees.address>
<bees.port>${test.bees.port}</bees.port>
<jclouds.tweetstore.blobstores>${jclouds.tweetstore.blobstores}</jclouds.tweetstore.blobstores>
<jclouds.tweetstore.container>test.${jclouds.tweetstore.container}</jclouds.tweetstore.container>
<bees.basedir>${project.build.directory}/bees</bees.basedir>
<warfile>${project.build.directory}/${project.artifactId}</warfile>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -136,32 +136,14 @@
<include>**/*IntegrationTest.java</include>
<include>**/*LiveTest.java</include>
</includes>
<systemProperties>
<property>
<name>file.encoding</name>
<value>UTF-8</value>
</property>
<property>
<name>test.ssh.host</name>
<value>${test.ssh.host}</value>
</property>
<property>
<name>test.ssh.port</name>
<value>${test.ssh.port}</value>
</property>
<property>
<name>test.ssh.username</name>
<value>${test.ssh.username}</value>
</property>
<property>
<name>test.ssh.keyfile</name>
<value>${test.ssh.keyfile}</value>
</property>
<property>
<name>test.ssh.password</name>
<value>${test.ssh.password}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<file.encoding>UTF-8</file.encoding>
<test.ssh.host>${test.ssh.host}</test.ssh.host>
<test.ssh.port>${test.ssh.port}</test.ssh.port>
<test.ssh.username>${test.ssh.username}</test.ssh.username>
<test.ssh.keyfile>${test.ssh.keyfile}</test.ssh.keyfile>
<test.ssh.password>${test.ssh.password}</test.ssh.password>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -140,32 +140,14 @@
<include>**/*IntegrationTest.java</include>
<include>**/*LiveTest.java</include>
</includes>
<systemProperties>
<property>
<name>file.encoding</name>
<value>UTF-8</value>
</property>
<property>
<name>test.ssh.host</name>
<value>${test.ssh.host}</value>
</property>
<property>
<name>test.ssh.port</name>
<value>${test.ssh.port}</value>
</property>
<property>
<name>test.ssh.username</name>
<value>${test.ssh.username}</value>
</property>
<property>
<name>test.ssh.keyfile</name>
<value>${test.ssh.keyfile}</value>
</property>
<property>
<name>test.ssh.password</name>
<value>${test.ssh.password}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<file.encoding>UTF-8</file.encoding>
<test.ssh.host>${test.ssh.host}</test.ssh.host>
<test.ssh.port>${test.ssh.port}</test.ssh.port>
<test.ssh.username>${test.ssh.username}</test.ssh.username>
<test.ssh.keyfile>${test.ssh.keyfile}</test.ssh.keyfile>
<test.ssh.password>${test.ssh.password}</test.ssh.password>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -349,16 +349,10 @@
<value>${jclouds.test.listener}</value>
</property>
</properties>
<systemProperties>
<property>
<name>jclouds.wire.httpstream.url</name>
<value>${jclouds.wire.httpstream.url}</value>
</property>
<property>
<name>jclouds.wire.httpstream.md5</name>
<value>${jclouds.wire.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<jclouds.wire.httpstream.url>${jclouds.wire.httpstream.url}</jclouds.wire.httpstream.url>
<jclouds.wire.httpstream.md5>${jclouds.wire.httpstream.md5}</jclouds.wire.httpstream.md5>
</systemPropertyVariables>
</configuration>
</plugin>
<!-- make sure we generate src jars too -->
@ -572,29 +566,17 @@ pageTracker._trackPageview();
<include>**/*IntegrationTest.java</include>
<include>**/*LiveTest.java</include>
</includes>
<systemProperties>
<systemPropertyVariables>
<!--
If you're behind a proxy, set this here
http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html
<property>
<name>https.proxyHost</name>
<value>proxy</value>
</property>
<property>
<name>https.proxyPort</name>
<value>port</value>
</property>
<property>
<name>https.noProxyHosts</name>
<value>localhost|10.150.4.49</value>
</property>
<https.proxyHost>proxy</https.proxyHost>
<https.proxyPort>port</https.proxyPort>
<https.noProxyHosts>localhost|10.150.4.49</https.noProxyHosts>
-->
<property>
<name>file.encoding</name>
<value>${project.build.sourceEncoding}</value>
</property>
</systemProperties>
<file.encoding>${project.build.sourceEncoding}</file.encoding>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -85,44 +85,17 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.aws-cloudwatch.endpoint</name>
<value>${test.aws-cloudwatch.endpoint}</value>
</property>
<property>
<name>test.aws-cloudwatch.apiversion</name>
<value>${test.aws-cloudwatch.apiversion}</value>
</property>
<property>
<name>test.aws-cloudwatch.identity</name>
<value>${test.aws-cloudwatch.identity}</value>
</property>
<property>
<name>test.aws-cloudwatch.credential</name>
<value>${test.aws-cloudwatch.credential}</value>
</property>
<property>
<name>test.aws-cloudwatch.compute.provider</name>
<value>${test.aws-cloudwatch.compute.provider}</value>
</property>
<property>
<name>test.aws-cloudwatch.compute.endpoint</name>
<value>${test.aws-cloudwatch.compute.endpoint}</value>
</property>
<property>
<name>test.aws-cloudwatch.compute.apiversion</name>
<value>${test.aws-cloudwatch.compute.apiversion}</value>
</property>
<property>
<name>test.aws-cloudwatch.compute.identity</name>
<value>${test.aws-cloudwatch.compute.identity}</value>
</property>
<property>
<name>test.aws-cloudwatch.compute.credential</name>
<value>${test.aws-cloudwatch.compute.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws-cloudwatch.endpoint>${test.aws-cloudwatch.endpoint}</test.aws-cloudwatch.endpoint>
<test.aws-cloudwatch.apiversion>${test.aws-cloudwatch.apiversion}</test.aws-cloudwatch.apiversion>
<test.aws-cloudwatch.identity>${test.aws-cloudwatch.identity}</test.aws-cloudwatch.identity>
<test.aws-cloudwatch.credential>${test.aws-cloudwatch.credential}</test.aws-cloudwatch.credential>
<test.aws-cloudwatch.compute.provider>${test.aws-cloudwatch.compute.provider}</test.aws-cloudwatch.compute.provider>
<test.aws-cloudwatch.compute.endpoint>${test.aws-cloudwatch.compute.endpoint}</test.aws-cloudwatch.compute.endpoint>
<test.aws-cloudwatch.compute.apiversion>${test.aws-cloudwatch.compute.apiversion}</test.aws-cloudwatch.compute.apiversion>
<test.aws-cloudwatch.compute.identity>${test.aws-cloudwatch.compute.identity}</test.aws-cloudwatch.compute.identity>
<test.aws-cloudwatch.compute.credential>${test.aws-cloudwatch.compute.credential}</test.aws-cloudwatch.compute.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -121,40 +121,16 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.aws-s3.endpoint</name>
<value>${test.aws-s3.endpoint}</value>
</property>
<property>
<name>test.aws-s3.apiversion</name>
<value>${test.aws-s3.apiversion}</value>
</property>
<property>
<name>test.aws-s3.identity</name>
<value>${test.aws-s3.identity}</value>
</property>
<property>
<name>test.aws-s3.credential</name>
<value>${test.aws-s3.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
<property>
<name>test.blobstore.container-count</name>
<value>${test.blobstore.container-count}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws-s3.endpoint>${test.aws-s3.endpoint}</test.aws-s3.endpoint>
<test.aws-s3.apiversion>${test.aws-s3.apiversion}</test.aws-s3.apiversion>
<test.aws-s3.identity>${test.aws-s3.identity}</test.aws-s3.identity>
<test.aws-s3.credential>${test.aws-s3.credential}</test.aws-s3.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
<test.blobstore.container-count>${test.blobstore.container-count}</test.blobstore.container-count>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,36 +98,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.azureblob.endpoint</name>
<value>${test.azureblob.endpoint}</value>
</property>
<property>
<name>test.azureblob.apiversion</name>
<value>${test.azureblob.apiversion}</value>
</property>
<property>
<name>test.azureblob.identity</name>
<value>${test.azureblob.identity}</value>
</property>
<property>
<name>test.azureblob.credential</name>
<value>${test.azureblob.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.azureblob.endpoint>${test.azureblob.endpoint}</test.azureblob.endpoint>
<test.azureblob.apiversion>${test.azureblob.apiversion}</test.azureblob.apiversion>
<test.azureblob.identity>${test.azureblob.identity}</test.azureblob.identity>
<test.azureblob.credential>${test.azureblob.credential}</test.azureblob.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -107,36 +107,15 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.cloudfiles-uk.endpoint</name>
<value>${test.cloudfiles-uk.endpoint}</value>
</property>
<property>
<name>test.cloudfiles-uk.apiversion</name>
<value>${test.cloudfiles-uk.apiversion}</value>
</property>
<property>
<name>test.cloudfiles-uk.identity</name>
<value>${test.cloudfiles-uk.identity}</value>
</property>
<property>
<name>test.cloudfiles-uk.credential</name>
<value>${test.cloudfiles-uk.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.cloudfiles-uk.endpoint>${test.cloudfiles-uk.endpoint}</test.cloudfiles-uk.endpoint>
<test.cloudfiles-uk.apiversion>${test.cloudfiles-uk.apiversion}</test.cloudfiles-uk.apiversion>
<test.cloudfiles-uk.identity>${test.cloudfiles-uk.identity}</test.cloudfiles-uk.identity>
<test.cloudfiles-uk.credential>${test.cloudfiles-uk.credential}</test.cloudfiles-uk.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -107,36 +107,15 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.cloudfiles-us.endpoint</name>
<value>${test.cloudfiles-us.endpoint}</value>
</property>
<property>
<name>test.cloudfiles-us.apiversion</name>
<value>${test.cloudfiles-us.apiversion}</value>
</property>
<property>
<name>test.cloudfiles-us.identity</name>
<value>${test.cloudfiles-us.identity}</value>
</property>
<property>
<name>test.cloudfiles-us.credential</name>
<value>${test.cloudfiles-us.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.cloudfiles-us.endpoint>${test.cloudfiles-us.endpoint}</test.cloudfiles-us.endpoint>
<test.cloudfiles-us.apiversion>${test.cloudfiles-us.apiversion}</test.cloudfiles-us.apiversion>
<test.cloudfiles-us.identity>${test.cloudfiles-us.identity}</test.cloudfiles-us.identity>
<test.cloudfiles-us.credential>${test.cloudfiles-us.credential}</test.cloudfiles-us.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -107,24 +107,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.cloudloadbalancers-uk.endpoint</name>
<value>${test.cloudloadbalancers-uk.endpoint}</value>
</property>
<property>
<name>test.cloudloadbalancers-uk.apiversion</name>
<value>${test.cloudloadbalancers-uk.apiversion}</value>
</property>
<property>
<name>test.cloudloadbalancers-uk.identity</name>
<value>${test.cloudloadbalancers-uk.identity}</value>
</property>
<property>
<name>test.cloudloadbalancers-uk.credential</name>
<value>${test.cloudloadbalancers-uk.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.cloudloadbalancers-uk.endpoint>${test.cloudloadbalancers-uk.endpoint}</test.cloudloadbalancers-uk.endpoint>
<test.cloudloadbalancers-uk.apiversion>${test.cloudloadbalancers-uk.apiversion}</test.cloudloadbalancers-uk.apiversion>
<test.cloudloadbalancers-uk.identity>${test.cloudloadbalancers-uk.identity}</test.cloudloadbalancers-uk.identity>
<test.cloudloadbalancers-uk.credential>${test.cloudloadbalancers-uk.credential}</test.cloudloadbalancers-uk.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -107,24 +107,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.cloudloadbalancers-us.endpoint</name>
<value>${test.cloudloadbalancers-us.endpoint}</value>
</property>
<property>
<name>test.cloudloadbalancers-us.apiversion</name>
<value>${test.cloudloadbalancers-us.apiversion}</value>
</property>
<property>
<name>test.cloudloadbalancers-us.identity</name>
<value>${test.cloudloadbalancers-us.identity}</value>
</property>
<property>
<name>test.cloudloadbalancers-us.credential</name>
<value>${test.cloudloadbalancers-us.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.cloudloadbalancers-us.endpoint>${test.cloudloadbalancers-us.endpoint}</test.cloudloadbalancers-us.endpoint>
<test.cloudloadbalancers-us.apiversion>${test.cloudloadbalancers-us.apiversion}</test.cloudloadbalancers-us.apiversion>
<test.cloudloadbalancers-us.identity>${test.cloudloadbalancers-us.identity}</test.cloudloadbalancers-us.identity>
<test.cloudloadbalancers-us.credential>${test.cloudloadbalancers-us.credential}</test.cloudloadbalancers-us.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -100,36 +100,15 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.cloudonestorage.endpoint</name>
<value>${test.cloudonestorage.endpoint}</value>
</property>
<property>
<name>test.cloudonestorage.apiversion</name>
<value>${test.cloudonestorage.apiversion}</value>
</property>
<property>
<name>test.cloudonestorage.identity</name>
<value>${test.cloudonestorage.identity}</value>
</property>
<property>
<name>test.cloudonestorage.credential</name>
<value>${test.cloudonestorage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.cloudonestorage.endpoint>${test.cloudonestorage.endpoint}</test.cloudonestorage.endpoint>
<test.cloudonestorage.apiversion>${test.cloudonestorage.apiversion}</test.cloudonestorage.apiversion>
<test.cloudonestorage.identity>${test.cloudonestorage.identity}</test.cloudonestorage.identity>
<test.cloudonestorage.credential>${test.cloudonestorage.credential}</test.cloudonestorage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.elastichosts-lon-b.endpoint</name>
<value>${test.elastichosts-lon-b.endpoint}</value>
</property>
<property>
<name>test.elastichosts-lon-b.apiversion</name>
<value>${test.elastichosts-lon-b.apiversion}</value>
</property>
<property>
<name>test.elastichosts-lon-b.identity</name>
<value>${test.elastichosts-lon-b.identity}</value>
</property>
<property>
<name>test.elastichosts-lon-b.credential</name>
<value>${test.elastichosts-lon-b.credential}</value>
</property>
<property>
<name>test.elastichosts-lon-b.image-id</name>
<value>${test.elastichosts-lon-b.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.elastichosts-lon-b.endpoint>${test.elastichosts-lon-b.endpoint}</test.elastichosts-lon-b.endpoint>
<test.elastichosts-lon-b.apiversion>${test.elastichosts-lon-b.apiversion}</test.elastichosts-lon-b.apiversion>
<test.elastichosts-lon-b.identity>${test.elastichosts-lon-b.identity}</test.elastichosts-lon-b.identity>
<test.elastichosts-lon-b.credential>${test.elastichosts-lon-b.credential}</test.elastichosts-lon-b.credential>
<test.elastichosts-lon-b.image-id>${test.elastichosts-lon-b.image-id}</test.elastichosts-lon-b.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.elastichosts-lon-p.endpoint</name>
<value>${test.elastichosts-lon-p.endpoint}</value>
</property>
<property>
<name>test.elastichosts-lon-p.apiversion</name>
<value>${test.elastichosts-lon-p.apiversion}</value>
</property>
<property>
<name>test.elastichosts-lon-p.identity</name>
<value>${test.elastichosts-lon-p.identity}</value>
</property>
<property>
<name>test.elastichosts-lon-p.credential</name>
<value>${test.elastichosts-lon-p.credential}</value>
</property>
<property>
<name>test.elastichosts-lon-p.image-id</name>
<value>${test.elastichosts-lon-p.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.elastichosts-lon-p.endpoint>${test.elastichosts-lon-p.endpoint}</test.elastichosts-lon-p.endpoint>
<test.elastichosts-lon-p.apiversion>${test.elastichosts-lon-p.apiversion}</test.elastichosts-lon-p.apiversion>
<test.elastichosts-lon-p.identity>${test.elastichosts-lon-p.identity}</test.elastichosts-lon-p.identity>
<test.elastichosts-lon-p.credential>${test.elastichosts-lon-p.credential}</test.elastichosts-lon-p.credential>
<test.elastichosts-lon-p.image-id>${test.elastichosts-lon-p.image-id}</test.elastichosts-lon-p.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.elastichosts-sat-p.endpoint</name>
<value>${test.elastichosts-sat-p.endpoint}</value>
</property>
<property>
<name>test.elastichosts-sat-p.apiversion</name>
<value>${test.elastichosts-sat-p.apiversion}</value>
</property>
<property>
<name>test.elastichosts-sat-p.identity</name>
<value>${test.elastichosts-sat-p.identity}</value>
</property>
<property>
<name>test.elastichosts-sat-p.credential</name>
<value>${test.elastichosts-sat-p.credential}</value>
</property>
<property>
<name>test.elastichosts-sat-p.image-id</name>
<value>${test.elastichosts-sat-p.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.elastichosts-sat-p.endpoint>${test.elastichosts-sat-p.endpoint}</test.elastichosts-sat-p.endpoint>
<test.elastichosts-sat-p.apiversion>${test.elastichosts-sat-p.apiversion}</test.elastichosts-sat-p.apiversion>
<test.elastichosts-sat-p.identity>${test.elastichosts-sat-p.identity}</test.elastichosts-sat-p.identity>
<test.elastichosts-sat-p.credential>${test.elastichosts-sat-p.credential}</test.elastichosts-sat-p.credential>
<test.elastichosts-sat-p.image-id>${test.elastichosts-sat-p.image-id}</test.elastichosts-sat-p.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -113,32 +113,14 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.eucalyptus-partnercloud-ec2.endpoint</name>
<value>${test.eucalyptus-partnercloud-ec2.endpoint}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-ec2.apiversion</name>
<value>${test.eucalyptus-partnercloud-ec2.apiversion}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-ec2.identity</name>
<value>${test.eucalyptus-partnercloud-ec2.identity}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-ec2.credential</name>
<value>${test.eucalyptus-partnercloud-ec2.credential}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-ec2.image-id</name>
<value>${test.eucalyptus-partnercloud-ec2.image-id}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-ec2.virtualization-type</name>
<value>${test.eucalyptus-partnercloud-ec2.virtualization-type}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.eucalyptus-partnercloud-ec2.endpoint>${test.eucalyptus-partnercloud-ec2.endpoint}</test.eucalyptus-partnercloud-ec2.endpoint>
<test.eucalyptus-partnercloud-ec2.apiversion>${test.eucalyptus-partnercloud-ec2.apiversion}</test.eucalyptus-partnercloud-ec2.apiversion>
<test.eucalyptus-partnercloud-ec2.identity>${test.eucalyptus-partnercloud-ec2.identity}</test.eucalyptus-partnercloud-ec2.identity>
<test.eucalyptus-partnercloud-ec2.credential>${test.eucalyptus-partnercloud-ec2.credential}</test.eucalyptus-partnercloud-ec2.credential>
<test.eucalyptus-partnercloud-ec2.image-id>${test.eucalyptus-partnercloud-ec2.image-id}</test.eucalyptus-partnercloud-ec2.image-id>
<test.eucalyptus-partnercloud-ec2.virtualization-type>${test.eucalyptus-partnercloud-ec2.virtualization-type}</test.eucalyptus-partnercloud-ec2.virtualization-type>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -108,40 +108,16 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.eucalyptus-partnercloud-s3.endpoint</name>
<value>${test.eucalyptus-partnercloud-s3.endpoint}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-s3.apiversion</name>
<value>${test.eucalyptus-partnercloud-s3.apiversion}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-s3.identity</name>
<value>${test.eucalyptus-partnercloud-s3.identity}</value>
</property>
<property>
<name>test.eucalyptus-partnercloud-s3.credential</name>
<value>${test.eucalyptus-partnercloud-s3.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
<property>
<name>test.blobstore.container-count</name>
<value>${test.blobstore.container-count}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.eucalyptus-partnercloud-s3.endpoint>${test.eucalyptus-partnercloud-s3.endpoint}</test.eucalyptus-partnercloud-s3.endpoint>
<test.eucalyptus-partnercloud-s3.apiversion>${test.eucalyptus-partnercloud-s3.apiversion}</test.eucalyptus-partnercloud-s3.apiversion>
<test.eucalyptus-partnercloud-s3.identity>${test.eucalyptus-partnercloud-s3.identity}</test.eucalyptus-partnercloud-s3.identity>
<test.eucalyptus-partnercloud-s3.credential>${test.eucalyptus-partnercloud-s3.credential}</test.eucalyptus-partnercloud-s3.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
<test.blobstore.container-count>${test.blobstore.container-count}</test.blobstore.container-count>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.go2cloud-jhb1.endpoint</name>
<value>${test.go2cloud-jhb1.endpoint}</value>
</property>
<property>
<name>test.go2cloud-jhb1.apiversion</name>
<value>${test.go2cloud-jhb1.apiversion}</value>
</property>
<property>
<name>test.go2cloud-jhb1.identity</name>
<value>${test.go2cloud-jhb1.identity}</value>
</property>
<property>
<name>test.go2cloud-jhb1.credential</name>
<value>${test.go2cloud-jhb1.credential}</value>
</property>
<property>
<name>test.go2cloud-jhb1.image-id</name>
<value>${test.go2cloud-jhb1.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.go2cloud-jhb1.endpoint>${test.go2cloud-jhb1.endpoint}</test.go2cloud-jhb1.endpoint>
<test.go2cloud-jhb1.apiversion>${test.go2cloud-jhb1.apiversion}</test.go2cloud-jhb1.apiversion>
<test.go2cloud-jhb1.identity>${test.go2cloud-jhb1.identity}</test.go2cloud-jhb1.identity>
<test.go2cloud-jhb1.credential>${test.go2cloud-jhb1.credential}</test.go2cloud-jhb1.credential>
<test.go2cloud-jhb1.image-id>${test.go2cloud-jhb1.image-id}</test.go2cloud-jhb1.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -91,28 +91,13 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.gogrid.endpoint</name>
<value>${test.gogrid.endpoint}</value>
</property>
<property>
<name>test.gogrid.apiversion</name>
<value>${test.gogrid.apiversion}</value>
</property>
<property>
<name>test.gogrid.identity</name>
<value>${test.gogrid.identity}</value>
</property>
<property>
<name>test.gogrid.credential</name>
<value>${test.gogrid.credential}</value>
</property>
<property>
<name>test.gogrid.image-id</name>
<value>${test.gogrid.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.gogrid.endpoint>${test.gogrid.endpoint}</test.gogrid.endpoint>
<test.gogrid.apiversion>${test.gogrid.apiversion}</test.gogrid.apiversion>
<test.gogrid.identity>${test.gogrid.identity}</test.gogrid.identity>
<test.gogrid.credential>${test.gogrid.credential}</test.gogrid.credential>
<test.gogrid.image-id>${test.gogrid.image-id}</test.gogrid.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.greenhousedata-element-vcloud.endpoint</name>
<value>${test.greenhousedata-element-vcloud.endpoint}</value>
</property>
<property>
<name>test.greenhousedata-element-vcloud.apiversion</name>
<value>${test.greenhousedata-element-vcloud.apiversion}</value>
</property>
<property>
<name>test.greenhousedata-element-vcloud.identity</name>
<value>${test.greenhousedata-element-vcloud.identity}</value>
</property>
<property>
<name>test.greenhousedata-element-vcloud.credential</name>
<value>${test.greenhousedata-element-vcloud.credential}</value>
</property>
<property>
<name>test.greenhousedata-element-vcloud.image-id</name>
<value>${test.greenhousedata-element-vcloud.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.greenhousedata-element-vcloud.endpoint>${test.greenhousedata-element-vcloud.endpoint}</test.greenhousedata-element-vcloud.endpoint>
<test.greenhousedata-element-vcloud.apiversion>${test.greenhousedata-element-vcloud.apiversion}</test.greenhousedata-element-vcloud.apiversion>
<test.greenhousedata-element-vcloud.identity>${test.greenhousedata-element-vcloud.identity}</test.greenhousedata-element-vcloud.identity>
<test.greenhousedata-element-vcloud.credential>${test.greenhousedata-element-vcloud.credential}</test.greenhousedata-element-vcloud.credential>
<test.greenhousedata-element-vcloud.image-id>${test.greenhousedata-element-vcloud.image-id}</test.greenhousedata-element-vcloud.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,36 +99,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.ninefold-storage.endpoint</name>
<value>${test.ninefold-storage.endpoint}</value>
</property>
<property>
<name>test.ninefold-storage.apiversion</name>
<value>${test.ninefold-storage.apiversion}</value>
</property>
<property>
<name>test.ninefold-storage.identity</name>
<value>${test.ninefold-storage.identity}</value>
</property>
<property>
<name>test.ninefold-storage.credential</name>
<value>${test.ninefold-storage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.ninefold-storage.endpoint>${test.ninefold-storage.endpoint}</test.ninefold-storage.endpoint>
<test.ninefold-storage.apiversion>${test.ninefold-storage.apiversion}</test.ninefold-storage.apiversion>
<test.ninefold-storage.identity>${test.ninefold-storage.identity}</test.ninefold-storage.identity>
<test.ninefold-storage.credential>${test.ninefold-storage.credential}</test.ninefold-storage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.openhosting-east1.endpoint</name>
<value>${test.openhosting-east1.endpoint}</value>
</property>
<property>
<name>test.openhosting-east1.apiversion</name>
<value>${test.openhosting-east1.apiversion}</value>
</property>
<property>
<name>test.openhosting-east1.identity</name>
<value>${test.openhosting-east1.identity}</value>
</property>
<property>
<name>test.openhosting-east1.credential</name>
<value>${test.openhosting-east1.credential}</value>
</property>
<property>
<name>test.openhosting-east1.image-id</name>
<value>${test.openhosting-east1.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.openhosting-east1.endpoint>${test.openhosting-east1.endpoint}</test.openhosting-east1.endpoint>
<test.openhosting-east1.apiversion>${test.openhosting-east1.apiversion}</test.openhosting-east1.apiversion>
<test.openhosting-east1.identity>${test.openhosting-east1.identity}</test.openhosting-east1.identity>
<test.openhosting-east1.credential>${test.openhosting-east1.credential}</test.openhosting-east1.credential>
<test.openhosting-east1.image-id>${test.openhosting-east1.image-id}</test.openhosting-east1.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,24 +99,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.rimuhosting.endpoint</name>
<value>${test.rimuhosting.endpoint}</value>
</property>
<property>
<name>test.rimuhosting.apiversion</name>
<value>${test.rimuhosting.apiversion}</value>
</property>
<property>
<name>test.rimuhosting.identity</name>
<value>${test.rimuhosting.identity}</value>
</property>
<property>
<name>test.rimuhosting.image-id</name>
<value>${test.rimuhosting.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.rimuhosting.endpoint>${test.rimuhosting.endpoint}</test.rimuhosting.endpoint>
<test.rimuhosting.apiversion>${test.rimuhosting.apiversion}</test.rimuhosting.apiversion>
<test.rimuhosting.identity>${test.rimuhosting.identity}</test.rimuhosting.identity>
<test.rimuhosting.image-id>${test.rimuhosting.image-id}</test.rimuhosting.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -112,40 +112,16 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.savvis-symphonyvpdc.endpoint</name>
<value>${test.savvis-symphonyvpdc.endpoint}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.apiversion</name>
<value>${test.savvis-symphonyvpdc.apiversion}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.identity</name>
<value>${test.savvis-symphonyvpdc.identity}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.credential</name>
<value>${test.savvis-symphonyvpdc.credential}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.image-id</name>
<value>${test.savvis-symphonyvpdc.image-id}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.vdc-email</name>
<value>${test.savvis-symphonyvpdc.vdc-email}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.loginUser</name>
<value>${test.savvis-symphonyvpdc.loginUser}</value>
</property>
<property>
<name>test.savvis-symphonyvpdc.loginPassword</name>
<value>${test.savvis-symphonyvpdc.loginPassword}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.savvis-symphonyvpdc.endpoint>${test.savvis-symphonyvpdc.endpoint}</test.savvis-symphonyvpdc.endpoint>
<test.savvis-symphonyvpdc.apiversion>${test.savvis-symphonyvpdc.apiversion}</test.savvis-symphonyvpdc.apiversion>
<test.savvis-symphonyvpdc.identity>${test.savvis-symphonyvpdc.identity}</test.savvis-symphonyvpdc.identity>
<test.savvis-symphonyvpdc.credential>${test.savvis-symphonyvpdc.credential}</test.savvis-symphonyvpdc.credential>
<test.savvis-symphonyvpdc.image-id>${test.savvis-symphonyvpdc.image-id}</test.savvis-symphonyvpdc.image-id>
<test.savvis-symphonyvpdc.vdc-email>${test.savvis-symphonyvpdc.vdc-email}</test.savvis-symphonyvpdc.vdc-email>
<test.savvis-symphonyvpdc.loginUser>${test.savvis-symphonyvpdc.loginUser}</test.savvis-symphonyvpdc.loginUser>
<test.savvis-symphonyvpdc.loginPassword>${test.savvis-symphonyvpdc.loginPassword}</test.savvis-symphonyvpdc.loginPassword>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.serverlove-z1-man.endpoint</name>
<value>${test.serverlove-z1-man.endpoint}</value>
</property>
<property>
<name>test.serverlove-z1-man.apiversion</name>
<value>${test.serverlove-z1-man.apiversion}</value>
</property>
<property>
<name>test.serverlove-z1-man.identity</name>
<value>${test.serverlove-z1-man.identity}</value>
</property>
<property>
<name>test.serverlove-z1-man.credential</name>
<value>${test.serverlove-z1-man.credential}</value>
</property>
<property>
<name>test.serverlove-z1-man.image-id</name>
<value>${test.serverlove-z1-man.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.serverlove-z1-man.endpoint>${test.serverlove-z1-man.endpoint}</test.serverlove-z1-man.endpoint>
<test.serverlove-z1-man.apiversion>${test.serverlove-z1-man.apiversion}</test.serverlove-z1-man.apiversion>
<test.serverlove-z1-man.identity>${test.serverlove-z1-man.identity}</test.serverlove-z1-man.identity>
<test.serverlove-z1-man.credential>${test.serverlove-z1-man.credential}</test.serverlove-z1-man.credential>
<test.serverlove-z1-man.image-id>${test.serverlove-z1-man.image-id}</test.serverlove-z1-man.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.skalicloud-sdg-my.endpoint</name>
<value>${test.skalicloud-sdg-my.endpoint}</value>
</property>
<property>
<name>test.skalicloud-sdg-my.apiversion</name>
<value>${test.skalicloud-sdg-my.apiversion}</value>
</property>
<property>
<name>test.skalicloud-sdg-my.identity</name>
<value>${test.skalicloud-sdg-my.identity}</value>
</property>
<property>
<name>test.skalicloud-sdg-my.credential</name>
<value>${test.skalicloud-sdg-my.credential}</value>
</property>
<property>
<name>test.skalicloud-sdg-my.image-id</name>
<value>${test.skalicloud-sdg-my.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.skalicloud-sdg-my.endpoint>${test.skalicloud-sdg-my.endpoint}</test.skalicloud-sdg-my.endpoint>
<test.skalicloud-sdg-my.apiversion>${test.skalicloud-sdg-my.apiversion}</test.skalicloud-sdg-my.apiversion>
<test.skalicloud-sdg-my.identity>${test.skalicloud-sdg-my.identity}</test.skalicloud-sdg-my.identity>
<test.skalicloud-sdg-my.credential>${test.skalicloud-sdg-my.credential}</test.skalicloud-sdg-my.credential>
<test.skalicloud-sdg-my.image-id>${test.skalicloud-sdg-my.image-id}</test.skalicloud-sdg-my.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -91,24 +91,12 @@
<configuration>
<!-- beat up the slicehost server less -->
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.slicehost.endpoint</name>
<value>${test.slicehost.endpoint}</value>
</property>
<property>
<name>test.slicehost.apiversion</name>
<value>${test.slicehost.apiversion}</value>
</property>
<property>
<name>test.slicehost.identity</name>
<value>${test.slicehost.identity}</value>
</property>
<property>
<name>test.slicehost.image-id</name>
<value>${test.slicehost.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.slicehost.endpoint>${test.slicehost.endpoint}</test.slicehost.endpoint>
<test.slicehost.apiversion>${test.slicehost.apiversion}</test.slicehost.apiversion>
<test.slicehost.identity>${test.slicehost.identity}</test.slicehost.identity>
<test.slicehost.image-id>${test.slicehost.image-id}</test.slicehost.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -98,28 +98,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.stratogen-vcloud-mycloud.endpoint</name>
<value>${test.stratogen-vcloud-mycloud.endpoint}</value>
</property>
<property>
<name>test.stratogen-vcloud-mycloud.apiversion</name>
<value>${test.stratogen-vcloud-mycloud.apiversion}</value>
</property>
<property>
<name>test.stratogen-vcloud-mycloud.identity</name>
<value>${test.stratogen-vcloud-mycloud.identity}</value>
</property>
<property>
<name>test.stratogen-vcloud-mycloud.credential</name>
<value>${test.stratogen-vcloud-mycloud.credential}</value>
</property>
<property>
<name>test.stratogen-vcloud-mycloud.image-id</name>
<value>${test.stratogen-vcloud-mycloud.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.stratogen-vcloud-mycloud.endpoint>${test.stratogen-vcloud-mycloud.endpoint}</test.stratogen-vcloud-mycloud.endpoint>
<test.stratogen-vcloud-mycloud.apiversion>${test.stratogen-vcloud-mycloud.apiversion}</test.stratogen-vcloud-mycloud.apiversion>
<test.stratogen-vcloud-mycloud.identity>${test.stratogen-vcloud-mycloud.identity}</test.stratogen-vcloud-mycloud.identity>
<test.stratogen-vcloud-mycloud.credential>${test.stratogen-vcloud-mycloud.credential}</test.stratogen-vcloud-mycloud.credential>
<test.stratogen-vcloud-mycloud.image-id>${test.stratogen-vcloud-mycloud.image-id}</test.stratogen-vcloud-mycloud.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,36 +99,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.synaptic-storage.endpoint</name>
<value>${test.synaptic-storage.endpoint}</value>
</property>
<property>
<name>test.synaptic-storage.apiversion</name>
<value>${test.synaptic-storage.apiversion}</value>
</property>
<property>
<name>test.synaptic-storage.identity</name>
<value>${test.synaptic-storage.identity}</value>
</property>
<property>
<name>test.synaptic-storage.credential</name>
<value>${test.synaptic-storage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.synaptic-storage.endpoint>${test.synaptic-storage.endpoint}</test.synaptic-storage.endpoint>
<test.synaptic-storage.apiversion>${test.synaptic-storage.apiversion}</test.synaptic-storage.apiversion>
<test.synaptic-storage.identity>${test.synaptic-storage.identity}</test.synaptic-storage.identity>
<test.synaptic-storage.credential>${test.synaptic-storage.credential}</test.synaptic-storage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -100,32 +100,14 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.trmk-ecloud.endpoint</name>
<value>${test.trmk-ecloud.endpoint}</value>
</property>
<property>
<name>test.trmk-ecloud.apiversion</name>
<value>${test.trmk-ecloud.apiversion}</value>
</property>
<property>
<name>test.trmk-ecloud.identity</name>
<value>${test.trmk-ecloud.identity}</value>
</property>
<property>
<name>test.trmk-ecloud.credential</name>
<value>${test.trmk-ecloud.credential}</value>
</property>
<property>
<name>test.trmk-ecloud.datacenter</name>
<value>${test.trmk-ecloud.datacenter}</value>
</property>
<property>
<name>test.trmk-ecloud.image-id</name>
<value>${test.trmk-ecloud.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.trmk-ecloud.endpoint>${test.trmk-ecloud.endpoint}</test.trmk-ecloud.endpoint>
<test.trmk-ecloud.apiversion>${test.trmk-ecloud.apiversion}</test.trmk-ecloud.apiversion>
<test.trmk-ecloud.identity>${test.trmk-ecloud.identity}</test.trmk-ecloud.identity>
<test.trmk-ecloud.credential>${test.trmk-ecloud.credential}</test.trmk-ecloud.credential>
<test.trmk-ecloud.datacenter>${test.trmk-ecloud.datacenter}</test.trmk-ecloud.datacenter>
<test.trmk-ecloud.image-id>${test.trmk-ecloud.image-id}</test.trmk-ecloud.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,28 +99,13 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.trmk-vcloudexpress.endpoint</name>
<value>${test.trmk-vcloudexpress.endpoint}</value>
</property>
<property>
<name>test.trmk-vcloudexpress.apiversion</name>
<value>${test.trmk-vcloudexpress.apiversion}</value>
</property>
<property>
<name>test.trmk-vcloudexpress.identity</name>
<value>${test.trmk-vcloudexpress.identity}</value>
</property>
<property>
<name>test.trmk-vcloudexpress.credential</name>
<value>${test.trmk-vcloudexpress.credential}</value>
</property>
<property>
<name>test.trmk-vcloudexpress.image-id</name>
<value>${test.trmk-vcloudexpress.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.trmk-vcloudexpress.endpoint>${test.trmk-vcloudexpress.endpoint}</test.trmk-vcloudexpress.endpoint>
<test.trmk-vcloudexpress.apiversion>${test.trmk-vcloudexpress.apiversion}</test.trmk-vcloudexpress.apiversion>
<test.trmk-vcloudexpress.identity>${test.trmk-vcloudexpress.identity}</test.trmk-vcloudexpress.identity>
<test.trmk-vcloudexpress.credential>${test.trmk-vcloudexpress.credential}</test.trmk-vcloudexpress.credential>
<test.trmk-vcloudexpress.image-id>${test.trmk-vcloudexpress.image-id}</test.trmk-vcloudexpress.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -114,52 +114,19 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.elb.zone</name>
<value>${test.elb.zone}</value>
</property>
<property>
<name>test.elb.endpoint</name>
<value>${test.elb.endpoint}</value>
</property>
<property>
<name>test.elb.apiversion</name>
<value>${test.elb.apiversion}</value>
</property>
<property>
<name>test.elb.identity</name>
<value>${test.elb.identity}</value>
</property>
<property>
<name>test.elb.credential</name>
<value>${test.elb.credential}</value>
</property>
<property>
<name>test.elb.compute.provider</name>
<value>${test.elb.compute.provider}</value>
</property>
<property>
<name>test.elb.compute.endpoint</name>
<value>${test.elb.compute.endpoint}</value>
</property>
<property>
<name>test.elb.compute.apiversion</name>
<value>${test.elb.compute.apiversion}</value>
</property>
<property>
<name>test.elb.compute.identity</name>
<value>${test.elb.compute.identity}</value>
</property>
<property>
<name>test.elb.compute.credential</name>
<value>${test.elb.compute.credential}</value>
</property>
<property>
<name>test.elb.compute.image-id</name>
<value>${test.elb.compute.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.elb.zone>${test.elb.zone}</test.elb.zone>
<test.elb.endpoint>${test.elb.endpoint}</test.elb.endpoint>
<test.elb.apiversion>${test.elb.apiversion}</test.elb.apiversion>
<test.elb.identity>${test.elb.identity}</test.elb.identity>
<test.elb.credential>${test.elb.credential}</test.elb.credential>
<test.elb.compute.provider>${test.elb.compute.provider}</test.elb.compute.provider>
<test.elb.compute.endpoint>${test.elb.compute.endpoint}</test.elb.compute.endpoint>
<test.elb.compute.apiversion>${test.elb.compute.apiversion}</test.elb.compute.apiversion>
<test.elb.compute.identity>${test.elb.compute.identity}</test.elb.compute.identity>
<test.elb.compute.credential>${test.elb.compute.credential}</test.elb.compute.credential>
<test.elb.compute.image-id>${test.elb.compute.image-id}</test.elb.compute.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -124,28 +124,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.libvirt.endpoint</name>
<value>${test.libvirt.endpoint}</value>
</property>
<property>
<name>test.libvirt.apiversion</name>
<value>${test.libvirt.apiversion}</value>
</property>
<property>
<name>test.libvirt.identity</name>
<value>${test.libvirt.identity}</value>
</property>
<property>
<name>test.libvirt.credential</name>
<value>${test.libvirt.credential}</value>
</property>
<property>
<name>test.libvirt.image-id</name>
<value>${test.libvirt.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.libvirt.endpoint>${test.libvirt.endpoint}</test.libvirt.endpoint>
<test.libvirt.apiversion>${test.libvirt.apiversion}</test.libvirt.apiversion>
<test.libvirt.identity>${test.libvirt.identity}</test.libvirt.identity>
<test.libvirt.credential>${test.libvirt.credential}</test.libvirt.credential>
<test.libvirt.image-id>${test.libvirt.image-id}</test.libvirt.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -104,24 +104,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.nirvanix.endpoint</name>
<value>${test.nirvanix.endpoint}</value>
</property>
<property>
<name>test.nirvanix.apiversion</name>
<value>${test.nirvanix.apiversion}</value>
</property>
<property>
<name>test.nirvanix.identity</name>
<value>${test.nirvanix.identity}</value>
</property>
<property>
<name>test.nirvanix.credential</name>
<value>${test.nirvanix.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.nirvanix.endpoint>${test.nirvanix.endpoint}</test.nirvanix.endpoint>
<test.nirvanix.apiversion>${test.nirvanix.apiversion}</test.nirvanix.apiversion>
<test.nirvanix.identity>${test.nirvanix.identity}</test.nirvanix.identity>
<test.nirvanix.credential>${test.nirvanix.credential}</test.nirvanix.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -104,24 +104,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.pcs.endpoint</name>
<value>${test.pcs.endpoint}</value>
</property>
<property>
<name>test.pcs.apiversion</name>
<value>${test.pcs.apiversion}</value>
</property>
<property>
<name>test.pcs.identity</name>
<value>${test.pcs.identity}</value>
</property>
<property>
<name>test.pcs.credential</name>
<value>${test.pcs.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.pcs.endpoint>${test.pcs.endpoint}</test.pcs.endpoint>
<test.pcs.apiversion>${test.pcs.apiversion}</test.pcs.apiversion>
<test.pcs.identity>${test.pcs.identity}</test.pcs.identity>
<test.pcs.credential>${test.pcs.credential}</test.pcs.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,36 +99,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.scality-rs2.endpoint</name>
<value>${test.scality-rs2.endpoint}</value>
</property>
<property>
<name>test.scality-rs2.apiversion</name>
<value>${test.scality-rs2.apiversion}</value>
</property>
<property>
<name>test.scality-rs2.identity</name>
<value>${test.scality-rs2.identity}</value>
</property>
<property>
<name>test.scality-rs2.credential</name>
<value>${test.scality-rs2.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.scality-rs2.endpoint>${test.scality-rs2.endpoint}</test.scality-rs2.endpoint>
<test.scality-rs2.apiversion>${test.scality-rs2.apiversion}</test.scality-rs2.apiversion>
<test.scality-rs2.identity>${test.scality-rs2.identity}</test.scality-rs2.identity>
<test.scality-rs2.credential>${test.scality-rs2.credential}</test.scality-rs2.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -77,24 +77,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.simpledb.endpoint</name>
<value>${test.simpledb.endpoint}</value>
</property>
<property>
<name>test.simpledb.apiversion</name>
<value>${test.simpledb.apiversion}</value>
</property>
<property>
<name>test.simpledb.identity</name>
<value>${test.simpledb.identity}</value>
</property>
<property>
<name>test.simpledb.credential</name>
<value>${test.simpledb.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.simpledb.endpoint>${test.simpledb.endpoint}</test.simpledb.endpoint>
<test.simpledb.apiversion>${test.simpledb.apiversion}</test.simpledb.apiversion>
<test.simpledb.identity>${test.simpledb.identity}</test.simpledb.identity>
<test.simpledb.credential>${test.simpledb.credential}</test.simpledb.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -77,24 +77,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.sqs.endpoint</name>
<value>${test.sqs.endpoint}</value>
</property>
<property>
<name>test.sqs.apiversion</name>
<value>${test.sqs.apiversion}</value>
</property>
<property>
<name>test.sqs.identity</name>
<value>${test.sqs.identity}</value>
</property>
<property>
<name>test.sqs.credential</name>
<value>${test.sqs.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.sqs.endpoint>${test.sqs.endpoint}</test.sqs.endpoint>
<test.sqs.apiversion>${test.sqs.apiversion}</test.sqs.apiversion>
<test.sqs.identity>${test.sqs.identity}</test.sqs.identity>
<test.sqs.credential>${test.sqs.credential}</test.sqs.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -121,48 +121,18 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.aws-elb.endpoint</name>
<value>${test.aws-elb.endpoint}</value>
</property>
<property>
<name>test.aws-elb.apiversion</name>
<value>${test.aws-elb.apiversion}</value>
</property>
<property>
<name>test.aws-elb.identity</name>
<value>${test.aws-elb.identity}</value>
</property>
<property>
<name>test.aws-elb.credential</name>
<value>${test.aws-elb.credential}</value>
</property>
<property>
<name>test.aws-elb.compute.provider</name>
<value>${test.aws-elb.compute.provider}</value>
</property>
<property>
<name>test.aws-elb.compute.endpoint</name>
<value>${test.aws-elb.compute.endpoint}</value>
</property>
<property>
<name>test.aws-elb.compute.apiversion</name>
<value>${test.aws-elb.compute.apiversion}</value>
</property>
<property>
<name>test.aws-elb.compute.identity</name>
<value>${test.aws-elb.compute.identity}</value>
</property>
<property>
<name>test.aws-elb.compute.credential</name>
<value>${test.aws-elb.compute.credential}</value>
</property>
<property>
<name>test.aws-elb.compute.image-id</name>
<value>${test.aws-elb.compute.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws-elb.endpoint>${test.aws-elb.endpoint}</test.aws-elb.endpoint>
<test.aws-elb.apiversion>${test.aws-elb.apiversion}</test.aws-elb.apiversion>
<test.aws-elb.identity>${test.aws-elb.identity}</test.aws-elb.identity>
<test.aws-elb.credential>${test.aws-elb.credential}</test.aws-elb.credential>
<test.aws-elb.compute.provider>${test.aws-elb.compute.provider}</test.aws-elb.compute.provider>
<test.aws-elb.compute.endpoint>${test.aws-elb.compute.endpoint}</test.aws-elb.compute.endpoint>
<test.aws-elb.compute.apiversion>${test.aws-elb.compute.apiversion}</test.aws-elb.compute.apiversion>
<test.aws-elb.compute.identity>${test.aws-elb.compute.identity}</test.aws-elb.compute.identity>
<test.aws-elb.compute.credential>${test.aws-elb.compute.credential}</test.aws-elb.compute.credential>
<test.aws-elb.compute.image-id>${test.aws-elb.compute.image-id}</test.aws-elb.compute.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -91,24 +91,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.aws-simpledb.endpoint</name>
<value>${test.aws-simpledb.endpoint}</value>
</property>
<property>
<name>test.aws-simpledb.apiversion</name>
<value>${test.aws-simpledb.apiversion}</value>
</property>
<property>
<name>test.aws-simpledb.identity</name>
<value>${test.aws-simpledb.identity}</value>
</property>
<property>
<name>test.aws-simpledb.credential</name>
<value>${test.aws-simpledb.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.aws-simpledb.endpoint>${test.aws-simpledb.endpoint}</test.aws-simpledb.endpoint>
<test.aws-simpledb.apiversion>${test.aws-simpledb.apiversion}</test.aws-simpledb.apiversion>
<test.aws-simpledb.identity>${test.aws-simpledb.identity}</test.aws-simpledb.identity>
<test.aws-simpledb.credential>${test.aws-simpledb.credential}</test.aws-simpledb.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -84,24 +84,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.azurequeue.endpoint</name>
<value>${test.azurequeue.endpoint}</value>
</property>
<property>
<name>test.azurequeue.apiversion</name>
<value>${test.azurequeue.apiversion}</value>
</property>
<property>
<name>test.azurequeue.identity</name>
<value>${test.azurequeue.identity}</value>
</property>
<property>
<name>test.azurequeue.credential</name>
<value>${test.azurequeue.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.azurequeue.endpoint>${test.azurequeue.endpoint}</test.azurequeue.endpoint>
<test.azurequeue.apiversion>${test.azurequeue.apiversion}</test.azurequeue.apiversion>
<test.azurequeue.identity>${test.azurequeue.identity}</test.azurequeue.identity>
<test.azurequeue.credential>${test.azurequeue.credential}</test.azurequeue.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -95,24 +95,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.boxdotnet.endpoint</name>
<value>${test.boxdotnet.endpoint}</value>
</property>
<property>
<name>test.boxdotnet.apiversion</name>
<value>${test.boxdotnet.apiversion}</value>
</property>
<property>
<name>test.boxdotnet.identity</name>
<value>${test.boxdotnet.identity}</value>
</property>
<property>
<name>test.boxdotnet.credential</name>
<value>${test.boxdotnet.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.boxdotnet.endpoint>${test.boxdotnet.endpoint}</test.boxdotnet.endpoint>
<test.boxdotnet.apiversion>${test.boxdotnet.apiversion}</test.boxdotnet.apiversion>
<test.boxdotnet.identity>${test.boxdotnet.identity}</test.boxdotnet.identity>
<test.boxdotnet.credential>${test.boxdotnet.credential}</test.boxdotnet.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -97,28 +97,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.dunkel-vcd.endpoint</name>
<value>${test.dunkel-vcd.endpoint}</value>
</property>
<property>
<name>test.dunkel-vcd.apiversion</name>
<value>${test.dunkel-vcd.apiversion}</value>
</property>
<property>
<name>test.dunkel-vcd.identity</name>
<value>${test.dunkel-vcd.identity}</value>
</property>
<property>
<name>test.dunkel-vcd.credential</name>
<value>${test.dunkel-vcd.credential}</value>
</property>
<property>
<name>test.dunkel-vcd.image-id</name>
<value>${test.dunkel-vcd.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.dunkel-vcd.endpoint>${test.dunkel-vcd.endpoint}</test.dunkel-vcd.endpoint>
<test.dunkel-vcd.apiversion>${test.dunkel-vcd.apiversion}</test.dunkel-vcd.apiversion>
<test.dunkel-vcd.identity>${test.dunkel-vcd.identity}</test.dunkel-vcd.identity>
<test.dunkel-vcd.credential>${test.dunkel-vcd.credential}</test.dunkel-vcd.credential>
<test.dunkel-vcd.image-id>${test.dunkel-vcd.image-id}</test.dunkel-vcd.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -99,36 +99,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.googlestorage.endpoint</name>
<value>${test.googlestorage.endpoint}</value>
</property>
<property>
<name>test.googlestorage.apiversion</name>
<value>${test.googlestorage.apiversion}</value>
</property>
<property>
<name>test.googlestorage.identity</name>
<value>${test.googlestorage.identity}</value>
</property>
<property>
<name>test.googlestorage.credential</name>
<value>${test.googlestorage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.googlestorage.endpoint>${test.googlestorage.endpoint}</test.googlestorage.endpoint>
<test.googlestorage.apiversion>${test.googlestorage.apiversion}</test.googlestorage.apiversion>
<test.googlestorage.identity>${test.googlestorage.identity}</test.googlestorage.identity>
<test.googlestorage.credential>${test.googlestorage.credential}</test.googlestorage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -106,36 +106,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.hosteurope-storage.endpoint</name>
<value>${test.hosteurope-storage.endpoint}</value>
</property>
<property>
<name>test.hosteurope-storage.apiversion</name>
<value>${test.hosteurope-storage.apiversion}</value>
</property>
<property>
<name>test.hosteurope-storage.identity</name>
<value>${test.hosteurope-storage.identity}</value>
</property>
<property>
<name>test.hosteurope-storage.credential</name>
<value>${test.hosteurope-storage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.hosteurope-storage.endpoint>${test.hosteurope-storage.endpoint}</test.hosteurope-storage.endpoint>
<test.hosteurope-storage.apiversion>${test.hosteurope-storage.apiversion}</test.hosteurope-storage.apiversion>
<test.hosteurope-storage.identity>${test.hosteurope-storage.identity}</test.hosteurope-storage.identity>
<test.hosteurope-storage.credential>${test.hosteurope-storage.credential}</test.hosteurope-storage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -108,28 +108,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.ibm-smartcloud.endpoint</name>
<value>${test.ibm-smartcloud.endpoint}</value>
</property>
<property>
<name>test.ibm-smartcloud.apiversion</name>
<value>${test.ibm-smartcloud.apiversion}</value>
</property>
<property>
<name>test.ibm-smartcloud.identity</name>
<value>${test.ibm-smartcloud.identity}</value>
</property>
<property>
<name>test.ibm-smartcloud.credential</name>
<value>${test.ibm-smartcloud.credential}</value>
</property>
<property>
<name>test.ibm-smartcloud.image-id</name>
<value>${test.ibm-smartcloud.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.ibm-smartcloud.endpoint>${test.ibm-smartcloud.endpoint}</test.ibm-smartcloud.endpoint>
<test.ibm-smartcloud.apiversion>${test.ibm-smartcloud.apiversion}</test.ibm-smartcloud.apiversion>
<test.ibm-smartcloud.identity>${test.ibm-smartcloud.identity}</test.ibm-smartcloud.identity>
<test.ibm-smartcloud.credential>${test.ibm-smartcloud.credential}</test.ibm-smartcloud.credential>
<test.ibm-smartcloud.image-id>${test.ibm-smartcloud.image-id}</test.ibm-smartcloud.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -106,36 +106,15 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.scaleup-storage.endpoint</name>
<value>${test.scaleup-storage.endpoint}</value>
</property>
<property>
<name>test.scaleup-storage.apiversion</name>
<value>${test.scaleup-storage.apiversion}</value>
</property>
<property>
<name>test.scaleup-storage.identity</name>
<value>${test.scaleup-storage.identity}</value>
</property>
<property>
<name>test.scaleup-storage.credential</name>
<value>${test.scaleup-storage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.scaleup-storage.endpoint>${test.scaleup-storage.endpoint}</test.scaleup-storage.endpoint>
<test.scaleup-storage.apiversion>${test.scaleup-storage.apiversion}</test.scaleup-storage.apiversion>
<test.scaleup-storage.identity>${test.scaleup-storage.identity}</test.scaleup-storage.identity>
<test.scaleup-storage.credential>${test.scaleup-storage.credential}</test.scaleup-storage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -107,36 +107,15 @@
</goals>
<configuration>
<threadCount>1</threadCount>
<systemProperties>
<property>
<name>test.tiscali-storage.endpoint</name>
<value>${test.tiscali-storage.endpoint}</value>
</property>
<property>
<name>test.tiscali-storage.apiversion</name>
<value>${test.tiscali-storage.apiversion}</value>
</property>
<property>
<name>test.tiscali-storage.identity</name>
<value>${test.tiscali-storage.identity}</value>
</property>
<property>
<name>test.tiscali-storage.credential</name>
<value>${test.tiscali-storage.credential}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.tiscali-storage.endpoint>${test.tiscali-storage.endpoint}</test.tiscali-storage.endpoint>
<test.tiscali-storage.apiversion>${test.tiscali-storage.apiversion}</test.tiscali-storage.apiversion>
<test.tiscali-storage.identity>${test.tiscali-storage.identity}</test.tiscali-storage.identity>
<test.tiscali-storage.credential>${test.tiscali-storage.credential}</test.tiscali-storage.credential>
<test.initializer>${test.initializer}</test.initializer>
<jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -103,28 +103,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.tmrk-enterprisecloud.endpoint</name>
<value>${test.tmrk-enterprisecloud.endpoint}</value>
</property>
<property>
<name>test.tmrk-enterprisecloud.apiversion</name>
<value>${test.tmrk-enterprisecloud.apiversion}</value>
</property>
<property>
<name>test.tmrk-enterprisecloud.identity</name>
<value>${test.tmrk-enterprisecloud.identity}</value>
</property>
<property>
<name>test.tmrk-enterprisecloud.credential</name>
<value>${test.tmrk-enterprisecloud.credential}</value>
</property>
<property>
<name>test.tmrk-enterprisecloud.image-id</name>
<value>${test.tmrk-enterprisecloud.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.tmrk-enterprisecloud.endpoint>${test.tmrk-enterprisecloud.endpoint}</test.tmrk-enterprisecloud.endpoint>
<test.tmrk-enterprisecloud.apiversion>${test.tmrk-enterprisecloud.apiversion}</test.tmrk-enterprisecloud.apiversion>
<test.tmrk-enterprisecloud.identity>${test.tmrk-enterprisecloud.identity}</test.tmrk-enterprisecloud.identity>
<test.tmrk-enterprisecloud.credential>${test.tmrk-enterprisecloud.credential}</test.tmrk-enterprisecloud.credential>
<test.tmrk-enterprisecloud.image-id>${test.tmrk-enterprisecloud.image-id}</test.tmrk-enterprisecloud.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -96,24 +96,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.twitter.endpoint</name>
<value>${test.twitter.endpoint}</value>
</property>
<property>
<name>test.twitter.apiversion</name>
<value>${test.twitter.apiversion}</value>
</property>
<property>
<name>test.twitter.identity</name>
<value>${test.twitter.identity}</value>
</property>
<property>
<name>test.twitter.credential</name>
<value>${test.twitter.credential}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.twitter.endpoint>${test.twitter.endpoint}</test.twitter.endpoint>
<test.twitter.apiversion>${test.twitter.apiversion}</test.twitter.apiversion>
<test.twitter.identity>${test.twitter.identity}</test.twitter.identity>
<test.twitter.credential>${test.twitter.credential}</test.twitter.credential>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -97,28 +97,13 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.virtacore-vcloudexpress.endpoint</name>
<value>${test.virtacore-vcloudexpress.endpoint}</value>
</property>
<property>
<name>test.virtacore-vcloudexpress.apiversion</name>
<value>${test.virtacore-vcloudexpress.apiversion}</value>
</property>
<property>
<name>test.virtacore-vcloudexpress.identity</name>
<value>${test.virtacore-vcloudexpress.identity}</value>
</property>
<property>
<name>test.virtacore-vcloudexpress.credential</name>
<value>${test.virtacore-vcloudexpress.credential}</value>
</property>
<property>
<name>test.virtacore-vcloudexpress.image-id</name>
<value>${test.virtacore-vcloudexpress.image-id}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.virtacore-vcloudexpress.endpoint>${test.virtacore-vcloudexpress.endpoint}</test.virtacore-vcloudexpress.endpoint>
<test.virtacore-vcloudexpress.apiversion>${test.virtacore-vcloudexpress.apiversion}</test.virtacore-vcloudexpress.apiversion>
<test.virtacore-vcloudexpress.identity>${test.virtacore-vcloudexpress.identity}</test.virtacore-vcloudexpress.identity>
<test.virtacore-vcloudexpress.credential>${test.virtacore-vcloudexpress.credential}</test.virtacore-vcloudexpress.credential>
<test.virtacore-vcloudexpress.image-id>${test.virtacore-vcloudexpress.image-id}</test.virtacore-vcloudexpress.image-id>
</systemPropertyVariables>
</configuration>
</execution>
</executions>

View File

@ -96,24 +96,12 @@
<goal>test</goal>
</goals>
<configuration>
<systemProperties>
<property>
<name>test.servermanager.endpoint</name>
<value>${test.servermanager.endpoint}</value>
</property>
<property>
<name>test.servermanager.apiversion</name>
<value>${test.servermanager.apiversion}</value>
</property>
<property>
<name>test.servermanager.identity</name>
<value>${test.servermanager.identity}</value>
</property>
<property>
<name>jclouds.compute.blacklist-nodes</name>
<value>${jclouds.compute.blacklist-nodes}</value>
</property>
</systemProperties>
<systemPropertyVariables>
<test.servermanager.endpoint>${test.servermanager.endpoint}</test.servermanager.endpoint>
<test.servermanager.apiversion>${test.servermanager.apiversion}</test.servermanager.apiversion>
<test.servermanager.identity>${test.servermanager.identity}</test.servermanager.identity>
<jclouds.compute.blacklist-nodes>${jclouds.compute.blacklist-nodes}</jclouds.compute.blacklist-nodes>
</systemPropertyVariables>
</configuration>
</execution>
</executions>