10 implementations of Name
Aspire.Hosting (1)
ApplicationModel\Resource.cs (1)
17
public virtual string
Name
{ get; }
Aspire.Hosting.Azure.EventHubs (1)
AzureEventHubsEmulatorResource.cs (1)
24
public override string
Name
=> _innerResource.Name;
Aspire.Hosting.Azure.PostgreSQL (1)
AzurePostgresResource.cs (1)
31
public override string
Name
=> _innerResource.Name;
Aspire.Hosting.Azure.Redis (1)
AzureRedisResource.cs (1)
31
public override string
Name
=> _innerResource.Name;
Aspire.Hosting.Azure.Storage (1)
AzureStorageEmulatorResource.cs (1)
17
public override string
Name
=> _innerResource.Name;
Aspire.Hosting.Tests (4)
DistributedApplicationBuilderTests.cs (1)
175
public string
Name
=> nameof(TestResource);
DistributedApplicationModelExtensionsTests.cs (1)
39
public string
Name
{ get; set; } = "CustomResource";
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
344
public string
Name
{ get; } = name;
Utils\VolumeNameGeneratorTests.cs (1)
48
public string
Name
{ get; } = name;
Aspire.Hosting.Yarp.Tests (1)
YarpClusterTests.cs (1)
221
public string
Name
=> name;
353 references to Name
Aspire.Hosting (132)
ApplicationModel\ConnectionStringReference.cs (1)
36
internal void ThrowConnectionStringUnavailableException() => throw new DistributedApplicationException($"The connection string for the resource '{Resource.
Name
}' is not available.");
ApplicationModel\ContainerImageReference.cs (4)
31
public string ValueExpression => $"{{{Resource.
Name
}.containerImage}}";
39
var deploymentTarget = Resource.GetDeploymentTargetAnnotation() ?? throw new InvalidOperationException($"Resource '{Resource.
Name
}' does not have a deployment target.");
40
var containerRegistry = deploymentTarget.ContainerRegistry ?? throw new InvalidOperationException($"Resource '{Resource.
Name
}' does not have a container registry.");
62
return $"{registryEndpoint}/{Resource.
Name
.ToLowerInvariant()}:{tag}";
ApplicationModel\ContainerPortReference.cs (1)
20
public string ValueExpression => $"{{{Resource.
Name
}.containerPort}}";
ApplicationModel\CustomResourceSnapshot.cs (2)
434
relationships.Add(new(resourceWithParent.Parent.
Name
, KnownRelationshipTypes.Parent));
439
relationships.Add(new(annotation.Resource.
Name
, annotation.Type));
ApplicationModel\EndpointReference.cs (3)
22
public EndpointAnnotation EndpointAnnotation => GetEndpointAnnotation() ?? throw new InvalidOperationException(ErrorMessage ?? $"The endpoint `{EndpointName}` is not defined for the resource `{Resource.
Name
}`.");
76
string Binding(string prop) => $"{{{Resource.
Name
}.bindings.{EndpointName}.{prop}}}";
124
?? throw new InvalidOperationException($"The endpoint `{EndpointName}` is not allocated for the resource `{Resource.
Name
}`.");
ApplicationModel\ExpressionResolver.cs (1)
20
(EndpointProperty.Host or EndpointProperty.IPV4Host, true) => target.
Name
,
ApplicationModel\IResourceWithConnectionString.cs (1)
19
string IManifestExpressionProvider.ValueExpression => $"{{{
Name
}.connectionString}}";
ApplicationModel\ResourceExtensions.cs (8)
446
logger.LogInformation("Waiting for value from resource '{ResourceName}'", resource.
Name
);
450
logger.LogInformation("Waiting for value for environment variable value '{Name}' from resource '{ResourceName}'", key, resource.
Name
);
455
logger.LogInformation("Waiting for value for connection string from resource '{ResourceName}'", cs.
Name
);
627
var computeEnvironmentNames = string.Join(", ", annotations.Select(a => a.ComputeEnvironment?.
Name
));
628
throw new InvalidOperationException($"Resource '{resource.
Name
}' has multiple compute environments - '{computeEnvironmentNames}'. Please specify a single compute environment using 'WithComputeEnvironment'.");
706
throw new InvalidOperationException($"Resource '{resource.
Name
}' has no resolved names.");
710
throw new InvalidOperationException($"Resource '{resource.
Name
}' has multiple resolved names: {string.Join(", ", names)}.");
729
return [resource.
Name
];
ApplicationModel\ResourceNotificationService.cs (14)
131
if (string.Equals(resourceName, resourceEvent.Resource.
Name
, StringComparisons.ResourceName)
152
await WaitForResourceCoreAsync(dependency.
Name
, re => re.ResourceId == resourceId && re.Snapshot.HealthStatus == HealthStatus.Healthy, cancellationToken).ConfigureAwait(false);
157
resourceEvent = await WaitForResourceCoreAsync(dependency.
Name
, re => re.ResourceId == resourceId && re.Snapshot.ResourceReadyEvent is not null, cancellationToken: cancellationToken).ConfigureAwait(false);
260
resourceLogger.LogInformation("Waiting for resource '{ResourceName}' to complete.", dependency.
Name
);
266
var displayName = names.Length > 1 ? names[i] : dependency.
Name
;
274
var resourceEvent = await WaitForResourceCoreAsync(dependency.
Name
, re => re.ResourceId == resourceId && IsKnownTerminalState(re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false);
313
resourceLogger.LogInformation("Waiting for resource '{ResourceName}' to enter the '{State}' state.", dependency.
Name
, KnownResourceStates.Running);
321
var displayName = names.Length > 1 ? names[i] : dependency.
Name
;
329
var resourceEvent = await WaitForResourceCoreAsync(dependency.
Name
, re => re.ResourceId == resourceId && IsContinuableState(waitBehavior, re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false);
452
if (string.Equals(resourceName, resourceEvent.Resource.
Name
, StringComparisons.ResourceName) && predicate(resourceEvent))
496
foreach (var matchingResource in _resourceNotificationStates.Where(s => string.Equals(s.Value.Resource.
Name
, resourceId, StringComparisons.ResourceName)))
618
_logger.LogDebug("Resource {ResourceName}/{ResourceId} changed state: {PreviousState} -> {NewState}", resource.
Name
, resourceId, previousStateText, newStateText);
623
_logger.LogDebug("Resource {ResourceName}/{ResourceId} changed state: {NewState}", resource.
Name
, resourceId, newStateText);
647
resource.
Name
,
Backchannel\AppHostRpcTarget.cs (3)
75
if (resourceEvent.Resource.
Name
== "aspire-dashboard")
83
logger.LogTrace("Resource {ResourceName} does not have endpoints.", resourceEvent.Resource.
Name
);
97
Resource = resourceEvent.Resource.
Name
,
BuiltInDistributedApplicationEventSubscriptionHandlers.cs (1)
44
if (beforeStartEvent.Model.Resources.SingleOrDefault(r => StringComparers.ResourceName.Equals(r.
Name
, KnownResourceNames.AspireDashboard)) is { } dashboardResource)
ConnectionStringBuilderExtensions.cs (2)
61
if (resourceNames.Add(resource.
Name
))
71
if (resourceNames.Add(innerRef.
Name
))
Dashboard\DashboardEventHandlers.cs (3)
65
if (@event.Model.Resources.SingleOrDefault(r => StringComparers.ResourceName.Equals(r.
Name
, KnownResourceNames.AspireDashboard)) is { } dashboardResource)
629
.Where(r => !string.Equals(r.
Name
, KnownResourceNames.AspireDashboard, StringComparisons.ResourceName))
677
if (StringComparers.ResourceName.Equals(notification.Resource.
Name
, KnownResourceNames.AspireDashboard) && !dashboardResourceTasks.ContainsKey(notification.ResourceId))
Dashboard\DashboardServiceData.cs (2)
49
DisplayName = resource.
Name
,
84
logger.LogError(ex, "Error updating resource snapshot for {Name}", @event.Resource.
Name
);
Dcp\DcpExecutor.cs (18)
122
_resourceState = new(model.Resources.ToDictionary(r => r.
Name
), _appResources);
390
_logger.LogTrace("Deleting application model resource {ResourceName} with {ResourceKind} resource {ResourceName}", appModelResource.
Name
, resourceKind, resource.Metadata.Name);
397
_logger.LogTrace("Updating application model resource {ResourceName} with {ResourceKind} resource {ResourceName}", appModelResource.
Name
, resourceKind, resource.Metadata.Name);
812
if (allocatedResources.Add(resource.
Name
))
903
svc.Annotate(CustomResource.ResourceNameAnnotation, sp.ModelResource.
Name
);
1157
resourceLogger.LogError(ex, "Failed to create resource {ResourceName}", er.ModelResource.
Name
);
1168
resourceLogger.LogError(ex, "Failed to create resource {ResourceName}", resource.
Name
);
1341
_ => throw new InvalidOperationException($"Unknown pull policy '{Enum.GetName(typeof(ImagePullPolicy), pullPolicy)}' for container '{container.
Name
}'")
1345
ctr.Annotate(CustomResource.ResourceNameAnnotation, container.
Name
);
1346
ctr.Annotate(CustomResource.OtelServiceNameAnnotation, container.
Name
);
1355
Aliases = new List<string> { container.
Name
},
1372
throw new DistributedApplicationException($"Couldn't find required {nameof(DcpInstancesAnnotation)} annotation on resource {resource.
Name
}.");
1383
throw new DistributedApplicationException($"Couldn't find required instance ID for index {instanceIndex} on resource {resource.
Name
}.");
1409
logger.LogError(ex, "Failed to create container resource {ResourceName}", cr.ModelResource.
Name
);
1852
_logger.LogError(ex, "Failed to start resource {ResourceName}", appResource.ModelResource.
Name
);
1926
_logger.LogDebug(ex, "Failed to apply argument value '{ArgKey}' to '{ResourceName}'. A dependency may have failed to start.", ex.Data["ArgKey"], modelResource.
Name
);
1983
_logger.LogDebug(ex, "Failed to apply environment variable '{Name}' to '{ResourceName}'. A dependency may have failed to start.", key, modelResource.
Name
);
2009
_logger.LogDebug(ex, "Failed to apply argument value '{ArgKey}' to '{ResourceName}'. A dependency may have failed to start.", a, modelResource.
Name
);
Dcp\DcpNameGenerator.cs (1)
138
return maybeWithSuffix(resource.
Name
, suffix, options.ResourceNameSuffix);
Devcontainers\DevcontainerPortForwardingLifecycleHook.cs (1)
47
$"{@event.Resource.
Name
}-{endpoint.Name}");
DistributedApplicationBuilder.cs (5)
439
missingResourceHealthCheck.Resource.
Name
);
541
foreach (var duplicateResourceName in Resources.GroupBy(r => r.
Name
, StringComparers.ResourceName)
566
if (Resources.FirstOrDefault(r => string.Equals(r.
Name
, resource.
Name
, StringComparisons.ResourceName)) is { } existingResource)
568
throw new DistributedApplicationException($"Cannot add resource of type '{resource.GetType()}' with name '{resource.
Name
}' because resource of type '{existingResource.GetType()}' with that name already exists. Resource names are case-insensitive.");
DistributedApplicationBuilderExtensions.cs (1)
64
var resource = builder.Resources.FirstOrDefault(r => string.Equals(r.
Name
, name, StringComparison.OrdinalIgnoreCase));
Exec\ExecResourceManager.cs (5)
97
await _resourceNotificationService.WaitForResourceAsync(execResource!.
Name
, targetState: KnownResourceStates.Running, cancellationToken).ConfigureAwait(false);
104
await _resourceNotificationService.WaitForResourceAsync(execResource!.
Name
, targetStates: KnownResourceStates.TerminalStates, cancellationToken).ConfigureAwait(false);
165
var targetResource = _model.Resources.FirstOrDefault(x => x.
Name
.Equals(_execOptions.ResourceName, StringComparisons.ResourceName));
174
_logger.LogDebug("Resource '{ResourceName}' has been successfully built and added to the model resources.", execResource.
Name
);
192
_ => throw new InvalidOperationException($"Target resource {targetExecResource.
Name
} does not support exec mode.")
Health\ResourceHealthCheckService.cs (13)
31
var resourceName = resourceEvent.Resource.
Name
;
115
logger.LogDebug("Resource '{ResourceName}' has no health checks to monitor.", resource.
Name
);
122
logger.LogDebug("Resource '{ResourceName}' health checks to monitor: {HeathCheckKeys}", resource.
Name
, string.Join(", ", registrationKeysToCheck));
161
logger.LogTrace("Health report status for '{ResourceName}' is {HealthReportStatus}.", resource.
Name
, report.Status);
181
logger.LogTrace("Health reports for '{ResourceName}' have changed.", resource.
Name
);
204
resource.
Name
216
logger.LogTrace("Resource '{ResourceName}' health check monitoring loop starting delay of {DelayInterval}.", resource.
Name
, delayInterval);
245
logger.LogDebug("Resource '{ResourceName}' is ready.", resource.
Name
);
252
logger.LogDebug("Publishing ResourceReadyEvent for '{ResourceName}'.", resource.
Name
);
257
logger.LogDebug("Waiting for ResourceReadyEvent for '{ResourceName}'.", resource.
Name
);
262
logger.LogDebug("ResourceReadyEvent for '{ResourceName}' completed.", resource.
Name
);
264
logger.LogDebug("Publishing the result of ResourceReadyEvent for '{ResourceName}'.", resource.
Name
);
321
_resourceName = initialEvent.Resource.
Name
;
Orchestrator\ApplicationOrchestrator.cs (2)
97
@event.Resource.
Name
,
279
Logger = _loggerService.GetLogger(resource.
Name
)
ParameterResourceBuilderExtensions.cs (1)
279
var parameter = new ParameterResource(builder.Resource.
Name
, _ => "", secret: true);
Publishing\ManifestPublishingContext.cs (3)
128
Writer.WriteStartObject(resource.
Name
);
662
_referencedResources.TryAdd(resource.
Name
, resource);
684
_referencedResources.Remove(existingResource.
Name
);
Publishing\ResourceContainerImageBuilder.cs (8)
198
logger.LogInformation("Building container image for resource {ResourceName}", resource.
Name
);
236
$"Building image: {resource.
Name
}",
248
await publishingTask.FailAsync($"Building image for {resource.
Name
} failed", cancellationToken).ConfigureAwait(false);
252
await publishingTask.SucceedAsync($"Building image for {resource.
Name
} completed", cancellationToken).ConfigureAwait(false);
271
var arguments = $"publish \"{projectMetadata.ProjectPath}\" --configuration Release /t:PublishContainer /p:ContainerRepository=\"{resource.
Name
}\"";
343
$"Building image: {resource.
Name
}",
396
await publishingTask.SucceedAsync($"Building image for {resource.
Name
} completed", cancellationToken).ConfigureAwait(false);
401
await publishingTask.FailAsync($"Building image for {resource.
Name
} failed", cancellationToken).ConfigureAwait(false);
ResourceBuilderExtensions.cs (25)
412
var serviceName = annotation.Resource.
Name
;
454
connectionName ??= resource.
Name
;
1072
context.Logger.LogWarning("Could not execute callback to customize endpoint URL as no endpoint with name '{EndpointName}' could be found on resource '{ResourceName}'.", endpointName, builder.Resource.
Name
);
1119
context.Logger.LogWarning("Could not execute callback to add an endpoint URL as no endpoint with name '{EndpointName}' could be found on resource '{ResourceName}'.", endpointName, builder.Resource.
Name
);
1220
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for itself.");
1225
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for its parent '{dependency.Resource.
Name
}'.");
1324
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for itself.");
1329
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for its parent '{dependency.Resource.
Name
}'.");
1420
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for itself.");
1425
throw new DistributedApplicationException($"The '{builder.Resource.
Name
}' resource cannot wait for its parent '{dependency.Resource.
Name
}'.");
1476
throw new DistributedApplicationException($"Resource '{builder.Resource.
Name
}' already has a health check with key '{key}'.");
1558
?? throw new DistributedApplicationException($"Could not create HTTP health check for resource '{builder.Resource.
Name
}' as the endpoint selector returned null.");
1562
throw new DistributedApplicationException($"Could not create HTTP health check for resource '{builder.Resource.
Name
}' as the endpoint with name '{endpoint.EndpointName}' and scheme '{endpoint.Scheme}' is not an HTTP endpoint.");
1574
throw new DistributedApplicationException($"The endpoint '{endpointName}' does not exist on the resource '{builder.Resource.
Name
}'.");
1588
var healthCheckKey = $"{builder.Resource.
Name
}_{endpointName}_{path}_{statusCode}_check";
1910
?? throw new DistributedApplicationException($"Could not create HTTP command for resource '{builder.Resource.
Name
}' as the endpoint selector returned null.");
1914
throw new DistributedApplicationException($"Could not create HTTP command for resource '{builder.Resource.
Name
}' as the endpoint with name '{endpoint.EndpointName}' and scheme '{endpoint.Scheme}' is not an HTTP endpoint.");
1922
commandName ??= $"{endpoint.Resource.
Name
}-{endpoint.EndpointName}-http-{commandOptions.Method.Method.ToLowerInvariant()}-{path}";
2022
throw new DistributedApplicationException($"Could not create {errorDisplayNoun} for resource '{builder.Resource.
Name
}' as the endpoint with name '{matchingEndpoint.EndpointName}' and scheme '{matchingEndpoint.Scheme}' is not an HTTP endpoint.");
2030
throw new DistributedApplicationException($"Could not create {errorDisplayNoun} for resource '{builder.Resource.
Name
}' as no endpoint was found matching one of the specified names: {endpointNamesString}");
2050
throw new DistributedApplicationException($"Could not create HTTP command for resource '{builder.Resource.
Name
}' as it has no HTTP endpoints.");
2478
var endpoint = endpointSelector() ?? throw new DistributedApplicationException($"Could not create HTTP probe for resource '{builder.Resource.
Name
}' as the endpoint selector returned null.");
ResourceLoggerForwarderService.cs (1)
66
var logger = loggerFactory.CreateLogger($"{applicationName}.Resources.{resource.
Name
}");
Utils\ImageNameGenerator.cs (1)
16
return builder.Resource.
Name
.ToLowerInvariant();
VolumeNameGenerator.cs (1)
33
var resourceName = builder.Resource.
Name
;
Aspire.Hosting.Azure (26)
AzureDeployingContext.cs (11)
238
var resourceTask = await computeStep.CreateTaskAsync($"Deploying {computeResource.
Name
}", cancellationToken).ConfigureAwait(false);
252
var completionMessage = $"Successfully deployed {computeResource.
Name
}";
263
await resourceTask.CompleteAsync($"Skipped {computeResource.
Name
} - no Bicep deployment target", CompletionState.CompletedWithWarning, cancellationToken).ConfigureAwait(false);
268
await resourceTask.CompleteAsync($"Skipped {computeResource.
Name
} - no deployment target annotation", CompletionState.Completed, cancellationToken).ConfigureAwait(false);
278
await resourceTask.CompleteAsync($"Failed to deploy {computeResource.
Name
}: {errorMessage}", CompletionState.CompletedWithError, cancellationToken).ConfigureAwait(false);
405
var localImageName = resource.
Name
.ToLowerInvariant();
409
var pushTask = await pushStep.CreateTaskAsync($"Pushing {resource.
Name
} to {registryName}", cancellationToken).ConfigureAwait(false);
416
throw new InvalidOperationException($"Failed to get target tag for {resource.
Name
}");
419
await pushTask.CompleteAsync($"Successfully pushed {resource.
Name
} to {targetTag}", CompletionState.Completed, cancellationToken).ConfigureAwait(false);
423
await pushTask.CompleteAsync($"Failed to push {resource.
Name
}: {ex.Message}", CompletionState.CompletedWithError, cancellationToken).ConfigureAwait(false);
458
var endpoint = $"https://{computeResource.
Name
.ToLowerInvariant()}.{domainValue}";
AzurePublishingContext.cs (5)
332
var resourceDockerfilePath = Path.Combine(outputPath, $"{resource.
Name
}.Dockerfile");
338
$"Processing deployment target {resource.
Name
}",
343
var moduleDirectory = outputDirectory.CreateSubdirectory(resource.
Name
);
345
var modulePath = Path.Combine(moduleDirectory.FullName, $"{resource.
Name
}.bicep");
363
$"Wrote bicep module for deployment target {resource.
Name
} to {modulePath}",
AzureResourceExtensions.cs (1)
33
Infrastructure.NormalizeBicepIdentifier(resource.
Name
);
AzureResourcePreparer.cs (2)
276
identityResource = new AzureUserAssignedIdentityResource($"{resource.
Name
}-identity")
295
$"{resource.
Name
}-roles-{targetResource.Name}",
Provisioning\Provisioners\AzureProvisioner.cs (7)
203
resourceLogger.LogInformation("Skipping {resourceName} because it is not a Bicep resource.", resource.AzureResource.
Name
);
210
resourceLogger.LogInformation("Skipping {resourceName} because it is not configured to be provisioned.", resource.AzureResource.
Name
);
215
resourceLogger.LogInformation("Using connection information stored in user secrets for {resourceName}.", resource.AzureResource.
Name
);
222
resourceLogger.LogInformation("Resolving {resourceName} as existing resource...", resource.AzureResource.
Name
);
226
resourceLogger.LogInformation("Provisioning {resourceName}...", resource.AzureResource.
Name
);
253
resourceLogger.LogError(ex, "Error provisioning {ResourceName}.", resource.AzureResource.
Name
);
254
resource.AzureResource.ProvisioningTaskCompletionSource?.TrySetException(new InvalidOperationException($"Unable to resolve references from {resource.AzureResource.
Name
}"));
Aspire.Hosting.Azure.AppContainers (13)
AzureContainerAppEnvironmentResource.cs (1)
77
var outputName = $"{prefix}_{resource.
Name
}_{volumeIndex}";
AzureContainerAppExtensions.cs (2)
239
$"{BicepFunction.ToLower(output.resource.
Name
)}-{BicepFunction.ToLower(volumeName)}"),
244
$"{BicepFunction.ToLower(output.resource.
Name
)}-{BicepFunction.ToLower(volumeName)}"),
AzureContainerAppsInfrastructure.cs (1)
66
throw new InvalidOperationException($"Resource '{r.
Name
}' is configured to publish as an Azure Container App, but there are no '{nameof(AzureContainerAppEnvironmentResource)}' resources. Ensure you have added one by calling '{nameof(AzureContainerAppExtensions.AddAzureContainerAppEnvironment)}'.");
BaseContainerAppContext.cs (1)
25
public string NormalizedContainerAppName => resource.
Name
.ToLowerInvariant();
ContainerAppContext.cs (1)
102
var containerApp = new ContainerApp(Infrastructure.NormalizeBicepIdentifier(Resource.
Name
))
ContainerAppEnvironmentContext.cs (3)
32
throw new InvalidOperationException($"Container app context not found for resource {resource.
Name
}.");
46
var provisioningResource = new AzureProvisioningResource(resource.
Name
, context.BuildContainerApp)
61
throw new InvalidOperationException($"Resource '{resource.
Name
}' cannot have both AzureContainerAppCustomizationAnnotation and AzureContainerAppJobCustomizationAnnotation.");
ContainerAppJobContext.cs (1)
90
var containerApp = new ContainerAppJob(Infrastructure.NormalizeBicepIdentifier(Resource.
Name
))
src\Shared\ResourceNameComparer.cs (3)
17
return x.
Name
.Equals(y.
Name
, StringComparison.Ordinal);
21
obj.
Name
.GetHashCode(StringComparison.Ordinal);
Aspire.Hosting.Azure.AppService (10)
AzureAppServiceEnvironmentContext.cs (2)
30
throw new InvalidOperationException($"App Service context not found for resource {resource.
Name
}.");
44
var provisioningResource = new AzureProvisioningResource(resource.
Name
, context.BuildWebSite)
AzureAppServiceInfrastructure.cs (1)
68
throw new InvalidOperationException($"Resource '{r.
Name
}' is configured to publish as an Azure AppService Website, but there are no '{nameof(AzureAppServiceEnvironmentResource)}' resources. Ensure you have added one by calling '{nameof(AzureAppServiceEnvironmentExtensions.AddAzureAppServiceEnvironment)}'.");
AzureAppServiceWebsiteContext.cs (4)
38
BicepFunction.Interpolate($"{BicepFunction.ToLower(resource.
Name
)}-{BicepFunction.GetUniqueString(BicepFunction.GetResourceGroup().Id)}"), 60);
89
throw new NotSupportedException($"The endpoint(s) {string.Join(", ", unsupportedEndpoints.Select(e => $"'{e.Name}'"))} on resource '{resource.
Name
}' specifies an unsupported scheme. Only http and https are supported in App Service.");
96
throw new NotSupportedException($"The endpoint '{endpoint.Name}' on resource '{resource.
Name
}' is not external. App Service only supports external endpoints.");
393
webSite.SiteConfig.AppSettings.Add(new AppServiceNameValuePair { Name = "OTEL_SERVICE_NAME", Value = resource.
Name
});
src\Shared\ResourceNameComparer.cs (3)
17
return x.
Name
.Equals(y.
Name
, StringComparison.Ordinal);
21
obj.
Name
.GetHashCode(StringComparison.Ordinal);
Aspire.Hosting.Azure.EventHubs (2)
AzureEventHubsExtensions.cs (2)
267
context.EnvironmentVariables.Add("BLOB_SERVER", $"{blobEndpoint.Resource.
Name
}:{blobEndpoint.TargetPort}");
268
context.EnvironmentVariables.Add("METADATA_SERVER", $"{tableEndpoint.Resource.
Name
}:{tableEndpoint.TargetPort}");
Aspire.Hosting.Azure.Functions (1)
AzureFunctionsProjectResourceExtensions.cs (1)
245
connectionName ??= source.Resource.
Name
;
Aspire.Hosting.Azure.ServiceBus (1)
AzureServiceBusExtensions.cs (1)
387
context.EnvironmentVariables.Add("SQL_SERVER", $"{sqlEndpoint.Resource.
Name
}:{sqlEndpoint.TargetPort}");
Aspire.Hosting.Azure.Tests (21)
AzureContainerAppsTests.cs (3)
1712
var funcjob = model.Resources.Single(r => r.
Name
== "funcjob");
1756
var batch = containers.First(c => c.
Name
== "batch");
1757
var web = containers.First(c => c.
Name
== "web");
AzureEventHubsExtensionsTests.cs (1)
517
var azurite = builder.Resources.FirstOrDefault(x => x.
Name
== "eh-storage");
AzureFunctionsTests.cs (2)
29
resource is AzureStorageResource && resource.
Name
.StartsWith(AzureFunctionsProjectResourceExtensions.DefaultAzureFunctionsHostStorageName));
32
resource is AzureFunctionsProjectResource && resource.
Name
== "funcapp");
AzureManifestUtils.cs (1)
30
string manifestDir = Directory.CreateTempSubdirectory(resource.
Name
).FullName;
AzurePostgresExtensionsTests.cs (2)
289
var postgresResourceInModel = builder.Resources.Single(r => r.
Name
== "postgres-data");
290
var dbResourceInModel = builder.Resources.Single(r => r.
Name
== "db1");
AzureRedisEnterpriseExtensionsTests.cs (1)
133
var cacheInModel = builder.Resources.Single(r => r.
Name
== "cache");
AzureRedisExtensionsTests.cs (1)
176
var cacheInModel = builder.Resources.Single(r => r.
Name
== "cache");
AzureServiceBusExtensionsTests.cs (1)
613
var sql = builder.Resources.FirstOrDefault(x => x.
Name
== "sb-mssql");
AzureSqlExtensionsTests.cs (2)
217
var sqlResourceInModel = builder.Resources.Single(r => r.
Name
== "sql");
218
var dbResourceInModel = builder.Resources.Single(r => r.
Name
== "db1");
AzureUserAssignedIdentityTests.cs (7)
73
Assert.Collection(model.Resources.OrderBy(r => r.
Name
),
80
Assert.Equal("myidentity-roles-myregistry", r.
Name
);
122
var computeResource = Assert.Single(model.Resources.OfType<IComputeResource>(), r => r.
Name
== "myapp");
168
var computeResource = Assert.Single(model.Resources.OfType<IComputeResource>(), r => r.
Name
== "myapp");
223
var computeResource = Assert.Single(model.Resources.OfType<IComputeResource>(), r => r.
Name
== "myapp");
301
var computeResource = Assert.Single(model.Resources.OfType<IComputeResource>(), r => r.
Name
== "myapp");
303
var computeResource2 = Assert.Single(model.Resources.OfType<IComputeResource>(), r => r.
Name
== "myapp2");
Aspire.Hosting.Containers.Tests (5)
ContainerResourceTests.cs (5)
25
Assert.Equal("container", containerResource.
Name
);
44
Assert.Equal("container", containerResource.
Name
);
63
Assert.Equal("container", containerResource.
Name
);
83
Assert.Equal("container", containerResource.
Name
);
333
Assert.Equal("containerwithbindmounts", containerResource.
Name
);
Aspire.Hosting.DevTunnels (16)
DevTunnelResourceBuilderExtensions.cs (13)
193
portLogger.LogInformation("Created dev tunnel port '{Port}' on tunnel '{Tunnel}' targeting endpoint '{Endpoint}' on resource '{TargetResource}'", portResource.TargetEndpoint.Port, portResource.DevTunnel.TunnelId, portResource.TargetEndpoint.EndpointName, portResource.TargetEndpoint.Resource.
Name
);
392
ErrorMessage = $"The dev tunnel '{tunnelResource.Name}' has not been associated with '{endpointName}' on resource '{targetResource.
Name
}'. Use 'WithReference({targetResource.
Name
})' on the dev tunnel to expose this endpoint."
428
var serviceName = targetResource.Resource.
Name
;
448
throw new ArgumentException($"Target endpoint '{targetEndpoint.EndpointName}' on resource '{targetEndpoint.Resource.
Name
}' has already been added to dev tunnel '{tunnel.Name}'.", nameof(targetEndpoint));
459
throw new ArgumentException($"Cannot tunnel endpoint '{targetEndpointAnnotation.Name}' with host '{targetEndpointAnnotation.TargetHost}' on resource '{targetResource.
Name
}' because it is not a localhost endpoint.", nameof(targetEndpoint));
471
_ => throw new ArgumentException($"Cannot tunnel endpoint '{targetEndpoint.EndpointName}' on resource '{targetResource.
Name
}' because it uses the unsupported scheme '{targetEndpoint.Scheme}'. Only 'http' and 'https' endpoints can be tunneled."),
473
portOptions.Description ??= $"{targetResource.
Name
}/{targetEndpoint.EndpointName}";
475
var portName = $"{tunnel.Name}-{targetResource.
Name
}-{targetEndpoint.EndpointName}";
477
portOptions.Labels.Add(targetResource.
Name
);
567
new(CustomResourceKnownProperties.Source, $"{targetResource.
Name
}/{targetEndpoint.EndpointName}"),
568
new("TargetResource", targetResource.
Name
),
633
portLogger.LogInformation("Forwarding from {PortUrl} to {TargetUrl} ({TargetResourceName}/{TargetEndpointName})", tunnelPortStatus.PortUri.ToString().TrimEnd('/'), portResource.TargetEndpoint.Url, portResource.TargetEndpoint.Resource.
Name
, portResource.TargetEndpoint.EndpointName);
src\Shared\ResourceNameComparer.cs (3)
17
return x.
Name
.Equals(y.
Name
, StringComparison.Ordinal);
21
obj.
Name
.GetHashCode(StringComparison.Ordinal);
Aspire.Hosting.Docker (17)
DockerComposeEnvironmentContext.cs (3)
19
logger.LogInformation("Creating Docker Compose resource for {ResourceName}", resource.
Name
);
21
var serviceResource = new DockerComposeServiceResource(resource.
Name
, resource, environment);
77
serviceResource.TargetResource.
Name
,
DockerComposeInfrastructure.cs (2)
77
throw new InvalidOperationException($"Resource '{r.
Name
}' is configured to publish as a Docker Compose service, but there are no '{nameof(DockerComposeEnvironmentResource)}' resources. Ensure you have added one by calling '{nameof(DockerComposeEnvironmentExtensions.AddDockerComposeEnvironment)}'.");
92
context.EnvironmentVariables["OTEL_SERVICE_NAME"] = resource.
Name
;
DockerComposePublishingContext.cs (1)
106
var resourceDockerfilePath = Path.Combine(OutputPath, $"{serviceResource.TargetResource.
Name
}.Dockerfile");
DockerComposeServiceExtensions.cs (5)
110
var imageEnvName = $"{resourceInstance.
Name
.ToUpperInvariant().Replace("-", "_")}_IMAGE";
114
description: $"Container image name for {resourceInstance.
Name
}",
115
defaultValue: $"{resourceInstance.
Name
}:latest",
124
var containerPortEnv = $"{resourceInstance.
Name
.ToUpperInvariant().Replace("-", "_")}_PORT";
128
description: $"Default container port for {resourceInstance.
Name
}",
DockerComposeServiceResource.cs (2)
76
Name = resource.
Name
.ToLowerInvariant(),
137
composeService.DependsOn[waitAnnotation.Resource.
Name
.ToLowerInvariant()] = new()
src\Shared\PublishingContextUtils.cs (1)
18
return Path.Combine(context.OutputPath, environment.
Name
);
src\Shared\ResourceNameComparer.cs (3)
17
return x.
Name
.Equals(y.
Name
, StringComparison.Ordinal);
21
obj.
Name
.GetHashCode(StringComparison.Ordinal);
Aspire.Hosting.GitHub.Models.Tests (5)
GitHubModelsExtensionTests.cs (5)
265
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "github-gh-apikey"));
269
Assert.Null(builder.Resources.FirstOrDefault(r => r.
Name
== "github-gh-apikey"));
270
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key1"));
274
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key1"));
275
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key2"));
Aspire.Hosting.Kafka (2)
KafkaBuilderExtensions.cs (2)
140
? ReferenceExpression.Create($"{endpoint.Resource.
Name
}:{endpoint.Property(EndpointProperty.TargetPort)}")
143
context.EnvironmentVariables.Add($"KAFKA_CLUSTERS_{index}_NAME", endpoint.Resource.
Name
);
Aspire.Hosting.Kafka.Tests (1)
AddKafkaTests.cs (1)
173
var kafkaUiResource = Assert.Single(builder.Resources, r => r.
Name
== expectedContainerName);
Aspire.Hosting.Keycloak.Tests (2)
KeycloakPublicApiTests.cs (2)
163
var keycloakResource = builder.Resources.Single(r => r.
Name
.Equals(resourceName, StringComparison.Ordinal));
190
var keycloakResource = builder.Resources.Single(r => r.
Name
.Equals(resourceName, StringComparison.Ordinal));
Aspire.Hosting.Kubernetes (33)
Extensions\ResourceExtensions.cs (10)
17
Name = resource.
Name
.ToDeploymentName(),
46
Name = resource.
Name
.ToStatefulSetName(),
71
Name = resource.
Name
.ToSecretName(),
102
Name = resource.
Name
.ToConfigMapName(),
129
Name = resource.
Name
.ToServiceName(),
225
Name = resource.
Name
,
322
Name = context.TargetResource.
Name
.ToConfigMapName(),
339
Name = context.TargetResource.
Name
.ToSecretName(),
379
var pvName = context.TargetResource.
Name
.ToPvName(volume.Name);
423
var pvcName = context.TargetResource.
Name
.ToPvcName(volume.Name);
KubernetesEnvironmentContext.cs (2)
22
logger.LogInformation("Creating Kubernetes resource for {ResourceName}", resource.
Name
);
24
var serviceResource = new KubernetesResource(resource.
Name
, resource, environment);
KubernetesInfrastructure.cs (1)
61
throw new InvalidOperationException($"Resource '{r.
Name
}' is configured to publish as a Kubernetes service, but there are no '{nameof(KubernetesEnvironmentResource)}' resources. Ensure you have added one by calling '{nameof(KubernetesEnvironmentExtensions.AddKubernetesEnvironment)}'.");
KubernetesPublishingContext.cs (4)
90
var resourceDockerfilePath = Path.Combine(OutputPath, $"{serviceResource.TargetResource.
Name
}.Dockerfile");
155
helmSection[resource.
Name
.ToHelmValuesSectionName()] = paramValues;
161
var templatesFolder = Path.Combine(OutputPath, "templates", resource.
Name
);
166
var fileName = GetFilename(resource.
Name
, templatedItem);
KubernetesResource.cs (15)
117
["app.kubernetes.io/component"] = resource.
Name
,
143
var imageEnvName = $"{resourceInstance.
Name
.ToHelmValuesSectionName()}_image";
144
var value = $"{resourceInstance.
Name
}:latest";
145
var expression = imageEnvName.ToHelmParameterExpression(resource.
Name
);
178
var port = endpoint.TargetPort ?? throw new InvalidOperationException($"Unable to resolve port {endpoint.TargetPort} for endpoint {endpoint.Name} on resource {resource.
Name
}");
180
EndpointMappings[endpoint.Name] = new(endpoint.UriScheme, resource.
Name
.ToServiceName(), portValue, endpoint.Name);
190
var helmExpression = paramName.ToHelmParameterExpression(resource.
Name
);
193
var aspNetCoreUrlsExpression = "ASPNETCORE_URLS".ToHelmConfigExpression(resource.
Name
);
196
EndpointMappings[endpoint.Name] = new(endpoint.UriScheme, resource.
Name
.ToServiceName(), helmExpression, endpoint.Name, helmExpression);
315
ProcessEnvironmentStringValue(stringValue, key, resource.
Name
);
318
ProcessEnvironmentDefaultValue(value, key, resource.
Name
);
466
formattedName.ToHelmSecretExpression(resource.
Name
) :
467
formattedName.ToHelmConfigExpression(resource.
Name
);
488
formattedName.ToHelmSecretExpression(resource.
Name
) :
489
formattedName.ToHelmConfigExpression(resource.
Name
);
src\Shared\PublishingContextUtils.cs (1)
18
return Path.Combine(context.OutputPath, environment.
Name
);
Aspire.Hosting.Milvus.Tests (2)
AddMilvusTests.cs (2)
28
Assert.Equal("my-milvus", containerResource.
Name
);
58
Assert.Equal("my-milvus", containerResource.
Name
);
Aspire.Hosting.MySql (2)
MySqlBuilderExtensions.cs (2)
254
context.EnvironmentVariables.Add("PMA_HOST", $"{endpoint.Resource.
Name
}:{endpoint.TargetPort}");
394
writer.WriteLine($"$cfg['Servers'][$i]['host'] = '{endpoint.Resource.
Name
}:{endpoint.TargetPort}';");
Aspire.Hosting.MySql.Tests (4)
AddMySqlTests.cs (4)
85
Assert.Equal("mysql", containerResource.
Name
);
241
var myAdmin = builder.Resources.Single(r => r.
Name
.Equals("phpmyadmin"));
247
var container = builder.Resources.Single(r => r.
Name
== "phpmyadmin");
273
var myAdmin = builder.Resources.Single(r => r.
Name
.Equals("phpmyadmin"));
Aspire.Hosting.OpenAI.Tests (5)
OpenAIExtensionTests.cs (5)
209
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "openai-openai-apikey"));
214
Assert.Null(builder.Resources.FirstOrDefault(r => r.
Name
== "openai-openai-apikey"));
215
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key1"));
219
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key1"));
220
Assert.NotNull(builder.Resources.FirstOrDefault(r => r.
Name
== "secret-key2"));
Aspire.Hosting.Oracle.Tests (3)
AddOracleTests.cs (3)
45
Assert.Equal("orcl", containerResource.
Name
);
84
Assert.Equal("orcl", containerResource.
Name
);
166
Assert.Equal("oracle", containerResource.
Name
);
Aspire.Hosting.Orleans (4)
OrleansServiceExtensions.cs (3)
131
=> WithGrainStorage(orleansServiceBuilder, provider.Resource.
Name
, provider);
183
=> WithStreaming(orleansServiceBuilder, provider.Resource.
Name
, provider);
299
=> WithGrainDirectory(orleansServiceBuilder, provider.Resource.
Name
, provider);
ProviderConfiguration.cs (1)
21
var serviceKey = resourceBuilder.Resource.
Name
;
Aspire.Hosting.PostgreSQL (2)
PostgresBuilderExtensions.cs (2)
85
if (builder.Resources.FirstOrDefault(n => string.Equals(n.
Name
, name, StringComparisons.ResourceName)) is PostgresDatabaseResource postgreDatabase)
547
writer.WriteString("Host", endpoint.Resource.
Name
);
Aspire.Hosting.PostgreSQL.Tests (8)
AddPostgresTests.cs (8)
55
Assert.Equal("myPostgres", containerResource.
Name
);
109
Assert.Equal("myPostgres", containerResource.
Name
);
202
Assert.Equal("postgres", containerResource.
Name
);
381
var container = builder.Resources.Single(r => r.
Name
== "pgadmin");
435
var container = builder.Resources.Single(r => r.
Name
== "pgadmin");
448
Assert.Single(builder.Resources, r => r.
Name
.Equals("pgadmin"));
469
var pgadmin = builder.Resources.Single(r => r.
Name
.Equals("pgadmin"));
534
var pgweb = builder.Resources.Single(r => r.
Name
.Equals("pgweb"));
Aspire.Hosting.Qdrant.Tests (4)
AddQdrantTests.cs (3)
48
Assert.Equal("my-qdrant", containerResource.
Name
);
87
Assert.Equal("my-qdrant", containerResource.
Name
);
120
Assert.Equal("my-qdrant", containerResource.
Name
);
QdrantFunctionalTests.cs (1)
229
var qdrantResource = builder.Resources.Single(r => r.
Name
.Equals("qdrant"));
Aspire.Hosting.Redis.Tests (4)
AddRedisTests.cs (4)
284
var redisinsight = builder.Resources.Single(r => r.
Name
.Equals("redisinsight"));
494
var commander = builder.Resources.Single(r => r.
Name
.Equals("rediscommander"));
520
var commander = builder.Resources.Single(r => r.
Name
.Equals("rediscommander"));
541
var commander = builder.Resources.Single(r => r.
Name
.Equals("rediscommander"));
Aspire.Hosting.Testing (1)
DistributedApplicationHostingTestingExtensions.cs (1)
80
var resource = resources.SingleOrDefault(r => string.Equals(r.
Name
, resourceName, StringComparison.OrdinalIgnoreCase));
Aspire.Hosting.Testing.Tests (2)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (2)
36
await rns.WaitForResourceHealthyAsync(resource.Resource.
Name
, cancellationToken);
134
if (resourceName != null && !string.Equals(resourceEvent.Resource.
Name
, resourceName, StringComparison.OrdinalIgnoreCase))
Aspire.Hosting.Tests (15)
Dashboard\DashboardLifecycleHookTests.cs (3)
90
var dashboardResource = model.Resources.Single(r => string.Equals(r.
Name
, KnownResourceNames.AspireDashboard, StringComparisons.ResourceName));
138
var dashboardResource = (IResourceWithEndpoints)model.Resources.Single(r => string.Equals(r.
Name
, KnownResourceNames.AspireDashboard, StringComparisons.ResourceName));
241
Assert.Equal(KnownResourceNames.AspireDashboard, dashboardResource.
Name
);
Dashboard\DashboardResourceTests.cs (5)
76
r => Assert.Equal("aspire-dashboard", r.
Name
),
77
r => Assert.Equal("my-container", r.
Name
)
337
var container = Assert.Single(model.Resources, r => r.
Name
== "my-container");
341
var dashboard = Assert.Single(model.Resources, r => r.
Name
== "aspire-dashboard");
382
var dashboard = Assert.Single(model.Resources, r => r.
Name
== "aspire-dashboard");
DistributedApplicationTests.cs (1)
790
var aspireDashboard = model.Resources.Single(r => r.
Name
== KnownResourceNames.AspireDashboard);
PublishingTests.cs (1)
161
Assert.Equal("cache", context.Model.Resources.Single().
Name
);
ResourceExtensionsTests.cs (1)
436
return $"async-tag-{context.Resource.
Name
}";
Utils\LoggerNotificationExtensions.cs (2)
36
await rns.WaitForResourceHealthyAsync(resource.Resource.
Name
, cancellationToken);
134
if (resourceName != null && !string.Equals(resourceEvent.Resource.
Name
, resourceName, StringComparison.OrdinalIgnoreCase))
Utils\ManifestUtils.cs (2)
39
var resourceNode = obj[resource.
Name
];
65
var resourceNode = obj[r.
Name
];
Aspire.Hosting.Yarp (4)
ConfigurationBuilder\YarpCluster.cs (4)
26
: this(endpoint.Resource.
Name
, $"{endpoint.Scheme}://_{endpoint.EndpointName}.{endpoint.Resource.
Name
}")
35
: this(resource.
Name
, BuildEndpointUri(resource))
74
var resourceName = resource.
Name
;
Aspire.Playground.Tests (4)
Infrastructure\DistributedApplicationExtensions.cs (2)
106
return Task.WhenAll(applicationModel.Resources.Select(r => app.ResourceNotifications.WaitForResourceAsync(r.
Name
, r => targetStates?.Contains(r.Snapshot.State?.Text, StringComparer.OrdinalIgnoreCase) is true || r.Snapshot.IsHidden, cancellationToken)));
134
var assertableResourceLogNames = applicationModel.Resources.Where(ShouldAssertErrorsForResource).Select(r => $"{environment.ApplicationName}.Resources.{r.
Name
}").ToList();
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (2)
36
await rns.WaitForResourceHealthyAsync(resource.Resource.
Name
, cancellationToken);
134
if (resourceName != null && !string.Equals(resourceEvent.Resource.
Name
, resourceName, StringComparison.OrdinalIgnoreCase))
Stress.AppHost (2)
Program.cs (1)
171
.Where(r => r.
Name
!= KnownResourceNames.AspireDashboard)
TestResource.cs (1)
41
new(KnownProperties.Resource.ParentName, parent.
Name
)