Private/Invoke-ClusterNodeMenu.ps1
Function Invoke-ClusterNodeMenu { [cmdletbinding()] [OutputType('System.String')] param() do { Clear-Host Get-Header "Cluster Nodes" if ($null -ieq $ExtraData['Nodes']) { Write-Warning "There are no cluster nodes available" } else { "| Name | Status | ID |" "| ---------------------- | --------- | ---- |" @($ExtraData['Nodes']).Foreach{ $Node = $PSItem $Name = "$($Node.Name)$(" " * (22 - $Node.Name.Length))" $Status = Switch ($Node.State) { 0 { "Up " } 1 { "Down " } 2 { "Paused " } 3 { "Joining " } default { "Unknown " } } $ID = "$($Node.Id)$(" " * ( 4 - $Node.Id.Length ) )" "| $Name | $Status | $ID |" } } "" $return = Read-Host "Press enter to return to the previous menu" }until( $Return -eq "" ) } |