61 lines
2.7 KiB
PowerShell
61 lines
2.7 KiB
PowerShell
<#
|
|
.SYNOPSIS
|
|
Publiceert MijnBesluit.Uitroller (het venster op je eigen pc) naar D:\MijnBesluitTools\pc,
|
|
met behoud van je eigen instellingen en geheimen.
|
|
|
|
.DESCRIPTION
|
|
D:\publish is van de uitrolPAKKETTEN (de zip's voor site/socketserver/apk) en blijft daarvoor
|
|
gereserveerd. De uitroller zelf krijgt, net als RenH.Uitroller met D:\RenHTools, zijn eigen map:
|
|
|
|
D:\MijnBesluitTools\pc\ - de exe en alles wat dotnet publish neerzet
|
|
D:\MijnBesluitTools\uitroller.json - server, geheim, projectmap, testadres, enz.
|
|
D:\MijnBesluitTools\uitroller.secrets.json - het Gitea-token (los bestand, buiten git)
|
|
|
|
De twee bestanden hierboven staan een map BOVEN de exe, dus een publish (die alleen de
|
|
pc-submap ververst) kan ze niet wissen - dat is precies waarom Instellingen.cs en
|
|
Uitrollergeheimen.cs ze daar zoeken (net als RenH.Uitroller bij D:\RenHTools).
|
|
|
|
.EXAMPLE
|
|
cd D:\MijnBesluit
|
|
.\tools\Uitroller-publiceren.ps1
|
|
#>
|
|
[CmdletBinding()]
|
|
param(
|
|
[string] $Doel = 'D:\MijnBesluitTools'
|
|
)
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
$Projectmap = Split-Path $PSScriptRoot -Parent
|
|
$Pcmap = Join-Path $Doel 'pc'
|
|
|
|
New-Item -ItemType Directory -Force -Path $Doel | Out-Null
|
|
New-Item -ItemType Directory -Force -Path $Pcmap | Out-Null
|
|
|
|
Write-Host ''
|
|
Write-Host "MijnBesluit.Uitroller -> $Pcmap" -ForegroundColor Cyan
|
|
dotnet publish (Join-Path $Projectmap 'src\MijnBesluit.Uitroller') -c Release -o $Pcmap --nologo
|
|
if ($LASTEXITCODE -ne 0) { throw 'Publiceren van MijnBesluit.Uitroller is mislukt.' }
|
|
|
|
# uitroller.json en uitroller.secrets.json staan in $Doel zelf (een map boven de exe) en worden
|
|
# door dotnet publish dus niet aangeraakt - alleen $Pcmap wordt ververst. Bestaat
|
|
# uitroller.secrets.json daar nog nergens (eerste keer publiceren), dan hier een lege maar
|
|
# geldige versie neerzetten, anders moet je 'm de eerste keer met de hand aanmaken voordat de
|
|
# Gitea-knoppen iets kunnen.
|
|
$geheimenPad = Join-Path $Doel 'uitroller.secrets.json'
|
|
if (-not (Test-Path $geheimenPad)) {
|
|
Set-Content -Path $geheimenPad -Value "{`n `"Gitea`": { `"Token`": `"`" }`n}`n" -NoNewline -Encoding UTF8
|
|
Write-Host " uitroller.secrets.json aangemaakt (leeg) - vul je Gitea-token in op:" -ForegroundColor Yellow
|
|
Write-Host " $geheimenPad" -ForegroundColor Yellow
|
|
}
|
|
|
|
$instellingenPad = Join-Path $Doel 'uitroller.json'
|
|
if (-not (Test-Path $instellingenPad)) {
|
|
Write-Host " Let op: er staat nog geen uitroller.json in $Doel." -ForegroundColor Yellow
|
|
Write-Host " Bij de eerste start kopieert het venster 'm zelf over vanuit $Pcmap." -ForegroundColor Yellow
|
|
}
|
|
|
|
Write-Host ''
|
|
Write-Host 'Klaar.' -ForegroundColor Green
|
|
Write-Host " $Pcmap\MijnBesluit.Uitroller.exe"
|
|
Write-Host ''
|