1 instantiation of Container
Aspire.Hosting (1)
Dcp\Model\Container.cs (1)
536var c = new Container(new ContainerSpec { Image = image });
102 references to Container
Aspire.Hosting (32)
Dcp\DcpExecutor.cs (24)
249Task.Run(() => WatchKubernetesResourceAsync<Container>((t, r) => ProcessResourceChange(t, r, _resourceState.ContainersMap, "Container", (c, s) => _snapshotBuilder.ToSnapshot(c, s)))), 293if (_resourceState.ContainersMap.TryGetValue(entry.ResourceName, out var container)) 403if (resource is Container { LogsAvailable: true } || 485Container => KnownResourceTypes.Container, 494if (resource is Container container) 519if (_resourceState.ContainersMap.TryGetValue(resourceName, out var container)) 521enumerable = new ResourceLogSource<Container>(_logger, _kubernetesService, container, follow: false); 568Container c when c.LogsAvailable => new ResourceLogSource<T>(_logger, _kubernetesService, resource, follow: true), 657"Container" => _resourceState.ContainersMap.TryGetValue(resourceName, out var container) ? container : null, 673if (cr is Container container) 799var toCreate = _appResources.Where(r => r.DcpResource is Container or Executable or ContainerExec); 818var containersTask = CreateContainersAsync(toCreate.Where(ar => ar.DcpResource is Container), cancellationToken); 1306var ctr = Container.Create(containerObjectInstance.Name, containerImageName); 1427await _executorEvents.PublishAsync(new OnResourceChangedContext(_shutdownCancellation.Token, KnownResourceTypes.Container, cr.ModelResource, cr.DcpResourceName, new ResourceStatus(null, null, null), s => _snapshotBuilder.ToSnapshot((Container)cr.DcpResource, s))).ConfigureAwait(false); 1431if (cr.DcpResource is Container container) 1453var dcpContainerResource = (Container)cr.DcpResource; 1495private static async Task ApplyBuildArgumentsAsync(Container dcpContainerResource, IResource modelContainerResource, CancellationToken cancellationToken) 1723case Container c: 1726var cu = await _kubernetesService.GetAsync<Container>(c.Metadata.Name, cancellationToken: attemptCancellationToken).ConfigureAwait(false); 1791case Container c: 1792await EnsureResourceDeletedAsync<Container>(appResource.DcpResourceName).ConfigureAwait(false);
Dcp\DcpResourceState.cs (1)
12public readonly ConcurrentDictionary<string, Container> ContainersMap = [];
Dcp\Model\Container.cs (2)
534public static Container Create(string name, string image) 536var c = new Container(new ContainerSpec { Image = image });
Dcp\Model\ContainerExec.cs (2)
12/// The name of the <see cref="Container"/> resource (DCP model name, not the Docker/Podman name) 103/// Represents a command to be executed in a given <see cref="Container"/> resource.
Dcp\Model\GroupVersion.cs (1)
36Schema.Add<Container>(ContainerKind, "containers");
Dcp\ResourceSnapshotBuilder.cs (2)
20public CustomResourceSnapshot ToSnapshot(Container container, CustomResourceSnapshot previous) 269if (resource is Container container)
Aspire.Hosting.Containers.Tests (11)
WithDockerfileTests.cs (11)
189var containers = await kubernetes.ListAsync<Container>(); 191var container = Assert.Single(containers); 221var containers = await kubernetes.ListAsync<Container>(); 223var container = Assert.Single<Container>(containers); 449var containers = await kubernetes.ListAsync<Container>(); 451var container = Assert.Single<Container>(containers); 519var containers = await kubernetes.ListAsync<Container>(); 521var container = Assert.Single<Container>(containers);
Aspire.Hosting.Tests (59)
Dcp\DcpExecutorTests.cs (31)
45var container = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 588var exeResource = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 686var exeResource = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 872var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 907var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 988var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 1024var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 1061var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 1098var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 1140var dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<Container>()); 1191Assert.Equal(4, kubernetesService.CreatedResources.OfType<Container>().Count()); 1192var implicitDefaultContainer = Assert.Single(kubernetesService.CreatedResources.OfType<Container>(), c => c.AppModelResourceName == "ImplicitDefault"); 1195var explicitDefaultContainer = Assert.Single(kubernetesService.CreatedResources.OfType<Container>(), c => c.AppModelResourceName == "ExplicitDefault"); 1198var explicitAlwaysContainer = Assert.Single(kubernetesService.CreatedResources.OfType<Container>(), c => c.AppModelResourceName == "ExplicitAlways"); 1201var explicitMissingContainer = Assert.Single(kubernetesService.CreatedResources.OfType<Container>(), c => c.AppModelResourceName == "ExplicitMissing"); 1266var container = Assert.Single(kubernetesService.CreatedResources.OfType<Container>());
Dcp\TestKubernetesService.cs (2)
213if (res is Container ctr && result is Container cu)
DistributedApplicationTests.cs (26)
529var list = await s.ListAsync<Container>().DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout); 582var list = await s.ListAsync<Container>().DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout); 634var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Running, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout); 642redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Exited, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout); 650redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Running, token); 716var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>(kubernetes, $"{testName}-redis-{ReplicaIdRegex}-{suffix}", r => r.Status?.EffectiveEnv is not null).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout); 844var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>(s, $"{testName}-redis-{ReplicaIdRegex}-{suffix}", 873var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>( 902var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>( 932var redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<Container>( 972await foreach (var resource in s.WatchAsync<Container>().DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout)) 974Assert.True(resource.Item2.Metadata.Annotations.TryGetValue(Container.ResourceNameAnnotation, out var value)); 1185var list = await s.ListAsync<Container>().DefaultTimeout(); 1186var redisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redis-{ReplicaIdRegex}")); 1194var otherRedisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redisNoPort-{ReplicaIdRegex}")); 1243var list = await s.ListAsync<Container>().DefaultTimeout(); 1244var redisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redis-{ReplicaIdRegex}")); 1252var otherRedisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redisNoPort-{ReplicaIdRegex}")); 1357Assert.Empty(await KubernetesService!.ListAsync<Container>(cancellationToken: cancellationToken)); 1362Assert.NotEmpty(await KubernetesService!.ListAsync<Container>(cancellationToken: cancellationToken));