Snapshot before the quality program (relevance gates, tiered mapping, QA linter). v1 is the immutable before/after reference; evidence crawl was at ~175/3039 occupations when tagged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PDKeXvpT6tENSvyQGLV1Uq
49 lines
2.0 KiB
PowerShell
49 lines
2.0 KiB
PowerShell
# One-shot: Gitea neustarten (Collar-Landingpage aktivieren), auf Health warten,
|
|
# dann by-industry-Baum (White/Blue-Gruppierung) + marketplace.json (collar-Feld)
|
|
# pushen. Detached ausfuehren.
|
|
$ErrorActionPreference = "Continue"
|
|
$dev = "C:\dev\skillfactor"
|
|
$py = "$dev\.venv\Scripts\python.exe"
|
|
$gitea = "C:\Program Files (x86)\TempoBill\Zeiterfassung.Cloud\Tools\gitea"
|
|
$log = "$dev\docs\logs\collar_finish.log"
|
|
|
|
function Log($m) { "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') $m" | Out-File $log -Append -Encoding utf8 }
|
|
|
|
Log "restarting gitea for collar landing page..."
|
|
Stop-Process -Name gitea -Force -ErrorAction SilentlyContinue
|
|
Start-Sleep -Seconds 15
|
|
& "$gitea\start-gitea.ps1" | Out-Null
|
|
|
|
$deadline = (Get-Date).AddMinutes(90)
|
|
$healthy = $false
|
|
while ((Get-Date) -lt $deadline) {
|
|
try {
|
|
$r = Invoke-WebRequest -Uri "http://127.0.0.1:3300/api/healthz" -UseBasicParsing -TimeoutSec 10
|
|
if ($r.StatusCode -eq 200) { $healthy = $true; break }
|
|
} catch {}
|
|
Start-Sleep -Seconds 30
|
|
}
|
|
if (-not $healthy) { Log "WARN: gitea not healthy after 90 min"; exit 1 }
|
|
Log "gitea healthy."
|
|
|
|
Set-Location $dev
|
|
cmd /c "`"$py`" pipeline\p4c_industry_index.py >> `"$log`" 2>&1"
|
|
Log "by-industry pushed (exit $LASTEXITCODE)"
|
|
cmd /c "`"$py`" pipeline\push_marketplace.py >> `"$log`" 2>&1"
|
|
Log "marketplace pushed (exit $LASTEXITCODE)"
|
|
|
|
# Showcase-Pakete sofort mit farbigen Pies pushen (Rest folgt mit dem
|
|
# Evidence-Re-Push automatisch)
|
|
foreach ($slug in @("recruitment-consultant", "lawyer", "database-administrator", "web-designer")) {
|
|
cmd /c "`"$py`" pipeline\p4_publish.py $slug >> `"$log`" 2>&1"
|
|
Log "showcase pushed: $slug (exit $LASTEXITCODE)"
|
|
}
|
|
|
|
# Verifikation der Landingpage
|
|
try {
|
|
$r = Invoke-WebRequest -Uri "http://127.0.0.1:3300/" -UseBasicParsing -TimeoutSec 60
|
|
if ($r.Content -match "white-collar professions") { Log "VERIFIED: collar landing page live" }
|
|
else { Log "WARN: collar text still missing on landing page" }
|
|
} catch { Log "WARN: landing page check failed" }
|
|
Log "collar finish COMPLETE"
|