mirror of
https://github.com/ajisaacs/OpenNest.git
synced 2026-10-29 02:31:06 -04:00
feat(release): publish green master pushes as an opt-in development build
dev-build.yml runs after Cross-platform tests pass on a master push, packages that commit as X.Y.Z-dev.N (the minor after the newest vX.Y.Z tag, N the commit count) and replaces the single rolling dev-build pre-release. Only its publish job has release write access, and a run whose commit is no longer master's head publishes nothing. Tools > Options > Include development builds lets an installed copy take that pre-release; everyone else still sees full releases only. Publish-Windows.ps1 accepts -dev.N versions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9b4c1f51d0
commit
bc15c362e1
10 files changed
+196
-12
No files matched your search
@@ -1,7 +1,8 @@
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
[ValidatePattern('^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$')]
|
||||
# X.Y.Z for releases; X.Y.Z-dev.N for the automatic development build.
|
||||
[ValidatePattern('^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-dev\.(0|[1-9]\d*))?$')]
|
||||
[string] $Version,
|
||||
[string] $OutputDirectory = 'artifacts',
|
||||
# A built opennest-help site/ folder to package instead of the release pinned in help.json.
|
||||
@@ -67,7 +68,8 @@ try {
|
||||
if (-not (Test-Path (Join-Path $package $file) -PathType Leaf)) { throw "Package missing $file" }
|
||||
}
|
||||
$assemblyVersion = [Reflection.AssemblyName]::GetAssemblyName((Join-Path $package 'OpenNest.dll')).Version
|
||||
if ($assemblyVersion.ToString() -ne "$Version.0") { throw "Wrong assembly version: $assemblyVersion" }
|
||||
$numericVersion = $Version -replace '-.*$', ''
|
||||
if ($assemblyVersion.ToString() -ne "$numericVersion.0") { throw "Wrong assembly version: $assemblyVersion" }
|
||||
$runtime = Get-Content (Join-Path $package 'OpenNest.runtimeconfig.json') -Raw | ConvertFrom-Json
|
||||
if (-not $runtime.runtimeOptions.includedFrameworks) { throw 'Package is not self-contained.' }
|
||||
|
||||
|
||||
Reference in new issue
Block a user