Switch ESRP service connection to wif2 to fix npm publish - #672
Merged
David Obando (DavidObando) merged 1 commit intoAug 25, 2026
Conversation
The TypeScript build-and-publish pipeline fails in the EsrpRelease task while acquiring a token: AADSTS700213: No matching federated identity record found for presented assertion subject The 'Devtunnels-esrp-ame-msi' service connection's federated identity credential no longer matches the assertion subject presented by the ADO v5 agent, so the release gateway is never reached and no package is published. dev-tunnels-ssh hit the same failure and resolved it by moving to the 'Devtunnels-esrp-ame-msi-wif2' connection in microsoft/dev-tunnels-ssh@d8a9ff1. This applies the equivalent change here; everything else about the ESRP configuration (tenant, client id, key vault, signing certificate, task version) is unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
Member
Author
|
/azp run |
|
Azure Pipelines: 2 pipeline(s) were filtered out due to trigger conditions. |
David Obando (DavidObando)
enabled auto-merge (squash)
August 25, 2026 02:48
David Obando (DavidObando)
deleted the
fix/esrp-wif2-service-connection
branch
August 25, 2026 02:52
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.
Problem
typescript-build-and-publish.yamlfails in theEsrpReleasetask, so no npm package is published. The task fails while acquiring a token, before the release gateway is ever contacted:The
Devtunnels-esrp-ame-msiservice connection's federated identity credential no longer matches the assertion subject presented by the ADO v5 agent.Why it surfaced now
This pipeline is path-triggered on
ts, so it runs only when the TypeScript sources change. It last ran successfully on 2026-06-22; the next run was 2026-08-25, which failed. The service connection broke somewhere in between and nothing exercised it until now.cs-ci-build.yamlis unaffected — it is a separate pipeline, triggered oncs, that pushes through thedev-tunnels-nugetfeed credential and never touches ESRP. As a result the NuGet packages have continued to publish while the npm packages have fallen behind.Fix
dev-tunnels-sshhit this exact failure and resolved it by switching to theDevtunnels-esrp-ame-msi-wif2connection in microsoft/dev-tunnels-ssh@d8a9ff1 ("Switch ESRP service connection to wif2 for ADO agent v5 compatibility"). Its pipeline has published successfully ever since — most recently in build 15078613, where the sameEsrpRelease@11task returned a Release Id.This applies the equivalent one-line change here.
Everything else about the ESRP configuration is deliberately unchanged and already matches the working SSH pipeline:
33e01921-4d64-4f8c-a055-5bdaffd5e33d142047f4-eda8-4853-8776-c2e81803ea13tunnels-ppe-esrp-kvesrp-signEsrpRelease@11The surrounding comment block is updated to record the reason, so the next person to read it does not restore the old connection.
Before merging
Please confirm that
Devtunnels-esrp-ame-msi-wif2is authorized for this pipeline (Dev-Tunnels SDK TypeScript CI Build, definition16353). Service connections require per-pipeline authorization unless they are open to all pipelines, so the first run may otherwise stop on an authorization prompt.Validation
The YAML parses, and
EsrpConnectedServiceNameresolves through to the task'sconnectedservicenameinput. The change cannot be exercised further without running the release pipeline itself, which publishes.