Skip to content

IPublish: multi-channel, package-ID-aware publishing #333

Description

@ChrisonSimtian

Part of #332 (first concrete step — closes the immediate dogfooding gap).

IPublish.Publish today pushes all *.nupkg to a single NuGetSource with a single key. Our own release workflows therefore can't use it and inline dotnet nuget push in hand-written YAML instead.

Extend IPublish (or add a richer publish surface) to model:

  • Multiple targets in one run: GitHub Packages, nuget.org, GitHub Releases.
  • Package-ID routing: Fallout.* → nuget.org (opt-in) + GH Packages; Nuke.* shims → GH Packages only, never nuget.org ([P5] Ship Nuke.* type-forwarding shim packages on our GH Packages feed #47).
  • Per-lane/channel selection: alpha/preview → GH Packages only; GA → nuget.org opt-in + GH Releases.
  • Idempotent push (--skip-duplicate), per-target keys/sources.

Done when experimental.yml/preview.yml/release.yml can drop their inline dotnet nuget push and call dotnet fallout instead.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions