Esempio n. 1
0
def run_instances_base(ImageId, InstanceTypeId, **optional_params):
    """
    Run one or more instances.

    Supported params:
        image_id, instance_type_id, key_name, instance_count, subnet_id,
        private_ip_address
    Unsupported params:
        block_device_mapping, security_group_id. Blocked on '.N' feature
        ambiguity.
    """
    # TODO(rushiagr): support for BlockDeviceMapping.N, SecurityGroupId.N
    valid_optional_params = [
        'KeyName', 'InstanceCount', 'SubnetId', 'SecurityGroupId.1',
        'PrivateIPAddress'
    ]

    mandatory_params = {
        'Action': 'RunInstances',
        'ImageId': ImageId,
        'InstanceTypeId': InstanceTypeId,
    }

    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 2
0
def describe_key_pairs():
    """DescribeKeyPairs."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {'Action': 'DescribeKeyPairs'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 3
0
def describe_images():
    """DescribeImages API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {'Action': 'DescribeImages'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 4
0
def delete_volume(VolumeId):
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DeleteVolume',
        'VolumeId': VolumeId
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 5
0
def create_key_pair(KeyName):
    """CreateKeyPair."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'CreateKeyPair',
        'KeyName': KeyName,
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 6
0
def create_snapshot(volume_id):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = ['Name', 'Description']
    optional_params = {}
    mandatory_params = {
        'Action': 'CreateSnapshot',
        'VolumeId': volume_id,
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 7
0
def delete_snapshot(SnapshotId):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DeleteSnapshot',
        'SnapshotId': SnapshotId,
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 8
0
def terminate_instances(instance_id):
    """TerminateInstances API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'TerminateInstances',
        'InstanceId.1': instance_id
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 9
0
def detach_volume(volume_id, instance_id):
    """DetachVolume."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DetachVolume',
        'VolumeId': volume_id,
        'InstanceId': instance_id
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 10
0
def delete_snapshot(SnapshotId):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DeleteSnapshot',
        'SnapshotId': SnapshotId,
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 11
0
def create_snapshot(volume_id):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = ['Name', 'Description']
    optional_params = {}
    mandatory_params = {
        'Action': 'CreateSnapshot',
        'VolumeId': volume_id,
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 12
0
def delete_key_pair(KeyName):
    """DeleteKeyPair."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DeleteKeyPair',
        'KeyName': KeyName,
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 13
0
def attach_volume(volume_id, instance_id, device):
    """AttachVolume."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'AttachVolume',
        'VolumeId': volume_id,
        'InstanceId': instance_id,
        'device': device
    }
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 14
0
def detach_volume(volume_id, instance_id):
    """DetachVolume."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'DetachVolume',
        'VolumeId': volume_id,
        'InstanceId': instance_id
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 15
0
def terminate_instances(instance_id):
    """TerminateInstances API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params= {
        'Action': 'TerminateInstances',
        'InstanceId.1': instance_id
    }
    return  common.do_compute_request(valid_optional_params,
                                     optional_params,
                                     mandatory_params)
Esempio n. 16
0
def attach_volume(volume_id, instance_id, device):
    """AttachVolume."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'AttachVolume',
        'VolumeId': volume_id,
        'InstanceId': instance_id,
        'device': device
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 17
0
def create_volume(**optional_params):
    """
    CreateVolume API wrapper.

    Either Size or SnapshotId is mandatory.
    """
    if not optional_params.get('Size') and not optional_params.get('SnapshotId'):
        print 'size or snap id is required'
        raise Exception
    valid_optional_params = ['Size', 'SnapshotId', 'Description']
    mandatory_params = {'Action': 'CreateVolume'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 18
0
def create_volume(**optional_params):
    """
    CreateVolume API wrapper.

    Either Size or SnapshotId is mandatory.
    """
    if not optional_params.get('Size') and not optional_params.get(
            'SnapshotId'):
        print 'size or snap id is required'
        raise Exception
    valid_optional_params = ['Size', 'SnapshotId', 'Description']
    mandatory_params = {'Action': 'CreateVolume'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 19
0
def run_instances(image_id, flavor_id, keypair_name, subnet_id,
                  security_group_id, instance_count):
    """RunInstances API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {
        'Action': 'RunInstances',
        'ImageId': image_id,
        'InstanceTypeId': flavor_id,
        'KeyName': keypair_name,
        'InstanceCount': instance_count,
        'SubnetId': subnet_id,
        'SecurityGroupId.1': security_group_id
    }
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 20
0
def run_instances(image_id,
                  flavor_id,
                  keypair_name,
                  subnet_id,
                  security_group_id,
                  instance_count):
    """RunInstances API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params= {
        'Action': 'RunInstances',
        'ImageId': image_id,
        'InstanceTypeId': flavor_id,
        'KeyName': keypair_name,
        'InstanceCount': instance_count,
        'SubnetId': subnet_id,
        'SecurityGroupId.1': security_group_id
    }
    return common.do_compute_request(valid_optional_params,
                                     optional_params,
                                     mandatory_params)
Esempio n. 21
0
def run_instances(ImageId, InstanceTypeId, **optional_params):
    """
    Run one or more instances.

    Supported params:
        image_id, instance_type_id, key_name, instance_count, subnet_id,
        private_ip_address
    Unsupported params:
        block_device_mapping, security_group_id. Blocked on '.N' feature
        ambiguity.
    """
    # TODO(rushiagr): support for BlockDeviceMapping.N, SecurityGroupId.N
    valid_optional_params = ['KeyName', 'InstanceCount', 'SubnetId', 'PrivateIPAddress']

    mandatory_params = {
        'Action': 'RunInstances',
        'ImageId': ImageId,
        'InstanceTypeId': InstanceTypeId,
    }

    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 22
0
def delete_volume(VolumeId):
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {'Action': 'DeleteVolume', 'VolumeId': VolumeId}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 23
0
def describe_snapshots(**optional_params):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = ['SnapshotId']
    mandatory_params = {'Action': 'DescribeSnapshots'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 24
0
def describe_snapshots(**optional_params):
    """DescribeSnapshots API wrapper."""
    valid_optional_params = ['SnapshotId']
    mandatory_params = {'Action': 'DescribeSnapshots'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 25
0
def describe_volumes(**optional_params):
    """DescribeVolumes API wrapper."""
    valid_optional_params = ['VolumeId', 'Detail']
    mandatory_params = {'Action': 'DescribeVolumes'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)
Esempio n. 26
0
def describe_instances(**optional_params):
    """DescribeInstances API wrapper."""
    valid_optional_params = ['InstanceId.1']
    mandatory_params = {'Action': 'DescribeInstances'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 27
0
def describe_images():
    """DescribeImages API wrapper."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params = {'Action': 'DescribeImages'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 28
0
def describe_volumes(**optional_params):
    """DescribeVolumes API wrapper."""
    valid_optional_params = ['VolumeId', 'Detail']
    mandatory_params = {'Action': 'DescribeVolumes'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 29
0
def describe_key_pairs():
    """DescribeKeyPairs."""
    valid_optional_params = []
    optional_params = {}
    mandatory_params= {'Action': 'DescribeKeyPairs'}
    return common.do_compute_request(valid_optional_params, optional_params, mandatory_params)
Esempio n. 30
0
def describe_instances(**optional_params):
    """DescribeInstances API wrapper."""
    valid_optional_params = ['InstanceId.1']
    mandatory_params = {'Action': 'DescribeInstances'}
    return common.do_compute_request(valid_optional_params, optional_params,
                                     mandatory_params)