79 lines
2.7 KiB
PowerShell
79 lines
2.7 KiB
PowerShell
# 🧹 MYP - Manage your Printer (Hauptbereinigungsskript)
|
|
# Weiterleitung an das optimierte Infrastructure-Bereinigungsskript
|
|
|
|
param(
|
|
[switch]$Force,
|
|
[switch]$Help,
|
|
[switch]$All
|
|
)
|
|
|
|
# Farbdefinitionen für bessere Ausgabe
|
|
$Colors = @{
|
|
Info = "Cyan"
|
|
Success = "Green"
|
|
Warning = "Yellow"
|
|
Error = "Red"
|
|
Header = "Magenta"
|
|
}
|
|
|
|
function Write-ColorOutput {
|
|
param([string]$Message, [string]$Color = "White")
|
|
Write-Host $Message -ForegroundColor $Colors[$Color]
|
|
}
|
|
|
|
# Header anzeigen
|
|
Write-ColorOutput "🧹 MYP - Manage your Printer (Bereinigung)" "Header"
|
|
Write-ColorOutput "═══════════════════════════════════════════" "Header"
|
|
|
|
# Hilfe anzeigen
|
|
if ($Help) {
|
|
Write-ColorOutput "`n📖 Verwendung:" "Info"
|
|
Write-ColorOutput " .\cleanup.ps1 [Optionen]" "White"
|
|
Write-ColorOutput "`n⚙️ Optionen:" "Info"
|
|
Write-ColorOutput " -Force - Bereinigung ohne Bestätigung durchführen" "White"
|
|
Write-ColorOutput " -All - Vollständige Bereinigung (inkl. Volumes)" "White"
|
|
Write-ColorOutput " -Help - Diese Hilfe anzeigen" "White"
|
|
Write-ColorOutput "`n📚 Beispiele:" "Info"
|
|
Write-ColorOutput " .\cleanup.ps1 # Interaktive Bereinigung" "White"
|
|
Write-ColorOutput " .\cleanup.ps1 -Force # Automatische Bereinigung" "White"
|
|
Write-ColorOutput " .\cleanup.ps1 -All -Force # Vollständige Bereinigung" "White"
|
|
exit 0
|
|
}
|
|
|
|
# Prüfe ob Infrastructure-Skript existiert
|
|
$InfraScript = ".\infrastructure\scripts\cleanup.ps1"
|
|
if (-not (Test-Path $InfraScript)) {
|
|
Write-ColorOutput "`n❌ Infrastructure-Bereinigungsskript nicht gefunden: $InfraScript" "Error"
|
|
Write-ColorOutput " Bitte stellen Sie sicher, dass die Projektstruktur vollständig ist." "Error"
|
|
exit 1
|
|
}
|
|
|
|
# Parameter für Infrastructure-Skript vorbereiten
|
|
$InfraParams = @()
|
|
if ($Force) { $InfraParams += "-Force" }
|
|
if ($All) { $InfraParams += "-All" }
|
|
|
|
# Weiterleitung an Infrastructure-Skript
|
|
Write-ColorOutput "`n🔄 Weiterleitung an Infrastructure-Bereinigungsskript..." "Info"
|
|
|
|
try {
|
|
if ($InfraParams.Count -gt 0) {
|
|
& $InfraScript @InfraParams
|
|
} else {
|
|
& $InfraScript
|
|
}
|
|
|
|
$ExitCode = $LASTEXITCODE
|
|
|
|
if ($ExitCode -eq 0) {
|
|
Write-ColorOutput "`n🎉 Bereinigung erfolgreich abgeschlossen!" "Success"
|
|
} else {
|
|
Write-ColorOutput "`n❌ Bereinigung fehlgeschlagen (Exit Code: $ExitCode)" "Error"
|
|
}
|
|
|
|
exit $ExitCode
|
|
} catch {
|
|
Write-ColorOutput "`n💥 Unerwarteter Fehler bei der Bereinigung:" "Error"
|
|
Write-ColorOutput " $($_.Exception.Message)" "Error"
|
|
exit 1
|
|
} |