From 32f6a6eebc21e134e16e8fa8fb271f7cc4a70930 Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Thu, 3 Oct 2019 14:32:05 -0400 Subject: [PATCH] Update function to use new token parameter --- ZertoApiWrapper/Public/Add-ZertoPeerSite.ps1 | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/ZertoApiWrapper/Public/Add-ZertoPeerSite.ps1 b/ZertoApiWrapper/Public/Add-ZertoPeerSite.ps1 index ecf104e..9cbd5db 100644 --- a/ZertoApiWrapper/Public/Add-ZertoPeerSite.ps1 +++ b/ZertoApiWrapper/Public/Add-ZertoPeerSite.ps1 @@ -6,21 +6,30 @@ function Add-ZertoPeerSite { Mandatory = $true, HelpMessage = "Target Hostname or IP address to pair the localsite to." )] - [ValidateScript( {$_ -match [IPAddress]$_ } )] + [ValidateScript( { $_ -match [IPAddress]$_ } )] [string]$targetHost, [Parameter( HelpMessage = "Target communication port. Default is 9081" )] [ValidateRange(1024, 65535)] - [int]$targetPort = 9081 + [int]$targetPort = 9081, + [Parameter( + HelpMessage = "The generated token from the destination site. Note: This is only supported when both sites support pairing authentication. This was implemented to support ZVR 7.5 and later." + )] + [ValidateNotNullOrEmpty()] + [string]$token ) begin { - $baseUri = "peersites" - $body = @{"HostName" = $targetHost; "Port" = $targetPort} } process { + $baseUri = "peersites" + if ($PSBoundParameters.Keys.Contains("token")) { + $body = @{ "HostName" = $targetHost; "Port" = $targetPort; "Token" = $token } + } else { + $body = @{ "HostName" = $targetHost; "Port" = $targetPort } + } if ($PSCmdlet.ShouldProcess("Pairing with Site $targetHost")) { Invoke-ZertoRestRequest -uri $baseUri -body $($body | ConvertTo-Json) -method "POST" }