Implemented interface member:
147 references to Metadata
Aspire.Hosting (113)
Dcp\AppResource.cs (5)
14
public string DcpResourceName => DcpResource.
Metadata
.Name;
33
dr.
Metadata
.Name == odr.
Metadata
.Name &&
34
dr.
Metadata
.NamespaceProperty == odr.
Metadata
.NamespaceProperty;
Dcp\DcpExecutor.cs (63)
508
if (_logStreams.TryRemove(resource.
Metadata
.Name, out var logStream))
516
_logger.LogTrace("Deleting application model resource {ResourceName} with {ResourceKind} resource {ResourceName}", appModelResource.Name, resourceKind, resource.
Metadata
.Name);
523
_logger.LogTrace("Updating application model resource {ResourceName} with {ResourceKind} resource {ResourceName}", appModelResource.Name, resourceKind, resource.
Metadata
.Name);
528
await _executorEvents.PublishAsync(new OnResourceChangedContext(_shutdownCancellation.Token, resourceType, appModelResource, resource.
Metadata
.Name, status, s => snapshotFactory(resource, s))).ConfigureAwait(false);
534
_logInformationChannel.Writer.TryWrite(new(resource.
Metadata
.Name, LogsAvailable: true, HasSubscribers: null));
543
_logger.LogTrace("No application model resource found for {ResourceKind} resource {ResourceName}", resourceKind, resource.
Metadata
.Name);
554
_resourceState.ResourceAssociatedServicesMap.Remove((resourceKind, resource.
Metadata
.Name), out _);
556
else if (resource.
Metadata
.Annotations?.TryGetValue(CustomResource.ServiceProducerAnnotation, out var servicesProducedAnnotationJson) == true)
561
_resourceState.ResourceAssociatedServicesMap[(resourceKind, resource.
Metadata
.Name)]
709
_logStreams.GetOrAdd(resource.
Metadata
.Name, (_) =>
719
_logger.LogDebug("Starting log streaming for {ResourceName}.", resource.
Metadata
.Name);
723
var logger = _loggerService.GetInternalLogger(resource.
Metadata
.Name);
736
_logger.LogDebug("Log streaming for {ResourceName} was cancelled.", resource.
Metadata
.Name);
740
_logger.LogError(ex, "Error streaming logs for {ResourceName}.", resource.
Metadata
.Name);
756
if (endpoint.
Metadata
.OwnerReferences is null)
761
foreach (var ownerReference in endpoint.
Metadata
.OwnerReferences)
774
foreach (var ((resourceKind, resourceName), _) in _resourceState.ResourceAssociatedServicesMap.Where(e => e.Value.Contains(service.
Metadata
.Name)))
824
map.TryAdd(resource.
Metadata
.Name, resource);
828
map[resource.
Metadata
.Name] = resource;
832
map.Remove(resource.
Metadata
.Name, out _);
871
var srvResource = needAddressAllocated.FirstOrDefault(sr => sr.
Metadata
.Name == updated.
Metadata
.Name);
882
AspireEventSource.Instance.DcpServiceAddressAllocated(srvResource.
Metadata
.Name);
895
var dcpSvc = await _kubernetesService.GetAsync<Service>(sar.
Metadata
.Name, cancellationToken: cancellationToken).ConfigureAwait(false);
902
_distributedApplicationLogger.LogWarning("Unable to allocate a network port for service '{ServiceName}'; service may be unreachable and its clients may not work properly.", sar.
Metadata
.Name);
903
AspireEventSource.Instance.DcpServiceAddressAllocationFailed(sar.
Metadata
.Name);
928
sr.
Metadata
.Annotations?.TryGetValue(CustomResource.ContainerTunnelInstanceName, out var _) is true &&
929
sr.
Metadata
.Annotations?.TryGetValue(CustomResource.ContainerNetworkAnnotation, out var containerNetwork) is true &&
946
PrimaryServiceName: r.DcpResource.
Metadata
.Annotations?.TryGetValue(CustomResource.PrimaryServiceNameAnnotation, out var psn) == true ? psn : null)
953
.Where(svc => svc.
Metadata
.Name.Equals(cs.PrimaryServiceName)).First();
978
AspireEventSource.Instance.DcpObjectCreationStart(rtc.Kind, rtc.
Metadata
.Name);
983
AspireEventSource.Instance.DcpObjectCreationStop(rtc.Kind, rtc.
Metadata
.Name);
1026
throw new InvalidDataException($"Service {svc.
Metadata
.Name} should have valid address at this point");
1031
throw new InvalidOperationException($"Service '{svc.
Metadata
.Name}' needs to specify a port for endpoint '{sp.EndpointAnnotation.Name}' since it isn't using a proxy.");
1041
targetPortExpression: $$$"""{{- portForServing "{{{svc.
Metadata
.Name}}}" -}}""",
1058
targetPortExpression: $$$"""{{- portForServing "{{{svc.
Metadata
.Name}}}" -}}""",
1075
targetPortExpression: $$$"""{{- portForServing "{{{svc.
Metadata
.Name}}}" -}}""",
1090
ResourceName: r.DcpResource.
Metadata
.Annotations?.TryGetValue(CustomResource.ResourceNameAnnotation, out var resourceName) == true ? resourceName : null,
1091
EndpointName: r.DcpResource.
Metadata
.Annotations?.TryGetValue(CustomResource.EndpointNameAnnotation, out var endpointName) == true ? endpointName : null,
1092
TunnelInstanceName: r.DcpResource.
Metadata
.Annotations?.TryGetValue(CustomResource.ContainerTunnelInstanceName, out var tunnelInstanceName) == true ? tunnelInstanceName : null,
1093
ContainerNetworkName: r.DcpResource.
Metadata
.Annotations?.TryGetValue(CustomResource.ContainerNetworkAnnotation, out var containerNetworkName) == true ? containerNetworkName : null
1106
throw new InvalidDataException($"Service '{ts.Service!.
Metadata
.Name}' refers to endpoint '{ts.EndpointName}' that does not exist");
1112
throw new InvalidDataException($"Container tunnel service {ts.Service?.
Metadata
.Name} should have valid address at this point");
1333
ServerServiceName = serverSvc.DcpResource.
Metadata
.Name,
1335
ClientServiceName = svc.
Metadata
.Name,
1346
svc.Annotate(CustomResource.PrimaryServiceNameAnnotation, serverSvc.DcpResource.
Metadata
.Name);
1349
svc.Annotate(CustomResource.ContainerTunnelInstanceName, tunnelProxy?.
Metadata
?.Name ?? "");
1627
er.DcpResource.
Metadata
.Name, new ResourceStatus(KnownResourceStates.NotStarted, null, null), s => s with { State = new ResourceStateSnapshot(KnownResourceStates.NotStarted, null) })
1658
await _executorEvents.PublishAsync(new OnResourceFailedToStartContext(cancellationToken, resourceType, er.ModelResource, er.DcpResource.
Metadata
.Name)).ConfigureAwait(false);
1666
await _executorEvents.PublishAsync(new OnResourceFailedToStartContext(cancellationToken, resourceType, er.ModelResource, er.DcpResource.
Metadata
.Name)).ConfigureAwait(false);
2069
AspireEventSource.Instance.DcpObjectCreationStart(dcpContainerResource.Kind, dcpContainerResource.
Metadata
.Name);
2077
await _executorEvents.PublishAsync(new OnResourceStartingContext(cancellationToken, KnownResourceTypes.Container, cr.ModelResource, cr.DcpResource.
Metadata
.Name)).ConfigureAwait(false);
2406
var spAnn = new ServiceProducerAnnotation(sp.Service.
Metadata
.Name);
2415
if (resource is Executable exe && exe.
Metadata
.Annotations.TryGetValue(CustomResource.ResourceReplicaCount, out var value) && int.TryParse(value, CultureInfo.InvariantCulture, out var replicas) && replicas > 1)
2477
AspireEventSource.Instance.StopResourceStart(dcpResource.Kind, dcpResource.
Metadata
.Name);
2488
var cu = await _kubernetesService.GetAsync<Container>(c.
Metadata
.Name, cancellationToken: attemptCancellationToken).ConfigureAwait(false);
2503
var eu = await _kubernetesService.GetAsync<Executable>(e.
Metadata
.Name, cancellationToken: attemptCancellationToken).ConfigureAwait(false);
2522
AspireEventSource.Instance.StopResourceStop(dcpResource.Kind, dcpResource.
Metadata
.Name);
2536
.SingleOrDefault(r => string.Equals(r.DcpResource.
Metadata
.Name, resourceName, StringComparisons.ResourceName));
2550
AspireEventSource.Instance.StartResourceStart(appResource.DcpResource.Kind, appResource.DcpResource.
Metadata
.Name);
2595
AspireEventSource.Instance.StartResourceStop(appResource.DcpResource.Kind, appResource.DcpResource.
Metadata
.Name);
3031
.Where(ar => ar.DcpResource is ContainerExec ce && regular.Any(td => td.DcpResource is Container c && c.
Metadata
.Name == ce.Spec.ContainerName)),
3033
.Where(ar => ar.DcpResource is ContainerExec ce && tunnelDependent.Any(td => td.DcpResource is Container c && c.
Metadata
.Name == ce.Spec.ContainerName))
Dcp\KubernetesService.cs (4)
176
obj.
Metadata
.Name,
184
obj.
Metadata
.Name,
349
obj.
Metadata
.Name,
351
obj.
Metadata
.Namespace(),
Dcp\Model\Container.cs (2)
575
c.
Metadata
.Name = name;
576
c.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ContainerExec.cs (2)
137
containerExec.
Metadata
.Name = name;
138
containerExec.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ContainerNetwork.cs (2)
91
c.
Metadata
.Name = name;
92
c.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ContainerTunnel.cs (2)
271
tp.
Metadata
.Name = name;
272
tp.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ContainerVolume.cs (2)
78
containerVolume.
Metadata
.Name = name;
79
containerVolume.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\Endpoint.cs (2)
48
e.
Metadata
.Name = name;
49
e.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\Executable.cs (2)
261
exe.
Metadata
.Name = name;
262
exe.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ExecutableReplicaSet.cs (2)
107
ers.
Metadata
.Name = name;
108
ers.
Metadata
.NamespaceProperty = string.Empty;
Dcp\Model\ModelCommon.cs (12)
41
public string? AppModelResourceName =>
Metadata
.Annotations?.TryGetValue(ResourceNameAnnotation, out var value) is true ? value : null;
43
public string? AppModelInitialState =>
Metadata
.Annotations?.TryGetValue(ResourceStateAnnotation, out var value) is true ? value : null;
50
if (
Metadata
.Annotations is null)
52
Metadata
.Annotations = new Dictionary<string, string>();
55
Metadata
.Annotations[annotationName] = value;
60
if (
Metadata
.Annotations is null)
62
Metadata
.Annotations = new Dictionary<string, string>();
65
AnnotateAsObjectList<TValue>(
Metadata
.Annotations, annotationName, value);
70
if (
Metadata
.Annotations is null)
72
Metadata
.Annotations = new Dictionary<string, string>();
75
Metadata
.Annotations[annotationName] = JsonSerializer.Serialize<List<TValue>>(list.ToList());
80
return TryGetAnnotationAsObjectList<TValue>(
Metadata
.Annotations, annotationName, out list);
Dcp\Model\Service.cs (3)
83
s.
Metadata
.Name = name;
84
s.
Metadata
.NamespaceProperty = string.Empty;
93
public string? EndpointName =>
Metadata
.Annotations?.TryGetValue(EndpointNameAnnotation, out var value) is true ? value : null;
Dcp\ResourceLogSource.cs (2)
69
logger.LogWarning("Failed to write log entry to channel. Logs for {Kind} {Name} may be incomplete", resource.Kind, resource.
Metadata
.Name);
81
logger.LogError(ex, "Unexpected error happened when capturing logs for {Kind} {Name}", resource.Kind, resource.
Metadata
.Name);
Dcp\ResourceSnapshotBuilder.cs (8)
62
CreationTimeStamp = container.
Metadata
.CreationTimestamp?.ToUniversalTime(),
121
CreationTimeStamp = executable.
Metadata
.CreationTimestamp?.ToUniversalTime(),
176
CreationTimeStamp = executable.
Metadata
.CreationTimestamp?.ToUniversalTime(),
198
CreationTimeStamp = executable.
Metadata
.CreationTimestamp?.ToUniversalTime(),
247
var name = resource.
Metadata
.Name;
253
.Select(s => (s.EndpointName!, s.
Metadata
.Name)));
268
&& e.Value.
Metadata
.OwnerReferences?.Any(or => or.Kind == resource.Kind && or.Name == name) == true)
299
var isActive = _resourceState.EndpointsMap.Any(e => e.Value.Spec.ServiceName == endpointOwnerEndpoint?.
Metadata
.Name);
Aspire.Hosting.Tests (34)
Dcp\DcpExecutorTests.cs (16)
49
Assert.Equal("CustomName", container.
Metadata
.Annotations["otel-service-name"]);
247
var reference = appExecutor.GetResource(exe1.
Metadata
.Name);
594
Assert.Equal(expectedName, exe.
Metadata
.Annotations[CustomResource.OtelServiceNameAnnotation]);
632
var watchLogs = resourceLoggerService.WatchAsync(exeResource.
Metadata
.Name);
642
Assert.Equal(exeResource.
Metadata
.Name, watchSubscribersEnumerator.Current.Name);
669
var loggerState = resourceLoggerService.GetResourceLoggerState(exeResource.
Metadata
.Name);
682
Assert.Equal(exeResource.
Metadata
.Name, watchSubscribersEnumerator.Current.Name);
735
var watchLogs1 = resourceLoggerService.WatchAsync(exeResource.
Metadata
.Name);
741
Assert.Equal(exeResource.
Metadata
.Name, watchSubscribersEnumerator.Current.Name);
757
var watchLogs2 = resourceLoggerService.WatchAsync(exeResource.
Metadata
.Name);
815
var watchLogs = resourceLoggerService.WatchAsync(exeResource.
Metadata
.Name);
820
Assert.Equal(exeResource.
Metadata
.Name, watchSubscribersEnumerator.Current.Name);
1254
var resourceReference = appExecutor.GetResource(dcpCtr.
Metadata
.Name);
1257
Assert.Equal($"Failed to delete '{dcpCtr.
Metadata
.Name}' successfully before restart.", ex.Message);
1383
var annotations = container.
Metadata
.EnsureAnnotations();
2237
&& x.
Metadata
.Annotations.ContainsKey(CustomResource.ContainerTunnelInstanceName))
Dcp\TestKubernetesService.cs (10)
34
_startStream = startStream ?? ((obj, logStreamType) => new MemoryStream(Encoding.UTF8.GetBytes($"Logs for {obj.
Metadata
.Name} ({logStreamType})")));
49
r.
Metadata
.Name == name &&
50
string.Equals(r.
Metadata
.NamespaceProperty ?? string.Empty, namespaceParameter ?? string.Empty)
127
string.Equals(r.
Metadata
.NamespaceProperty ?? string.Empty, namespaceParameter ?? string.Empty)
190
r.
Metadata
.Name == obj.
Metadata
.Name &&
191
string.Equals(r.
Metadata
.NamespaceProperty, obj.
Metadata
.NamespaceProperty)
195
throw new ArgumentException($"Resource '{obj.
Metadata
.NamespaceProperty}/{obj.
Metadata
.Name}' not found");
DistributedApplicationTests.cs (8)
792
var redisContainer = Assert.Single(list, c => c.
Metadata
.Name.StartsWith($"{testName}-redis"));
1087
await orchestrator.StopResourceAsync(redisContainer.
Metadata
.Name, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
1092
await orchestrator.StartResourceAsync(redisContainer.
Metadata
.Name, token);
1124
await orchestrator.StopResourceAsync(serviceA.
Metadata
.Name, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
1129
await orchestrator.StartResourceAsync(serviceA.
Metadata
.Name, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
1436
Assert.True(resource.Item2.
Metadata
.Annotations.TryGetValue(Container.ResourceNameAnnotation, out var value));
1450
Assert.True(resource.Item2.
Metadata
.Annotations.TryGetValue(Executable.ResourceNameAnnotation, out var value));
1710
Assert.All(serviceList.Where(s => s.
Metadata
.Name.Contains("redis")), s => Assert.Equal(AddressAllocationModes.Proxyless, s.Spec.AddressAllocationMode));