1VMware::LabManager(3) User Contributed Perl DocumentationVMware::LabManager(3)
2
3
4

NAME

6       VMware::LabManager - Perl module to provide basic VMware Lab Manager
7       operations.
8

VERSION

10       Version 0.01
11

SYNOPSIS

13       This module provides an encapsulation of VMware Lab Manager SOAP API in
14       convenient API format. Basic functionality like deploying & deleting a
15       library config to & from the workspace are provided.
16
17       A little code snippet to get you started:
18
19           use VMware::LabManager;
20           use Data::Dumper;
21
22           #instantiate the LM object
23           my $lm = VMware::LabManager->new('username','passwd','labManager hostname', 'org');
24
25           #or if you want the XML messages dumped (i.e. verbose), pass the debug option:
26           my $lm = VMware::LabManager->new('username','passwd','labManager hostname', 'org', 'debug');
27
28           #deploy_config returns the config ID of the config that is deployed
29           my $configID = $lm->deploy_config('my_library_config_name');
30           print $configID;
31
32           #get all the machines in the deployed config
33           my $machineArray = $lm->get_machines($configID);
34           print Dumper($machineArray);
35
36           #delete the config once you are done.
37           $action = $lm->delete_config($configID);
38           print $action
39

DESCRIPTION

41       This module does not provide a one-to-one mapping of the Lab Manager
42       SOAP API, but rather it provides an API wrapper, which combines certain
43       SOAP calls as a meaningful single operation. Thus this module is
44       heavily tailored for automation purposes. But, it should also cater to
45       the broader audience as it still does provide overall functionality
46       that might be required.
47
48       Using this module, you can checkout a config & deploy it in one single
49       method call, similarly undeploy & delete in a single method call. This
50       module also provides a method to get the list of all machines (and
51       their details) that a deployed configuration has. Apart from that the
52       SOAP object & auth header methods are exposed; So if need be, they can
53       be used to access other SOAP calls available through Lab Manager SOAP
54       service.
55

SUBROUTINES/METHODS

57   new
58       This function instantiates the LM object. The arguments in the required
59       order are:
60
61       •   Username - Your username for Lab Manager login.
62
63       •   Password - Your password for Lab Manager login.
64
65       •   Hostname - FQDN of the Lab Manager you are trying to log in.
66
67       •   Organization - Organization to which you belong to in Lab Manager.
68
69       This does not authenticate with the Lab Manager server yet. That
70       happens when you use one of the other methods.
71
72   get_soap
73       This method is primary used internally, but there are situations where
74       it could be used for other SOAP methods that have not been exposed by
75       this module. This method returns SOAP::Lite object & sets the readable
76       option on. You can use this in conjunction with Authentication header,
77       which you can get from get_auth_header() method.
78
79       NOTE: Usage of this method outside the scope of this API is not
80       recommended.
81
82   get_auth_header
83       This method returns an authentication header wrapper that is needed for
84       each SOAP call that you make to Lab Manager. It uses the options you
85       provided in the new() method to build this header.
86
87   deploy_config
88       This method is tailored for automation. During automation, one
89       primarily cares about deploying a library image. A single method call
90       to encapsulate the whole set of operations is more deirable.
91
92       This method requires a config name (make sure it is unique in the
93       system), which it uses to:
94
95       •   Checkout the config to your default workspace with a random name.
96
97       •   Deploy the confignation in fenced mode.
98
99       •   Return the unique numeric Config ID of the deployed config.
100
101       You have to use this config ID to undeploy & delete it at at later
102       stage.
103
104   get_machines
105       This method returns an array of all the Machines in the deployed
106       config. For each machine it includes mac address, name, internal IP,
107       external IP, name & its id.
108
109   delete_config
110       This method performs two actions - 1)undeploy the configuation (if it
111       is not undeployed) and 2) delete the configuation. This method takes
112       the config ID of the configuration you deployed earlier using the
113       deploy_config() method.
114

AUTHOR

116       "Aditya Ivaturi", "<"ivaturi at gmail.com">"
117

BUGS

119       Please report any bugs or feature requests to "ivaturi@gmail.com", or
120       through the web interface at
121       <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=VMware-LabManager>.  I
122       will be notified, and then you'll automatically be notified of progress
123       on your bug as I make changes.
124

SUPPORT

126       You can find documentation for this module with the perldoc command.
127
128           perldoc VMware::LabManager
129
130       You can also look for information at:
131
132       •   RT: CPAN's request tracker
133
134           <http://rt.cpan.org/NoAuth/Bugs.html?Dist=VMware-LabManager>
135
136       •   AnnoCPAN: Annotated CPAN documentation
137
138           <http://annocpan.org/dist/VMware-LabManager>
139
140       •   CPAN Ratings
141
142           <http://cpanratings.perl.org/d/VMware-LabManager>
143
144       •   Search CPAN
145
146           <http://search.cpan.org/dist/VMware-LabManager/>
147
149       Copyright 2010 "Aditya Ivaturi".
150
151       This program is free software; you can redistribute it and/or modify it
152       under the terms of either: the GNU General Public License as published
153       by the Free Software Foundation; or the Artistic License.
154
155       See http://dev.perl.org/licenses/ for more information.
156
157
158
159perl v5.36.0                      2023-01-20             VMware::LabManager(3)
Impressum