Release Flow
Release Flow
Section titled “Release Flow”package.jsonis the authoritative version.Purview.BuildSdkreads it, so no project file carries a version.- A pull request runs the shared
purview-dev/buildpipeline (restore, build, lint, every test tier, pack and pack validation) and the packed-consumer gate. - A push to
mainruns the release action withRelease:Mode=NuGet: it packs, publishes to nuget.org through Trusted Publishing, and creates thev<version>GitHub release, only when that tag does not already exist. Bumppackage.jsonand add aCHANGELOG.mdentry to release. .config/purview-build.json’sPackValidation.RequiredContentis the exhaustive list of what the package ships;just pipeline-pack-validateruns the same validation locally.
To try a build in another repository before releasing it:
just pipeline-local-release --PublishLocalNuGet:LocalFeedPath=p:/_sync-projects/.local-nuget/Publish a new version each time: NuGet reuses an already-extracted package with the same id and version.