14 interfaces inheriting from IResource
Aspire.Hosting (11)
ApplicationModel\IComputeEnvironmentResource.cs (1)
12public interface IComputeEnvironmentResource : IResource
ApplicationModel\IComputeResource.cs (1)
16public interface IComputeResource : IResource
ApplicationModel\IResourceWithArgs.cs (1)
9public interface IResourceWithArgs : IResource
ApplicationModel\IResourceWithConnectionString.cs (1)
9public interface IResourceWithConnectionString : IResource, IManifestExpressionProvider, IValueProvider, IValueWithReferences
ApplicationModel\IResourceWithEndpoints.cs (1)
9public interface IResourceWithEndpoints : IResource
ApplicationModel\IResourceWithEnvironment.cs (1)
9public interface IResourceWithEnvironment : IResource
ApplicationModel\IResourceWithoutLifetime.cs (1)
9public interface IResourceWithoutLifetime : IResource
ApplicationModel\IResourceWithParameters.cs (1)
12public interface IResourceWithParameters : IResource
ApplicationModel\IResourceWithParentOfT.cs (1)
23public interface IResourceWithParent : IResource
ApplicationModel\IResourceWithProbes.cs (1)
12public interface IResourceWithProbes : IResource
ApplicationModel\IResourceWithWaitSupport.cs (1)
9public interface IResourceWithWaitSupport : IResource
Aspire.Hosting.Azure (3)
IAzureKeyVaultResource.cs (1)
11public interface IAzureKeyVaultResource : IResource, IAzureResource
IAzureResource.cs (1)
10public interface IAzureResource : IResource
IResourceWithAzureFunctionsConfig.cs (1)
11public interface IResourceWithAzureFunctionsConfig : IResource
11 implementations of IResource
Aspire.Hosting (1)
ApplicationModel\Resource.cs (1)
12public abstract class Resource : IResource
Aspire.Hosting.Azure.AppConfiguration (1)
AzureAppConfigurationEmulatorResource.cs (1)
12public class AzureAppConfigurationEmulatorResource(AzureAppConfigurationResource innerResource) : ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Azure.CosmosDB (1)
AzureCosmosDBEmulatorResource.cs (1)
13: ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Azure.EventHubs (1)
AzureEventHubsEmulatorResource.cs (1)
13: ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Azure.ServiceBus (1)
AzureServiceBusEmulatorResource.cs (1)
12public class AzureServiceBusEmulatorResource(AzureServiceBusResource innerResource) : ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Azure.SignalR (1)
AzureSignalREmulatorResource.cs (1)
12public class AzureSignalREmulatorResource(AzureSignalRResource innerResource) : ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Azure.Storage (1)
AzureStorageEmulatorResource.cs (1)
12public class AzureStorageEmulatorResource(AzureStorageResource innerResource) : ContainerResource(innerResource.Name), IResource
Aspire.Hosting.Tests (4)
DistributedApplicationBuilderTests.cs (1)
243private sealed class TestResource : IResource
DistributedApplicationModelExtensionsTests.cs (1)
37private sealed class CustomResource : IResource
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
342private sealed class TestResource(string name) : IResource
Utils\VolumeNameGeneratorTests.cs (1)
46private sealed class TestResource(string name) : IResource
658 references to IResource
Aspire.Hosting (343)
ApplicationModel\BeforeResourceStartedEvent.cs (2)
16public class BeforeResourceStartedEvent(IResource resource, IServiceProvider services) : IDistributedApplicationResourceEvent 19public IResource Resource { get; } = resource;
ApplicationModel\CommandLineArgsCallbackAnnotation.cs (3)
53private readonly IResource? _resource; 61public CommandLineArgsCallbackContext(IList<object> args, IResource resource, CancellationToken cancellationToken = default) 91public IResource Resource => _resource ?? throw new InvalidOperationException($"{nameof(Resource)} is not set. This callback context is not associated with a resource.");
ApplicationModel\CommandsConfigurationExtensions.cs (1)
12internal static void AddLifeCycleCommands(this IResource resource)
ApplicationModel\ConnectionStringAvailableEvent.cs (3)
11/// <param name="resource">The <see cref="IResource"/> for the event.</param> 13public class ConnectionStringAvailableEvent(IResource resource, IServiceProvider services) : IDistributedApplicationResourceEvent 16public IResource Resource => resource;
ApplicationModel\ContainerCertificateTrustCallbackAnnotation.cs (1)
28public required IResource Resource { get; init; }
ApplicationModel\ContainerFileSystemCallbackAnnotation.cs (1)
278public required IResource Model { get; init; }
ApplicationModel\ContainerImageReference.cs (2)
20public ContainerImageReference(IResource resource) 28public IResource Resource { get; }
ApplicationModel\ContainerPortReference.cs (2)
12public class ContainerPortReference(IResource resource) : IManifestExpressionProvider, IValueWithReferences, IValueProvider 17public IResource Resource { get; } = resource;
ApplicationModel\CustomResourceSnapshot.cs (1)
428public static ImmutableArray<RelationshipSnapshot> BuildRelationships(IResource resource)
ApplicationModel\DeploymentImageTagAnnotation.cs (1)
18public required IResource Resource { get; init; }
ApplicationModel\DeploymentTargetAnnotation.cs (2)
11public sealed class DeploymentTargetAnnotation(IResource target) : IResourceAnnotation 16public IResource DeploymentTarget { get; } = target;
ApplicationModel\DistributedApplicationModel.cs (1)
21public DistributedApplicationModel(IEnumerable<IResource> resources) : this(new ResourceCollection(resources)) { }
ApplicationModel\DistributedApplicationModelExtensions.cs (3)
16/// <returns>An enumerable of compute <see cref="IResource"/> in the model.</returns> 17public static IEnumerable<IResource> GetComputeResources(this DistributedApplicationModel model) 19foreach (var r in model.Resources)
ApplicationModel\DockerfileBuilderCallbackContext.cs (2)
22public DockerfileBuilderCallbackContext(IResource resource, DockerfileBuilder builder, IServiceProvider services, CancellationToken cancellationToken) 33public IResource Resource { get; }
ApplicationModel\DockerfileFactoryContext.cs (1)
37public required IResource Resource { get; init; }
ApplicationModel\EnvironmentCallbackContext.cs (3)
17private readonly IResource? _resource; 26public EnvironmentCallbackContext(DistributedApplicationExecutionContext executionContext, IResource resource, Dictionary<string, object>? environmentVariables = null, CancellationToken cancellationToken = default) 54public IResource Resource => _resource ?? throw new InvalidOperationException($"{nameof(Resource)} is not set. This callback context is not associated with a resource.");
ApplicationModel\ExecutableCertificateTrustCallbackAnnotation.cs (1)
28public required IResource Resource { get; init; }
ApplicationModel\ExpressionResolver.cs (1)
16var target = endpointReference.Resource.GetRootResource();
ApplicationModel\InitializeResourceEvent.cs (2)
22IResource resource, 29public IResource Resource { get; } = resource;
ApplicationModel\IResourceBuilder.cs (1)
10public interface IResourceBuilder<out T> where T : IResource
ApplicationModel\IResourceCollection.cs (1)
9public interface IResourceCollection : IList<IResource>
ApplicationModel\IResourceWithParentOfT.cs (3)
10public interface IResourceWithParent<out T> : IResourceWithParent where T : IResource 17IResource IResourceWithParent.Parent => Parent; 28IResource Parent { get; }
ApplicationModel\ReferenceExpression.cs (4)
196where T : IResource, IValueProvider, IManifestExpressionProvider 208where T : IResource, IValueProvider, IManifestExpressionProvider 393where T : IResource, IValueProvider, IManifestExpressionProvider 405where T : IResource, IValueProvider, IManifestExpressionProvider
ApplicationModel\Resource.cs (1)
9/// Represents an abstract resource that can be used by an application, that implements <see cref="IResource"/>.
ApplicationModel\ResourceAnnotationMutationBehavior.cs (1)
8/// method when adding an annotation to the <see cref="IResource.Annotations"/> collection of a resource.
ApplicationModel\ResourceCollection.cs (11)
13private readonly List<IResource> _resources = []; 17public ResourceCollection(IEnumerable<IResource> resources) => _resources.AddRange(resources); 19public IResource this[int index] { get => _resources[index]; set => _resources[index] = value; } 22public void Add(IResource item) => _resources.Add(item); 24public bool Contains(IResource item) => _resources.Contains(item); 25public void CopyTo(IResource[] array, int arrayIndex) => _resources.CopyTo(array, arrayIndex); 26public IEnumerator<IResource> GetEnumerator() => _resources.GetEnumerator(); 27public int IndexOf(IResource item) => _resources.IndexOf(item); 28public void Insert(int index, IResource item) => _resources.Insert(index, item); 29public bool Remove(IResource item) => _resources.Remove(item); 36public IResource[] Items => collection.ToArray();
ApplicationModel\ResourceCommandService.cs (2)
62public async Task<ExecuteCommandResult> ExecuteCommandAsync(IResource resource, string commandName, CancellationToken cancellationToken = default) 120internal async Task<ExecuteCommandResult> ExecuteCommandCoreAsync(string resourceId, IResource resource, string commandName, CancellationToken cancellationToken)
ApplicationModel\ResourceEndpointsAllocatedEvent.cs (2)
14public class ResourceEndpointsAllocatedEvent(IResource resource, IServiceProvider services) : IDistributedApplicationResourceEvent 17public IResource Resource { get; } = resource;
ApplicationModel\ResourceExtensions.cs (34)
11/// Provides extension methods for the <see cref="IResource"/> interface. 22public static bool TryGetLastAnnotation<T>(this IResource resource, [NotNullWhen(true)] out T? annotation) where T : IResourceAnnotation 43public static bool TryGetAnnotationsOfType<T>(this IResource resource, [NotNullWhen(true)] out IEnumerable<T>? result) where T : IResourceAnnotation 65public static bool HasAnnotationOfType<T>(this IResource resource) where T : IResourceAnnotation 77public static bool TryGetAnnotationsIncludingAncestorsOfType<T>(this IResource resource, [NotNullWhen(true)] out IEnumerable<T>? result) where T : IResourceAnnotation 114public static bool HasAnnotationIncludingAncestorsOfType<T>(this IResource resource) where T : IResourceAnnotation 147public static bool TryGetEnvironmentVariables(this IResource resource, [NotNullWhen(true)] out IEnumerable<EnvironmentCallbackAnnotation>? environmentVariables) 274this IResource resource, 304(DistributedApplicationOperation.Run, IResourceBuilder<IResource> rb) when rb.Resource is IValueProvider provider => await GetValue(key: null, provider, logger, resource.IsContainer(), containerHostName, cancellationToken).ConfigureAwait(false), 306(DistributedApplicationOperation.Publish, IResourceBuilder<IResource> rb) when rb.Resource is IManifestExpressionProvider provider => new(provider.ValueExpression, false), 335this IResource resource, 363(DistributedApplicationOperation.Run, IResourceBuilder<IResource> rb) when rb.Resource is IValueProvider provider => await GetValue(key, provider, logger, resource.IsContainer(), containerHostName, cancellationToken).ConfigureAwait(false), 365(DistributedApplicationOperation.Publish, IResourceBuilder<IResource> rb) when rb.Resource is IManifestExpressionProvider provider => new(provider.ValueExpression, false), 387public static bool IsExcludedFromPublish(this IResource resource) => 391this IResource resource, 442if (valueProvider is IResource resource) 479public static bool TryGetContainerMounts(this IResource resource, [NotNullWhen(true)] out IEnumerable<ContainerMountAnnotation>? volumeMounts) 490public static bool TryGetEndpoints(this IResource resource, [NotNullWhen(true)] out IEnumerable<EndpointAnnotation>? endpoints) 501public static bool TryGetUrls(this IResource resource, [NotNullWhen(true)] out IEnumerable<ResourceUrlAnnotation>? urls) 510/// <returns>An enumeration of <see cref="EndpointReference"/> based on the <see cref="EndpointAnnotation"/> annotations from the resources' <see cref="IResource.Annotations"/> collection.</returns> 539public static bool TryGetContainerImageName(this IResource resource, [NotNullWhen(true)] out string? imageName) 551public static bool TryGetContainerImageName(this IResource resource, bool useBuiltImage, [NotNullWhen(true)] out string? imageName) 592public static int GetReplicaCount(this IResource resource) 613public static bool RequiresImageBuildAndPush(this IResource resource) 623public static DeploymentTargetAnnotation? GetDeploymentTargetAnnotation(this IResource resource, IComputeEnvironmentResource? targetComputeEnvironment = null) 669internal static ContainerLifetime GetContainerLifetimeType(this IResource resource) 685internal static bool TryGetContainerImagePullPolicy(this IResource resource, [NotNullWhen(true)] out ImagePullPolicy? pullPolicy) 703internal static bool SupportsProxy(this IResource resource) 713internal static IResource GetRootResource(this IResource resource) => 724internal static string GetResolvedResourceName(this IResource resource) 744internal static string[] GetResolvedResourceNames(this IResource resource) 764public static IResourceBuilder<T> WithDeploymentImageTag<T>(this IResourceBuilder<T> builder, Func<DeploymentImageTagCallbackAnnotationContext, string> callback) where T : class, IResource 780public static IResourceBuilder<T> WithDeploymentImageTag<T>(this IResourceBuilder<T> builder, Func<DeploymentImageTagCallbackAnnotationContext, Task<string>> callback) where T : class, IResource
ApplicationModel\ResourceLoggerService.cs (5)
47public ILogger GetLogger(IResource resource) 155public IAsyncEnumerable<IReadOnlyList<LogLine>> GetAllAsync(IResource resource) 175public IAsyncEnumerable<IReadOnlyList<LogLine>> WatchAsync(IResource resource) 253/// <param name="resource">The <see cref="IResource"/>.</param> 254public void Complete(IResource resource)
ApplicationModel\ResourceNotificationService.cs (19)
143private async Task WaitUntilHealthyAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 254private async Task WaitUntilCompletionAsync(IResource resource, IResource dependency, int exitCode, CancellationToken cancellationToken) 309private async Task WaitUntilStateAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, 376private async Task WaitUntilStartedAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 394public async Task WaitForDependenciesAsync(IResource resource, CancellationToken cancellationToken) 587public Task PublishUpdateAsync(IResource resource, string resourceId, Func<CustomResourceSnapshot, CustomResourceSnapshot> stateFactory) 679private CustomResourceSnapshot UpdateCommands(IResource resource, CustomResourceSnapshot previousState) 753private static CustomResourceSnapshot UpdateIcons(IResource resource, CustomResourceSnapshot previousState) 783public async Task PublishUpdateAsync(IResource resource, Func<CustomResourceSnapshot, CustomResourceSnapshot> stateFactory) 792private static CustomResourceSnapshot GetCurrentSnapshot(IResource resource, ResourceNotificationState notificationState) 820private ResourceNotificationState GetResourceNotificationState(string resourceId, IResource resource) => 832private sealed class ResourceNotificationState(IResource resource) 837public IResource Resource { get; } = resource; 864public class ResourceEvent(IResource resource, string resourceId, CustomResourceSnapshot snapshot) 869public IResource Resource { get; } = resource;
ApplicationModel\ResourceReadyEvent.cs (2)
16public class ResourceReadyEvent(IResource resource, IServiceProvider services) : IDistributedApplicationResourceEvent 21public IResource Resource => resource;
ApplicationModel\ResourceRelationshipAnnotation.cs (2)
12public sealed class ResourceRelationshipAnnotation(IResource resource, string type) : IResourceAnnotation 17public IResource Resource { get; } = resource;
ApplicationModel\ResourceStoppedEvent.cs (2)
17public class ResourceStoppedEvent(IResource resource, IServiceProvider services, ResourceEvent resourceEvent) : IDistributedApplicationResourceEvent 20public IResource Resource { get; } = resource;
ApplicationModel\ResourceUrlsCallbackContext.cs (2)
16public class ResourceUrlsCallbackContext(DistributedApplicationExecutionContext executionContext, IResource resource, List<ResourceUrlAnnotation>? urls = null, CancellationToken cancellationToken = default) 21public IResource Resource { get; } = resource;
ApplicationModel\WaitAnnotation.cs (2)
18public sealed class WaitAnnotation(IResource resource, WaitType waitType, int exitCode = 0) : IResourceAnnotation 23public IResource Resource { get; } = resource;
BuiltInDistributedApplicationEventSubscriptionHandlers.cs (2)
18foreach (var container in beforeStartEvent.Model.GetContainerResources()) 54foreach (var resource in beforeStartEvent.Model.Resources)
ConnectionStringBuilderExtensions.cs (3)
59if (value is IResource resource) 69foreach (var innerRef in valueWithReferences.References.OfType<IResource>())
ContainerResourceExtensions.cs (3)
18public static IEnumerable<IResource> GetContainerResources(this DistributedApplicationModel model) 22foreach (var resource in model.Resources) 36public static bool IsContainer(this IResource resource)
CustomResourceExtensions.cs (1)
21where TResource : IResource
Dashboard\DashboardEventHandlers.cs (1)
352private void ConfigureAspireDashboardResource(IResource dashboardResource)
Dashboard\DashboardServiceData.cs (1)
40static GenericResourceSnapshot CreateResourceSnapshot(IResource resource, string resourceId, DateTime creationTimestamp, CustomResourceSnapshot snapshot)
Dashboard\ResourcePublisher.cs (3)
19private sealed record SourceAndResourceSnapshot(IResource Source, ResourceSnapshot Snapshot); 28internal bool TryGetResource(string resourceName, [NotNullWhen(returnValue: true)] out ResourceSnapshot? snapshot, [NotNullWhen(returnValue: true)] out IResource? resource) 84internal async ValueTask IntegrateAsync(IResource source, ResourceSnapshot snapshot, ResourceSnapshotChangeType changeType)
Dcp\AppResource.cs (4)
13public IResource ModelResource { get; } 19public AppResource(IResource modelResource, CustomResource dcpResource) 40public ServiceAppResource(IResource modelResource, Service service, EndpointAnnotation sba) : base(modelResource, service) 48IResource ModelResource { get; }
Dcp\DcpExecutor.cs (19)
384_resourceState.ApplicationModel.TryGetValue(resourceName, out var appModelResource)) 489private static string GetResourceType<T>(T resource, IResource appModelResource) where T : CustomResource 676_resourceState.ApplicationModel.TryGetValue(appModelResourceName, out var appModelResource)) 1092private void EnsureRequiredAnnotations(IResource resource) 1100private static void SetInitialResourceState(IResource resource, IAnnotationHolder annotationHolder) 1117async Task CreateResourceExecutablesAsyncCore(IResource resource, IEnumerable<AppResource> executables, CancellationToken cancellationToken) 1190var groupKey = group.Key; 1339foreach (var container in modelContainerResources) 1395private static DcpInstance GetDcpInstance(IResource resource, int instanceIndex) 1500var modelContainerResource = cr.ModelResource; 1553private static async Task ApplyBuildArgumentsAsync(Container dcpContainerResource, IResource modelContainerResource, IServiceProvider serviceProvider, CancellationToken cancellationToken) 1634private void AddServicesProducedInfo(IResource modelResource, IAnnotationHolder dcpResource, AppResource appResource) 1941private async Task<(List<(string Value, bool IsSensitive)>, bool)> BuildArgsAsync(ILogger resourceLogger, IResource modelResource, CancellationToken cancellationToken) 1969private async Task<List<ContainerCreateFileSystem>> BuildCreateFilesAsync(IResource modelResource, CancellationToken cancellationToken) 1999private async Task<(List<EnvVar>, bool)> BuildEnvVarsAsync(ILogger resourceLogger, IResource modelResource, CancellationToken cancellationToken) 2026private async Task<(List<string>, bool)> BuildRunArgsAsync(ILogger resourceLogger, IResource modelResource, CancellationToken cancellationToken) 2060private async Task<(List<string>, List<EnvVar>, bool)> BuildExecutableCertificateAuthorityTrustAsync(IResource modelResource, List<string> resourceArguments, List<EnvVar> resourceEnvironment, CancellationToken cancellationToken) 2169private async Task<(List<string>, List<EnvVar>, List<ContainerCreateFileSystem>, bool)> BuildContainerCertificateAuthorityTrustAsync(IResource modelResource, List<string> resourceArguments, List<EnvVar> resourceEnvironment, CancellationToken cancellationToken) 2403private static List<VolumeMount> BuildContainerMounts(IResource container)
Dcp\DcpExecutorEvents.cs (3)
11internal record OnResourceStartingContext(CancellationToken CancellationToken, string ResourceType, IResource Resource, string? DcpResourceName); 13internal record OnResourceChangedContext(CancellationToken CancellationToken, string ResourceType, IResource Resource, string DcpResourceName, ResourceStatus Status, Func<CustomResourceSnapshot, CustomResourceSnapshot> UpdateSnapshot); 14internal record OnResourceFailedToStartContext(CancellationToken CancellationToken, string ResourceType, IResource Resource, string? DcpResourceName);
Dcp\DcpNameGenerator.cs (6)
28public void EnsureDcpInstancesPopulated(IResource resource) 58private static void AddInstancesAnnotation(IResource resource, ImmutableArray<DcpInstance> instances) 63public (string Name, string Suffix) GetContainerName(IResource container) 74public (string Name, string Suffix) GetExecutableName(IResource project) 80public string GetServiceName(IResource resource, EndpointAnnotation endpoint, bool hasMultipleEndpoints, HashSet<string> allServiceNames) 122public static string GetObjectNameForResource(IResource resource, DcpOptions options, string suffix = "")
Dcp\DcpResourceState.cs (2)
10internal sealed class DcpResourceState(Dictionary<string, IResource> applicationModel, List<AppResource> appResources) 19public Dictionary<string, IResource> ApplicationModel { get; } = applicationModel;
Dcp\ResourceSnapshotBuilder.cs (4)
39_resourceState.ApplicationModel.TryGetValue(container.AppModelResourceName, out var appModelResource)) 96IResource? appModelResource = null; 132IResource? appModelResource = null; 237_resourceState.ApplicationModel.TryGetValue(resourceName, out var appModelResource) &&
DistributedApplicationBuilder.cs (2)
620public IResourceBuilder<T> AddResource<T>(T resource) where T : IResource 634public IResourceBuilder<T> CreateResourceBuilder<T>(T resource) where T : IResource
DistributedApplicationBuilderExtensions.cs (4)
61public static IResourceBuilder<T> CreateResourceBuilder<T>(this IDistributedApplicationBuilder builder, string name) where T : IResource 65var resource = builder.Resources.FirstOrDefault(r => string.Equals(r.Name, name, StringComparison.OrdinalIgnoreCase)); 91public static bool TryCreateResourceBuilder<T>(this IDistributedApplicationBuilder builder, string name, [NotNullWhen(true)] out IResourceBuilder<T>? resourceBuilder) where T : IResource 96var resource = builder.Resources.FirstOrDefault(r => string.Equals(r.Name, name, StringComparison.OrdinalIgnoreCase));
DistributedApplicationEventingExtensions.cs (5)
22where T : IResource 33where T : IResource 55where T : IResource 77where T : IResource 81where TResource : IResource
DistributedApplicationResourceBuilder.cs (1)
8internal sealed class DistributedApplicationResourceBuilder<T>(IDistributedApplicationBuilder applicationBuilder, T resource) : IResourceBuilder<T> where T : IResource
EmulatorResourceExtensions.cs (1)
18public static bool IsEmulator(this IResource resource)
Eventing\DistributedApplicationEventing.cs (1)
106public DistributedApplicationEventSubscription Subscribe<T>(IResource resource, Func<T, CancellationToken, Task> callback) where T : IDistributedApplicationResourceEvent
Eventing\DistributedApplicationEventSubscription.cs (2)
23public class DistributedApplicationResourceEventSubscription(IResource? resource, Func<IDistributedApplicationResourceEvent, CancellationToken, Task> callback) 29public IResource? Resource { get; } = resource;
Eventing\IDistributedApplicationEvent.cs (1)
23IResource Resource { get; }
Eventing\IDistributedApplicationEventing.cs (1)
28DistributedApplicationEventSubscription Subscribe<T>(IResource resource, Func<T, CancellationToken, Task> callback) where T : IDistributedApplicationResourceEvent;
Exec\ExecEventingHandlers.cs (1)
14var resource = execResourceManager.CreateExecResource();
Exec\ExecResourceManager.cs (9)
23private readonly TaskCompletionSource<IResource> _execResourceInitialized = new(); 57IResource? execResource = null; 156public IResource? CreateExecResource() 165var targetResource = _model.Resources.FirstOrDefault(x => x.Name.Equals(_execOptions.ResourceName, StringComparisons.ResourceName)); 172var execResource = BuildResource(targetResource); 186IResource BuildResource(IResource targetExecResource) 196private IResource BuildAgainstResource(ProjectResource project) 243private IResource BuildAgainstResource(ContainerResource container)
Health\ResourceHealthCheckService.cs (2)
106var resource = state.LatestEvent.Resource; 243private void FireResourceReadyEvent(IResource resource, CancellationToken cancellationToken)
IDistributedApplicationBuilder.cs (4)
156/// constructs a resource derived from <see cref="IResource"/> and adds it to the application model using the <see cref="AddResource{T}(T)"/> 169IResourceBuilder<T> AddResource<T>(T resource) where T : IResource; 189/// Calling extension methods on the <see cref="IResourceBuilder{T}"/> typically results in modifications to the <see cref="IResource.Annotations"/> 225IResourceBuilder<T> CreateResourceBuilder<T>(T resource) where T : IResource;
Orchestrator\ApplicationOrchestrator.cs (16)
21private readonly ILookup<IResource, IResource> _parentChildLookup; 130private async Task PublishResourceEndpointUrls(IResource resource, CancellationToken cancellationToken) 140private static IEnumerable<UrlSnapshot> GetResourceUrls(IResource resource) 193static Task PublishUpdateAsync(ResourceNotificationService notificationService, IResource resource, string? resourceId, Func<CustomResourceSnapshot, CustomResourceSnapshot> stateFactory) 206private async Task ProcessResourceUrlCallbacks(IResource resource, CancellationToken cancellationToken) 416private async Task SetChildResourceAsync(IResource resource, string? state, DateTime? startTimeStamp, DateTime? stopTimeStamp) 418foreach (var child in _parentChildLookup[resource].Where(c => c is IResourceWithParent)) 445foreach (var resource in _model.Resources) 449var parent = resource is IResourceWithParent hasParent 471private static ImmutableArray<HealthReportSnapshot> GetInitialHealthReports(IResource resource) 482private async Task PublishConnectionStringAvailableEvent(IResource resource, CancellationToken cancellationToken) 508private async Task PublishEventToHierarchy<TEvent>(Func<IResource, TEvent> createEvent, IResource resource, CancellationToken cancellationToken) 517foreach (var child in children.Where(c => c is IResourceWithParent)) 532private static bool ResourceHasOwnLifetime(IResource resource) =>
Orchestrator\ParameterProcessor.cs (2)
107foreach (var resource in model.Resources) 119private async Task ProcessResourceDependenciesAsync(IResource resource, DistributedApplicationExecutionContext executionContext, Dictionary<string, ParameterResource> referencedParameters, HashSet<object?> currentDependencySet, CancellationToken cancellationToken)
Orchestrator\RelationshipEvaluator.cs (19)
13public static ILookup<IResource, IResource> GetParentChildLookup(DistributedApplicationModel model) 18.Select(x => (Child: (IResource)x, Parent: x.Parent)) 24private static IEnumerable<(IResource Child, IResource Parent)> GetParentChildRelationshipsFromAnnotations(DistributedApplicationModel model) 26static bool TryGetParent(IResource resource, [NotNullWhen(true)] out IResource? parent) 39static IResource? SelectParentResource(IResource? resource) => resource switch 41IResource r when TryGetParent(r, out var parent) => parent, 54private static void ValidateRelationships((IResource Child, IResource Parent)[] relationships) 64var visited = new Stack<IResource>(); 70static void ValidateNoCircularDependencies(Dictionary<IResource, IResource> childToParentLookup, IResource child, Stack<IResource> visited) 73if (childToParentLookup.TryGetValue(child, out var parent))
OtlpConfigurationExtensions.cs (3)
26public static void AddOtlpEnvironment(IResource resource, IConfiguration configuration, IHostEnvironment environment) 45public static void AddOtlpEnvironment(IResource resource, IConfiguration configuration, IHostEnvironment environment, OtlpProtocol protocol) 57private static void RegisterOtlpEnvironment(IResource resource, IConfiguration configuration, IHostEnvironment environment)
Pipelines\DistributedApplicationPipeline.cs (1)
124foreach (var resource in context.Model.Resources)
Publishing\ManifestPublishingContext.cs (19)
44private readonly Dictionary<string, IResource> _referencedResources = []; 77foreach (var resource in model.Resources) 90internal async Task WriteResourceAsync(IResource resource) 126async Task WriteResourceObjectAsync<T>(T resource, Func<Task> action) where T : IResource 395/// <param name="resource">The <see cref="IResource"/>.</param> 396public void WriteConnectionString(IResource resource) 407/// <see cref="EndpointAnnotation"/> entries in the <see cref="IResource.Annotations"/> 410/// <param name="resource">The <see cref="IResource"/> that contains <see cref="EndpointAnnotation"/> annotations.</param> 411public void WriteBindings(IResource resource) 500/// Writes environment variables to the manifest base on the <see cref="IResource"/> resource's <see cref="EnvironmentCallbackAnnotation"/> annotations."/> 502/// <param name="resource">The <see cref="IResource"/> which contains <see cref="EnvironmentCallbackAnnotation"/> annotations.</param> 503public async Task WriteEnvironmentVariablesAsync(IResource resource) 542/// Writes command line arguments to the manifest based on the <see cref="IResource"/> resource's <see cref="CommandLineArgsCallbackAnnotation"/> annotations. 544/// <param name="resource">The <see cref="IResource"/> that contains <see cref="CommandLineArgsCallbackAnnotation"/> annotations.</param> 546public async Task WriteCommandLineArgumentsAsync(IResource resource) 643/// Ensures that any <see cref="IResource"/> instances referenced by <paramref name="value"/> are 649if (value is IResource resource) 673foreach (var existingResource in model.Resources) 679foreach (var resource in _referencedResources.Values)
Publishing\PublishingContext.cs (1)
73foreach (var resource in model.Resources)
Publishing\ResourceContainerImageBuilder.cs (10)
106Task BuildImageAsync(IResource resource, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default); 115Task BuildImagesAsync(IEnumerable<IResource> resources, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default); 146public async Task BuildImagesAsync(IEnumerable<IResource> resources, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default) 183foreach (var resource in resources) 193public Task BuildImageAsync(IResource resource, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default) 198private async Task BuildImageAsync(IReportingStep? step, IResource resource, ContainerBuildOptions? options, CancellationToken cancellationToken) 242private async Task BuildProjectContainerImageAsync(IResource resource, IReportingStep? step, ContainerBuildOptions? options, CancellationToken cancellationToken) 273private async Task<bool> ExecuteDotnetPublishAsync(IResource resource, ContainerBuildOptions? options, CancellationToken cancellationToken) 349private async Task BuildContainerImageFromDockerfileAsync(IResource resource, DockerfileBuildAnnotation dockerfileBuildAnnotation, string imageName, IReportingStep? step, ContainerBuildOptions? options, CancellationToken cancellationToken) 487internal static bool ResourcesRequireContainerRuntime(IEnumerable<IResource> resources, ContainerBuildOptions? options)
ResourceBuilderExtensions.cs (54)
349public static IResourceBuilder<T> WithManifestPublishingCallback<T>(this IResourceBuilder<T> builder, Action<ManifestPublishingContext> callback) where T : IResource 366public static IResourceBuilder<T> WithPublishingCallback<T>(this IResourceBuilder<T> builder, Func<PublishingContext, Task> callback) where T : IResource 382public static IResourceBuilder<T> WithManifestPublishingCallback<T>(this IResourceBuilder<T> builder, Func<ManifestPublishingContext, Task> callback) where T : IResource 948where T : IResource 971where T : IResource 1008where T : IResource 1047where T : IResource 1069where T : IResource 1124where T : IResource 1195public static IResourceBuilder<T> ExcludeFromManifest<T>(this IResourceBuilder<T> builder) where T : IResource 1213/// resources, calling <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> also results 1229public static IResourceBuilder<T> WaitFor<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency) where T : IResourceWithWaitSupport 1249/// resources, calling <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/> also results 1257/// behavior with the <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> overload.</para> 1271public static IResourceBuilder<T> WaitFor<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1279private static IResourceBuilder<T> WaitForCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport 1281if (builder.Resource as IResource == dependency.Resource) 1321/// <para>Unlike <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>, this method 1335public static IResourceBuilder<T> WaitForStart<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency) where T : IResourceWithWaitSupport 1355/// <para>Unlike <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/>, this method 1361/// behavior with the <see cref="WaitForStart{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> overload.</para> 1375public static IResourceBuilder<T> WaitForStart<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1383private static IResourceBuilder<T> WaitForStartCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport 1385if (builder.Resource as IResource == dependency.Resource) 1410foreach (var referencedResource in cs.ConnectionStringExpression.ValueProviders.OfType<IResource>()) 1445public static IResourceBuilder<T> WithExplicitStart<T>(this IResourceBuilder<T> builder) where T : IResource 1476public static IResourceBuilder<T> WaitForCompletion<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, int exitCode = 0) where T : IResourceWithWaitSupport 1481if (builder.Resource as IResource == dependency.Resource) 1506/// the <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> to associate a resource 1532public static IResourceBuilder<T> WithHealthCheck<T>(this IResourceBuilder<T> builder, string key) where T : IResource 1731CommandOptions? commandOptions = null) where T : IResource 1798bool isHighlighted = false) where T : IResource 2280IResource resource, 2281string type) where T : IResource 2299IResource resource) where T : IResource 2316ReferenceExpression expression) where T : IResource 2327where T : IResource 2331void AddReference(IResource resource) 2343if (value is IResource resource) 2347else if (value is IResourceBuilder<IResource> resourceBuilder) 2375IResourceBuilder<IResource> resourceBuilder) where T : IResource 2408IResourceBuilder<IResource> parent) where T : IResource 2438IResource parent) where T : IResource 2469IResourceBuilder<IResource> child) where T : IResource 2501IResource child) where T : IResource 2535public static IResourceBuilder<T> WithIconName<T>(this IResourceBuilder<T> builder, string iconName, IconVariant iconVariant = IconVariant.Filled) where T : IResource 2572where T : IResource
ResourceLoggerForwarderService.cs (1)
61private async Task WatchResourceLogs(IResource resource, string resourceId, CancellationToken cancellationToken)
Utils\DockerfileHelper.cs (1)
22IResource resource,
Utils\ImageNameGenerator.cs (2)
12public static string GenerateImageName<T>(this IResourceBuilder<T> builder) where T : IResource 19public static string GenerateImageTag<T>(this IResourceBuilder<T> builder) where T : IResource
VolumeNameGenerator.cs (1)
21public static string Generate<T>(IResourceBuilder<T> builder, string suffix) where T : IResource
Aspire.Hosting.Azure (29)
AzureEnvironmentResource.cs (7)
285foreach (var resource in computeResources) 319var resourcesByRegistry = new Dictionary<IContainerRegistry, List<IResource>>(); 320foreach (var computeResource in computeResources) 417private static bool TryGetContainerRegistry(IResource computeResource, [NotNullWhen(true)] out IContainerRegistry? containerRegistry) 505private static async Task PushImagesToAllRegistriesAsync(Dictionary<IContainerRegistry, List<IResource>> resourcesByRegistry, PipelineStepContext context, IResourceContainerImageBuilder containerImageBuilder) 558private static string TryGetComputeResourceEndpoint(IResource computeResource, IAzureComputeEnvironmentResource azureComputeEnv) 681foreach (var resource in model.Resources)
AzurePublishingContext.cs (1)
312foreach (var resource in model.Resources)
AzureResourcePreparer.cs (11)
50internal static List<(IResource Resource, IAzureResource AzureResource)> GetAzureResourcesFromAppModel(DistributedApplicationModel appModel) 57var azureResources = new List<(IResource, IAzureResource)>(); 58foreach (var resource in appModel.Resources) 89foreach (var resource in appModel.Resources) 103private async Task BuildRoleAssignmentAnnotations(DistributedApplicationModel appModel, List<(IResource Resource, IAzureResource AzureResource)> azureResources, CancellationToken cancellationToken) 129foreach (var resource in resourceSnapshot) 237static bool IsResourceValidForRoleAssignments(IResource resource) 243private static Dictionary<AzureProvisioningResource, IEnumerable<RoleDefinition>> GetAllRoleAssignments(IResource resource) 257IResource resource, 287IResource resource, 356private async Task<HashSet<IAzureResource>> GetAzureReferences(IResource resource, CancellationToken cancellationToken)
BicepResourceAnnotation.cs (1)
16/// that can be added to any <see cref="IResource"/> will be detected by the <see cref="AzureProvisioner"/> and used to
ExistingAzureResourceExtensions.cs (1)
20public static bool IsExisting(this IResource resource)
IAzureResource.cs (1)
7/// Represents an Azure resource, as a marker interface for <see cref="IResource"/>'s
Provisioning\Provisioners\AzureProvisioner.cs (7)
31private ILookup<IResource, IResourceWithParent>? _parentChildLookup; 45async Task UpdateStateAsync((IResource Resource, IAzureResource AzureResource) resource, Func<CustomResourceSnapshot, CustomResourceSnapshot> stateFactory) 80async Task AfterProvisionAsync((IResource Resource, IAzureResource AzureResource) resource) 114async Task<bool> WaitForRoleAssignments((IResource Resource, IAzureResource AzureResource) resource) 164IList<(IResource Resource, IAzureResource AzureResource)> azureResources, 195private async Task ProcessResourceAsync(IConfiguration configuration, Lazy<Task<ProvisioningContext>> provisioningContextLazy, (IResource Resource, IAzureResource AzureResource) resource, CancellationToken cancellationToken) 266async Task PublishConnectionStringAvailableEventRecursiveAsync(IResource targetResource)
Aspire.Hosting.Azure.AIFoundry (3)
AzureAIFoundryExtensions.cs (1)
191where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.AppConfiguration (3)
AzureAppConfigurationExtensions.cs (1)
169where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.AppContainers (19)
AzureContainerAppEnvironmentResource.cs (2)
59internal Dictionary<string, (IResource resource, ContainerMountAnnotation volume, int index, BicepOutputReference outputReference)> VolumeNames { get; } = []; 68internal BicepOutputReference GetVolumeStorage(IResource resource, ContainerMountAnnotation volume, int volumeIndex)
AzureContainerAppResource.cs (2)
14public class AzureContainerAppResource(string name, Action<AzureResourceInfrastructure> configureInfrastructure, IResource targetResource) 20public IResource TargetResource { get; } = targetResource;
AzureContainerAppsInfrastructure.cs (2)
41foreach (var r in @event.Model.GetComputeResources()) 59foreach (var r in appModel.GetComputeResources())
BaseContainerAppContext.cs (3)
15internal abstract class BaseContainerAppContext(IResource resource, ContainerAppEnvironmentContext containerAppEnvironmentContext) 19public IResource Resource => resource; 89protected static bool TryGetContainerImageName(IResource resource, out string? containerImageName)
ContainerAppContext.cs (1)
14internal sealed class ContainerAppContext(IResource resource, ContainerAppEnvironmentContext containerAppEnvironmentContext)
ContainerAppEnvironmentContext.cs (4)
26private readonly Dictionary<IResource, BaseContainerAppContext> _containerApps = new(new ResourceNameComparer()); 28public BaseContainerAppContext GetContainerAppContext(IResource resource) 38public async Task<AzureBicepResource> CreateContainerAppAsync(IResource resource, AzureProvisioningOptions provisioningOptions, CancellationToken cancellationToken) 54private BaseContainerAppContext CreateContainerAppContext(IResource resource)
ContainerAppJobContext.cs (1)
14internal sealed class ContainerAppJobContext(IResource resource, ContainerAppEnvironmentContext containerAppEnvironmentContext)
src\Shared\ResourceNameComparer.cs (4)
8internal sealed class ResourceNameComparer : IEqualityComparer<IResource> 10public bool Equals(IResource? x, IResource? y) 20public int GetHashCode(IResource obj) =>
Aspire.Hosting.Azure.AppService (13)
AzureAppServiceEnvironmentContext.cs (3)
24private readonly Dictionary<IResource, AzureAppServiceWebsiteContext> _appServices = new(new ResourceNameComparer()); 26public AzureAppServiceWebsiteContext GetAppServiceContext(IResource resource) 36public async Task<AzureBicepResource> CreateAppServiceAsync(IResource resource, AzureProvisioningOptions provisioningOptions, CancellationToken cancellationToken)
AzureAppServiceInfrastructure.cs (2)
41foreach (var resource in @event.Model.GetComputeResources()) 64foreach (var r in appModel.GetComputeResources())
AzureAppServiceWebsiteContext.cs (2)
18IResource resource, 21public IResource Resource => resource;
AzureAppServiceWebSiteResource.cs (2)
14public class AzureAppServiceWebSiteResource(string name, Action<AzureResourceInfrastructure> configureInfrastructure, IResource targetResource) 20public IResource TargetResource { get; } = targetResource;
src\Shared\ResourceNameComparer.cs (4)
8internal sealed class ResourceNameComparer : IEqualityComparer<IResource> 10public bool Equals(IResource? x, IResource? y) 20public int GetHashCode(IResource obj) =>
Aspire.Hosting.Azure.CognitiveServices (3)
AzureOpenAIExtensions.cs (1)
220where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.ContainerRegistry (4)
AzureContainerRegistryExtensions.cs (2)
75where T : IResource, IComputeEnvironmentResource 98where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.EventHubs (3)
AzureEventHubsExtensions.cs (1)
475where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.Functions (2)
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.KeyVault (3)
AzureKeyVaultResourceExtensions.cs (1)
155where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.Kusto (3)
AzureKustoBuilderExtensions.cs (1)
34/// the extension method <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.Search (3)
AzureSearchExtensions.cs (1)
102where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.ServiceBus (3)
AzureServiceBusExtensions.cs (1)
620where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.SignalR (3)
AzureSignalRExtensions.cs (1)
171where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.Storage (3)
AzureStorageExtensions.cs (1)
591where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Azure.Tests (58)
AzureAppServiceTests.cs (3)
168var container = Assert.Single(model.GetContainerResources()); 204var container = Assert.Single(model.GetContainerResources()); 587private static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(IResource resource) =>
AzureBicepResourceTests.cs (6)
32public static TheoryData<Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>>> AzureExtensions => 35private static TheoryData<Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>>> CreateAllAzureExtensions(string resourceName) 75public void AzureExtensionsAutomaticallyAddAzureProvisioning(Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>> addAzureResource) 87public void BicepResourcesAreIdempotent(Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>> addAzureResource) 103public static TheoryData<Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>>> AzureExtensionsWithHyphen => 108public void AzureResourcesProduceValidBicep(Func<IDistributedApplicationBuilder, IResourceBuilder<IResource>> addAzureResource)
AzureContainerAppsTests.cs (31)
39var container = Assert.Single(model.GetContainerResources()); 73var container = Assert.Single(model.GetContainerResources()); 177var container = Assert.Single(model.GetContainerResources()); 220var container = Assert.Single(model.GetContainerResources()); 250var container = Assert.Single(model.GetContainerResources()); 440var container = Assert.Single(model.GetContainerResources()); 472var container = Assert.Single(model.GetContainerResources()); 506var container = Assert.Single(model.GetContainerResources()); 542var container = Assert.Single(model.GetContainerResources()); 580var container = Assert.Single(model.GetContainerResources()); 620var container = Assert.Single(model.GetContainerResources()); 652var container = Assert.Single(model.GetContainerResources()); 685var container = Assert.Single(model.GetContainerResources()); 736var container = Assert.Single(model.GetContainerResources()); 818var container = Assert.Single(model.GetContainerResources()); 861var container = Assert.Single(model.GetContainerResources()); 892var container = Assert.Single(model.GetContainerResources()); 924var container = Assert.Single(model.GetContainerResources()); 1488var container = Assert.Single(model.GetContainerResources()); 1511private static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(IResource resource) => 1535var container = Assert.Single(model.GetContainerResources()); 1653var container = Assert.Single(model.GetContainerResources()); 1712var funcjob = model.Resources.Single(r => r.Name == "funcjob"); 1756var batch = containers.First(c => c.Name == "batch"); 1757var web = containers.First(c => c.Name == "web"); 1793var container = Assert.Single(model.GetContainerResources()); 1823var container = Assert.Single(model.GetContainerResources()); 1862var container = Assert.Single(model.GetContainerResources()); 1902var container = Assert.Single(model.GetContainerResources()); 1942var container = Assert.Single(model.GetContainerResources()); 1979var container = Assert.Single(model.GetContainerResources());
AzureEventHubsExtensionsTests.cs (1)
517var azurite = builder.Resources.FirstOrDefault(x => x.Name == "eh-storage");
AzureFunctionsTests.cs (1)
423private static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(IResource resource) =>
AzureManifestUtils.cs (3)
15public static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(IResource resource, bool skipPreparer = false) => 18public static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(DistributedApplicationModel appModel, IResource resource) => 21private static async Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(DistributedApplicationModel appModel, IResource resource, bool skipPreparer)
AzurePostgresExtensionsTests.cs (2)
289var postgresResourceInModel = builder.Resources.Single(r => r.Name == "postgres-data"); 290var dbResourceInModel = builder.Resources.Single(r => r.Name == "db1");
AzureProvisioningResourceTests.cs (1)
104var containerResource = Assert.Single(model.GetContainerResources());
AzureRedisEnterpriseExtensionsTests.cs (1)
133var cacheInModel = builder.Resources.Single(r => r.Name == "cache");
AzureRedisExtensionsTests.cs (1)
176var cacheInModel = builder.Resources.Single(r => r.Name == "cache");
AzureServiceBusExtensionsTests.cs (1)
613var sql = builder.Resources.FirstOrDefault(x => x.Name == "sb-mssql");
AzureSqlExtensionsTests.cs (2)
217var sqlResourceInModel = builder.Resources.Single(r => r.Name == "sql"); 218var dbResourceInModel = builder.Resources.Single(r => r.Name == "db1");
ContainerRegistryTests.cs (1)
156foreach (var resource in model.Resources)
ProvisioningTestHelpers.cs (3)
688public List<ApplicationModel.IResource> BuildImageResources { get; } = []; 693public Task BuildImageAsync(ApplicationModel.IResource resource, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default) 701public Task BuildImagesAsync(IEnumerable<ApplicationModel.IResource> resources, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default)
RoleAssignmentTests.cs (1)
256private static Task<(JsonNode ManifestNode, string BicepText)> GetManifestWithBicep(IResource resource) =>
Aspire.Hosting.Azure.WebPubSub (3)
AzureWebPubSubExtensions.cs (1)
269where T : IResource
src\Shared\AzureRoleAssignmentUtils.cs (2)
11where T : IResource 19where T : IResource
Aspire.Hosting.Containers.Tests (11)
ContainerResourceBuilderTests.cs (1)
218where T: IResource
ContainerResourceTests.cs (10)
24var containerResource = Assert.Single(containerResources); 43var containerResource = Assert.Single(containerResources); 62var containerResource = Assert.Single(containerResources); 82var containerResource = Assert.Single(containerResources); 170var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources()); 204var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources()); 232var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources()); 251var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources()); 300var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources()); 347var containerResource = Assert.Single(app.Services.GetRequiredService<DistributedApplicationModel>().GetContainerResources());
Aspire.Hosting.DevTunnels (7)
DevTunnelResourceBuilderExtensions.cs (3)
348public static EndpointReference GetEndpoint(this IResourceBuilder<DevTunnelResource> tunnelBuilder, IResource resource, string endpointName) 388private static EndpointReference CreateEndpointReferenceWithError(DevTunnelResource tunnelResource, IResource targetResource, string endpointName) 724public IResource Resource { get; } = tunnel;
src\Shared\ResourceNameComparer.cs (4)
8internal sealed class ResourceNameComparer : IEqualityComparer<IResource> 10public bool Equals(IResource? x, IResource? y) 20public int GetHashCode(IResource obj) =>
Aspire.Hosting.Docker (19)
DockerComposeEnvironmentContext.cs (1)
12public async Task<DockerComposeServiceResource> CreateDockerComposeServiceResourceAsync(IResource resource, DistributedApplicationExecutionContext executionContext, CancellationToken cancellationToken)
DockerComposeEnvironmentResource.cs (1)
53internal Dictionary<IResource, DockerComposeServiceResource> ResourceMapping { get; } = new(new ResourceNameComparer());
DockerComposeInfrastructure.cs (3)
51foreach (var r in @event.Model.GetComputeResources()) 73foreach (var r in appModel.GetComputeResources()) 82private static void ConfigureOtlp(IResource resource, EndpointReference otlpEndpoint)
DockerComposePublishingContext.cs (4)
76IEnumerable<IResource> resources = environment.Dashboard?.Resource is IResource r 80var containerImagesToBuild = new List<IResource>(); 82foreach (var resource in resources)
DockerComposeServiceExtensions.cs (2)
108var resourceInstance = dockerComposeService.TargetResource; 122var resourceInstance = dockerComposeService.TargetResource;
DockerComposeServiceResource.cs (4)
15public class DockerComposeServiceResource(string name, IResource resource, DockerComposeEnvironmentResource composeEnvironmentResource) : Resource(name), IResourceWithParent<DockerComposeEnvironmentResource> 36IResource Resource, 47internal IResource TargetResource => resource; 93private bool TryGetContainerImageName(IResource resourceInstance, out string? containerImageName)
src\Shared\ResourceNameComparer.cs (4)
8internal sealed class ResourceNameComparer : IEqualityComparer<IResource> 10public bool Equals(IResource? x, IResource? y) 20public int GetHashCode(IResource obj) =>
Aspire.Hosting.Docker.Tests (4)
DockerComposePublisherTests.cs (2)
510public Task BuildImageAsync(IResource resource, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default) 516public Task BuildImagesAsync(IEnumerable<IResource> resources, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default)
DockerComposeTests.cs (2)
209public Task BuildImageAsync(IResource resource, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default) 215public Task BuildImagesAsync(IEnumerable<IResource> resources, ContainerBuildOptions? options = null, CancellationToken cancellationToken = default)
Aspire.Hosting.Kafka.Tests (1)
AddKafkaTests.cs (1)
173var kafkaUiResource = Assert.Single(builder.Resources, r => r.Name == expectedContainerName);
Aspire.Hosting.Keycloak.Tests (2)
KeycloakPublicApiTests.cs (2)
163var keycloakResource = builder.Resources.Single(r => r.Name.Equals(resourceName, StringComparison.Ordinal)); 190var keycloakResource = builder.Resources.Single(r => r.Name.Equals(resourceName, StringComparison.Ordinal));
Aspire.Hosting.Kubernetes (20)
Extensions\ResourceExtensions.cs (7)
11internal static Deployment ToDeployment(this IResource resource, KubernetesResource context) 40internal static StatefulSet ToStatefulSet(this IResource resource, KubernetesResource context) 60internal static Secret? ToSecret(this IResource resource, KubernetesResource context) 91internal static ConfigMap? ToConfigMap(this IResource resource, KubernetesResource context) 118internal static Service? ToService(this IResource resource, KubernetesResource context) 154private static PodTemplateSpecV1 ToPodTemplateSpec(this IResource resource, KubernetesResource context) 221private static ContainerV1 ToContainerV1(this IResource resource, KubernetesResource context)
KubernetesEnvironmentContext.cs (2)
11private readonly Dictionary<IResource, KubernetesResource> _kubernetesComponents = []; 15public async Task<KubernetesResource> CreateKubernetesResourceAsync(IResource resource, DistributedApplicationExecutionContext executionContext, CancellationToken cancellationToken)
KubernetesInfrastructure.cs (2)
39foreach (var r in @event.Model.GetComputeResources()) 57foreach (var r in appModel.GetComputeResources())
KubernetesPublishingContext.cs (4)
70foreach (var resource in model.Resources) 112private async Task AppendResourceContextToHelmValuesAsync(IResource resource, KubernetesResource resourceContext) 120IResource resource, 159private async Task WriteKubernetesTemplatesForResource(IResource resource, IEnumerable<BaseKubernetesResource> templatedItems)
KubernetesResource.cs (5)
14public class KubernetesResource(string name, IResource resource, KubernetesEnvironmentResource kubernetesEnvironmentResource) : Resource(name), IResourceWithParent<KubernetesEnvironmentResource> 60internal IResource TargetResource => resource; 133internal string GetContainerImageName(IResource resourceInstance) 461private static HelmExpressionWithValue AllocateParameter(ParameterResource parameter, IResource resource) 480private static HelmExpressionWithValue ResolveUnknownValue(IManifestExpressionProvider parameter, IResource resource)
Aspire.Hosting.Milvus.Tests (2)
AddMilvusTests.cs (2)
27var containerResource = Assert.Single(appModel.GetContainerResources()); 57var containerResource = Assert.Single(appModel.GetContainerResources());
Aspire.Hosting.MySql (1)
MySqlBuilderExtensions.cs (1)
99/// the extension method <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>
Aspire.Hosting.MySql.Tests (4)
AddMySqlTests.cs (4)
84var containerResource = Assert.Single(appModel.GetContainerResources()); 241var myAdmin = builder.Resources.Single(r => r.Name.Equals("phpmyadmin")); 247var container = builder.Resources.Single(r => r.Name == "phpmyadmin"); 273var myAdmin = builder.Resources.Single(r => r.Name.Equals("phpmyadmin"));
Aspire.Hosting.Oracle.Tests (3)
AddOracleTests.cs (3)
44var containerResource = Assert.Single(appModel.GetContainerResources()); 83var containerResource = Assert.Single(appModel.GetContainerResources()); 165var containerResource = Assert.Single(containerResources);
Aspire.Hosting.PostgreSQL (2)
PostgresBuilderExtensions.cs (2)
35/// using the <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> 128/// using the <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>
Aspire.Hosting.PostgreSQL.Tests (7)
AddPostgresTests.cs (7)
54var containerResource = Assert.Single(appModel.GetContainerResources()); 108var containerResource = Assert.Single(appModel.GetContainerResources()); 201var containerResource = Assert.Single(containerResources); 381var container = builder.Resources.Single(r => r.Name == "pgadmin"); 435var container = builder.Resources.Single(r => r.Name == "pgadmin"); 469var pgadmin = builder.Resources.Single(r => r.Name.Equals("pgadmin")); 534var pgweb = builder.Resources.Single(r => r.Name.Equals("pgweb"));
Aspire.Hosting.Python (1)
PythonAppResourceBuilderExtensions.cs (1)
674var existingResource = builder.ApplicationBuilder.Resources
Aspire.Hosting.Qdrant.Tests (4)
AddQdrantTests.cs (3)
47var containerResource = Assert.Single(appModel.GetContainerResources()); 86var containerResource = Assert.Single(appModel.GetContainerResources()); 119var containerResource = Assert.Single(appModel.GetContainerResources());
QdrantFunctionalTests.cs (1)
229var qdrantResource = builder.Resources.Single(r => r.Name.Equals("qdrant"));
Aspire.Hosting.Redis (2)
RedisBuilderExtensions.cs (2)
28/// using the <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/> 50/// using the <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>
Aspire.Hosting.Redis.Tests (4)
AddRedisTests.cs (4)
284var redisinsight = builder.Resources.Single(r => r.Name.Equals("redisinsight")); 494var commander = builder.Resources.Single(r => r.Name.Equals("rediscommander")); 520var commander = builder.Resources.Single(r => r.Name.Equals("rediscommander")); 541var commander = builder.Resources.Single(r => r.Name.Equals("rediscommander"));
Aspire.Hosting.SqlServer (1)
SqlServerBuilderExtensions.cs (1)
103/// the extension method <see cref="ResourceBuilderExtensions.WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource})"/>
Aspire.Hosting.Testing (10)
DistributedApplicationHostingTestingExtensions.cs (4)
48var resource = GetResource(app, resourceName); 74static IResource GetResource(DistributedApplication app, string resourceName) 80var resource = resources.SingleOrDefault(r => string.Equals(r.Name, resourceName, StringComparison.OrdinalIgnoreCase)); 92var resource = GetResource(app, resourceName);
DistributedApplicationTestingBuilder.cs (6)
247public IResourceBuilder<T> AddResource<T>(T resource) where T : IResource => innerBuilder.AddResource(resource); 257public IResourceBuilder<T> CreateResourceBuilder<T>(T resource) where T : IResource => innerBuilder.CreateResourceBuilder(resource); 399public IResourceBuilder<T> AddResource<T>(T resource) where T : IResource => _innerBuilder.AddResource(resource); 413public IResourceBuilder<T> CreateResourceBuilder<T>(T resource) where T : IResource => _innerBuilder.CreateResourceBuilder(resource); 490new IResourceBuilder<T> AddResource<T>(T resource) where T : IResource => ((IDistributedApplicationBuilder)this).AddResource(resource); 493new IResourceBuilder<T> CreateResourceBuilder<T>(T resource) where T : IResource => ((IDistributedApplicationBuilder)this).CreateResourceBuilder(resource);
Aspire.Hosting.Testing.Tests (3)
TestingBuilderTests.cs (1)
103foreach (var resource in appModel.GetContainerResources())
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
31public static async Task WaitForHealthyAsync<T>(this DistributedApplication app, IResourceBuilder<T> resource, CancellationToken cancellationToken = default) where T : IResource
tests\Shared\ConsoleLogging\ConsoleLoggingTestHelpers.cs (1)
8public static Task<IReadOnlyList<LogLine>> WatchForLogsAsync(ResourceLoggerService service, int targetLogCount, IResource resource)
Aspire.Hosting.Tests (38)
ApplicationModel\Docker\DockerfileBuilderCallbackContextTests.cs (1)
134Assert.IsAssignableFrom<IResource>(context.Resource);
Dashboard\DashboardLifecycleHookTests.cs (5)
90var dashboardResource = model.Resources.Single(r => string.Equals(r.Name, KnownResourceNames.AspireDashboard, StringComparisons.ResourceName)); 240var dashboardResource = Assert.Single(model.Resources); 328var dashboardResource = Assert.Single(model.Resources); 400var dashboardResource = Assert.Single(model.Resources); 470var dashboardResource = Assert.Single(model.Resources);
Dashboard\DashboardResourceTests.cs (8)
108var dashboard = Assert.Single(model.Resources); 223var dashboard = Assert.Single(model.Resources); 262var dashboard = Assert.Single(model.Resources); 298var dashboard = Assert.Single(model.Resources); 337var container = Assert.Single(model.Resources, r => r.Name == "my-container"); 341var dashboard = Assert.Single(model.Resources, r => r.Name == "aspire-dashboard"); 382var dashboard = Assert.Single(model.Resources, r => r.Name == "aspire-dashboard"); 554static void SetDashboardAllocatedEndpoints(IResource dashboard, int otlpGrpcPort, int otlpHttpPort, int httpPort)
Dcp\DcpExecutorTests.cs (3)
1984private static void HasKnownCommandAnnotations(IResource resource) 2111private sealed class CustomChildResource(string name, IResource parent) : Resource(name), IResourceWithParent 2113public IResource Parent => parent;
DistributedApplicationBuilderTests.cs (1)
64var resource = Assert.Single(appModel.Resources);
DistributedApplicationTests.cs (2)
455foreach (var item in appModel.Resources) 907var aspireDashboard = model.Resources.Single(r => r.Name == KnownResourceNames.AspireDashboard);
Eventing\DistributedApplicationBuilderEventingTests.cs (2)
272var resourceStopped = default(IResource);
Orchestrator\ApplicationOrchestratorTests.cs (3)
503private sealed class CustomChildResource(string name, IResource parent) : Resource(name), IResourceWithParent 505public IResource Parent => parent; 559public IResource Parent { get; } = parent;
Orchestrator\ParameterProcessorTests.cs (1)
80var updates = new List<(IResource Resource, CustomResourceSnapshot Snapshot)>();
Orchestrator\RelationshipEvaluatorTests.cs (2)
138private sealed class CustomChildResource(string name, IResource parent) : Resource(name), IResourceWithParent 140public IResource Parent => parent;
tests\Shared\ConsoleLogging\ConsoleLoggingTestHelpers.cs (1)
8public static Task<IReadOnlyList<LogLine>> WatchForLogsAsync(ResourceLoggerService service, int targetLogCount, IResource resource)
Utils\ArgumentEvaluator.cs (1)
11public static async ValueTask<List<string>> GetArgumentListAsync(IResource resource, IServiceProvider? serviceProvider = null)
Utils\EnvironmentVariableEvaluator.cs (1)
11public static async ValueTask<Dictionary<string, string>> GetEnvironmentVariablesAsync(IResource resource,
Utils\LoggerNotificationExtensions.cs (1)
31public static async Task WaitForHealthyAsync<T>(this DistributedApplication app, IResourceBuilder<T> resource, CancellationToken cancellationToken = default) where T : IResource
Utils\ManifestUtils.cs (4)
13public static async Task<JsonNode> GetManifest(IResource resource, string? manifestDirectory = null) 20public static async Task<JsonNode?> GetManifestOrNull(IResource resource, string? manifestDirectory = null) 45public static async Task<JsonNode[]> GetManifests(IResource[] resources) 58foreach (var r in resources)
WithEnvironmentTests.cs (2)
472private readonly IResource _referencedResource; 474public TestValueWithReferences(string value, IResource referencedResource)
Aspire.Playground.Tests (3)
Infrastructure\DistributedApplicationExtensions.cs (2)
71var resource = resourceVolume.Resource; 143static bool ShouldAssertErrorsForResource(IResource resource)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
31public static async Task WaitForHealthyAsync<T>(this DistributedApplication app, IResourceBuilder<T> resource, CancellationToken cancellationToken = default) where T : IResource
Pipelines.Library (1)
DistributedApplicationPipelineExtensions.cs (1)
32foreach (var resource in context.Model.GetComputeResources())
Stress.AppHost (7)
InteractionCommands.cs (1)
12public static IResourceBuilder<T> AddInteractionCommands<T>(this IResourceBuilder<T> resource) where T : IResource
Program.cs (3)
19IResource parent = rb.Resource; 141IResourceBuilder<IResource>? previousResourceBuilder = null; 175foreach (var r in resources)
TestResource.cs (3)
31public static IResourceBuilder<TestNestedResource> AddNestedResource(this IDistributedApplicationBuilder builder, string name, IResource parent) 114sealed class TestNestedResource(string name, IResource parent) : Resource(name), IResourceWithParent 116public IResource Parent { get; } = parent;