Skip to content

Conversation

@ShilpiRach
Copy link
Contributor

@ShilpiRach ShilpiRach commented Sep 26, 2025

Description

This PR adds support for Aspire dashboard for Azure App Service Environment. It includes the following changes:

  • Enabled PerSiteScaling for App Service Plan: This change is to support dashboard (expected to run on only 1 worker) while allowing other app services to scale normally.
  • Aspire dashboard: Added a utility to create dashboard web app with kind aspiredashboard and LinuxFxVersion = ASPIREDASHBOARD with required environment variables
    • Set AuthMode to Unsecured as security will be managed by App Service platform.
    • Suppress unsecured message
    • Specify the ports for HTTP and GRPC for Aspire dashboard - this is needed to support the GRPC traffic.
    • List of allowed managed identities that can send telemetry data to dashboard (ALLOWED_MANAGED_IDENTITIES)
    • Managed identity that would be used by resource server to fetch resource information for the resource group (AZURE_CLIENT_ID)
    • Ensure that dashboard is always up.
  • Managed identity for Aspire Dashboard: Creating a managed identity with reader and website contributor access tox
    • fetch information about all the resources in the resource group.
    • allow start / stop / restart operations on app services or fetch environment variables
  • Made dashboard an optional component, enabled by default.
  • When dashboard is enabled, the dashboard specific environment variables are added to all other app services.
  • Added / fixed tests to reflect the changed bicep templates with and without dashboard

Fixes # (issue)

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
      • If yes, did you have an API Review for it?
        • Yes
        • No
      • Did you add <remarks /> and <code /> elements on your triple slash comments?
        • Yes
        • No
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
      • If yes, have you done a threat model and had a security review?
        • Yes
        • No
    • No
  • Does the change require an update in our Aspire docs?

@github-actions
Copy link
Contributor

github-actions bot commented Sep 26, 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 -- 11671

Or

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

@github-actions github-actions bot added the area-integrations Issues pertaining to Aspire Integrations packages label Sep 26, 2025
@dotnet-policy-service dotnet-policy-service bot added the community-contribution Indicates that the PR has been added by a community member label Sep 26, 2025
@davidfowl
Copy link
Member

I suggest we also do something similar to this #9600

@ShilpiRach
Copy link
Contributor Author

I suggest we also do something similar to this #9600

Done. Made dashboard optional (enabled for default)

@ShilpiRach ShilpiRach marked this pull request as ready for review October 3, 2025 13:51
davidfowl and others added 5 commits October 4, 2025 13:27
…ngle resource group.

- Website Contributor role is assigned for each web app in an environment instead of at resource group level
- Added environment name to construct unique dashboard names
- Add appsetting for ASPIRE_ENVIRONMENT_NAME to identify web apps and dashboard specific to an environment
@davidfowl davidfowl merged commit 46c2529 into dotnet:main Oct 7, 2025
302 checks passed
@dotnet-policy-service dotnet-policy-service bot added this to the 13.0 milestone Oct 7, 2025
@davidfowl
Copy link
Member

Tested deploying to region where dashboard works and doesn't work.

@github-actions github-actions bot locked and limited conversation to collaborators Nov 6, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-integrations Issues pertaining to Aspire Integrations packages community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants