NAME

VMware::vCloud - The VMware vCloud API

SYNOPSIS

This module has been developed against VMware vCenter director.

my $vcd = new VMware::vCloud (
  $hostname, $username, $password, $orgname
);

my $login = $vcd->login;

DESCRIPTION

This module provides a Perl interface to VMware's vCloud REST interface.

RETURNED VALUES

Many of the methods return hash references or arrays of hash references that contain information about a specific "object" or concept on the vCloud Director server. This is a rough analog to the Managed Object Reference structure of the VIPERL SDK without the generic interface for retireval.

EXAMPLE SCRIPTS

Included in the distribution of this module are several example scripts. Hopefully they provide an illustrative example of the vCloud API. All scripts have their own POD and accept command line parameters in a similar way to the VIPERL SDK utilities and vghetto scripts.

conditions.pl - An example displaying an objects conditions.

PERL MODULE METHODS

These methods are not direct API calls. They represent the methods that create or module as a "wrapper" for the Labmanager API.

new

This method creates the Labmanager object.

Arguments

  • hostname

  • username

  • password

  • organization

config

$vcd->config( debug => 1 );
debug - 1 to turn on debugging. 0 for none. Defaults to 0.
die_on_fault - 1 to cause the program to die verbosely on a soap fault. 0 for the fault object to be returned on the call and for die() to not be called. Defaults to 1. If you choose not to die_on_fault (for example, if you are writing a CGI) you will want to check all return objects to see if they are fault objects or not.
ssl_timeout - seconds to wait for timeout. Defaults to 3600. (1hr) This is how long a transaction response will be waited for once submitted. For slow storage systems and full clones, you may want to up this higher. If you find yourself setting this to more than 6 hours, your Lab Manager setup is probably not in the best shape.
hostname, orgname, username and password - All of these values can be changed from the original settings on new(). This is handing for performing multiple transactions across organizations.

BUGS AND LIMITATIONS

CONFUSING ERROR CODES

WISH LIST

If someone from VMware is reading this, and has control of the API, I would dearly love a few changes, that might help things:

(more soon)

VERSION

Version: v1.1 (2011/06/16)

AUTHOR

Phillip Pollard, <bennie@cpan.org>

CONTRIBUTIONS

stu41j - http://communities.vmware.com/people/stu42j

DEPENDENCIES

LWP

LICENSE AND COPYRIGHT

Released under Perl Artistic License

SEE ALSO

VMware vCloud Director
 http://www.vmware.com/products/vcloud/

VMware vCloud API Specification v1.0
 http://communities.vmware.com/docs/DOC-12464

VMware vCloud API Programming Guide v1.0
 http://communities.vmware.com/docs/DOC-12463
 
vCloud API and Admin API v1.0 schema definition files
 http://communities.vmware.com/docs/DOC-13564
 
VMware vCloud API Communities
 http://communities.vmware.com/community/vmtn/developer/forums/vcloudapi

1 POD Error

The following errors were encountered while parsing the POD:

Around line 144:

Deleting unknown formatting code U<>