-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Restore OfficialBuildId for proper CI versioning #33209
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
The default _OfficialBuildIdArgs was changed to empty in commit 4fcc7b2, which caused builds to be treated as PR validation builds instead of official CI builds. This resulted in packages having version 10.0.30-ci instead of the expected 10.0.30-ci.main.YYMMDD.r format.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR addresses a CI build versioning issue where packages were incorrectly labeled as 10.0.30-ci instead of the expected date-based format 10.0.30-ci.main.YYMMDD.r. The fix restores the proper OfficialBuildId configuration that was inadvertently removed in a previous commit and corrects a typo in the variable name.
Key changes:
- Restores default value for
_OfficialBuildIdArgsto properly passOfficialBuildIdto MSBuild - Fixes typo:
_BuildOfficalId→_BuildOfficialId
Fixed in all pipeline files: - eng/pipelines/arcade/variables.yml - eng/pipelines/ci-official.yml - eng/pipelines/handlers.yml - eng/pipelines/common/sdk-insertion.yml - eng/pipelines/common/variables.yml
0af51fd to
79911a2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.
Include PR number in the actual package version by modifying PreReleaseVersionLabel for PR builds. This ensures the PR number is part of the NuGet package version, not just build metadata. PR builds will now have versions like: 10.0.30-ci.main.pr12345.25618.1 Instead of just: 10.0.30-ci
7cee73f to
5dcc9e1
Compare
Pass PreReleaseVersionLabel=ci.pr{number} through build args only for PR builds
(Build.Reason == PullRequest) so the PR number appears in the actual package
version, not just metadata. CI and nightly builds remain unaffected.
9d1289d to
8548976
Compare
Note
Are you waiting for the changes in this PR to be merged?
It would be very helpful if you could test the resulting artifacts from this PR and let us know in a comment if this change resolves your issue. Thank you!
Description
This PR fixes CI and PR build versioning issues and includes several improvements to the pipeline configuration.
Root Cause
In commit 4fcc7b2, the default
_OfficialBuildIdArgswas changed to an empty string. This caused theOfficialBuildIdto not be passed to builds, resulting in Arcade treating them as PR validation builds instead of official CI builds. Packages were being labeled as10.0.30-ciinstead of the expected format10.0.30-ci.main.YYMMDD.r.Changes
Restore default
_OfficialBuildIdArgs: The default value now passesOfficialBuildIdto the build process, which enables proper versioning with the date-based suffix.Fix typo across multiple files:
_BuildOfficalId→_BuildOfficialId(fixed in 6 locations)Include PR number in package version for PR builds: PR builds now use
PreReleaseVersionLabel=ci.pr{number}so the PR number appears in the actual NuGet package filename, not just in build metadata.Expected Results
CI builds from the main branch will produce packages with versions like:
10.0.30-ci.main.25618.1(where25618is SHORT_DATE and1is the daily revision)PR builds will produce packages with versions like:
10.0.30-ci.pr33209.25618.1(where33209is the PR number)Instead of the previous broken format:
10.0.30-ciFiles Changed
eng/pipelines/arcade/variables.yml- Main fix + PR version labeleng/pipelines/ci-official.yml- Typo fixeng/pipelines/handlers.yml- Typo fix (2 occurrences)eng/pipelines/common/sdk-insertion.yml- Typo fixeng/pipelines/common/variables.yml- Typo fix