Add EveUnity scene UPM artifact smoke
This commit is contained in:
parent
bdafa0295a
commit
b20e534c9c
13 changed files with 101 additions and 12 deletions
|
|
@ -1,7 +1,8 @@
|
|||
param(
|
||||
[string] $CapabilityManifestPath = "packages\org.gamecult.eve.unity-uitoolkit\eve-runtime-capability.json",
|
||||
[string] $RequestOutputPath = "artifacts\eveunity-uitoolkit-release-contract\latest\release-request.json",
|
||||
[string] $ProofOutputPath = "artifacts\eveunity-uitoolkit-release\latest\release-artifact.json"
|
||||
[string] $ProofOutputPath = "artifacts\eveunity-uitoolkit-release\latest\release-artifact.json",
|
||||
[string] $ReleaseContractSmokePath = "scripts\run-eveunity-release-contract-smoke.ps1"
|
||||
)
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
|
@ -45,13 +46,21 @@ $artifactBuilderPath = Join-Path $projectRoot $releaseContract.artifactBuilder
|
|||
if (-not (Test-Path -LiteralPath $artifactBuilderPath)) {
|
||||
throw "EveUnity release artifact builder not found: $($releaseContract.artifactBuilder)"
|
||||
}
|
||||
$releaseContractSmoke = if ([System.IO.Path]::IsPathRooted($ReleaseContractSmokePath)) {
|
||||
$ReleaseContractSmokePath
|
||||
} else {
|
||||
Join-Path $projectRoot $ReleaseContractSmokePath
|
||||
}
|
||||
if (-not (Test-Path -LiteralPath $releaseContractSmoke)) {
|
||||
throw "EveUnity release contract smoke not found: $ReleaseContractSmokePath"
|
||||
}
|
||||
|
||||
node --test (Join-Path $projectRoot "tools\eveunity\eveunity-release-artifact.test.mjs")
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "EveUnity release artifact tests failed with exit code $LASTEXITCODE"
|
||||
}
|
||||
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-release-contract-smoke.ps1") `
|
||||
& $releaseContractSmoke `
|
||||
-CapabilityManifestPath $CapabilityManifestPath `
|
||||
-OutputPath $RequestOutputPath
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ foreach ($stage in @("release", "test", "capture")) {
|
|||
}
|
||||
|
||||
$releaseContract = $manifest.lifecycle.release.releaseContract
|
||||
foreach ($field in @("ownerRepo", "packageName", "packageRoot", "versionSource", "tagPattern", "artifactKind", "requestSchema", "requestBuilder", "artifactPattern", "publishProof")) {
|
||||
foreach ($field in @("ownerRepo", "packageName", "packageRoot", "versionSource", "tagPattern", "artifactKind", "requestSchema", "requestBuilder", "artifactBuilder", "artifactPattern", "publishProof")) {
|
||||
if (-not $releaseContract.$field) {
|
||||
throw "EveUnity scene release contract missing $field"
|
||||
}
|
||||
|
|
@ -157,7 +157,7 @@ foreach ($pathProperty in @("packageRoot", "versionSource")) {
|
|||
throw "EveUnity scene release contract $pathProperty does not exist: $relativePath"
|
||||
}
|
||||
}
|
||||
foreach ($pathProperty in @("requestBuilder")) {
|
||||
foreach ($pathProperty in @("requestBuilder", "artifactBuilder")) {
|
||||
$relativePath = $releaseContract.$pathProperty
|
||||
$absolutePath = Join-Path $projectRoot $relativePath
|
||||
if (-not (Test-Path -LiteralPath $absolutePath)) {
|
||||
|
|
@ -223,6 +223,7 @@ foreach ($pathProperty in @("requestBuilder", "advertisementPath")) {
|
|||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-split-handoff-smoke.ps1")
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-provider-shell-smoke.ps1")
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-release-contract-smoke.ps1")
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-release-artifact-smoke.ps1")
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-capture-contract-smoke.ps1")
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-scene-capture-smoke.ps1")
|
||||
|
||||
|
|
|
|||
18
scripts/run-eveunity-scene-release-artifact-smoke.ps1
Normal file
18
scripts/run-eveunity-scene-release-artifact-smoke.ps1
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
param(
|
||||
[string] $CapabilityManifestPath = "runtimes\incubating\eve-unity-scene\eve-runtime-capability.json",
|
||||
[string] $RequestOutputPath = "artifacts\eveunity-scene-release-contract\latest\release-request.json",
|
||||
[string] $ProofOutputPath = "artifacts\eveunity-scene-release\latest\release-artifact.json"
|
||||
)
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
$projectRoot = Split-Path -Parent $PSScriptRoot
|
||||
& (Join-Path $projectRoot "scripts\run-eveunity-release-artifact-smoke.ps1") `
|
||||
-CapabilityManifestPath $CapabilityManifestPath `
|
||||
-RequestOutputPath $RequestOutputPath `
|
||||
-ProofOutputPath $ProofOutputPath `
|
||||
-ReleaseContractSmokePath "scripts\run-eveunity-scene-release-contract-smoke.ps1"
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "EveUnity scene release artifact smoke failed with exit code $LASTEXITCODE"
|
||||
}
|
||||
|
|
@ -26,7 +26,7 @@ $releaseContract = $manifest.lifecycle.release.releaseContract
|
|||
if ($null -eq $releaseContract) {
|
||||
throw "EveUnity scene release contract missing lifecycle.release.releaseContract"
|
||||
}
|
||||
foreach ($field in @("ownerRepo", "packageName", "packageRoot", "versionSource", "tagPattern", "artifactKind", "requestSchema", "requestBuilder", "artifactPattern", "publishProof")) {
|
||||
foreach ($field in @("ownerRepo", "packageName", "packageRoot", "versionSource", "tagPattern", "artifactKind", "requestSchema", "requestBuilder", "artifactBuilder", "artifactPattern", "publishProof")) {
|
||||
if (-not $releaseContract.$field) {
|
||||
throw "EveUnity scene release contract missing $field"
|
||||
}
|
||||
|
|
@ -45,9 +45,10 @@ if ($releaseContract.artifactKind -ne "upm-package") {
|
|||
}
|
||||
|
||||
$builderPath = Join-Path $projectRoot $releaseContract.requestBuilder
|
||||
$artifactBuilderPath = Join-Path $projectRoot $releaseContract.artifactBuilder
|
||||
$packagePath = Join-Path $projectRoot $releaseContract.versionSource
|
||||
$packageRoot = Join-Path $projectRoot $releaseContract.packageRoot
|
||||
foreach ($path in @($builderPath, $packagePath, $packageRoot)) {
|
||||
foreach ($path in @($builderPath, $artifactBuilderPath, $packagePath, $packageRoot)) {
|
||||
if (-not (Test-Path -LiteralPath $path)) {
|
||||
throw "EveUnity scene release contract path not found: $path"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ if (-not (Test-Path -LiteralPath $sourcePackageRoot)) {
|
|||
$moveSets = @($handoff.moveSets)
|
||||
$expectedMoveSets = @{
|
||||
"unity-scene-runtime-body" = "runtime-body"
|
||||
"unity-scene-upm-package" = "release"
|
||||
"unity-scene-world-surface-lowering" = "world-surface-lowering"
|
||||
"unity-scene-sai-plugin-projection" = "plugin-projection"
|
||||
"unity-scene-norn-plugin-projection" = "plugin-projection"
|
||||
|
|
@ -68,7 +69,7 @@ foreach ($id in $expectedMoveSets.Keys) {
|
|||
}
|
||||
$currentPaths = if ($null -eq $moveSet.currentPaths) { @() } else { @($moveSet.currentPaths) }
|
||||
$observedProviderPaths = if ($null -eq $moveSet.observedProviderPaths) { @() } else { @($moveSet.observedProviderPaths) }
|
||||
if ($id -in @("unity-scene-runtime-body", "unity-scene-world-surface-lowering", "unity-scene-sai-plugin-projection", "unity-scene-norn-plugin-projection", "unity-scene-tex-plugin-projection", "unity-scene-command-transport", "unity-scene-capture-lifecycle")) {
|
||||
if ($id -in @("unity-scene-runtime-body", "unity-scene-upm-package", "unity-scene-world-surface-lowering", "unity-scene-sai-plugin-projection", "unity-scene-norn-plugin-projection", "unity-scene-tex-plugin-projection", "unity-scene-command-transport", "unity-scene-capture-lifecycle")) {
|
||||
if ($currentPaths.Count -eq 0) {
|
||||
throw "EveUnity scene split handoff move set $id must name current Eve incubation paths"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -71,6 +71,7 @@ try {
|
|||
& (Join-Path $PSScriptRoot "run-eveunity-split-handoff-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveunity-release-artifact-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveunity-scene-split-handoff-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveunity-scene-release-artifact-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveunity-scene-lifecycle-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveelectron-split-handoff-smoke.ps1")
|
||||
& (Join-Path $PSScriptRoot "run-eveelectron-lifecycle-smoke.ps1")
|
||||
|
|
|
|||
|
|
@ -218,7 +218,7 @@ node $consumerScript $consumerExport `
|
|||
--expect-runtime-lifecycle-field "unity-uitoolkit:capture:captureContract.additionalProviderSurfaces.0.surfaceId:eve.world-smoke.surface" `
|
||||
--expect-runtime-lifecycle-field "unity-uitoolkit:capture:captureContract.additionalProviderSurfaces.1.providerId:aetheria" `
|
||||
--expect-runtime-lifecycle-field "unity-uitoolkit:capture:captureContract.additionalProviderSurfaces.1.surfaceId:aetheria.daemon.editor" `
|
||||
--expect-runtime-lifecycle-status unity-scene:release:pending-unity-scene-package `
|
||||
--expect-runtime-lifecycle-status unity-scene:release:unity-scene-upm-artifact-smoke `
|
||||
--expect-runtime-lifecycle-status unity-scene:test:provider-shell-contract-skeleton `
|
||||
--expect-runtime-lifecycle-status unity-scene:capture:pending-unity-scene-capture `
|
||||
--expect-runtime-lifecycle-pending "unity-scene:release:Unity scene package release" `
|
||||
|
|
@ -230,6 +230,7 @@ node $consumerScript $consumerExport `
|
|||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.versionSource:runtimes/incubating/eve-unity-scene/package.json" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.requestSchema:gamecult.eve.runtime_release_request.v1" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.requestBuilder:tools/eveunity/eveunity-release-contract.mjs" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.artifactBuilder:tools/eveunity/eveunity-release-artifact.mjs" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.artifactPattern:artifacts/eveunity-scene-release/{version}/org.gamecult.eve.unity-scene-{version}.tgz" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.requiredPackageDependencies.0.packageName:org.gamecult.eve.surface" `
|
||||
--expect-runtime-lifecycle-field "unity-scene:release:releaseContract.requiredPackageDependencies.0.ownerRepo:Eve" `
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ try {
|
|||
--expect-split-target-blocker-record EveUnity:runtime-status:unity-scene `
|
||||
--expect-split-target-blocker-record "EveUnity:pending-proof:Unity scene runtime body graduates to EveUnity outside Aetheria product code." `
|
||||
--expect-split-handoff-move EveUnity:unity-scene:unity-scene-runtime-body:current:exists:EveUnitySceneSurfaceLowerer.cs `
|
||||
--expect-split-handoff-move EveUnity:unity-scene:unity-scene-upm-package:current:exists:eveunity-release-artifact.mjs `
|
||||
--expect-split-handoff-move EveUnity:unity-scene:unity-scene-world-surface-lowering:current:exists:EveUnitySceneSurfaceLowerer.cs `
|
||||
--expect-split-handoff-move EveUnity:unity-scene:unity-scene-sai-plugin-projection:current:exists:SaiVisualNovelUnitySceneProjectionAdapter.cs `
|
||||
--expect-split-handoff-move EveUnity:unity-scene:unity-scene-norn-plugin-projection:current:exists:NornGraphUnitySceneProjectionAdapter.cs `
|
||||
|
|
|
|||
Loading…
Reference in a new issue