From 713c94461c0b4f3a72390027f0c62227072d92ff Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:25:43 -0400 Subject: [PATCH 1/6] Replace Script Scope LocalSite Info Variable --- ZertoApiWrapper/Public/Get-ZertoUnprotectedVm.ps1 | 2 +- ZertoApiWrapper/Public/Install-ZertoVra.ps1 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ZertoApiWrapper/Public/Get-ZertoUnprotectedVm.ps1 b/ZertoApiWrapper/Public/Get-ZertoUnprotectedVm.ps1 index d76e96c..68a20f4 100644 --- a/ZertoApiWrapper/Public/Get-ZertoUnprotectedVm.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoUnprotectedVm.ps1 @@ -2,6 +2,6 @@ function Get-ZertoUnprotectedVm { [cmdletbinding()] param() - $uri = "virtualizationsites/{0}/vms" -f $script:zvmLocalInfo.siteidentifier + $uri = "virtualizationsites/{0}/vms" -f (Get-ZertoLocalSite).siteIdentifier Invoke-ZertoRestRequest -uri $uri } diff --git a/ZertoApiWrapper/Public/Install-ZertoVra.ps1 b/ZertoApiWrapper/Public/Install-ZertoVra.ps1 index 70f74a5..3ce61d2 100644 --- a/ZertoApiWrapper/Public/Install-ZertoVra.ps1 +++ b/ZertoApiWrapper/Public/Install-ZertoVra.ps1 @@ -111,7 +111,7 @@ function Install-ZertoVra { # If the VRA does not exist, proceed with the installation. If it does exist, bypass and if ( -not (Get-ZertoVra -vraName $vraName) ) { # Get identifiers for each item provided by name. - $siteIdentifier = $script:zvmLocalInfo.SiteIdentifier + $siteIdentifier = (Get-ZertoLocalSite).SiteIdentifier $hostIdentifier = Get-ZertoVirtualizationSite -siteIdentifier $siteIdentifier -hosts | Where-Object { $_.VirtualizationHostName -eq $hostName } | Select-Object hostIdentifier -ExpandProperty hostIdentifier $networkIdentifier = Get-ZertoVirtualizationSite -siteIdentifier $siteIdentifier -networks | Where-Object { $_.VirtualizationNetworkName -eq $networkName } | Select-Object NetworkIdentifier -ExpandProperty NetworkIdentifier $datastoreIdentifier = Get-ZertoVirtualizationSite -siteIdentifier $siteIdentifier -datastores | Where-Object { $_.DatastoreName -eq $datastoreName } | Select-Object DatastoreIdentifier -ExpandProperty DatastoreIdentifier From 7427ffe70709152df9bc97741d71ba37a020bd1d Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:26:10 -0400 Subject: [PATCH 2/6] Remove operation to set ZvmLocalInfo Variable --- ZertoApiWrapper/Public/Connect-ZertoServer.ps1 | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/ZertoApiWrapper/Public/Connect-ZertoServer.ps1 b/ZertoApiWrapper/Public/Connect-ZertoServer.ps1 index 49ec0f6..237f845 100644 --- a/ZertoApiWrapper/Public/Connect-ZertoServer.ps1 +++ b/ZertoApiWrapper/Public/Connect-ZertoServer.ps1 @@ -62,10 +62,7 @@ function Connect-ZertoServer { end { # Build Headers Hashtable with Authorization Token $Script:zvmHeaders['x-zerto-session'] = $results.Headers['x-zerto-session'][0].ToString() - # Set common Script Scope Variables to be used other functions (Headers and Local Site Info) - # Set-Variable -Name zvmHeaders -Scope Script -Value $zertoAuthorizationHeaders - Set-Variable -Name zvmLocalInfo -Scope Script -Value (Get-ZertoLocalSite) - + # Have the option to return the headers to a variable if ($returnHeaders) { return $Script:zvmHeaders From 8318229cf43bf6522470398f70de157c09b0ec9e Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:26:36 -0400 Subject: [PATCH 3/6] Remove Removal of Variable no longer required --- ZertoApiWrapper/Public/Disconnect-ZertoServer.ps1 | 1 - 1 file changed, 1 deletion(-) diff --git a/ZertoApiWrapper/Public/Disconnect-ZertoServer.ps1 b/ZertoApiWrapper/Public/Disconnect-ZertoServer.ps1 index b9d3032..080ec50 100644 --- a/ZertoApiWrapper/Public/Disconnect-ZertoServer.ps1 +++ b/ZertoApiWrapper/Public/Disconnect-ZertoServer.ps1 @@ -12,5 +12,4 @@ function Disconnect-ZertoServer { Remove-Variable -Name zvmPort -Scope Script Remove-Variable -Name zvmLastAction -Scope Script Remove-Variable -Name zvmHeaders -Scope Script - Remove-Variable -Name zvmLocalInfo -Scope Script } From 494c45b02c838c5cd45344cbcc42a4f6025f361a Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:26:56 -0400 Subject: [PATCH 4/6] Remove tests for removed variable --- Tests/Public/Connect-ZertoServer.Tests.ps1 | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Tests/Public/Connect-ZertoServer.Tests.ps1 b/Tests/Public/Connect-ZertoServer.Tests.ps1 index f417346..7b0519d 100644 --- a/Tests/Public/Connect-ZertoServer.Tests.ps1 +++ b/Tests/Public/Connect-ZertoServer.Tests.ps1 @@ -106,12 +106,6 @@ Describe $global:function -Tag 'Unit', 'Source', 'Built' { $script:zvmHeaders['Accept'] | Should -BeOfType String } - It "Module Scope zvmLocalInfo variable tests" { - $script:zvmLocalInfo | Should -Not -BeNullOrEmpty - $script:zvmLocalInfo | Should -BeOfType PSCustomObject - $script:zvmLocalInfo.SiteIdentifier | Should -BeOfType String - } - $headers = Connect-ZertoServer -zertoServer $Server -credential $credential -returnHeaders It "returns a Hashtable with 2 keys" { $headers | Should -BeOfType Hashtable From c477d40364a591583e7f697f4eccf521151fa287 Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:30:07 -0400 Subject: [PATCH 5/6] Remove Mocks that are not required any longer --- Tests/Public/Connect-ZertoServer.Tests.ps1 | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Tests/Public/Connect-ZertoServer.Tests.ps1 b/Tests/Public/Connect-ZertoServer.Tests.ps1 index 7b0519d..802cc9b 100644 --- a/Tests/Public/Connect-ZertoServer.Tests.ps1 +++ b/Tests/Public/Connect-ZertoServer.Tests.ps1 @@ -67,10 +67,6 @@ Describe $global:function -Tag 'Unit', 'Source', 'Built' { return $results } - Mock -ModuleName ZertoApiWrapper -CommandName Get-ZertoLocalSite { - return (Get-Content -Path "$global:here\Mocks\LocalSiteInfo.json" -Raw | ConvertFrom-Json) - } - Context "$($global:function)::InModuleScope Function Unit Tests" { BeforeAll { @@ -138,7 +134,6 @@ Describe $global:function -Tag 'Unit', 'Source', 'Built' { } Assert-MockCalled -ModuleName ZertoApiWrapper -CommandName Invoke-ZertoRestRequest -Exactly 4 - Assert-MockCalled -ModuleName ZertoApiWrapper -CommandName Get-ZertoLocalSite -Exactly 4 } } } From 5a2c01341ce3553c736a9d0c6d17f945a4f00d6e Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Mon, 6 Jul 2020 14:32:32 -0400 Subject: [PATCH 6/6] Update Changlog for Issue 95 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 36f9447..16d0945 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ and this project is transitioning to [Semantic Versioning](https://semver.org/sp #### Fixed * Fixed an [issue](https://github.com/ZertoPublic/ZertoApiWrapper/issues/96) with `Set-ZertoLicense` so that ShouldProcess functions properly. +* Fixed an [issue](https://github.com/ZertoPublic/ZertoApiWrapper/issues/95) when attempting to connect to an unlicensed site. ## [1.4.2]