function Search-ForRunningWorkerProcesses { <# .SYNOPSIS Checks for running IIS, Nag, and Radium Processes #> [CmdletBinding()] [OutputType([System.Boolean])] Param() $logLead = (Get-LogLeadName); Write-Verbose ("$logLead : Checking for running processes") $isProcessActive = Get-Process | Where-Object {$_.Name -match "(\.Nag|\.Radium|w3wp|Alkami)" -and $_.Name -notmatch "(Deconversion|Wintest|ServerManager)"} -ErrorAction SilentlyContinue if($null -eq $isProcessActive) { Write-Verbose ("$logLead : IIS, Radium, Nag, and MicroService Worker processes are done") return $true } else { Write-Warning ("$logLead : Found Running Processes -- Execution Cannot Continue") $isProcessActive | Select-Object Name, Id | Format-Table -Force return $false } }