Public/func_Add-SSHServer.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function Add-SSHServer {
    [CmdletBinding()]
    param (
        [Parameter(Position = 0, Mandatory = $true)][string]$Name,
        [Parameter(Position = 1, Mandatory = $true)][string]$IP,
        [Parameter(Position = 2, Mandatory = $false)][string[]]$Tags
    )
    [Collections.Generic.List[SSHServer]]$sshServers = Get-SSHServersFile
    if($null -eq $sshServers)
    {
        $sshServers = New-Object Collections.Generic.List[SSHServer]
    }
    if($sshServers | Where-Object Name -eq $Name)
    {
        Throw New-Object System.ArgumentException("Name already exist")
    }
    [SSHServer]$sshServer = New-Object SSHServer
    $sshServer.Name = $Name
    $sshServer.IP = $IP
    $sshServer.Tags = $Tags
    $sshServers.Add($sshServer)
    Set-SSHServersFile -SSHServers $sshServers
}