Public/Remove-P1ServerInstance.ps1
function Remove-P1ServerInstance { <# .Synopsis Uninstall a existing PlannerOne service. .Description Uninstall a existing PlannerOne service with the given parameters. .Parameter Tenant The tenant name of this service. .Example # Uninstall a PlannerOne service for the tenant Prod. Remove-P1ServerInstance -Tenant Prod #> [cmdletbinding()] param( [Parameter(Mandatory=$true)] [string] $Tenant ) Process { Write-Section "Removing server instance..." $serviceName = Get-ServiceNameFromTenant $Tenant $servicePath = Get-ServicePath #Test if service exists if (Test-ServiceExists($ServiceName)) { Stop-Service -Name $ServiceName -Force $serviceApp = Get-Service -Name $ServiceName Write-Output "Waiting 5 seconds for service to really stop." Start-Sleep -seconds 5 Write-Verbose "Deleting PlannerOne service for Tenant $Tenant" Remove-Service($ServiceName) | Out-Null # Remove Service folder Write-Verbose "Removing folder: $servicePath\$Tenant" Remove-Symlink "$servicePath\$Tenant" Write-OK "Server instance removed" } else { # Always try to remove symlink Remove-Symlink "$servicePath\$Tenant" Write-Warning "Service $ServiceName doesn't exist!" } } } |