[string]$ServerName = "EMPIRUMXXX.m42cloud.com" [int]$Port = 443 [string]$UserName = "m42cloud\EmpCloudXXX-1" [string]$Password = "Password" [string]$importPath = "Z:\Configurator\PackageStore\OfflineDepotSMB" Write-Host "____________________________________" Write-Host "|" Write-Host "| Starting import ..." Write-Host "|" Write-Host "| $(Get-Date)" Write-Host "|" Write-Host " " Write-Host "Start open connection to '$ServerName' via port '$Port' with user '$UserName'..." $session = Open-Matrix42ServiceConnection -ServerName $ServerName -Port $Port -UserName $UserName -Password $Password -IsSecure $true if($null -eq $session) { Write-Error "Connection to Empirum server failed!" exit 1 } Write-Host "Starting import of from folder '$importPath'..." $result = Import-EmpirumPackage -Session $session -Path $importPath -All -Overwrite Write-Host "Import return object:" Write-Host ($result| Format-List | Out-String) [bool]$continueWaiting = $true do { $continueWaiting = $false foreach ($element in $result) { Write-Host "Getting status of package import for '$($element.PackageName)' with tacking id '$($element.TrackingId)'..." $status = Get-EmpirumBackendTaskStatus -Session $session $element.TrackingId switch ($status.TaskStatus) { "Failed" { Write-Host -ForegroundColor Red "`tStatus: $($status.TaskStatus)" Write-Error "Error message: '$($status.Message)'"; exit 2 } "Success" { Write-Host -ForegroundColor Green "`tStatus: $($status.TaskStatus)" $continueWaiting = $false; } "Running" { Write-Host -ForegroundColor Yellow "`tStatus: $($status.TaskStatus)" $continueWaiting = $true; Write-Host "`tWaiting 2 seconds..." sleep 2 } "Pending" { Write-Host -ForegroundColor Yellow "`tStatus: $($status.TaskStatus)" $continueWaiting = $true; Write-Host "`tWaiting 2 seconds..." sleep 2 } default { Write-Host "`tStatus: $($status.TaskStatus)" $continueWaiting = $true; Write-Host "`tWaiting 2 seconds..." sleep 2 } } } } while($continueWaiting -eq $true) Write-Host "Import was successful. Have a nice day ;-)" Write-Host " " Write-Host "|" Write-Host "| Finished $(Get-Date)" Write-Host "|" Write-Host "|____________________________________"