initializare
This commit is contained in:
103
deployment/windows/scripts/update_browsers.ps1
Normal file
103
deployment/windows/scripts/update_browsers.ps1
Normal file
@@ -0,0 +1,103 @@
|
||||
#Requires -RunAsAdministrator
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Update Playwright Browsers (Global Location)
|
||||
.DESCRIPTION
|
||||
Actualizeaza browserele Playwright in locatia globala
|
||||
Foloseste aceasta comanda pentru update-uri de browsere
|
||||
#>
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
$ServiceName = "BTGOTelegramBot"
|
||||
|
||||
function Write-ColorOutput {
|
||||
param([string]$Message, [string]$Prefix = "")
|
||||
$color = switch ($Prefix) {
|
||||
"[OK]" { "Green" }
|
||||
"[INFO]" { "Cyan" }
|
||||
"[EROARE]" { "Red" }
|
||||
"[AVERTIZARE]" { "Yellow" }
|
||||
default { "White" }
|
||||
}
|
||||
if ($Prefix) {
|
||||
Write-Host "$Prefix " -ForegroundColor $color -NoNewline
|
||||
Write-Host $Message
|
||||
} else {
|
||||
Write-Host $Message -ForegroundColor $color
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host ""
|
||||
Write-Host ("=" * 80) -ForegroundColor Cyan
|
||||
Write-Host "UPDATE PLAYWRIGHT BROWSERS" -ForegroundColor Yellow
|
||||
Write-Host ("=" * 80) -ForegroundColor Cyan
|
||||
Write-Host ""
|
||||
|
||||
# Verifică environment variable
|
||||
$globalBrowserPath = [System.Environment]::GetEnvironmentVariable("PLAYWRIGHT_BROWSERS_PATH", [System.EnvironmentVariableTarget]::Machine)
|
||||
|
||||
if (-not $globalBrowserPath) {
|
||||
$globalBrowserPath = "C:\playwright-browsers"
|
||||
Write-ColorOutput "PLAYWRIGHT_BROWSERS_PATH nu este setat. Folosim: $globalBrowserPath" -Prefix "[AVERTIZARE]"
|
||||
|
||||
# Setează environment variable
|
||||
[System.Environment]::SetEnvironmentVariable("PLAYWRIGHT_BROWSERS_PATH", $globalBrowserPath, [System.EnvironmentVariableTarget]::Machine)
|
||||
Write-ColorOutput "Environment variable setata" -Prefix "[OK]"
|
||||
}
|
||||
|
||||
$env:PLAYWRIGHT_BROWSERS_PATH = $globalBrowserPath
|
||||
Write-ColorOutput "Locatie browsere: $globalBrowserPath" -Prefix "[INFO]"
|
||||
|
||||
# Creează director dacă nu există
|
||||
if (-not (Test-Path $globalBrowserPath)) {
|
||||
New-Item -ItemType Directory -Path $globalBrowserPath -Force | Out-Null
|
||||
icacls $globalBrowserPath /grant "SYSTEM:(OI)(CI)F" /T 2>&1 | Out-Null
|
||||
Write-ColorOutput "Director creat cu permisiuni SYSTEM" -Prefix "[OK]"
|
||||
}
|
||||
|
||||
# Update browsere
|
||||
Write-Host ""
|
||||
Write-ColorOutput "Instalare/Update browsere Playwright..." -Prefix "[INFO]"
|
||||
Write-Host "Aceasta poate dura 1-2 minute..." -ForegroundColor Gray
|
||||
Write-Host ""
|
||||
|
||||
try {
|
||||
python -m playwright install chromium
|
||||
|
||||
if ($LASTEXITCODE -ne 0) { throw }
|
||||
Write-Host ""
|
||||
Write-ColorOutput "Browsere actualizate cu succes!" -Prefix "[OK]"
|
||||
} catch {
|
||||
Write-ColorOutput "Update-ul browserelor a esuat!" -Prefix "[EROARE]"
|
||||
Read-Host "`nApasa Enter pentru a inchide"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Restart serviciu dacă rulează
|
||||
$service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
|
||||
|
||||
if ($service) {
|
||||
Write-Host ""
|
||||
Write-ColorOutput "Restart serviciu..." -Prefix "[INFO]"
|
||||
|
||||
if ($service.Status -eq "Running") {
|
||||
Restart-Service -Name $ServiceName -Force
|
||||
Start-Sleep -Seconds 3
|
||||
|
||||
$service = Get-Service -Name $ServiceName
|
||||
if ($service.Status -eq "Running") {
|
||||
Write-ColorOutput "Serviciu restartat cu succes!" -Prefix "[OK]"
|
||||
} else {
|
||||
Write-ColorOutput "Serviciul nu a pornit" -Prefix "[AVERTIZARE]"
|
||||
}
|
||||
} else {
|
||||
Write-ColorOutput "Serviciul nu rula" -Prefix "[INFO]"
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host ""
|
||||
Write-Host ("=" * 80) -ForegroundColor Green
|
||||
Write-Host "[SUCCES] BROWSERE ACTUALIZATE!" -ForegroundColor Green
|
||||
Write-Host ("=" * 80) -ForegroundColor Green
|
||||
|
||||
Read-Host "`nApasa Enter pentru a inchide"
|
||||
Reference in New Issue
Block a user