Skip to content

PROZESSING-Installation ​

Alle für das PROZESSING notwendigen Ordner und Dateien werden unter D:\TBBM abgelegt. Die eigentliche PROZESSING-Installation befindet sich im Order D:\TBBM\PROZESSING. Alternative: anderer Laufwerksbuchstabe, wenn kein D:\ vorhanden ist.

D:\TBBMBeschreibung
D:\TBBM\jdkJava-Installation
D:\TBBM\PROZESSINGScripts, libraries, INI-Dateien und logs für das PROZESSING
D:\TBBM\PROZESSING\binTools wie curl, procexp64, Procmon64
D:\TBBM\PROZESSING\iniOrdner für INI-Dateien und andere Konfigurationsdateien
D:\TBBM\PROZESSING\logsLogdateien für jeden Job bzw. Task
D:\TBBM\PROZESSING\prozessing.pyzTBBM PROZESSING Python-Code
D:\TBBM\pythonPython-Installation
D:\TBBM\scriptsOrdner für zusätzlich entwickelte Kunden-Scripts
D:\TBBM\WiskiPlotMapInstallation von TBBM WiskiPlotMap

Aktualisierung aus CI-Builds ​

Die CI-Builds (z. B. PROZESSING-a3b20b41.zip und PROZESSING-python-win-a3b20b41.zip) werden mit folgendem Script als install.ps1 installiert. Die vorherige Installation wird davor nach D:\TBBM\PROZESSING\yyyy-MM-dd.bak\ verschoben.

powershell
<#
.SYNOPSIS
Installiert PROZESSING-CI-Builds (prozessing.pyz und/oder python/) nach D:\TBBM,
die vorherige Installation wird davor nach D:\TBBM\PROZESSING\yyyy-MM-dd.bak\ verschoben.

.EXAMPLE
.\install.ps1 PROZESSING-a3b20b41.zip PROZESSING-python-win-a3b20b41.zip
#>
[CmdletBinding(PositionalBinding = $false)]
param(
    [Parameter(Mandatory, ValueFromRemainingArguments)][string[]]$Zip,
    [string]$Root = "D:\TBBM"
)
$ErrorActionPreference = "Stop"

$targets = [ordered]@{
    "python"         = Join-Path $Root "python"
    "prozessing.pyz" = Join-Path $Root "PROZESSING\prozessing.pyz"
}
$backup = Join-Path $Root "PROZESSING\$(Get-Date -Format yyyy-MM-dd).bak"
$tmp = Join-Path $Root "PROZESSING\install.tmp"

if (Test-Path $tmp) {
    Write-Host "Entferne altes Temp-Verzeichnis $tmp"
    Remove-Item $tmp -Recurse -Force
}
foreach ($z in $Zip) {
    Write-Host "Entpacke $z nach $tmp"
    Expand-Archive -Path $z -DestinationPath $tmp
}

foreach ($name in $targets.Keys) {
    $new = Join-Path $tmp $name
    $old = $targets[$name]
    if (-not (Test-Path $new)) {
        Write-Host "Ignoriere $name (nicht in den ZIP-Dateien enthalten)"
        continue
    }
    if (Test-Path $old) {
        Write-Host "Erstelle Sicherungsverzeichnis $backup"
        New-Item -ItemType Directory -Force $backup | Out-Null
        Write-Host "Sichere $old nach $backup"
        Move-Item $old $backup
    }
    Write-Host "Installiere $new nach $old"
    Move-Item $new $old
}
Write-Host "Entferne Temp-Verzeichnis $tmp"
Remove-Item $tmp -Recurse -Force
Write-Host "Installation abgeschlossen"