diff --git a/src/Aspire.Hosting.Azure/AzureEnvironmentResourceExtensions.cs b/src/Aspire.Hosting.Azure/AzureEnvironmentResourceExtensions.cs index 4c9c0558abd..2cfb4dd0643 100644 --- a/src/Aspire.Hosting.Azure/AzureEnvironmentResourceExtensions.cs +++ b/src/Aspire.Hosting.Azure/AzureEnvironmentResourceExtensions.cs @@ -40,6 +40,7 @@ public static IResourceBuilder AddAzureEnvironment(thi if (builder.ExecutionContext.IsRunMode) { var resourceBuilder = builder.AddResource(resource) + .WithIconName("CloudCube") .OnInitializeResource(ProvisionAzureResourcesAsync) .WithInitialState(new CustomResourceSnapshot { @@ -79,6 +80,7 @@ public static IResourceBuilder AddAzureEnvironment(thi // needs to show up in the app model during run mode so that we can discover // the pipeline step annotations on it but it needs to be hidden from the end-user. return builder.AddResource(resource) + .WithIconName("CloudCube") .ExcludeFromManifest() .WithInitialState(new() { diff --git a/tests/Aspire.Hosting.Azure.Tests/AzureEnvironmentResourceExtensionsTests.cs b/tests/Aspire.Hosting.Azure.Tests/AzureEnvironmentResourceExtensionsTests.cs index a6020bc10f6..f8ab1d5bf5a 100644 --- a/tests/Aspire.Hosting.Azure.Tests/AzureEnvironmentResourceExtensionsTests.cs +++ b/tests/Aspire.Hosting.Azure.Tests/AzureEnvironmentResourceExtensionsTests.cs @@ -4887,6 +4887,18 @@ public void AddAzureEnvironment_InRunMode_CreatesDiscoverableControlResourceName Assert.Equal("azure-environment", resource.Name); } + [Fact] + public void AddAzureEnvironment_UsesCloudCubeIcon() + { + var builder = CreateBuilder(isRunMode: true); + + var resourceBuilder = builder.AddAzureEnvironment(); + + var icon = Assert.Single(resourceBuilder.Resource.Annotations.OfType()); + Assert.Equal("CloudCube", icon.IconName); + Assert.Equal(IconVariant.Filled, icon.IconVariant); + } + [Fact] public void AzureEnvironmentResource_PreservesDefaultResourceNameValidation() {