This repository has been archived on 2026-10-29. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
EveUnity/scripts/build-release-request.ps1

31 lines
1.3 KiB
PowerShell
Raw Permalink Normal View History

2026-07-10 02:42:16 +01:00
param(
[string] $OutputPath = "artifacts\release\request.json"
)
$ErrorActionPreference = "Stop"
$repoRoot = Split-Path -Parent $PSScriptRoot
$capabilityPath = Join-Path $repoRoot "packages\org.gamecult.eve.unity-scene\eve-runtime-capability.json"
$packagePath = Join-Path $repoRoot "packages\org.gamecult.eve.unity-scene\package.json"
$capability = Get-Content -Raw $capabilityPath | ConvertFrom-Json
$package = Get-Content -Raw $packagePath | ConvertFrom-Json
$contract = $capability.lifecycle.release.releaseContract
$absoluteOutput = if ([IO.Path]::IsPathRooted($OutputPath)) { $OutputPath } else { Join-Path $repoRoot $OutputPath }
$request = [ordered]@{
schema = $contract.requestSchema
ownerRepo = $contract.ownerRepo
repository = "GameCult/EveUnity"
packageName = $contract.packageName
version = $package.version
packageRoot = $contract.packageRoot
versionSource = $contract.versionSource
tagName = $contract.tagPattern.Replace('{version}', $package.version)
artifactKind = $contract.artifactKind
artifactPath = $contract.artifactPattern.Replace('{version}', $package.version)
dependencies = $package.dependencies
}
New-Item -ItemType Directory -Force -Path (Split-Path -Parent $absoluteOutput) | Out-Null
$request | ConvertTo-Json -Depth 16 | Set-Content -LiteralPath $absoluteOutput
Write-Host $absoluteOutput