Skip to content

fix(release): switch NuGet publishing to trusted publishing - #500

Merged
DamianReeves merged 1 commit into
mainfrom
fix/nuget-trusted-publishing
Nov 7, 2026
Merged

DamianReeves merged 1 commit into
mainfrom
fix/nuget-trusted-publishing

Conversation

@DamianReeves

Copy link
Copy Markdown
Member

The latest release failed on the first NuGet push because the stored NUGET_KEY had expired: https://github.com/finos/morphir-dotnet/actions/runs/42360680040. Deployment now exchanges a GitHub OIDC token through the pinned NuGet/login v1.2.0 action immediately before publishing, and passes only that temporary credential to PublishAll. The stored NuGet keys are no longer read.

The publishing job uses the production environment to match the newly created NuGet policy. Only that job receives id-token: write. A preflight check reports a missing NUGET_USER, and the deployment guide now documents the policy, scopes and recovery steps. Regression tests cover temporary credential use, OIDC permission scope and the required environment.

Repository setup completed: NUGET_USER=DamReev and the production Actions environment. The NuGet policy shown by the maintainer is active for package owner Morphir, glob Morphir*, finos/morphir-dotnet, deployment.yml, environment production, with permission to push new packages and versions. Live OIDC exchange remains to be verified by the next deployment.

Validation:

  • All 52 build/package tests pass, including three publishing regression tests. Each new contract was checked red before updating the workflow, then green.
  • C# formatting verification and git diff --check pass.
  • actionlint passes with ShellCheck disabled. With ShellCheck enabled, both main and this branch report the same five pre-existing findings in version extraction.
  • Full TestAll attempted. Build/package validation passed; the unit suites finished with one Tooling BDD failure, Complete typed objects reach the reusable editor, matching the Windows config.edit_rolled_back issue Configuration edits roll back on transient Windows file locks #496. That scenario passed on its single isolated retry. Other suites passed; no application code changed.

After merge, start a new deployment workflow_dispatch on main for 0.4.0-alpha.1. Re-running the old failed run would keep its stored-key workflow. This PR does not trigger publication or move the existing tag.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-07T13:33:47.112838Z 918b372 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@DamianReeves
DamianReeves merged commit 3bbca71 into main Nov 7, 2026
13 of 14 checks passed
@DamianReeves
DamianReeves deleted the fix/nuget-trusted-publishing branch November 7, 2026 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant