1 instantiation of Container
Aspire.Hosting (1)
Dcp\Model\Container.cs (1)
544
var c = new
Container
(new ContainerSpec { Image = image });
103 references to Container
Aspire.Hosting (32)
Dcp\DcpExecutor.cs (24)
257
Task.Run(() => WatchKubernetesResourceAsync<
Container
>((t, r) => ProcessResourceChange(t, r, _resourceState.ContainersMap, "Container", (c, s) => _snapshotBuilder.ToSnapshot(c, s)))),
301
if (_resourceState.ContainersMap.TryGetValue(entry.ResourceName, out
var
container))
411
if (resource is
Container
{ LogsAvailable: true } ||
493
Container
=> KnownResourceTypes.Container,
502
if (resource is
Container
container)
527
if (_resourceState.ContainersMap.TryGetValue(resourceName, out
var
container))
529
enumerable = new ResourceLogSource<
Container
>(_logger, _kubernetesService, container, follow: false);
576
Container
c when c.LogsAvailable => new ResourceLogSource<T>(_logger, _kubernetesService, resource, follow: true),
665
"Container" => _resourceState.ContainersMap.TryGetValue(resourceName, out
var
container) ? container : null,
681
if (cr is
Container
container)
807
var toCreate = _appResources.Where(r => r.DcpResource is
Container
or Executable or ContainerExec);
826
var containersTask = CreateContainersAsync(toCreate.Where(ar => ar.DcpResource is
Container
), cancellationToken);
1360
var
ctr =
Container
.Create(containerObjectInstance.Name, containerImageName);
1481
await _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);
1485
if (cr.DcpResource is
Container
container)
1507
var
dcpContainerResource = (
Container
)cr.DcpResource;
1565
private static async Task ApplyBuildArgumentsAsync(
Container
dcpContainerResource, IResource modelContainerResource, IServiceProvider serviceProvider, CancellationToken cancellationToken)
1795
case
Container
c:
1798
var
cu = await _kubernetesService.GetAsync<
Container
>(c.Metadata.Name, cancellationToken: attemptCancellationToken).ConfigureAwait(false);
1863
case
Container
c:
1864
await EnsureResourceDeletedAsync<
Container
>(appResource.DcpResourceName).ConfigureAwait(false);
Dcp\DcpResourceState.cs (1)
12
public readonly ConcurrentDictionary<string,
Container
> ContainersMap = [];
Dcp\Model\Container.cs (2)
542
public static
Container
Create(string name, string image)
544
var
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)
36
Schema.Add<
Container
>(ContainerKind, "containers");
Dcp\ResourceSnapshotBuilder.cs (2)
20
public CustomResourceSnapshot ToSnapshot(
Container
container, CustomResourceSnapshot previous)
275
if (resource is
Container
container)
Aspire.Hosting.Containers.Tests (11)
WithDockerfileTests.cs (11)
210
var containers = await kubernetes.ListAsync<
Container
>();
212
var
container = Assert.Single(containers);
243
var containers = await kubernetes.ListAsync<
Container
>();
245
var
container = Assert.Single<
Container
>(containers);
472
var containers = await kubernetes.ListAsync<
Container
>();
474
var
container = Assert.Single<
Container
>(containers);
543
var containers = await kubernetes.ListAsync<
Container
>();
545
var
container = Assert.Single<
Container
>(containers);
Aspire.Hosting.Tests (60)
Dcp\DcpExecutorTests.cs (31)
45
var
container = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
588
var
exeResource = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
688
var
exeResource = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
878
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
913
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
994
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
1030
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
1067
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
1104
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
1146
var
dcpCtr = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
1197
Assert.Equal(4, kubernetesService.CreatedResources.OfType<
Container
>().Count());
1198
var
implicitDefaultContainer = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>(), c => c.AppModelResourceName == "ImplicitDefault");
1201
var
explicitDefaultContainer = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>(), c => c.AppModelResourceName == "ExplicitDefault");
1204
var
explicitAlwaysContainer = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>(), c => c.AppModelResourceName == "ExplicitAlways");
1207
var
explicitMissingContainer = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>(), c => c.AppModelResourceName == "ExplicitMissing");
1272
var
container = Assert.Single(kubernetesService.CreatedResources.OfType<
Container
>());
Dcp\TestKubernetesService.cs (2)
213
if (res is
Container
ctr && result is
Container
cu)
DistributedApplicationTests.cs (27)
548
var list = await s.ListAsync<
Container
>().DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
606
var list = await s.ListAsync<
Container
>().DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
656
var list = await s.ListAsync<
Container
>().DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
774
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Running, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
782
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Exited, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
790
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(kubernetes, containerPattern, r => r.Status?.State == ContainerState.Running, token);
856
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(kubernetes, $"{testName}-redis-{ReplicaIdRegex}-{suffix}", r => r.Status?.EffectiveEnv is not null).DefaultTimeout(TestConstants.DefaultOrchestratorTestLongTimeout);
1014
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(s, $"{testName}-redis-{ReplicaIdRegex}-{suffix}",
1043
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(
1072
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(
1102
var
redisContainer = await KubernetesHelper.GetResourceByNameMatchAsync<
Container
>(
1142
await foreach (var resource in s.WatchAsync<
Container
>().DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout))
1144
Assert.True(resource.Item2.Metadata.Annotations.TryGetValue(
Container
.ResourceNameAnnotation, out var value));
1355
var list = await s.ListAsync<
Container
>().DefaultTimeout();
1356
var
redisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redis-{ReplicaIdRegex}"));
1364
var
otherRedisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redisNoPort-{ReplicaIdRegex}"));
1413
var list = await s.ListAsync<
Container
>().DefaultTimeout();
1414
var
redisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redis-{ReplicaIdRegex}"));
1422
var
otherRedisContainer = Assert.Single(list, c => Regex.IsMatch(c.Name(), $"{testName}-redisNoPort-{ReplicaIdRegex}"));
1533
Assert.Empty(await KubernetesService!.ListAsync<
Container
>(cancellationToken: cancellationToken));
1538
Assert.NotEmpty(await KubernetesService!.ListAsync<
Container
>(cancellationToken: cancellationToken));