From 80469aafa23343396a381568b0a00f9be98a524c Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Sat, 23 Feb 2019 23:15:47 -0500 Subject: [PATCH] Continue writing help messages and comments. --- ZertoApiWrapper/Public/Get-ZertoAlert.ps1 | 2 +- ZertoApiWrapper/Public/Get-ZertoEvent.ps1 | 2 +- ZertoApiWrapper/Public/Get-ZertoLocalSite.ps1 | 3 + ZertoApiWrapper/Public/Get-ZertoPeerSite.ps1 | 54 +++++++++--- .../Public/Get-ZertoProtectedVm.ps1 | 62 +++++++++++--- .../Public/Get-ZertoRecoveryReport.ps1 | 40 +++++++-- .../Public/Get-ZertoResourcesReport.ps1 | 85 +++++++++++++++---- .../Public/Get-ZertoServiceProfile.ps1 | 10 ++- 8 files changed, 204 insertions(+), 54 deletions(-) diff --git a/ZertoApiWrapper/Public/Get-ZertoAlert.ps1 b/ZertoApiWrapper/Public/Get-ZertoAlert.ps1 index 0aa448c..0b5287d 100644 --- a/ZertoApiWrapper/Public/Get-ZertoAlert.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoAlert.ps1 @@ -39,7 +39,7 @@ function Get-ZertoAlert { [string]$endDate, [Parameter( ParameterSetName = "filter", - HelpMessage "Returns alerts for the specified vraIdentifier" + HelpMessage = "Returns alerts for the specified vraIdentifier" )] [string]$vpgIdentifier, [Parameter( diff --git a/ZertoApiWrapper/Public/Get-ZertoEvent.ps1 b/ZertoApiWrapper/Public/Get-ZertoEvent.ps1 index f6fd0f7..e3cb6e4 100644 --- a/ZertoApiWrapper/Public/Get-ZertoEvent.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoEvent.ps1 @@ -87,7 +87,7 @@ function Get-ZertoEvent { [Parameter( ParameterSetName = "types", Mandatory = $true, - HelpMessage "Returns possible event types.")] + HelpMessage = "Returns possible event types.")] [switch]$types ) diff --git a/ZertoApiWrapper/Public/Get-ZertoLocalSite.ps1 b/ZertoApiWrapper/Public/Get-ZertoLocalSite.ps1 index 58d4e6c..d04b8df 100644 --- a/ZertoApiWrapper/Public/Get-ZertoLocalSite.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoLocalSite.ps1 @@ -1,6 +1,9 @@ function Get-ZertoLocalSite { [cmdletbinding()] param( + [Parameter( + HelpMessage = "Switch to return possible paiting statuses." + )] [switch]$pairingstatuses ) $uri = "localsite" diff --git a/ZertoApiWrapper/Public/Get-ZertoPeerSite.ps1 b/ZertoApiWrapper/Public/Get-ZertoPeerSite.ps1 index 9bbefd6..cf3e438 100644 --- a/ZertoApiWrapper/Public/Get-ZertoPeerSite.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoPeerSite.ps1 @@ -1,53 +1,79 @@ function Get-ZertoPeerSite { [cmdletbinding( defaultParameterSetName = "main" )] param ( - [Parameter ( ParameterSetName = "pairingStatuses", Mandatory = $true )] + [Parameter( + ParameterSetName = "pairingStatuses", + HelpMessage = "Switch to return possible paiting statuses.", + Mandatory = $true + )] [switch]$pairingStatuses, - [Parameter ( ParameterSetName = "siteIdentifier", + [Parameter( + ParameterSetName = "siteIdentifier", Mandatory = $true, ValueFromPipeline = $true, - ValueFromPipelineByPropertyName = $true )] + ValueFromPipelineByPropertyName = $true, + HelpMessage = "The identifier(s) of the peer site(s) for which information is to be returned." + )] [string[]]$siteIdentifier, - [Parameter ( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of a peer site for which information is to be returned. The name is case-sensitive." + )] [string]$peerName, - [Parameter ( ParameterSetName = "filter" )] + [Parameter ( + ParameterSetName = "filter", + HelpMessage = "The pairing status for which information is to be returned." + )] [string]$paringStatus, - [Parameter ( ParameterSetName = "filter" )] + [Parameter ( + ParameterSetName = "filter", + HelpMessage = "The site location, as specified in the site information, for which information is to be returned." + )] [string]$location, - [Parameter ( ParameterSetName = "filter" )] + [Parameter ( + ParameterSetName = "filter", + HelpMessage = "The IP address of a Zerto Virtual Manager, paired with this site, for which information is to be returned." + )] [string]$hostName, - [Parameter ( ParameterSetName = "filter" )] + [Parameter ( + ParameterSetName = "filter", + HelpMessage = "The port used to access peer sites for which information is to be returned. The default port is 9081." + )] [string]$port ) begin { $baseUri = "peersites" - $returnObject = @() + $returnObject = [System.Collections.ArrayList]@() } process { switch ( $PSCmdlet.ParameterSetName ) { "main" { $uri = "{0}" -f $baseUri - $returnObject = Invoke-ZertoRestRequest -uri $uri + $results = Invoke-ZertoRestRequest -uri $uri + $returnObject.Add($results) | Out-Null } "siteIdentifier" { - $returnObject = foreach ( $id in $siteIdentifier ) { + foreach ( $id in $siteIdentifier ) { $uri = "{0}/{1}" -f $baseUri, $id - Invoke-ZertoRestRequest -uri $uri + $results = Invoke-ZertoRestRequest -uri $uri + $returnObject.Add($results) | Out-Null } } "filter" { $filter = Get-ZertoApiFilter -filterTable $PSBoundParameters $uri = "{0}{1}" -f $baseUri, $filter - $returnObject = Invoke-ZertoRestRequest -uri $uri + $results = Invoke-ZertoRestRequest -uri $uri + $returnObject.Add($results) | Out-Null } default { $uri = "{0}/{1}" -f $baseUri, $PSCmdlet.ParameterSetName.ToLower() - $returnObject = Invoke-ZertoRestRequest -uri $uri + $results = Invoke-ZertoRestRequest -uri $uri + $returnObject.Add($results) | Out-Null } } } diff --git a/ZertoApiWrapper/Public/Get-ZertoProtectedVm.ps1 b/ZertoApiWrapper/Public/Get-ZertoProtectedVm.ps1 index ed49fdc..62d3fcf 100644 --- a/ZertoApiWrapper/Public/Get-ZertoProtectedVm.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoProtectedVm.ps1 @@ -1,27 +1,63 @@ function Get-ZertoProtectedVm { [cmdletbinding( DefaultParameterSetName = "main" )] param ( - [Parameter( ParameterSetName = "vmIdentifier", Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true )] + [Parameter( + ParameterSetName = "vmIdentifier", + Mandatory = $true, + ValueFromPipeline = $true, + ValueFromPipelineByPropertyName = $true, + HelpMessage = "vmIdentifier(s) for which to return information" + )] [string[]]$vmIdentifier, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the VPG which protects the virtual machine." + )] [string]$vpgName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the virtual machine." + )] [string]$vmName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The status of the VPG. Please see Zerto API documentation for possible values." + )] [string]$status, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The substatus of the VPG, for example the VPG is in a bitmap sync. For the description of substatuses, refer to the Zerto Virtual Manager Administration Guide. Please see Zerto API documentation for possible values." + )] [string]$substatus, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The ZORG for this VPG." + )] [string]$organizationName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The priority specified for the VPG. Possible values are: '0' or 'Low', '1' or 'Medium', '2' or 'High'" + )] [string]$priority, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The protected site type. Please see Zerto API documentation for possible values." + )] [string]$protectedSiteType, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The recovery site type. Please see Zerto API documentation for possible values." + )] [string]$recoverySiteType, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The identifier of the protected site where the VPG virtual machines are protected." + )] [string]$protectedSiteIdentifier, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The identifier of the recovery site where the VPG virtual machines are recovered." + )] [string]$recoverySiteIdentifier ) @@ -31,12 +67,15 @@ function Get-ZertoProtectedVm { } process { + # Select the operation based on the ParameterSetName switch ( $PSCmdlet.ParameterSetName ) { + # Return all protected VMs if no parameters are requested "main" { $returnObject = Invoke-ZertoRestRequest -uri $baseUri $returnObject.Add($results) | Out-Null } + # Return information based on the vmIdentifer(s) provided. "vmIdentifier" { $returnObject = foreach ( $id in $vmIdentifier ) { $uri = "{0}/{1}" -f $baseUri, $id @@ -44,6 +83,7 @@ function Get-ZertoProtectedVm { } } + # If a search is requested, build the query string and return values. "filter" { $filter = Get-ZertoApiFilter -filterTable $PSBoundParameters $uri = "{0}{1}" -f $baseUri, $filter diff --git a/ZertoApiWrapper/Public/Get-ZertoRecoveryReport.ps1 b/ZertoApiWrapper/Public/Get-ZertoRecoveryReport.ps1 index 008bf0b..9865341 100644 --- a/ZertoApiWrapper/Public/Get-ZertoRecoveryReport.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoRecoveryReport.ps1 @@ -1,21 +1,45 @@ function Get-ZertoRecoveryReport { [cmdletbinding( DefaultParameterSetName = "main" )] param( - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "Operations performed between the specified start Time and end Time (inclusive) are displayed. Valid formats include: 'yyyy-MM-ddTHH:mm:ss.fffZ', 'yyyy-MM-ddTHH:mm:ssZ', 'yyyy-MM-ddTHH:mmZ', 'yyyy-MM-ddTHHZ', 'yyyy-MM-dd', 'yyyy-MM', 'yyyy'. Adding Z to the end of the time sets the time to UTC." + )] [string]$startTime, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "Operations performed between the specified start Time and end Time (inclusive) are displayed. Valid formats include: 'yyyy-MM-ddTHH:mm:ss.fffZ', 'yyyy-MM-ddTHH:mm:ssZ', 'yyyy-MM-ddTHH:mmZ', 'yyyy-MM-ddTHHZ', 'yyyy-MM-dd', 'yyyy-MM', 'yyyy'. Adding Z to the end of the time sets the time to UTC." + )] [string]$endTime, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The page number the user wants to retrieve. Minimum value is 1." + )] [string]$pageNumber, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The number of reports to display in a single page. The maximum number of reports per page is 1000." + )] [string]$pageSize, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The internal identifier of the VPG. You can specify more than one VPG, separated by commas." + )] [string]$vpgIdentifier, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the VPG. You can specify more than one VPG, separated by commas." + )] [string]$vpgName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The type of recovery operations. Possible values are: 'Failover', 'Failover Test', or 'Move'" + )] [string]$recoveryType, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "Whether the recovery operation has completed." + )] [string]$state ) diff --git a/ZertoApiWrapper/Public/Get-ZertoResourcesReport.ps1 b/ZertoApiWrapper/Public/Get-ZertoResourcesReport.ps1 index 67c009b..961290c 100644 --- a/ZertoApiWrapper/Public/Get-ZertoResourcesReport.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoResourcesReport.ps1 @@ -1,39 +1,90 @@ function Get-ZertoResourcesReport { [cmdletbinding( DefaultParameterSetName = "main" )] param( - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "Operations performed between the specified start Time and end Time (inclusive) are displayed. Valid formats include: 'yyyy-MM-ddTHH:mm:ss.fffZ', 'yyyy-MM-ddTHH:mm:ssZ', 'yyyy-MM-ddTHH:mmZ', 'yyyy-MM-ddTHHZ', 'yyyy-MM-dd', 'yyyy-MM', 'yyyy'. Adding Z to the end of the time sets the time to UTC." + )] [string]$startTime, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "Operations performed between the specified start Time and end Time (inclusive) are displayed. Valid formats include: 'yyyy-MM-ddTHH:mm:ss.fffZ', 'yyyy-MM-ddTHH:mm:ssZ', 'yyyy-MM-ddTHH:mmZ', 'yyyy-MM-ddTHHZ', 'yyyy-MM-dd', 'yyyy-MM', 'yyyy'. Adding Z to the end of the time sets the time to UTC." + )] [string]$endTime, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The page number to retrieve. Minimum value is 1" + )] [string]$pageNumber, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The number of reports to display in a single page. The maximum number of reports per page is 1000." + )] [string]$pageSize, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the organization set up in the Zerto Cloud Manager." + )] [string]$zorgName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the virtual machine." + )] [string]$vmName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the VPG." + )] [string]$vpgName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the protected site." + )] [string]$protectedSiteName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the cluster containing the host where the virtual machine in the recovery site resides." + )] [string]$protectedClusterName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The address or DNS name of the host where the virtual machine in the recovery site resides." + )] [string]$protectedHostName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the vDC organization in the protected site." + )] [string]$protectedOrgVdc, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the vCD organization in the protected site." + )] [string]$protectedVdcOrg, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the recovery site." + )] [string]$recoverySiteName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the cluster containing the host where the virtual machine in the recovery site resides." + )] [string]$recoveryClusterName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The address or DNS name of the host where the virtual machine in the recovery site resides." + )] [string]$recoveryHostName, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the vDC organization in the recovery site." + )] [string]$recoveryOrgVdc, - [Parameter( ParameterSetName = "filter" )] + [Parameter( + ParameterSetName = "filter", + HelpMessage = "The name of the recovery vCD organization." + )] [string]$recoveryVdcOrg ) diff --git a/ZertoApiWrapper/Public/Get-ZertoServiceProfile.ps1 b/ZertoApiWrapper/Public/Get-ZertoServiceProfile.ps1 index 0ddc5ce..9206beb 100644 --- a/ZertoApiWrapper/Public/Get-ZertoServiceProfile.ps1 +++ b/ZertoApiWrapper/Public/Get-ZertoServiceProfile.ps1 @@ -1,9 +1,15 @@ function Get-ZertoServiceProfile { [cmdletbinding( DefaultParameterSetName = "main" )] param ( - [Parameter( ParameterSetName = "siteIdentifier" )] + [Parameter( + ParameterSetName = "siteIdentifier", + HelpMessage = "The identifier of the site for which service profiles should be returned." + )] [string]$siteIdentifier, - [Parameter( ParameterSetName = "serviceProfileId" )] + [Parameter( + ParameterSetName = "serviceProfileId", + HelpMessage = "The service profile ID for which information should be returned." + )] [string[]]$serviceProfileId )