første xml update
[virt-orchestrator.git] / vFLOWER / content / Workflows / Library / vCenter / Virtual Machine management / Clone / Tools / Get Windows customization, Sysprep with credentials.workflow.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <workflow xmlns="http://vmware.com/vco/workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://vmware.com/vco/workflow http://vmware.com/vco/workflow/Workflow-v4.xsd" root-name="item8" object-name="Workflow:name=generic" id="BD808080808080808080808080808080FEC180800122528313869552e41805bb1" version="0.2.0" api-version="3.1.0" allowed-operations="fv" restartMode="1" resumeFromFailedMode="0">
3     <display-name>Get Windows customization, Sysprep with credentials</display-name>
4
5     <description>
6 Returns customization information about the Microsoft Sysprep process, with credentials. 
7 Workflows for cloning Windows virtual machines use this workflow.
8     </description>
9
10     <position x="120.0" y="10.0"/>
11
12     <input>
13         <param name="commandList" type="Array/string">
14             <description>List of commands to run at first user login after customizing the guest OS</description>
15         </param>
16         <param name="autoLogon" type="boolean">
17             <description>Flag to determine whether or not the machine automatically logs on as administrator</description>
18         </param>
19         <param name="autoLogonCount" type="number">
20             <description>If the AutoLogon flag is set, then the AutoLogonCount property specifies the number of times the machine should automatically log on as Administrator</description>
21         </param>
22         <param name="timeZone" type="number">
23             <description>Time zone for the new virtual machine. Numbers correspond to time zones listed in the Sysprep documentation</description>
24         </param>
25         <param name="domainAdmin" type="Credential">
26             <description>(Optional) Domain user account to use for authentication if the virtual machine is to join a domain. Does not need to be a domain administrator account, but the account must have the necessary privileges to add machines to the domain.</description>
27         </param>
28         <param name="joinDomain" type="string">
29             <description>(Optional) Domain that the virtual machine joins. If this value is set, you must set domainAdmin and domainAdminPassword, and you must leave the workgroup name empty.</description>
30         </param>
31         <param name="joinWorkgroup" type="string">
32             <description>(Optional) Workgroup that the virtual machine joins. If this value is set, you must leave the domain name and authentication fields empty.</description>
33         </param>
34         <param name="licenseMode" type="VC:CustomizationLicenseDataMode">
35             <description>Server licensing mode</description>
36         </param>
37         <param name="licenseUsers" type="number">
38             <description>This key is valid only if AutoMode = PerServer</description>
39         </param>
40         <param name="fullName" type="string">
41             <description>User's full name</description>
42         </param>
43         <param name="orgName" type="string">
44             <description>User's organization</description>
45         </param>
46         <param name="productId" type="string">
47             <description>Sysprep requires you to include a valid serial number in the answer file when the mini-setup runs. Workflow ignores this serial number if you installed the original guest OS using a volume-licensed CD.</description>
48         </param>
49         <param name="newAdminPassword" type="string">
50             <description>New administrator password. Set the associated plainText flag to false to activate encryption</description>
51         </param>
52         <param name="addNumberToName" type="boolean">
53             <description>Append a number to the name to ensure the name is unique</description>
54         </param>
55         <param name="clientName" type="string">
56             <description>Virtual machine name that the user specifies</description>
57         </param>
58     </input>
59
60     <output>
61         <param name="sysprep" type="Any">
62             <description>Object representation of a Windows sysprep.inf answer file.</description>
63         </param>
64     </output>
65
66     <attrib name="guiRunOnce" type="Any" read-only="false">
67         <value encoded="n">__NULL__</value>
68         <description>(Optional) VimCustomizationGuiRunOnce: Object representation of the Sysprep GuiRunOnce key</description>
69     </attrib>
70     <attrib name="guiUnattended" type="Any" read-only="false">
71         <value encoded="n">__NULL__</value>
72         <description>VimCustomizationGuiUnattended: Object representation of the Sysprep GuiUnattended key</description>
73     </attrib>
74     <attrib name="identification" type="Any" read-only="false">
75         <value encoded="n">__NULL__</value>
76         <description>VimCustomizationIdentification: Object representation of the Sysprep Identification key</description>
77     </attrib>
78     <attrib name="licenseFilePrintData" type="Any" read-only="false">
79         <value encoded="n">__NULL__</value>
80         <description>(Optional) VimCustomizationLicenseFilePrintData: Object representation of the Sysprep LicenseFilePrintData key. Required only for Windows 2000 Server and Windows Server 2003.</description>
81     </attrib>
82     <attrib name="userData" type="Any" read-only="false">
83         <value encoded="n">__NULL__</value>
84         <description>VimCustomizationUserData: Object representation of the Sysprep UserData key</description>
85     </attrib>
86     <attrib name="newAdminPasswordAtt" type="Any" read-only="false">
87         <value encoded="n">__NULL__</value>
88         <description>(Optional) VimCustomizationPassword: New administrator password for the machine. To deactivate  password control, set the password value to NULL. Because of encryption, "" is NOT a valid value.</description>
89     </attrib>
90     <attrib name="computerName" type="Any" read-only="false">
91         <value encoded="n">__NULL__</value>
92         <description>VimCustomizationName: Computer name of the Windows virtual machine</description>
93     </attrib>
94     <attrib name="plainText" type="boolean" read-only="true">
95         <value encoded="n">true</value>
96         <description>Flag to specify whether or not to encrypt the password or use plain text</description>
97     </attrib>
98     <attrib name="exception" type="string" read-only="false">
99         <value encoded="n"/>
100         <description>Error code</description>
101     </attrib>
102     <workflow-note x="40.0" y="220.0" w="270.0" h="120.0">
103         <description>GUI Run Once only if one autoLogon</description>
104     </workflow-note>
105     <workflow-note x="40.0" y="80.0" w="170.0" h="100.0">
106         <description>GUI Unattended</description>
107     </workflow-note>
108     <workflow-note x="40.0" y="380.0" w="170.0" h="100.0">
109         <description>Identification</description>
110     </workflow-note>
111     <workflow-note x="40.0" y="500.0" w="170.0" h="60.0">
112         <description>License</description>
113     </workflow-note>
114     <workflow-note x="40.0" y="580.0" w="320.0" h="140.0">
115         <description>Userdata</description>
116     </workflow-note>
117     <workflow-note x="420.0" y="580.0" w="170.0" h="60.0" color="bfffdfff">
118         <description>Compute all</description>
119     </workflow-note>
120
121     <workflow-item name="item0" out-name="item5" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationSysprep">
122         <display-name>getCustomizationSysprep</display-name>
123
124         <script encoded="false">
125 //Auto generated script, cannot be modified !
126 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationSysprep(guiRunOnce,guiUnattended,identification,licenseFilePrintData,userData) ;
127         </script>
128
129         <in-binding>
130             <bind name="guiRunOnce" type="Any" export-name="guiRunOnce">
131                 <description>[Optional] VimCustomizationGuiRunOnce: An object representation of the sysprep GuiRunOnce key.</description>
132             </bind>
133             <bind name="guiUnattended" type="Any" export-name="guiUnattended">
134                 <description>VimCustomizationGuiUnattended: An object representation of the sysprep GuiUnattended key. VimCustomizationGuiUnattended:</description>
135             </bind>
136             <bind name="identification" type="Any" export-name="identification">
137                 <description>VimCustomizationIdentification: An object representation of the sysprep Identification key.</description>
138             </bind>
139             <bind name="licenseFilePrintData" type="Any" export-name="licenseFilePrintData">
140                 <description>[Optional] VimCustomizationLicenseFilePrintData: An object representation of the sysprep LicenseFilePrintData key. Required only for Windows 2000 Server and Windows Server 2003.</description>
141             </bind>
142             <bind name="userData" type="Any" export-name="userData">
143                 <description>VimCustomizationUserData: An object representation of the sysprep UserData key.</description>
144             </bind>
145         </in-binding>
146
147         <out-binding>
148             <bind name="actionResult" type="Any" export-name="sysprep"/>
149         </out-binding>
150
151         <description>An object representation of a Windows sysprep.inf answer file. The sysprep type encloses all the individual keys listed in a sysprep.inf file. For more detailed information, see the document Windows 2000 Unattended Setup Guide.</description>
152
153         <position x="460.0" y="600.0"/>
154     </workflow-item>
155
156     <workflow-item name="item1" out-name="item3" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationGuiRunOnce">
157         <display-name>getCustomizationGuiRunOnce</display-name>
158
159         <script encoded="false">
160 //Auto generated script, cannot be modified !
161 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationGuiRunOnce(commandList) ;
162         </script>
163
164         <in-binding>
165             <bind name="commandList" type="Array/string" export-name="commandList">
166                 <description>A list of commands to run at first user logon, after guest customization.</description>
167             </bind>
168         </in-binding>
169
170         <out-binding>
171             <bind name="actionResult" type="Any" export-name="guiRunOnce"/>
172         </out-binding>
173
174         <description>The commands listed in the GuiRunOnce data object type are executed when a user logs on the first time after customization completes. The logon may be driven by the AutoLogon setting.</description>
175
176         <position x="180.0" y="300.0"/>
177     </workflow-item>
178
179     <workflow-item name="item2" out-name="item11" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationGuiUnattended">
180         <display-name>getCustomizationGuiUnattended</display-name>
181
182         <script encoded="false">
183 //Auto generated script, cannot be modified !
184 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationGuiUnattended(autoLogon,autoLogonCount,password,timeZone) ;
185         </script>
186
187         <in-binding>
188             <bind name="autoLogon" type="boolean" export-name="autoLogon">
189                 <description>Flag to determine whether or not the machine automatically logs on as Administrator</description>
190             </bind>
191             <bind name="autoLogonCount" type="number" export-name="autoLogonCount">
192                 <description>If the AutoLogon flag is set, then the AutoLogonCount property specifies the number of times the machine should automatically log on as Administrator</description>
193             </bind>
194             <bind name="password" type="Any" export-name="newAdminPasswordAtt">
195                 <description>[Optional] VimCustomizationPassword: The new administrator password for the machine. To specify that the password should be set to blank (that is, no password), set the password value to NULL. Because of encryption, "" is NOT a valid value.</description>
196             </bind>
197             <bind name="timeZone" type="number" export-name="timeZone">
198                 <description>The time zone for the new virtual machine. Numbers correspond to time zones listed in sysprep documentation</description>
199             </bind>
200         </in-binding>
201
202         <out-binding>
203             <bind name="actionResult" type="Any" export-name="guiUnattended"/>
204         </out-binding>
205
206         <description>The GuiUnattended type maps to the GuiUnattended key in the sysprep.inf answer file. These values are plugged directly into the sysprep.inf file that VirtualCenter stores on the target virtual disk.</description>
207
208         <position x="80.0" y="140.0"/>
209     </workflow-item>
210
211     <workflow-item name="item4" out-name="item14" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationLicenseFilePrintData">
212         <display-name>getCustomizationLicenseFilePrintData</display-name>
213
214         <script encoded="false">
215 //Auto generated script, cannot be modified !
216 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationLicenseFilePrintData(autoMode,autoUsers) ;
217         </script>
218
219         <in-binding>
220             <bind name="autoMode" type="VC:CustomizationLicenseDataMode" export-name="licenseMode">
221                 <description>Server licensing mode</description>
222             </bind>
223             <bind name="autoUsers" type="number" export-name="licenseUsers">
224                 <description>This key is valid only if AutoMode = PerServer.</description>
225             </bind>
226         </in-binding>
227
228         <out-binding>
229             <bind name="actionResult" type="Any" export-name="licenseFilePrintData"/>
230         </out-binding>
231
232         <description>The LicenseFilePrintData type maps directly to the LicenseFilePrintData key in the sysprep.inf answer file.</description>
233
234         <position x="80.0" y="520.0"/>
235     </workflow-item>
236
237     <workflow-item name="item6" out-name="item0" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationUserData">
238         <display-name>getCustomizationUserData</display-name>
239
240         <script encoded="false">
241 //Auto generated script, cannot be modified !
242 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationUserData(computerName,fullName,orgName,productId) ;
243         </script>
244
245         <in-binding>
246             <bind name="computerName" type="Any" export-name="computerName">
247                 <description>VimCustomizationName: The computer name of the (Windows) virtual machine.</description>
248             </bind>
249             <bind name="fullName" type="string" export-name="fullName">
250                 <description>User's full name.</description>
251             </bind>
252             <bind name="orgName" type="string" export-name="orgName">
253                 <description>User's organization.</description>
254             </bind>
255             <bind name="productId" type="string" export-name="productId">
256                 <description>Microsoft Sysprep requires that a valid serial number be included in the answer file when mini-setup runs. This serial number is ignored if the original guest operating system was installed using a volume-licensed CD.</description>
257             </bind>
258         </in-binding>
259
260         <out-binding>
261             <bind name="actionResult" type="Any" export-name="userData"/>
262         </out-binding>
263
264         <description>
265 Personal data pertaining to the owner of the virtual machine.
266         </description>
267
268         <position x="220.0" y="680.0"/>
269     </workflow-item>
270
271     <workflow-item name="item8" out-name="item2" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationPassword">
272         <display-name>getCustomizationPassword</display-name>
273
274         <script encoded="false">
275 //Auto generated script, cannot be modified !
276 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationPassword(plainText,value) ;
277         </script>
278
279         <in-binding>
280             <bind name="plainText" type="boolean" export-name="plainText">
281                 <description>Flag to specify whether or not the password is in plain text, rather than encrypted.</description>
282             </bind>
283             <bind name="value" type="string" export-name="newAdminPassword">
284                 <description>The password string. It is encrypted if the associated plainText flag is false.</description>
285             </bind>
286         </in-binding>
287
288         <out-binding>
289             <bind name="actionResult" type="Any" export-name="newAdminPasswordAtt"/>
290         </out-binding>
291
292         <description>Contains a password string and a flag that specifies whether the string is in plain text or encrypted.</description>
293
294         <position x="80.0" y="100.0"/>
295     </workflow-item>
296
297     <workflow-item name="item5" type="end" end-mode="0">
298         <position x="660.0" y="570.0"/>
299     </workflow-item>
300
301     <workflow-item name="item9" out-name="item10" catch-name="" type="task">
302         <display-name>Add text to Exception</display-name>
303
304         <script encoded="false">
305 exception = "Cannot Create Sysprep customization: " + exception;
306         </script>
307
308         <in-binding>
309             <bind name="exception" type="string" export-name="exception"/>
310         </in-binding>
311
312         <out-binding>
313             <bind name="exception" type="string" export-name="exception"/>
314         </out-binding>
315
316         <position x="460.0" y="340.0"/>
317     </workflow-item>
318
319     <workflow-item name="item10" throw-bind-name="exception" type="end" end-mode="1">
320         <position x="660.0" y="330.0"/>
321     </workflow-item>
322
323     <workflow-item name="item11" out-name="item1" type="condition" alt-out-name="item3" comparator="0">
324         <display-name>Autologon?</display-name>
325
326         <script encoded="false">
327 //Generated by the system, cannot be edited
328 return (autoLogon == true) ;
329         </script>
330
331         <in-binding>
332             <bind name="autoLogon" type="boolean" export-name="autoLogon"/>
333         </in-binding>
334         <condition name="autoLogon" type="boolean" comparator="0" label="null">false</condition>
335
336         <position x="80.0" y="250.0"/>
337     </workflow-item>
338
339     <workflow-item name="item12" out-name="item6" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationFixedName">
340         <display-name>getCustomizationFixedName</display-name>
341
342         <script encoded="false">
343 //Auto generated script, cannot be modified !
344 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationFixedName(name) ;
345         </script>
346
347         <in-binding>
348             <bind name="name" type="string" export-name="clientName">
349                 <description>The virtual machine name specified by the client.</description>
350             </bind>
351         </in-binding>
352
353         <out-binding>
354             <bind name="actionResult" type="Any" export-name="computerName"/>
355         </out-binding>
356
357         <description>A fixed name.</description>
358
359         <position x="80.0" y="680.0"/>
360     </workflow-item>
361
362     <workflow-item name="item13" out-name="item6" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationPrefixName">
363         <display-name>getCustomizationPrefixName</display-name>
364
365         <script encoded="false">
366 //Auto generated script, cannot be modified !
367 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationPrefixName(base) ;
368         </script>
369
370         <in-binding>
371             <bind name="base" type="string" export-name="clientName">
372                 <description>Base prefix, to which a unique number is appended.</description>
373             </bind>
374         </in-binding>
375
376         <out-binding>
377             <bind name="actionResult" type="Any" export-name="computerName"/>
378         </out-binding>
379
380         <description>
381 Specifies that a unique name should be generated by concatenating the base string with a number. 
382 Virtual machine names are unique across the set of hosts and virtual machines known to the VirtualCenter instance. VirtualCenter tracks the network names of virtual machines as well as hosts. VMware Tools runs in a guest operating system and reports information to VirtualCenter, including the network name of the guest.
383         </description>
384
385         <position x="220.0" y="620.0"/>
386     </workflow-item>
387
388     <workflow-item name="item14" out-name="item13" type="condition" alt-out-name="item12" comparator="0">
389         <display-name>Add number to name</display-name>
390
391         <script encoded="false">
392 //Generated by the system, cannot be edited
393 return (addNumberToName == true) ;
394         </script>
395
396         <in-binding>
397             <bind name="addNumberToName" type="boolean" export-name="addNumberToName"/>
398         </in-binding>
399         <condition name="addNumberToName" type="boolean" comparator="0" label="null">false</condition>
400
401         <position x="80.0" y="610.0"/>
402     </workflow-item>
403
404     <workflow-item name="item3" out-name="item4" catch-name="item9" throw-bind-name="exception" type="task" script-module="com.vmware.library.vc.vm.spec.identity/getCustomizationIdentificationFromCredential">
405         <display-name>getCustomizationIdentificationFromCredential</display-name>
406
407         <script encoded="false">
408 //Auto generated script, cannot be modified !
409 actionResult = System.getModule("com.vmware.library.vc.vm.spec.identity").getCustomizationIdentificationFromCredential(domainAdmin,joinDomain,joinWorkgroup) ;
410         </script>
411
412         <in-binding>
413             <bind name="domainAdmin" type="Credential" export-name="domainAdmin">
414                 <description>[Optional] This is the domain user account used for authentication if the virtual machine is joining a domain. The user does not need to be a domain administrator, but the account must have the privileges required to add computers to the domain.</description>
415             </bind>
416             <bind name="joinDomain" type="string" export-name="joinDomain">
417                 <description>[Optional] The domain that the virtual machine should join. If this value is supplied, then domainAdmin and domainAdminPassword must also be supplied, and the workgroup name must be empty.</description>
418             </bind>
419             <bind name="joinWorkgroup" type="string" export-name="joinWorkgroup">
420                 <description>[Optional] The workgroup that the virtual machine should join. If this value is supplied, then the domain name and authentication fields must be empty.</description>
421             </bind>
422         </in-binding>
423
424         <out-binding>
425             <bind name="actionResult" type="Any" export-name="identification"/>
426         </out-binding>
427
428         <description>The Identification data object type provides information needed to join a workgroup or domain</description>
429
430         <position x="80.0" y="420.0"/>
431     </workflow-item>
432
433     <presentation>
434         <p-param name="commandList">
435             <desc>List of commands to run at first user login after customizing the guest OS</desc>
436         </p-param>
437         <p-param name="autoLogon">
438             <desc>Flag to determine whether or not the machine automatically logs on as administrator</desc>
439         </p-param>
440         <p-param name="autoLogonCount">
441             <desc>If the AutoLogon flag is set, then the AutoLogonCount property specifies the number of times the machine should automatically log on as Administrator</desc>
442         </p-param>
443         <p-param name="timeZone">
444             <desc>Time zone for the new virtual machine. Numbers correspond to time zones listed in the Sysprep documentation</desc>
445         </p-param>
446         <p-param name="domainAdmin">
447             <desc>(Optional) Domain user account to use for authentication if the virtual machine is to join a domain. Does not need to be a domain administrator account, but the account must have the necessary privileges to add machines to the domain.</desc>
448         </p-param>
449         <p-param name="joinDomain">
450             <desc>(Optional) Domain that the virtual machine joins. If this value is set, you must set domainAdmin and domainAdminPassword, and you must leave the workgroup name empty.</desc>
451         </p-param>
452         <p-param name="joinWorkgroup">
453             <desc>(Optional) Workgroup that the virtual machine joins. If this value is set, you must leave the domain name and authentication fields empty.</desc>
454         </p-param>
455         <p-param name="licenseMode">
456             <desc>Server licensing mode</desc>
457         </p-param>
458         <p-param name="licenseUsers">
459             <desc>This key is valid only if AutoMode = PerServer</desc>
460         </p-param>
461         <p-param name="fullName">
462             <desc>User's full name</desc>
463         </p-param>
464         <p-param name="orgName">
465             <desc>User's organization</desc>
466         </p-param>
467         <p-param name="productId">
468             <desc>Sysprep requires you to include a valid serial number in the answer file when the mini-setup runs. Workflow ignores this serial number if you installed the original guest OS using a volume-licensed CD.</desc>
469         </p-param>
470         <p-param name="newAdminPassword">
471             <desc>New administrator password. Set the associated plainText flag to false to activate encryption</desc>
472         </p-param>
473         <p-param name="addNumberToName">
474             <desc>Append a number to the name to ensure the name is unique</desc>
475         </p-param>
476         <p-param name="clientName">
477             <desc>The virtual machine name the user specifies</desc>
478         </p-param>
479     </presentation>
480 </workflow>