From 1542c34779c75bf9364eac4ddd6e7e2bd2bab88b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Doma=C5=84ski?= Date: Thu, 2 Jul 2026 07:39:13 +0000 Subject: [PATCH] Jul 2, 2026, 9:39 AM --- toolbox/s3_backup_transfer.ps1 | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/toolbox/s3_backup_transfer.ps1 b/toolbox/s3_backup_transfer.ps1 index 107449d..5ad64ce 100644 --- a/toolbox/s3_backup_transfer.ps1 +++ b/toolbox/s3_backup_transfer.ps1 @@ -102,29 +102,26 @@ foreach ($folder in $FoldersToProcess) { $S3Destination = "$S3DestinationParent/$CurrentYear" Write-Host "`n[$(Get-Date -Format 'HH:mm:ss')] Przetwarzanie: $folder ..." -ForegroundColor Yellow - Write-Host " Sprawdzanie istnienia docelowego folderu na S3: $S3DestinationParent/$CurrentYear/" -ForegroundColor Gray + Write-Host " Sprawdzanie i przygotowywanie docelowego folderu na S3: $S3DestinationParent/$CurrentYear/" -ForegroundColor Gray - # Walidacja obecności folderu (roku) po stronie S3 za pomocą rclone lsf (wypisuje tylko foldery) - $s3Dirs = & $RcloneExePath lsf --dirs-only "$S3DestinationParent/" 2>$null - if ($s3Dirs -notcontains "$CurrentYear/") { - $errMsg = "Brak wymaganego folderu '$CurrentYear/' w lokalizacji '$S3DestinationParent/' na S3. Pomijam transfer." - Write-Host " Błąd: $errMsg" -ForegroundColor Red - Write-AppEventLog -Type Warning -Id 1002 -Message $errMsg - $GlobalExitCode = 1 - continue - } + # 1. Tworzenie folderu na S3 (rclone mkdir upewni się, że struktura istnieje) + & $RcloneExePath mkdir "$S3Destination" - Write-Host " Folder '$CurrentYear/' znaleziony. Rozpoczynam transfer danych..." -ForegroundColor Green + Write-Host " Folder gotowy. Rozpoczynam transfer danych..." -ForegroundColor Green $LogFile = Join-Path $LogDir "rclone_backup_$($folder)_$(Get-Date -Format 'yyyyMMdd_HHmmss').log" + # 2, 3, 4. Pokazywanie progresu, wypisywanie plików i logowanie + # --progress (-P) - pokazuje interaktywny pasek postępu i prędkość + # --verbose (-v) - wypisuje nazwy przenoszonych plików $RcloneArgs = @( "move", $SourceDir, $S3Destination, "--checksum", "--retries", "5", "--retries-sleep", "15s", "--delete-empty-src-dirs", - "--log-file=$LogFile", - "--log-level=INFO" + "--progress", + "--verbose", + "--log-file=$LogFile" ) # Uruchomienie rclone