[6.1.5] Fix symbols publishing variables for release/6.1 pipelines#4231
[6.1.5] Fix symbols publishing variables for release/6.1 pipelines#4231paulmedynski wants to merge 5 commits intorelease/6.1from
Conversation
- Add akv-variables-v2 group to common-variables.yml to provide all symbols publishing variables - Add alias variables (SymbolServer, SymbolTokenUri) to map akv-variables-v2 names - Remove redundant Release Variables group reference from mds-variables.yml This ensures the main MDS pipeline has access to all symbols variables (SymbolsAzureSubscription, SymbolsPublishProjectName, SymbolsPublishServer, SymbolsPublishTokenUri, SymbolsUploadAccount) similar to the AKV pipeline. Related to build failure 148990 where symbols publishing was missing variable definitions.
- Remove mds-variables.yml template reference from build-variables.yml - Remove mds-variables.yml template reference from mds-validation-variables.yml - Delete mds-variables.yml file The file is no longer needed since its content (symbols publishing variables) is now consolidated in common-variables.yml via the akv-variables-v2 group.
There was a problem hiding this comment.
Pull request overview
This PR updates the release/6.1 “libraries” pipeline variable wiring so the MDS symbols publishing flow uses the same ADO variable group inputs as the AKV pipeline, and removes the now-obsolete MDS-specific variable template.
Changes:
- Remove the
mds-variables.ymltemplate usage (and delete the template file). - Import
akv-variables-v2intoeng/pipelines/libraries/common-variables.yml. - Add
SymbolServer/SymbolTokenUrialiases that map toSymbolsPublishServer/SymbolsPublishTokenUrifor compatibility with existing symbols publishing steps.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| eng/pipelines/libraries/mds-variables.yml | Removed obsolete variable template (Release Variables group indirection). |
| eng/pipelines/libraries/mds-validation-variables.yml | Drops reference to removed mds-variables.yml; relies on common-variables.yml. |
| eng/pipelines/libraries/common-variables.yml | Adds akv-variables-v2 variable group + defines SymbolServer/SymbolTokenUri aliases. |
| eng/pipelines/libraries/build-variables.yml | Drops reference to removed mds-variables.yml; relies on common-variables.yml. |
| $azureSubscription = "Symbols publishing Workload Identity federation service-ADO.Net" | ||
| $publishToInternalServer = "${{parameters.publishToServers.internal }}".ToLower() | ||
| $publishToPublicServer = "${{parameters.publishToServers.public }}".ToLower() |
There was a problem hiding this comment.
In the AzureCLI inline script, $azureSubscription is assigned but never used (the task already sets azureSubscription via inputs). This adds noise and can be misleading when troubleshooting—consider removing the unused variable, or use it to validate/log the configured subscription consistently.
| $requestNameRegistrationBody = "{'requestName': '$requestName'}" | ||
| $publishSymbolsBody = "{'publishToInternalServer': $publishToInternalServer, 'publishToPublicServer': $publishToPublicServer}" |
There was a problem hiding this comment.
$requestNameRegistrationBody and $publishSymbolsBody are built using single quotes and string interpolation. Single quotes are not valid JSON and this approach won’t escape special characters in $requestName, which can cause hard-to-diagnose REST failures. Consider constructing a PowerShell hashtable/object and using ConvertTo-Json for the request bodies.
|
I proved that the old pipeline in ADO.Net, using these changes, just couldn't communicate with the symbols publishing server. Creating a new ADO.Net pipeline, and using these same changes, works fine. No need for this work though. #4230 adopts our newer OneBranch style and avoids a bunch of the old baggage here. |
Summary
This updates the release/6.1 pipeline variable wiring so the MDS symbols publishing flow uses the same symbols publishing variables as the AKV pipeline.
Changes
akv-variables-v2variable group to the shared pipeline common variablesSymbolServerandSymbolTokenUrialiases backed by the AKV symbols publishing variablesmds-variables.ymltemplate and its referencesValidation
mds-variables.ymlreferences were removedNotes