<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Scheduled task for cross-site vMotion in VMware PowerCLI Discussions</title>
    <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969337#M112035</link>
    <description>&lt;P&gt;Not sure.&lt;BR /&gt;Can you check the vpxd log on the source vCenter.&lt;BR /&gt;There might be additional info in there&lt;/P&gt;</description>
    <pubDate>Fri, 19 May 2023 13:00:44 GMT</pubDate>
    <dc:creator>LucD</dc:creator>
    <dc:date>2023-05-19T13:00:44Z</dc:date>
    <item>
      <title>Scheduled task for cross-site vMotion</title>
      <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969324#M112029</link>
      <description>&lt;P&gt;I am trying to write a script that would create a scheduled task for a cross-site vMotion. I can create that scheduled task through the GUI and it works. The environment is 3 linked 7.0 sites. From PowerShell there are connected VISessions to all three VC servers.&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;When trying to do it through the script below, If I make sure sure that&amp;nbsp;$scheduledTaskManager instance is from the VC where the VM is currently located then it throws errors for objects that are on the destination site. Errors like:&lt;/P&gt;&lt;PRE&gt;Exception calling "CreateScheduledTask" with "2" argument(s): "The object 'vim.ResourcePool:resgroup-1002' has already been deleted or has not been completely created"&lt;BR /&gt;At C:\Scripts\MigrateTo-IMDC\Create-VMMoveScheduledTask.ps1:123 char:12&lt;BR /&gt;+ return ($scheduledTaskManager.CreateScheduledTask($vmView.MoRef, ...&lt;BR /&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;BR /&gt;+ FullyQualifiedErrorId : VimException&lt;/PRE&gt;&lt;P&gt;If I remove the resource pool then it complains about the datastore:&lt;/P&gt;&lt;PRE&gt;Exception calling "CreateScheduledTask" with "2" argument(s): "The object 'vim.Datastore:datastore-1411' has already been deleted or has not been completely created"&lt;BR /&gt;At C:\Scripts\MigrateTo-IMDC\Create-VMMoveScheduledTask.ps1:123 char:5&lt;BR /&gt;+ $scheduledTaskManager.CreateScheduledTask($vmView.MoRef, $spec)&lt;BR /&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;BR /&gt;+ FullyQualifiedErrorId : VimException&lt;/PRE&gt;&lt;P&gt;If I remove the datastore then it complains about the destination Host. And so on.&lt;/P&gt;&lt;P&gt;If I let&amp;nbsp;$scheduledTaskManager enumerate ScheduledTaskManagers from all 3 sites then it cant find the VM:&lt;/P&gt;&lt;PRE&gt;Exception calling "CreateScheduledTask" with "2" argument(s): "The object 'vim.VirtualMachine:vm-107863' has already been deleted or has not been completely created"&lt;BR /&gt;At C:\Scripts\MigrateTo-IMDC\Create-VMMoveScheduledTask.ps1:123 char:12&lt;BR /&gt;+ return ($scheduledTaskManager.CreateScheduledTask($vmView.MoRef, ...&lt;BR /&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;BR /&gt;+ FullyQualifiedErrorId : VimException&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My script is as follows. Any help would be much appreciated.&lt;/P&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;SPAN&gt;function&lt;/SPAN&gt; &lt;SPAN&gt;Create-VMMoveScheduledTask&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;Param&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.VirtualMachine&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VM&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Folder"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.Folder&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationFolder&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"VMHost"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.VMHost&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Datastore"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.DatastoreManagement.Datastore&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationDatastore&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Array of Hashes. Keys = MACAddress. Values = PortGroup (object).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateScript&lt;/SPAN&gt;&lt;SPAN&gt;({&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.keys&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt; &lt;SPAN&gt;-notmatch&lt;/SPAN&gt; &lt;SPAN&gt;"^[a-fA-F0-9]{2}([:-]?[a-fA-F0-9]{2}){5}$"&lt;/SPAN&gt;&lt;SPAN&gt;}) {&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$false&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.values&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;!&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt; &lt;SPAN&gt;-is&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.Vds.Types.V1.VDPortgroup&lt;/SPAN&gt;&lt;SPAN&gt;])}) {&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$false&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; })]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;  &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Name"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;String&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$TaskName&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"Create-VMMoveScheduledTask &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt; -Format G&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Description"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;String&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$TaskDescription&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"Create-VMMoveScheduledTask &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt; -Format G&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateScript&lt;/SPAN&gt;&lt;SPAN&gt;({([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;-gt&lt;/SPAN&gt;&lt;SPAN&gt; (([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]::Now).AddSeconds(&lt;/SPAN&gt;&lt;SPAN&gt;15&lt;/SPAN&gt;&lt;SPAN&gt;)) &lt;/SPAN&gt;&lt;SPAN&gt;-and&lt;/SPAN&gt;&lt;SPAN&gt; ([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;-lt&lt;/SPAN&gt;&lt;SPAN&gt; (([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]::Now).AddDays(&lt;/SPAN&gt;&lt;SPAN&gt;7&lt;/SPAN&gt;&lt;SPAN&gt;))})]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$StartTime&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Email"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidatePattern&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"^[a-zA-Z0-9.!#$%&amp;amp;’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;string&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;#$si = Get-View ServiceInstance -Server ($VM.Uid -replace "^.*@(.*):.*$",'$1')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$si&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt; ServiceInstance &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;#$scheduledTaskManager = Get-View $si.Content.ScheduledTaskManager -Server ($VM.Uid -replace "^.*@(.*):.*$",'$1')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$scheduledTaskManager&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt; &lt;SPAN&gt;$si&lt;/SPAN&gt;&lt;SPAN&gt;.Content.ScheduledTaskManager&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$vmView&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$VM&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# ScheduledTask specs&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.ScheduledTaskSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Name&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$TaskName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Description&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$TaskDescription&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Enabled&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Notification&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Scheduler&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.OnceTaskScheduler&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Scheduler.runat&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$StartTime&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodAction&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Name&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"RelocateVM_Task"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# vMotion specs&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodActionArgument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualMachineRelocateSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# ServiceLocator for destination - we should not need this&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;#$arg1.Value.service = New-Object VMware.Vim.ServiceLocator&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;#$arg1.Value.service.instanceUuid = ($global:defaultviservers | Where-Object {$DestinationHost.Uid -match &amp;nbsp;$_.Name}).InstanceUuid.toUpper()&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Datastore&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.datastore&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationDatastore&lt;/SPAN&gt;&lt;SPAN&gt;.Id&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Host&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.host&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.Id&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.ParentId&lt;/SPAN&gt; &lt;SPAN&gt;-match&lt;/SPAN&gt; &lt;SPAN&gt;"Cluster"&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.pool&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-Cluster&lt;/SPAN&gt;&lt;SPAN&gt;).ExtensionData.ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.pool&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.ExtensionData.ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; } &lt;/SPAN&gt;&lt;SPAN&gt;#&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Folder&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.folder&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationFolder&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt;).MoRef&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# vNIC PortGroups&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualDeviceConfigSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VMNICs&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$VM&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-NetworkAdapter&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VMNICs&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;ForEach-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;} {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;] &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualDeviceConfigSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].Operation &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"edit"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.ExtensionData&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualEthernetCardDistributedVirtualPortBackingInfo&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.DistributedVirtualSwitchPortConnection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port.SwitchUuid &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;.(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.MacAddress&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-VDSwitch&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt;).Uuid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port.PortgroupKey &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;.(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.MacAddress&lt;/SPAN&gt;&lt;SPAN&gt;).Key&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;++&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Argument&lt;/SPAN&gt; &lt;SPAN&gt;+=&lt;/SPAN&gt; &lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Set vMotion priority&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg2&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodActionArgument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg2&lt;/SPAN&gt;&lt;SPAN&gt;.Value&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.Vim.VirtualMachineMovePriority&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;"defaultPriority"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Argument&lt;/SPAN&gt; &lt;SPAN&gt;+=&lt;/SPAN&gt; &lt;SPAN&gt;$arg2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Create scheduledTask&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$scheduledTaskManager&lt;/SPAN&gt;&lt;SPAN&gt;.CreateScheduledTask&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;$vmView&lt;/SPAN&gt;&lt;SPAN&gt;.MoRef&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt; &lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thx.&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 12:06:32 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969324#M112029</guid>
      <dc:creator>ssheikhgpo</dc:creator>
      <dc:date>2023-05-19T12:06:32Z</dc:date>
    </item>
    <item>
      <title>Re: Scheduled task for cross-site vMotion</title>
      <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969328#M112031</link>
      <description>&lt;P&gt;You say that you are connected to the 3 vCenters, but that would mean that lines like&lt;/P&gt;
&lt;LI-CODE lang="csharp"&gt;Get-View ServiceInstance&lt;/LI-CODE&gt;
&lt;P&gt;return 3 objects.&lt;BR /&gt;You could try using the Server parameter to point to the correct vCenter.&lt;BR /&gt;&lt;BR /&gt;On another note, when you run the actual vMotion code alone (not as a scheduled task) does it work?&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 12:19:19 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969328#M112031</guid>
      <dc:creator>LucD</dc:creator>
      <dc:date>2023-05-19T12:19:19Z</dc:date>
    </item>
    <item>
      <title>Re: Scheduled task for cross-site vMotion</title>
      <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969335#M112033</link>
      <description>&lt;P&gt;Thanks for the quick reply.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Just tried to invoke RelocateVM_Task method on the VMview object and still get the same error.&lt;/P&gt;&lt;PRE&gt;Exception calling "RelocateVM_Task" with "2" argument(s): "The object 'vim.ResourcePool:resgroup-1002' has already been deleted or has not been completely created"&lt;BR /&gt;At C:\Scripts\MigrateTo-IMDC\Create-VMMoveScheduledTask.ps1:124 char:5&lt;BR /&gt;+ $vmView.RelocateVM_Task(($arg1.Value), 'defaultPriority')&lt;BR /&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;BR /&gt;+ FullyQualifiedErrorId : VimException&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wondering if I have to create a ServiceLocator for the destination VC and give the script credentials to connect to it before it will see the objects at the destination site. Would be a bummer if thats the case.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible to get the ServiceLocator object from the connected VISession?&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 12:51:54 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969335#M112033</guid>
      <dc:creator>ssheikhgpo</dc:creator>
      <dc:date>2023-05-19T12:51:54Z</dc:date>
    </item>
    <item>
      <title>Re: Scheduled task for cross-site vMotion</title>
      <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969337#M112035</link>
      <description>&lt;P&gt;Not sure.&lt;BR /&gt;Can you check the vpxd log on the source vCenter.&lt;BR /&gt;There might be additional info in there&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 13:00:44 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969337#M112035</guid>
      <dc:creator>LucD</dc:creator>
      <dc:date>2023-05-19T13:00:44Z</dc:date>
    </item>
    <item>
      <title>Re: Scheduled task for cross-site vMotion</title>
      <link>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969352#M112039</link>
      <description>&lt;P&gt;Thank you for your quick help. I think I've got it working. It seems like when moving a VM to another site one must provide the ServiceLocator for the destination vCenter even if it the destination is a linked site. And sadly to create the ServiceLocator object one must provide it with the credentials to connect to that vCenter even if its already connected.&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;Function that seems to be working for me now is:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;SPAN&gt;function&lt;/SPAN&gt; &lt;SPAN&gt;Create-VMMoveScheduledTask&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;Param&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.VirtualMachine&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VM&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Folder"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.Folder&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationFolder&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"VMHost"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.Inventory.VMHost&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Datastore"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.ViCore.Types.V1.DatastoreManagement.Datastore&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationDatastore&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateNotNullOrEmpty&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Array of Hashes. Keys = MACAddress. Values = PortGroup (object).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateScript&lt;/SPAN&gt;&lt;SPAN&gt;({&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.keys&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt; &lt;SPAN&gt;-notmatch&lt;/SPAN&gt; &lt;SPAN&gt;"^[a-fA-F0-9]{2}([:-]?[a-fA-F0-9]{2}){5}$"&lt;/SPAN&gt;&lt;SPAN&gt;}) {&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$false&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.values&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;!&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt; &lt;SPAN&gt;-is&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.VimAutomation.Vds.Types.V1.VDPortgroup&lt;/SPAN&gt;&lt;SPAN&gt;])}) {&lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$false&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; })]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Name"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;String&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$TaskName&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"Create-VMMoveScheduledTask &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt; -Format G&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Description"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;String&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$TaskDescription&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"Create-VMMoveScheduledTask &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt; -Format G&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidateScript&lt;/SPAN&gt;&lt;SPAN&gt;({([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;-gt&lt;/SPAN&gt;&lt;SPAN&gt; (([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]::Now).AddSeconds(&lt;/SPAN&gt;&lt;SPAN&gt;15&lt;/SPAN&gt;&lt;SPAN&gt;)) &lt;/SPAN&gt;&lt;SPAN&gt;-and&lt;/SPAN&gt;&lt;SPAN&gt; ([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;-lt&lt;/SPAN&gt;&lt;SPAN&gt; (([&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]::Now).AddDays(&lt;/SPAN&gt;&lt;SPAN&gt;7&lt;/SPAN&gt;&lt;SPAN&gt;))})]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;DateTime&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$StartTime&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Email"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;()]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;ValidatePattern&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"^[a-zA-Z0-9.!#$%&amp;amp;’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;string&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Alias&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Credential"&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;Parameter&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;Mandatory&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;SPAN&gt;)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [&lt;/SPAN&gt;&lt;SPAN&gt;pscredential&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationVCCredential&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$SourceVC&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$VM&lt;/SPAN&gt;&lt;SPAN&gt;.Uid&lt;/SPAN&gt; &lt;SPAN&gt;-replace&lt;/SPAN&gt; &lt;SPAN&gt;"^.*@(.*):.*$"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;'$1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$DestinationVC&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.Uid&lt;/SPAN&gt; &lt;SPAN&gt;-replace&lt;/SPAN&gt; &lt;SPAN&gt;"^.*@(.*):.*$"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;'$1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$si&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt; ServiceInstance &lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;Server &lt;/SPAN&gt;&lt;SPAN&gt;$SourceVC&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$scheduledTaskManager&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt; &lt;SPAN&gt;$si&lt;/SPAN&gt;&lt;SPAN&gt;.Content.ScheduledTaskManager&lt;/SPAN&gt; &lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;Server &lt;/SPAN&gt;&lt;SPAN&gt;$SourceVC&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$vmView&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$VM&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# ScheduledTask specs&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.ScheduledTaskSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Name&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$TaskName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Description&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$TaskDescription&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Enabled&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$true&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Notification&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$AlertEmail&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Scheduler&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.OnceTaskScheduler&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Scheduler.runat&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$StartTime&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodAction&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Name&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"RelocateVM_Task"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# vMotion specs&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodActionArgument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualMachineRelocateSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# ServiceLocator for destination - we should not need this ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.service&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.ServiceLocator&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.service.instanceUuid&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$&lt;/SPAN&gt;&lt;SPAN&gt;global&lt;/SPAN&gt;&lt;SPAN&gt;:defaultviservers&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.Uid&lt;/SPAN&gt; &lt;SPAN&gt;-match&lt;/SPAN&gt;&lt;SPAN&gt; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.Name&lt;/SPAN&gt;&lt;SPAN&gt;}).InstanceUuid.toUpper()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$ServiceCred&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.ServiceLocatorNamePassword&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$ServiceCred&lt;/SPAN&gt;&lt;SPAN&gt;.username&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationVCCredential&lt;/SPAN&gt;&lt;SPAN&gt;.UserName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$ServiceCred&lt;/SPAN&gt;&lt;SPAN&gt;.password&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationVCCredential&lt;/SPAN&gt;&lt;SPAN&gt;.GetNetworkCredential&lt;/SPAN&gt;&lt;SPAN&gt;().Password&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.service.credential&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$ServiceCred&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.service.InstanceUuid&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$&lt;/SPAN&gt;&lt;SPAN&gt;global&lt;/SPAN&gt;&lt;SPAN&gt;:defaultviservers&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Where-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.Name&lt;/SPAN&gt; &lt;SPAN&gt;-like&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationVC&lt;/SPAN&gt;&lt;SPAN&gt;}).InstanceUuid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# $arg1.Value.service.sslThumbprint = $thumbprint&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.service.url&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;"https://"&lt;/SPAN&gt; &lt;SPAN&gt;+&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationVC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Datastore&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.datastore&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationDatastore&lt;/SPAN&gt;&lt;SPAN&gt;.Id&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Host&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.host&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.Id&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.ParentId&lt;/SPAN&gt; &lt;SPAN&gt;-match&lt;/SPAN&gt; &lt;SPAN&gt;"Cluster"&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.pool&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-Cluster&lt;/SPAN&gt;&lt;SPAN&gt;).ExtensionData.ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.pool&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$DestinationHost&lt;/SPAN&gt;&lt;SPAN&gt;.ExtensionData.ResourcePool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; } &lt;/SPAN&gt;&lt;SPAN&gt;#&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Destination Folder&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.folder&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$DestinationFolder&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt;).MoRef&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# vNIC PortGroups&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualDeviceConfigSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VMNICs&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$VM&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-NetworkAdapter&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$VMNICs&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;ForEach-Object&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;} {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if ($i) {&lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt; +&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualDeviceConfigSpec}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].Operation &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;"edit"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.ExtensionData&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.VirtualEthernetCardDistributedVirtualPortBackingInfo&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.DistributedVirtualSwitchPortConnection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port.SwitchUuid &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;.(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.MacAddress&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-VDSwitch&lt;/SPAN&gt; &lt;SPAN&gt;|&lt;/SPAN&gt; &lt;SPAN&gt;Get-View&lt;/SPAN&gt;&lt;SPAN&gt;).Uuid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;SPAN&gt;.Value.deviceChange&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;].device.backing.port.PortgroupKey &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;$vNICPortGroups&lt;/SPAN&gt;&lt;SPAN&gt;.(&lt;/SPAN&gt;&lt;SPAN&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;.MacAddress&lt;/SPAN&gt;&lt;SPAN&gt;).Key&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$i&lt;/SPAN&gt;&lt;SPAN&gt;++&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Argument&lt;/SPAN&gt; &lt;SPAN&gt;+=&lt;/SPAN&gt; &lt;SPAN&gt;$arg1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Set vMotion priority&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg2&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt; VMware.Vim.MethodActionArgument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$arg2&lt;/SPAN&gt;&lt;SPAN&gt;.Value&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN&gt;VMware.Vim.VirtualMachineMovePriority&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;"defaultPriority"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;.Action.Argument&lt;/SPAN&gt; &lt;SPAN&gt;+=&lt;/SPAN&gt; &lt;SPAN&gt;$arg2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;# Create scheduledTask&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;$scheduledTaskManager&lt;/SPAN&gt;&lt;SPAN&gt;.CreateScheduledTask&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;$vmView&lt;/SPAN&gt;&lt;SPAN&gt;.MoRef&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt; &lt;SPAN&gt;$spec&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 19 May 2023 16:08:48 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Scheduled-task-for-cross-site-vMotion/m-p/2969352#M112039</guid>
      <dc:creator>ssheikhgpo</dc:creator>
      <dc:date>2023-05-19T16:08:48Z</dc:date>
    </item>
  </channel>
</rss>

