org.dasein.cloud.test.compute
Class ComputeResources

java.lang.Object
  extended by org.dasein.cloud.test.compute.ComputeResources

public class ComputeResources
extends Object

Handles the shared compute resources for executing various tests.

Created by George Reese: 2/17/13 8:35 PM

Since:
2013.02
Version:
2013.04, 2014.08 limited architectures to those supported in the cloud
Author:
George Reese

Constructor Summary
ComputeResources(org.dasein.cloud.CloudProvider provider)
           
 
Method Summary
 int close()
           
 String getTestDataCenterId(boolean stateless)
           
 String getTestImageId(String label, boolean provisionIfNull)
           
 String getTestSnapshotId(String label, boolean provisionIfNull)
           
 String getTestVLANVmId(String label, org.dasein.cloud.compute.VmState desiredState, String vlanId, boolean provisionIfNull, String preferredDataCenterId)
           
 String getTestVmId(String label, String vmName, org.dasein.cloud.compute.VmState desiredState, boolean provisionIfNull, String preferredDataCenterId)
           
 String getTestVmId(String label, org.dasein.cloud.compute.VmState desiredState, boolean provisionIfNull, String preferredDataCenterId)
           
 String getTestVMProductId()
           
 String getTestVolumeId(String label, boolean provisionIfNull, org.dasein.cloud.compute.VolumeFormat desiredFormat, String preferredDataCenterId)
           
 String getTestVolumeProductId()
           
 void init()
           
 String provisionImage(org.dasein.cloud.compute.MachineImageSupport support, String label, String namePrefix, String vmId)
           
 Iterable<String> provisionManyVMs(org.dasein.cloud.compute.VirtualMachineSupport support, String label, String namePrefix, String hostPrefix, String preferredDataCenter, int count)
           
 Iterable<String> provisionManyVMs(org.dasein.cloud.compute.VirtualMachineSupport support, String label, org.dasein.cloud.compute.VMLaunchOptions options, String preferredDataCenter, int count)
           
 String provisionSnapshot(org.dasein.cloud.compute.SnapshotSupport support, String label, String namePrefix, String volumeId)
           
 String provisionVM(org.dasein.cloud.compute.VirtualMachineSupport support, String label, String namePrefix, String hostPrefix, String preferredDataCenter)
          Provisions a virtual machine and returns the ID of the new virtual machine.
 String provisionVM(org.dasein.cloud.compute.VirtualMachineSupport support, String label, org.dasein.cloud.compute.VMLaunchOptions options, String preferredDataCenter)
           
 String provisionVolume(org.dasein.cloud.compute.VolumeSupport support, String label, String namePrefix, org.dasein.cloud.compute.VolumeFormat desiredFormat, String preferredDataCenterId)
           
 int report()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ComputeResources

public ComputeResources(@Nonnull
                        org.dasein.cloud.CloudProvider provider)
Method Detail

report

public int report()

close

public int close()

getTestDataCenterId

@Nullable
public String getTestDataCenterId(boolean stateless)

getTestImageId

@Nullable
public String getTestImageId(@Nonnull
                                      String label,
                                      boolean provisionIfNull)

getTestSnapshotId

@Nullable
public String getTestSnapshotId(@Nonnull
                                         String label,
                                         boolean provisionIfNull)

getTestVmId

@Nullable
public String getTestVmId(@Nonnull
                                   String label,
                                   @Nullable
                                   org.dasein.cloud.compute.VmState desiredState,
                                   boolean provisionIfNull,
                                   @Nullable
                                   String preferredDataCenterId)

getTestVmId

@Nullable
public String getTestVmId(@Nonnull
                                   String label,
                                   @Nonnull
                                   String vmName,
                                   @Nullable
                                   org.dasein.cloud.compute.VmState desiredState,
                                   boolean provisionIfNull,
                                   @Nullable
                                   String preferredDataCenterId)

getTestVLANVmId

@Nullable
public String getTestVLANVmId(@Nonnull
                                       String label,
                                       @Nullable
                                       org.dasein.cloud.compute.VmState desiredState,
                                       @Nullable
                                       String vlanId,
                                       boolean provisionIfNull,
                                       @Nullable
                                       String preferredDataCenterId)

getTestVMProductId

@Nullable
public String getTestVMProductId()

getTestVolumeId

@Nullable
public String getTestVolumeId(@Nonnull
                                       String label,
                                       boolean provisionIfNull,
                                       @Nullable
                                       org.dasein.cloud.compute.VolumeFormat desiredFormat,
                                       @Nullable
                                       String preferredDataCenterId)

getTestVolumeProductId

@Nullable
public String getTestVolumeProductId()

init

public void init()

provisionImage

@Nonnull
public String provisionImage(@Nonnull
                                     org.dasein.cloud.compute.MachineImageSupport support,
                                     @Nonnull
                                     String label,
                                     @Nonnull
                                     String namePrefix,
                                     @Nullable
                                     String vmId)
                      throws org.dasein.cloud.CloudException,
                             org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

provisionSnapshot

@Nonnull
public String provisionSnapshot(@Nonnull
                                        org.dasein.cloud.compute.SnapshotSupport support,
                                        @Nonnull
                                        String label,
                                        @Nonnull
                                        String namePrefix,
                                        @Nullable
                                        String volumeId)
                         throws org.dasein.cloud.CloudException,
                                org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

provisionManyVMs

@Nonnull
public Iterable<String> provisionManyVMs(@Nonnull
                                                 org.dasein.cloud.compute.VirtualMachineSupport support,
                                                 @Nonnull
                                                 String label,
                                                 @Nonnull
                                                 org.dasein.cloud.compute.VMLaunchOptions options,
                                                 @Nullable
                                                 String preferredDataCenter,
                                                 int count)
                                  throws org.dasein.cloud.CloudException,
                                         org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

provisionVM

@Nonnull
public String provisionVM(@Nonnull
                                  org.dasein.cloud.compute.VirtualMachineSupport support,
                                  @Nonnull
                                  String label,
                                  @Nonnull
                                  org.dasein.cloud.compute.VMLaunchOptions options,
                                  @Nullable
                                  String preferredDataCenter)
                   throws org.dasein.cloud.CloudException,
                          org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

provisionVM

@Nonnull
public String provisionVM(@Nonnull
                                  org.dasein.cloud.compute.VirtualMachineSupport support,
                                  @Nonnull
                                  String label,
                                  @Nonnull
                                  String namePrefix,
                                  @Nonnull
                                  String hostPrefix,
                                  @Nullable
                                  String preferredDataCenter)
                   throws org.dasein.cloud.CloudException,
                          org.dasein.cloud.InternalException
Provisions a virtual machine and returns the ID of the new virtual machine. This method tracks the newly provisioned virtual machine and will tear it down at the end of the test suite.

Parameters:
support - the virtual machine support object used to provision the VM
label - the label to store the VM under for re-use
namePrefix - a prefix for the friendly name of the VM
hostPrefix - a prefix for the host name of the VM
preferredDataCenter - the data center, if any is preferred, in which the VM should be provisioned
Returns:
the ID for the new VM
Throws:
org.dasein.cloud.CloudException - an error occurred with the cloud provider in provisioning the VM
org.dasein.cloud.InternalException - an error occurred within Dasein Cloud provisioning the VM

provisionManyVMs

@Nonnull
public Iterable<String> provisionManyVMs(@Nonnull
                                                 org.dasein.cloud.compute.VirtualMachineSupport support,
                                                 @Nonnull
                                                 String label,
                                                 @Nonnull
                                                 String namePrefix,
                                                 @Nonnull
                                                 String hostPrefix,
                                                 @Nullable
                                                 String preferredDataCenter,
                                                 int count)
                                  throws org.dasein.cloud.CloudException,
                                         org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

provisionVolume

@Nonnull
public String provisionVolume(@Nonnull
                                      org.dasein.cloud.compute.VolumeSupport support,
                                      @Nonnull
                                      String label,
                                      @Nonnull
                                      String namePrefix,
                                      @Nullable
                                      org.dasein.cloud.compute.VolumeFormat desiredFormat,
                                      @Nullable
                                      String preferredDataCenterId)
                       throws org.dasein.cloud.CloudException,
                              org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException


Copyright © 2009-2014 Dell, Inc.. All Rights Reserved.