Last Update

This commit is contained in:
Vadim Flowed
2026-05-10 19:18:50 +03:00
parent b7936a0912
commit 1036cb5739
40 changed files with 2918 additions and 0 deletions
@@ -0,0 +1,70 @@
param(
[Parameter(Mandatory = $false)]
[string]$WorkspaceDir = "workspace",
[Parameter(Mandatory = $false)]
[string]$ArtifactDir = "workspace/artifacts/wireframe-gen",
[Parameter(Mandatory = $false)]
[string]$LegacyArtifactDir = "artifacts/wireframe-gen"
)
$ErrorActionPreference = "Stop"
function Get-RepoRoot {
return (Split-Path -Parent (Split-Path -Parent $PSScriptRoot))
}
function Resolve-RepoPath {
param(
[string]$Root,
[string]$Path
)
if ([System.IO.Path]::IsPathRooted($Path)) { return $Path }
return Join-Path $Root $Path
}
function New-Directory {
param([string]$Path)
if (-not (Test-Path -LiteralPath $Path)) {
New-Item -ItemType Directory -Force -Path $Path | Out-Null
}
}
function Test-DirectoryHasFiles {
param([string]$Path)
if (-not (Test-Path -LiteralPath $Path)) { return $false }
return $null -ne (Get-ChildItem -LiteralPath $Path -Force -Recurse -File | Select-Object -First 1)
}
$root = Get-RepoRoot
$workspacePath = Resolve-RepoPath -Root $root -Path $WorkspaceDir
$artifactPath = Resolve-RepoPath -Root $root -Path $ArtifactDir
$legacyArtifactPath = Resolve-RepoPath -Root $root -Path $LegacyArtifactDir
New-Directory -Path $workspacePath
New-Directory -Path $artifactPath
New-Directory -Path (Join-Path $workspacePath "system-feedback/bug-reports")
New-Directory -Path (Join-Path $workspacePath ".hot-update/backups")
$targetHadFiles = Test-DirectoryHasFiles -Path $artifactPath
$legacyExists = Test-Path -LiteralPath $legacyArtifactPath
$copiedLegacy = $false
if ($legacyExists -and -not $targetHadFiles) {
Get-ChildItem -LiteralPath $legacyArtifactPath -Force | ForEach-Object {
Copy-Item -LiteralPath $_.FullName -Destination $artifactPath -Recurse -Force
}
$copiedLegacy = $true
}
if (-not (Test-DirectoryHasFiles -Path $artifactPath)) {
$initArtifactsScript = Join-Path $root "scripts/wireframe/init-artifacts.ps1"
powershell -NoProfile -ExecutionPolicy Bypass -File $initArtifactsScript -ArtifactDir $artifactPath | Out-Null
}
Write-Output "Workspace initialized: $workspacePath"
Write-Output "Artifact dir: $artifactPath"
if ($copiedLegacy) {
Write-Output "Copied legacy artifacts from $legacyArtifactPath. Legacy artifacts were not deleted."
}