Repository navigation
Remove temporary dashboard image version override - #21127
Mitch Denny (mitchdenny) wants to merge 1 commit into
Conversation
Restore product-version-based dashboard tags now that the canonical 17.0 image is published. Update resolver regression coverage and publisher snapshots. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: dd08f68e-0f17-48d1-9b60-f1d06967a7f5
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 21127Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 21127" |
Tests selectorSelects the full PR test matrix + all PR-gated jobs (ALL) — a rule matching 'eng/Versions.props' selects ALL Selection computed for commit |
There was a problem hiding this comment.
🟢 Approval recommended
The narrowly scoped cleanup preserves fallback behavior and is supported by regression coverage and reported successful image-pull and deployment checks.
No open issues 🎉
What changed in this PR
Removes the temporary dashboard image override so Docker Compose and Kubernetes publishers select the running product’s major/minor version, addressing #20068 without changing the repository path or product version.
Changes:
- Removes the build property, assembly metadata, and resolver override.
- Updates regression tests while preserving version-parsing and fallback coverage.
- Updates 28 publishing snapshots from dashboard tag
13.6to17.0.
| File | Description |
|---|---|
| tests/Aspire.Hosting.Yarp.Tests/Snapshots/YarpConfigGeneratorTests.GenerateEnvVariablesConfigurationDockerCompose.verified.env | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_ResourceWithProbes#00.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_HandlesSpecialResourceName#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_HandlesConditionalReferenceExpressionWithParameterCondition#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_HandlesConditionalReferenceExpression#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_GeneratesValidHelmChart#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_CustomWorkloadAndResourceType#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.PublishAsync_ConditionalWithParameterBranch_UsesIfElseSyntax#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.KubernetesWithProjectResources#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesPublisherTests.KubernetesMapsPortsForBaitAndSwitchResources#02.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesEnvironmentResourceTests.MultipleKubernetesEnvironmentsSupported/env2/templates/env2-dashboard/deployment.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/Snapshots/KubernetesEnvironmentResourceTests.MultipleKubernetesEnvironmentsSupported/env1/templates/env1-dashboard/deployment.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Kubernetes.Tests/DashboardImageTests.cs | Tests product-version selection and fallbacks. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.MultipleDockerComposeEnvironmentsSupported/env2/docker-compose.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.MultipleDockerComposeEnvironmentsSupported/env1/docker-compose.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.DockerSwarmUpdateConfigSerializedCorrectly.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.DockerSwarmDeploymentLabelsSerializedCorrectly.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.DockerComposeOnlyExposesExternalEndpoints.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposeTests.DashboardWithForwardedHeadersWritesEnvVar.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_WithDashboardEnabled_IncludesDashboardService.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_WithDashboard_HonorsRequiredOtlpProtocols.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_MultipleResourcesWithOtlp_ConfiguresAllForDashboard.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_HandlesConditionalReferenceExpressionWithParameterCondition.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_HandlesConditionalReferenceExpression.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PublishAsync_GeneratesValidDockerComposeFile.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.PrepareStep_ResolvesArbitraryIValueProviderSource.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.DockerComposeWithProjectResources.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.DockerComposeCorrectlyEmitsPortMappings.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/Snapshots/DockerComposePublisherTests.DockerComposeAppliesServiceCustomizations.verified.yaml | Expects dashboard 17.0. |
| tests/Aspire.Hosting.Docker.Tests/DashboardImageTests.cs | Verifies running publisher selects 17.0. |
| src/Shared/DashboardImage.cs | Removes override handling; preserves version resolution. |
| src/Aspire.Hosting.Kubernetes/Aspire.Hosting.Kubernetes.csproj | Removes override assembly metadata. |
| src/Aspire.Hosting.Docker/Aspire.Hosting.Docker.csproj | Removes override assembly metadata. |
| eng/Versions.props | Removes temporary image-tag property. |
Review effort: Balanced
|
Jose Perez Rodriguez (@joperezr) David Pine (@IEvangelist) — this removes the temporary dashboard image override now that the 17.0 image is available. Ready for your review. |
|
PR already for this here - #21119 |
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
|
Closing in favor of #21119. |
Description
Docker Compose and Kubernetes publishers now select the dashboard matching the running publisher's product major/minor version (
17.0), instead of the temporary13.6pin.Remove the temporary version property, assembly metadata, and resolver override path. Retain informational-version parsing, assembly-version fallback, and the existing defensive fallback for wholly unparseable versions. Update regression tests and regenerate 28 Docker, Kubernetes, and Yarp snapshots; their only content change is the dashboard tag.
The canonical repository is already
mcr.microsoft.com/aspire/nightly/dashboard; the issue's olderdotnet/nightly/aspire-dashboardpath is obsolete. This PR does not change the repository path or product version.Generated output
Validation
./restore.sh— passed, no warnings or errors.docker pull --platform linux/amd64 mcr.microsoft.com/aspire/nightly/dashboard:17.0— passed.docker pull --platform linux/arm64 mcr.microsoft.com/aspire/nightly/dashboard:17.0— passed.MSBUILDTERMINALLOGGER=false dotnet test --project tests/Aspire.Hosting.Docker.Tests/Aspire.Hosting.Docker.Tests.csproj --no-launch-profile -- --filter-class '*.DashboardImageTests' --filter-class '*.DockerComposePublisherTests' --filter-class '*.DockerComposeTests' --filter-not-trait 'quarantined=true' --filter-not-trait 'outerloop=true'— passed: 70 passed, one existing skip.MSBUILDTERMINALLOGGER=false dotnet test --project tests/Aspire.Hosting.Kubernetes.Tests/Aspire.Hosting.Kubernetes.Tests.csproj --no-launch-profile -- --filter-class '*.DashboardImageTests' --filter-class '*.KubernetesPublisherTests' --filter-class 'KubernetesEnvironmentResourceTests' --filter-not-trait 'quarantined=true' --filter-not-trait 'outerloop=true'— passed: 77 passed.MSBUILDTERMINALLOGGER=false dotnet test --project tests/Aspire.Hosting.Yarp.Tests/Aspire.Hosting.Yarp.Tests.csproj --no-launch-profile -- --filter-class '*.YarpConfigGeneratorTests' --filter-not-trait 'quarantined=true' --filter-not-trait 'outerloop=true'— passed: four passed.docker compose -p aspire20068-dd08f68e -f <generated-compose>/docker-compose.yaml up -d --wait --wait-timeout 120; checked the running dashboard image and fetched the dashboard login page withcurl --fail --location.kind create cluster --name aspire20068-dd08f68e --wait 180s, thenhelm install smoke <generated-chart> --namespace dashboard-smoke --create-namespace --wait --timeout 240s; rollout succeeded and an in-cluster HTTP probe completed successfully against the dashboard service.mcr.microsoft.com/aspire/nightly/dashboard:17.0and were cleaned up afterward. No shared cluster or existing workloads were modified.git diff --check— passed.The full Hex1b CLI deployment suites were not run; the focused deployment checks exercise this branch's publisher output and the actual published image. Both image architectures were pulled; runtime deployment checks were on arm64.
Fixes #20068
Checklist
<remarks />and<code />elements on your triple slash comments?