Skip to content

[release/13.0] Refactor overrideStagingHash to overrideStagingFeed and add overrideS…#12825

Merged
joperezr merged 2 commits intorelease/13.0from
mitchdenny/backport-12775
Nov 7, 2025
Merged

[release/13.0] Refactor overrideStagingHash to overrideStagingFeed and add overrideS…#12825
joperezr merged 2 commits intorelease/13.0from
mitchdenny/backport-12775

Conversation

@mitchdenny
Copy link
Member

Backport of #12816 to release/13.0

Customer Impact

Only impacts when staging feature flag is enabled, but allows configurability of both the feed that is used (ability to override it completely) and allows the ability to tune whether it surfaces stable or prerelease builds.

Testing

Manual and one additional unit test.

Risk

Low.

Regression?

…tagingQuality configuration (#12775)

* Initial plan

* Refactor overrideStagingHash to overrideStagingFeed for full URL override

Co-authored-by: mitchdenny <513398+mitchdenny@users.noreply.github.com>

* Add URL validation for overrideStagingFeed configuration

Co-authored-by: mitchdenny <513398+mitchdenny@users.noreply.github.com>

* Add overrideStagingQuality configuration to control staging channel quality

Co-authored-by: mitchdenny <513398+mitchdenny@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: mitchdenny <513398+mitchdenny@users.noreply.github.com>
Copilot AI review requested due to automatic review settings November 7, 2025 22:04
@github-actions
Copy link
Contributor

github-actions bot commented Nov 7, 2025

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 12825

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 12825"

@mitchdenny mitchdenny changed the title Refactor overrideStagingHash to overrideStagingFeed and add overrideS… [release/13.0] Refactor overrideStagingHash to overrideStagingFeed and add overrideS… Nov 7, 2025
Copy link
Contributor

Copilot AI left a 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 pull request refactors the staging channel configuration in the Aspire CLI from a hash-based approach to a feed URL-based approach, providing more flexibility for configuring custom staging feeds and their quality settings.

Key Changes:

  • Replaced overrideStagingHash configuration with overrideStagingFeed accepting full NuGet feed URLs
  • Added overrideStagingQuality configuration to control package channel quality (Stable, Prerelease, or Both)
  • Refactored GetCommitHashForStagingChannel() to GetStagingFeedUrl() with URL validation and fallback to assembly version extraction

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
src/Aspire.Cli/Packaging/PackagingService.cs Refactored staging channel creation to use full feed URLs instead of commit hashes, added URL validation, and implemented quality override support
tests/Aspire.Cli.Tests/Packaging/PackagingServiceTests.cs Updated existing tests to use feed URLs instead of hashes, added comprehensive test coverage for URL validation, quality override scenarios, and channel ordering

@joperezr joperezr added the Servicing-approved Approved for servicing release label Nov 7, 2025
@joperezr joperezr merged commit 43e3ee5 into release/13.0 Nov 7, 2025
582 of 585 checks passed
@joperezr joperezr deleted the mitchdenny/backport-12775 branch November 7, 2025 23:03
@github-actions github-actions bot locked and limited conversation to collaborators Dec 8, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Servicing-approved Approved for servicing release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants