NAME

VM::EC2::Spot::InstanceRequest - Object describing an Amazon EC2 spot instance request

SYNOPSIS

See "SPOT INSTANCES" in VM::EC2.

DESCRIPTION

This object represents an Amazon EC2 spot instance request, which is returned by VM::EC2->request_spot_instances() and VM::EC2->describe_spot_instance_requests().

METHODS

These object methods are supported:

spotInstanceRequestId       -- ID of this spot instance request

spotPrice   -- The maximum hourly price for any spot
               instance launched under this request,
               in USD.

type        -- The spot instance request type, one of
               'one-time' or 'persistent'.

state       -- The state of this request, one of 'open',
               'closed', 'fulfilled', 'cancelled' or 'failed'.

fault       -- Fault code for the request, if any, an
               instance of VM::EC2::Error.

status      -- The status code and status message describing the
               Spot Instance request.

validFrom   -- Start date and time of the request.

validUntil  -- Date and time that the request expires.

launchGroup -- Launch group of the instances run under this request.
               Instances in the same launch group are launched
               and terminated together.

launchedAvailabilityZone -- Availability zone of launched instance.

availabilityZoneGroup -- Availability zone group of the instances
               run under this request. Instances in the same
               availability zone group will always be launched
               into the same availability zone.

launchSpecification -- Additional information for launching
               instances, represented as a VM::EC2::Spot::LaunchSpecificaton
               object.

instanceId  -- The instance ID, if an instance has been launched as a 
               result of this request.

createTime  -- The time and date when the spot instance request was
               created.

productDescription -- The product description associated with this spot
               instance request.

Convenience Methods

This class supports the standard tagging interface. In addition it provides the following convenience method:

$instance = $request->instance

If an instance was launched as a result of this request, the instance() method will return the corresponding VM::EC2::Instance object.

$state = $request->current_status

Refreshes the request information and returns its status as a VM::EC2::Spot::Status. This will string interpolate as the status code, such as "fulfilled". You may also call its object methods to get the time of the last update and full message.

$state = $request->current_state

Refreshes the request information and returns its state, such as "open".

$request->refresh

Refreshes the request information.

SEE ALSO

VM::EC2 VM::EC2::Generic VM::EC2::Spot::LaunchSpecification VM::EC2::Error

AUTHOR

Lincoln Stein <lincoln.stein@gmail.com>.

Copyright (c) 2011 Ontario Institute for Cancer Research

This package and its accompanying libraries is free software; you can redistribute it and/or modify it under the terms of the GPL (either version 1, or at your option, any later version) or the Artistic License 2.0. Refer to LICENSE for the full license text. In addition, please see DISCLAIMER.txt for disclaimers of warranty.