ci: migrate GitHub release pipeline from OneBranch to 1ES template#616
Merged
Conversation
Switch modelkit-release-github.yml to extend v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates, running on the ProjectReunionESPool-2022 pool with MMS2022-1ES-GPT. Split the original single-job pipeline into Prepare (downloads official build, stages wheels + parquets) and CreateGitHubRelease (releaseJob consuming the staged artifact), since 1ES Official only permits GitHubRelease@1 inside templateContext.type: releaseJob and that job type cannot run DownloadPipelineArtifact@2. Version is now derived from the wheel filename instead of pyproject.toml so the release job needs no source checkout.
DingmaomaoBJTU
approved these changes
May 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Switches .pipelines/modelkit-release-github.yml from
v2/OneBranch.Official.CrossPlat.yml@templatestov1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates, running onProjectReunionESPool-2022withMMS2022-1ES-GPT.This aligns the GitHub release pipeline with the PyPI release pipeline (#473) on the same 1ES template and pool. Trigger model is unchanged:
trigger: none, manual queue only,OFFICIAL_BUILD_IDparameter required,release/*branch condition on the stage.Pipeline shape
The single-job pipeline is split into two jobs because 1ES Official only allows
GitHubRelease@1insidetemplateContext.type: releaseJob, and areleaseJobcannot runDownloadPipelineArtifact@2:pool.type: windows) — downloads the official build artifacts byOFFICIAL_BUILD_ID, stages*.whl+ parquet runtime check rules into$(Build.SourcesDirectory)/release_assets, publishes them as pipeline artifactGitHubReleaseAssetsviatemplateContext.outputs.templateContext.type: releaseJob,isProduction: true) — consumesGitHubReleaseAssetsviatemplateContext.inputs, derives the version from the wheel filename (so no source checkout is needed), invokesGitHubRelease@1to create the tag + release.