Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: microsoft/aspire
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v13.4.2
Choose a base ref
...
head repository: microsoft/aspire
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v13.4.3
Choose a head ref
  • 3 commits
  • 39 files changed
  • 6 contributors

Commits on Jun 5, 2026

  1. [release/13.4] Add persistent container test coverage (#17884)

    * Add per-integration persistence tests
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Add CLI persistent container E2E test
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Fix persistence test compilation
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Address persistence test review feedback
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Add Azure emulator mode coverage
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Address emulator mode test review feedback
    
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    
    * Stabilize persistent container tests
    
    Use an isolated user-secrets store for persistent container test runs so integration defaults can persist generated parameters across AppHost restarts. Avoid the CI container registry override for Azurite because the mirrored tag is unavailable.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Stop forcing test container registry in persistent helper
    
    Let persistent container tests use the same container registry configuration path as normal TestDistributedApplicationBuilder usage instead of forcing the test mirror from the helper.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Use start waits in persistent container E2E
    
    Avoid blocking the test server on dependency health checks in the CLI E2E scenario. The endpoint verification already retries real Redis, PostgreSQL, and Azure Storage operations after the resources have started.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Compare Docker container IDs in persistent tests
    
    Assert persistent container tests observe container.lifetime=Persistent and compare the actual container.id across AppHost runs instead of the stable DCP resource ID.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Read synthetic user secrets in persistent tests
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Allow persistent tests to opt into test registry
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Make persistent test secrets cleanup best effort
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Fix persistent container E2E networking
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Propagate CLI E2E start timeout
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
    Co-authored-by: danegsta <50252651+danegsta@users.noreply.github.com>
    Co-authored-by: David Negstad <David.Negstad@microsoft.com>
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    5 people authored Jun 5, 2026
    Configuration menu
    Copy the full SHA
    7b53b8c View commit details
    Browse the repository at this point in the history
  2. [release/13.4] Unblock WinGet Manifest job on locked-down 1ES agents;…

    … update manifest tags (#17958)
    
    * fix(winget): unblock WinGet Manifest job on locked-down 1ES agents
    
    The `🟣Install winget CLI` step on the WinGet Manifest job fails on
    the 1ES `1es-windows-2022` pool with:
    
      An attempt was made to access a socket in a way forbidden by its
      access permissions. (cdn.winget.microsoft.com:443)
    
    The step ran `Repair-WinGetPackageManager -Latest -Force -AllUsers`
    to (re)install the winget CLI, which downloads the
    Microsoft.DesktopAppInstaller MSIX from cdn.winget.microsoft.com.
    That CDN is not reachable from the locked-down 1ES pool, so the
    PowerShell step exits 1, `🟣Prepare WinGet manifests` is skipped,
    and `🔒 🟣Publish WinGet manifests` then fails because the manifest
    directory was never produced. The whole job aborts before any
    manifests reach the artifact share. This is the failure on
    release/13.4 builds 2989641, 2989822, 2990382, 2990509, 2990688.
    
    Replace the install/repair step with a probe-only step that records
    whether winget happens to be pre-installed on the image, and hardcode
    the downstream `prepare-manifest-artifact.ps1` call to `Offline`
    ValidationMode. The script tolerates a missing winget in Offline mode
    (logs a warning, still produces the manifest artifact) but hard-fails
    in Full mode — and Full mode is unreachable on this pool because
    winget cannot be installed. Drop the `skipUrlValidation` template
    parameter, the only callers (azure-pipelines.yml,
    azure-pipelines-unofficial.yml), and the `_PackagesPublished`
    variable composed only to feed it.
    
    Manifest validation is intentionally delegated to upstream
    `microsoft/winget-pkgs` CI — see the new "Validation model" section
    in eng/winget/README.md for what upstream checks (schema, binary AV
    scan, URL + SmartScreen, SHA256, install/uninstall in a clean VM).
    This matches the pattern used by every other Microsoft repo
    publishing to WinGet (PowerToys, terminal, winget-create itself,
    which also runs on the same 1ES `windows-2022` pool and likewise
    does not invoke winget in CI).
    
    End-to-end probe + prepare + publish path validated on internal
    build 2990922 (a sibling branch that exercised the WinGet Manifest
    job via a stage-condition override). Real-prod validation occurs
    when this lands on release/13.4 and the stage condition naturally
    includes it.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Update WinGet manifest tags
    
    The WinGet package template still categorized the Aspire CLI with the
    `dotnet` tag. Replace that tag with `csharp` and `typescript` so the
    package metadata better matches supported Aspire application languages.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * docs(winget): note GH Actions install + smoke-test path
    
    The 'Validation model' section originally implied the Aspire side does
    only generation + opportunistic `winget validate`. In fact
    `.github/workflows/prepare-installer-artifacts.yml` also runs
    `dogfood.ps1 -Force` (real `winget install --manifest` from the
    freshly built archive) plus a smoke test (`aspire new` + restore)
    against the installed shim on every PR. Document that. Clarify that the
    install-only path catches issues `winget validate` does not (SHA
    mismatch, broken `InstallerSwitches`, missing `Commands`), while the
    full install/uninstall round-trip remains an upstream-CI responsibility.
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Ankit Jain <radical@gmail.com>
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    3 people authored Jun 5, 2026
    Configuration menu
    Copy the full SHA
    59e06a4 View commit details
    Browse the repository at this point in the history
  3. Fix persistent container endpoint allocation (#17960)

    * Fix persistent container endpoint allocation
    
    Default persistent container endpoints to proxied unless proxy support is disabled, and remove delayed proxyless container endpoint allocation in favor of target-port public port defaults. Preserve endpoint and connection string event timing from release/13.3 and add coverage for the KeyVault emulator-style health check path.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Restore health check URI binding timing
    
    Set HTTP health check URIs during BeforeResourceStartedEvent again so surrogate resource builders that forward startup events continue to initialize their health checks. Add DCP coverage for the KeyVault-emulator-style surrogate pattern.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Bump Aspire patch version to 13.4.3
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Preserve blocking endpoint allocation dispatch
    
    Keep ResourceEndpointsAllocatedEvent dispatch aligned with release/13.4 so subscriber exceptions propagate and endpoint allocation callbacks complete before startup proceeds.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    * Stabilize Kafka persistent reuse test port
    
    Use a fixed public Kafka port for the persistent reuse test and let the shared persistent-container helper disable DCP test port randomization when a test needs explicit ports to remain stable.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
    danegsta and Copilot authored Jun 5, 2026
    Configuration menu
    Copy the full SHA
    4f21893 View commit details
    Browse the repository at this point in the history
Loading